PICCANTE  0.4
The hottest HDR imaging library!
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
pic::NelderMeadOptBase< Scalar > Class Template Reference

The NelderMeadOptBase class. More...

#include <nelder_mead_opt_base.hpp>

Public Member Functions

 NelderMeadOptBase ()
 NelderMeadOptBase. More...
 
void GlobalSettings ()
 GlobalSettings. More...
 
virtual Scalar function (Scalar *x, unsigned int n)
 function More...
 
virtual Scalar * run (Scalar *x_start, unsigned int n, Scalar epsilon=1e-4f, int max_iterations=1000, Scalar *x=NULL)
 

Public Attributes

int max_iterations
 
Scalar output_error
 

Protected Member Functions

void InitSimplex (Scalar *x0, unsigned int n)
 InitSimplex. More...
 
void ComputeMean (Scalar *x_mean, unsigned int n)
 ComputeMean. More...
 
Scalar ComputeReflected (Scalar *x_r, Scalar *x_mean, unsigned int n)
 ComputeReflected. More...
 
Scalar ComputeExpansion (Scalar *x_e, Scalar *x_mean, unsigned int n)
 ComputeExpansion. More...
 
Scalar ComputeContractionInside (Scalar *x_c, Scalar *x_mean, unsigned int n)
 ComputeContractionInside. More...
 
void ComputeReduction (unsigned int n)
 ComputeReduction. More...
 
Scalar * run_aux (Scalar *x_start, unsigned int n, Scalar epsilon, int max_iterations=1000, Scalar *x=NULL)
 run_aux More...
 

Protected Attributes

bool bStopMean
 
Scalar delta
 
Scalar delta_zero
 
Scalar alpha
 
Scalar gamma
 
Scalar lambda
 
Scalar sigma
 
std::vector< std::pair< Scalar, Scalar * > > simplex
 

Detailed Description

template<class Scalar>
class pic::NelderMeadOptBase< Scalar >

The NelderMeadOptBase class.

Constructor & Destructor Documentation

◆ NelderMeadOptBase()

template<class Scalar>
pic::NelderMeadOptBase< Scalar >::NelderMeadOptBase ( )
inline

Member Function Documentation

◆ ComputeContractionInside()

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::ComputeContractionInside ( Scalar *  x_c,
Scalar *  x_mean,
unsigned int  n 
)
inlineprotected

ComputeContractionInside.

Parameters
x_c
x_mean
n
Returns

◆ ComputeExpansion()

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::ComputeExpansion ( Scalar *  x_e,
Scalar *  x_mean,
unsigned int  n 
)
inlineprotected

ComputeExpansion.

Parameters
x_e
x_mean
n
Returns

◆ ComputeMean()

template<class Scalar>
void pic::NelderMeadOptBase< Scalar >::ComputeMean ( Scalar *  x_mean,
unsigned int  n 
)
inlineprotected

ComputeMean.

Parameters
x_mean
n

◆ ComputeReduction()

template<class Scalar>
void pic::NelderMeadOptBase< Scalar >::ComputeReduction ( unsigned int  n)
inlineprotected

ComputeReduction.

Parameters
n

◆ ComputeReflected()

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::ComputeReflected ( Scalar *  x_r,
Scalar *  x_mean,
unsigned int  n 
)
inlineprotected

ComputeReflected.

Parameters
x_r
x_mean
n
Returns

◆ function()

template<class Scalar>
virtual Scalar pic::NelderMeadOptBase< Scalar >::function ( Scalar *  x,
unsigned int  n 
)
inlinevirtual

◆ GlobalSettings()

template<class Scalar>
void pic::NelderMeadOptBase< Scalar >::GlobalSettings ( )
inline

GlobalSettings.

◆ InitSimplex()

template<class Scalar>
void pic::NelderMeadOptBase< Scalar >::InitSimplex ( Scalar *  x0,
unsigned int  n 
)
inlineprotected

InitSimplex.

Parameters
x0
n

◆ run()

template<class Scalar>
virtual Scalar* pic::NelderMeadOptBase< Scalar >::run ( Scalar *  x_start,
unsigned int  n,
Scalar  epsilon = 1e-4f,
int  max_iterations = 1000,
Scalar *  x = NULL 
)
inlinevirtual

Reimplemented in pic::NelderMeadOptHomography.

◆ run_aux()

template<class Scalar>
Scalar* pic::NelderMeadOptBase< Scalar >::run_aux ( Scalar *  x_start,
unsigned int  n,
Scalar  epsilon,
int  max_iterations = 1000,
Scalar *  x = NULL 
)
inlineprotected

run_aux

Parameters
x_start
n
epsilon
x
Returns

Member Data Documentation

◆ alpha

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::alpha
protected

◆ bStopMean

template<class Scalar>
bool pic::NelderMeadOptBase< Scalar >::bStopMean
protected

◆ delta

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::delta
protected

◆ delta_zero

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::delta_zero
protected

◆ gamma

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::gamma
protected

◆ lambda

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::lambda
protected

◆ max_iterations

template<class Scalar>
int pic::NelderMeadOptBase< Scalar >::max_iterations

◆ output_error

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::output_error

◆ sigma

template<class Scalar>
Scalar pic::NelderMeadOptBase< Scalar >::sigma
protected

◆ simplex

template<class Scalar>
std::vector< std::pair<Scalar, Scalar *> > pic::NelderMeadOptBase< Scalar >::simplex
protected

The documentation for this class was generated from the following file: