Skip to content

Commit

Permalink
Support for multimin functionality
Browse files Browse the repository at this point in the history
Add multimin_fminimizer_set, fix multimin_fdf_minimizer_iterate, change appropriate underscore files to non-underscore within __FILELIST.jl
  • Loading branch information
AndyGreenwell committed May 23, 2016
1 parent 488258e commit 8456534
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 7 deletions.
17 changes: 14 additions & 3 deletions src/36_3_Initializing_the_Multidimensional_Minimizer.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
# 36.3 Initializing the Multidimensional Minimizer #
####################################################
export multimin_fdfminimizer_alloc, multimin_fminimizer_alloc,
multimin_fdfminimizer_set, multimin_fdfminimizer_free,
multimin_fminimizer_free, multimin_fdfminimizer_name,
multimin_fminimizer_name
multimin_fdfminimizer_set, multimin_fminimizer_set,
multimin_fdfminimizer_free, multimin_fminimizer_free,
multimin_fdfminimizer_name, multimin_fminimizer_name

# This function returns a pointer to a newly allocated instance of a minimizer
# of type T for an n-dimension function. If there is insufficient memory to
Expand Down Expand Up @@ -66,6 +66,17 @@ function multimin_fdfminimizer_set(s::Ptr{gsl_multimin_fdfminimizer}, fdf::Ptr{g
return gslerrno
end

# Returns: Cint
function multimin_fminimizer_set(s::Ptr{gsl_multimin_fminimizer}, f::Ptr{gsl_multimin_function}, x::Ptr{gsl_vector}, step_size::Ptr{gsl_vector})
errno = ccall( (:gsl_multimin_fminimizer_set, libgsl), Cint,
(Ptr{gsl_multimin_fminimizer}, Ptr{gsl_multimin_function},
Ptr{gsl_vector}, Ptr{gsl_vector}), s, f, x, step_size)
gslerrno = gsl_errno(errno)
if gslerrno != SUCCESS && gslerrno != CONTINUE
throw(GSL_ERROR(errno))
end
return gslerrno
end

# This function frees all the memory associated with the minimizer s.
#
Expand Down
2 changes: 1 addition & 1 deletion src/36_5_Iteration.jl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export multimin_fdfminimizer_iterate, multimin_fminimizer_iterate,
# because a genuine local minimum has been reached.
#
# Returns: Cint
function multimin_fdfminimizer_iterate(s::Ptr{gsl_multimin_fdf_minimizer})
function multimin_fdfminimizer_iterate(s::Ptr{gsl_multimin_fdfminimizer})
errno = ccall( (:gsl_multimin_fdfminimizer_iterate, libgsl), Cint,
(Ref{gsl_multimin_fdfminimizer}, ), s )
gslerrno = gsl_errno(errno)
Expand Down
6 changes: 3 additions & 3 deletions src/__FILELIST.jl
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ include("../src/_27_4_Index_Look-up_and_Acceleration.jl")
include("../src/_4_2_Infinities_and_Not-a-number.jl")
include("../src/_39_2_Initializing_the_B-splines_solver.jl")
include("../src/_34_3_Initializing_the_Minimizer.jl")
include("../src/_36_3_Initializing_the_Multidimensional_Minimizer.jl")
include("36_3_Initializing_the_Multidimensional_Minimizer.jl")
include("35_2_Initializing_the_Solver.jl")
include("../src/_38_2_Initializing_the_Solver.jl")
include("33_3_Initializing_the_Solver.jl")
Expand Down Expand Up @@ -225,8 +225,8 @@ include("34_5_Iteration.jl")
include("../src/_34_6_Stopping_Parameters.jl")
include("../src/_24_3_MISER.jl")
include("../src/_37_4_Multi-parameter_fitting.jl")
include("../src/_36_5_Iteration.jl")
include("../src/_36_6_Stopping_Criteria.jl")
include("36_5_Iteration.jl")
include("36_6_Stopping_Criteria.jl")
include("../src/_11_2_Multiset_allocation.jl")
include("../src/_11_5_Multiset_functions.jl")
include("../src/_11_4_Multiset_properties.jl")
Expand Down

0 comments on commit 8456534

Please sign in to comment.