![]() |
Object-oriented Scientific Computing Library: Version 0.910
|
The line minimizer for gsl_mmin_bfgs2.
#include <gsl_mmin_bfgs2.h>
Definition at line 286 of file gsl_mmin_bfgs2.h.
Public Member Functions | |
int | minimize (gsl_mmin_wrap_base &wrap, double rho, double sigma, double tau1, double tau2, double tau3, int order, double alpha1, double *alpha_new) |
The line minimization. | |
Protected Member Functions | |
double | interp_quad (double f0, double fp0, double f1, double zl, double zh) |
Minimize the interpolating quadratic. | |
double | cubic (double c0, double c1, double c2, double c3, double z) |
Minimize the interpolating cubic. | |
void | check_extremum (double c0, double c1, double c2, double c3, double z, double *zmin, double *fmin) |
Test to see curvature is positive. | |
double | interp_cubic (double f0, double fp0, double f1, double fp1, double zl, double zh) |
Interpolate using a cubic. | |
double | interpolate (double a, double fa, double fpa, double b, double fb, double fpb, double xmin, double xmax, int order) |
Perform the interpolation. |
double gsl_mmin_linmin2::interp_quad | ( | double | f0, |
double | fp0, | ||
double | f1, | ||
double | zl, | ||
double | zh | ||
) | [protected] |
Find a minimum in x=[0,1] of the interpolating quadratic through (0,f0) (1,f1) with derivative fp0 at x=0. The interpolating polynomial is q(x)=f0 + fp0 * z + (f1-f0-fp0) * z^2
double gsl_mmin_linmin2::cubic | ( | double | c0, |
double | c1, | ||
double | c2, | ||
double | c3, | ||
double | z | ||
) | [protected] |
Find a minimum in x=[0,1] of the interpolating cubic through (0,f0) (1,f1) with derivatives fp0 at x=0 and fp1 at x=1.
The interpolating polynomial is:
c(x)=f0 + fp0 * z + eta * z^2 + xi * z^3
where eta=3*(f1-f0)-2*fp0-fp1, xi=fp0+fp1-2*(f1-f0).
int gsl_mmin_linmin2::minimize | ( | gsl_mmin_wrap_base & | wrap, |
double | rho, | ||
double | sigma, | ||
double | tau1, | ||
double | tau2, | ||
double | tau3, | ||
int | order, | ||
double | alpha1, | ||
double * | alpha_new | ||
) |
Recommended values from Fletcher87 are rho=0.01, sigma=0.1, tau1=9, tau2=0.05, tau3=0.5
Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).