The following function initializes a multidimensional minimizer. The minimizer itself depends only on the dimension of the problem and the algorithm and can be reused for different problems.

__Function:__gsl_multimin_fdfminimizer ***gsl_multimin_fdfminimizer_alloc***(const gsl_multimin_fdfminimizer_type **`T`, size_t`n`)-
This function returns a pointer to a a newly allocated instance of a
minimizer of type
`T`for an`n`-dimension function. If there is insufficient memory to create the minimizer then the function returns a null pointer and the error handler is invoked with an error code of`GSL_ENOMEM`

.

__Function:__int**gsl_multimin_fdfminimizer_set***(gsl_multimin_fdfminimizer **`s`, gsl_multimin_function_fdf *`fdf`, const gsl_vector *`x`, double`step_size`, double`tol`)-
This function initializes the minimizer
`s`to minimize the function`fdf`starting from the initial point`x`. The size of the first trial step is given by`step_size`. The accuracy of the line minimization is specified by`tol`. The precise meaning of this parameter depends on the method used. Typically the line minimization is considered successful if the gradient of the function @math{g} is orthogonal to the current search direction @math{p} to a relative accuracy of`tol`, where @c{$p\cdot g < tol |p| |g|$} @math{dot(p,g) < tol |p| |g|}.

__Function:__void**gsl_multimin_fdfminimizer_free***(gsl_multimin_fdfminimizer **`s`)-
This function frees all the memory associated with the minimizer
`s`.

__Function:__const char ***gsl_multimin_fdfminimizer_name***(const gsl_multimin_fdfminimizer **`s`)-
This function returns a pointer to the name of the minimizer. For example,
printf("s is a '%s' minimizer\n", gsl_multimin_fdfminimizer_name (s));

would print something like

`s is a 'conjugate_pr' minimizer`

.

Go to the first, previous, next, last section, table of contents.