core
vnl
algo
vnl_bracket_minimum.h
Go to the documentation of this file.
1
// This is core/vnl/algo/vnl_bracket_minimum.h
2
#ifndef vnl_bracket_minimum_h_
3
#define vnl_bracket_minimum_h_
4
//:
5
// \file
6
// \brief Function to bracket a minimum
7
// \author Tim Cootes
8
// \date Feb 2007
9
//
10
// \verbatim
11
// Modifications
12
// \endverbatim
13
14
#include <
vnl/vnl_cost_function.h
>
15
#include <vnl/algo/vnl_algo_export.h>
16
17
//: Given initial values a and b, find bracket a<b<c s.t. f(a)>f(b)<f(c)
18
// Final function values at a,b,c stored in fa,fb,fc.
19
//
20
// The algorithm takes increasingly large steps in a downhill direction
21
// until it starts going up again. To speed things up, it also fits
22
// a parabola to the last three points, which it uses to predict the
23
// possible minimum directly ( hopefully automatically choosing a
24
// sensible step size).
25
//
26
// Note that there's currently nothing
27
// to stop it if it is supplied with a monotonic function - it will just continue
28
// forever.
29
void
VNL_ALGO_EXPORT
vnl_bracket_minimum
(
vnl_cost_function
& f,
30
double
& a,
double
& b,
double
& c,
31
double
& fa,
double
& fb,
double
& fc);
32
33
#endif // vnl_bracket_minimum_h_
vnl_cost_function
An object that represents a function from R^n -> R.
Definition:
vnl_cost_function.h:25
vnl_bracket_minimum
void VNL_ALGO_EXPORT vnl_bracket_minimum(vnl_cost_function &f, double &a, double &b, double &c, double &fa, double &fb, double &fc)
Given initial values a and b, find bracket a<b<c s.t. f(a)>f(b)<f(c).
Definition:
vnl_bracket_minimum.cxx:34
vnl_cost_function.h
Vector->Real function.
Generated by
1.8.15