ROOT
6.06/09
Reference Guide
|
MinimTransformFunction class to perform a transformations on the variables to deal with fixed or limited variables (support both double and single bounds) The class manages the passed function pointer.
Definition at line 43 of file MinimTransformFunction.h.
Public Types | |
typedef ROOT::Math::IMultiGradFunction | BaseGradFunc |
typedef ROOT::Math::IMultiGradFunction::BaseFunc | BaseFunc |
Public Types inherited from ROOT::Math::IGradientFunctionMultiDim | |
typedef IBaseFunctionMultiDim | BaseFunc |
typedef IGradientMultiDim | BaseGrad |
Public Types inherited from ROOT::Math::IBaseFunctionMultiDim | |
typedef IBaseFunctionMultiDim | BaseFunc |
Public Member Functions | |
MinimTransformFunction (const IMultiGradFunction *f, const std::vector< ROOT::Math::EMinimVariableType > &types, const std::vector< double > &values, const std::map< unsigned int, std::pair< double, double > > &bounds) | |
Constructor from a IMultiGradFunction interface (which is managed by the class) vector specifying the variable types (free, bounded or fixed, defined in enum EMinimVariableTypes ) variable values (used for the fixed ones) and a map with the bounds (for the bounded variables) More... | |
~MinimTransformFunction () | |
Destructor (delete function pointer) More... | |
unsigned int | NDim () const |
Retrieve the dimension of the function. More... | |
unsigned int | NTot () const |
IMultiGenFunction * | Clone () const |
clone: not supported (since auto_ptr used in the fVariables) More... | |
const double * | Transformation (const double *x) const |
transform from internal to external result is cached also inside the class More... | |
void | Transformation (const double *xint, double *xext) const |
transform from internal to external More... | |
void | InvTransformation (const double *xext, double *xint) const |
inverse transformation (external -> internal) More... | |
void | InvStepTransformation (const double *x, const double *sext, double *sint) const |
inverse transformation for steps (external -> internal) at external point x More... | |
void | GradientTransformation (const double *x, const double *gExt, double *gInt) const |
transform gradient vector (external -> internal) at internal point x More... | |
void | MatrixTransformation (const double *x, const double *covInt, double *covExt) const |
transform covariance matrix (internal -> external) at internal point x use row storages for matrices m(i,j) = rep[ i * dim + j] More... | |
const IMultiGradFunction * | OriginalFunction () const |
Public Member Functions inherited from ROOT::Math::IGradientFunctionMultiDim | |
virtual | ~IGradientFunctionMultiDim () |
Virtual Destructor (no operations) More... | |
virtual void | Gradient (const double *x, double *grad) const |
Evaluate all the vector of function derivatives (gradient) at a point x. More... | |
virtual void | FdF (const double *x, double &f, double *df) const |
Optimized method to evaluate at the same time the function value and derivative at a point x. More... | |
Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDim | |
IBaseFunctionMultiDim () | |
virtual | ~IBaseFunctionMultiDim () |
virtual destructor More... | |
double | operator() (const double *x) const |
Evaluate the function at a point x[]. More... | |
Public Member Functions inherited from ROOT::Math::IGradientMultiDim | |
virtual | ~IGradientMultiDim () |
virual destructor More... | |
double | Derivative (const double *x, unsigned int icoord=0) const |
Return the partial derivative with respect to the passed coordinate. More... | |
Private Member Functions | |
virtual double | DoEval (const double *x) const |
function evaluation More... | |
virtual double | DoDerivative (const double *x, unsigned int icoord) const |
calculate derivatives More... | |
MinimTransformFunction (const MinimTransformFunction &) | |
MinimTransformFunction & | operator= (const MinimTransformFunction &) |
Private Attributes | |
std::vector< double > | fX |
std::vector< MinimTransformVariable > | fVariables |
std::vector< unsigned int > | fIndex |
const IMultiGradFunction * | fFunc |
#include <Math/MinimTransformFunction.h>
Definition at line 48 of file MinimTransformFunction.h.
Definition at line 47 of file MinimTransformFunction.h.
ROOT::Math::MinimTransformFunction::MinimTransformFunction | ( | const IMultiGradFunction * | f, |
const std::vector< ROOT::Math::EMinimVariableType > & | types, | ||
const std::vector< double > & | values, | ||
const std::map< unsigned int, std::pair< double, double > > & | bounds | ||
) |
Constructor from a IMultiGradFunction interface (which is managed by the class) vector specifying the variable types (free, bounded or fixed, defined in enum EMinimVariableTypes ) variable values (used for the fixed ones) and a map with the bounds (for the bounded variables)
Definition at line 23 of file MinimTransformFunction.cxx.
|
inline |
Destructor (delete function pointer)
Definition at line 64 of file MinimTransformFunction.h.
|
inlineprivate |
Definition at line 132 of file MinimTransformFunction.h.
|
inlinevirtual |
clone: not supported (since auto_ptr used in the fVariables)
Implements ROOT::Math::IBaseFunctionMultiDim.
Definition at line 76 of file MinimTransformFunction.h.
|
inlineprivatevirtual |
calculate derivatives
Implements ROOT::Math::IGradientMultiDim.
Definition at line 123 of file MinimTransformFunction.h.
|
inlineprivatevirtual |
function evaluation
Implements ROOT::Math::IBaseFunctionMultiDim.
Definition at line 112 of file MinimTransformFunction.h.
void ROOT::Math::MinimTransformFunction::GradientTransformation | ( | const double * | x, |
const double * | gExt, | ||
double * | gInt | ||
) | const |
transform gradient vector (external -> internal) at internal point x
Definition at line 120 of file MinimTransformFunction.cxx.
void ROOT::Math::MinimTransformFunction::InvStepTransformation | ( | const double * | x, |
const double * | sext, | ||
double * | sint | ||
) | const |
inverse transformation for steps (external -> internal) at external point x
Definition at line 99 of file MinimTransformFunction.cxx.
Referenced by ROOT::Math::GSLSimAnMinimizer::Minimize(), and ROOT::Math::GSLMinimizer::Minimize().
void ROOT::Math::MinimTransformFunction::InvTransformation | ( | const double * | xext, |
double * | xint | ||
) | const |
inverse transformation (external -> internal)
Definition at line 86 of file MinimTransformFunction.cxx.
void ROOT::Math::MinimTransformFunction::MatrixTransformation | ( | const double * | x, |
const double * | covInt, | ||
double * | covExt | ||
) | const |
transform covariance matrix (internal -> external) at internal point x use row storages for matrices m(i,j) = rep[ i * dim + j]
Definition at line 135 of file MinimTransformFunction.cxx.
|
inlinevirtual |
Retrieve the dimension of the function.
Implements ROOT::Math::IBaseFunctionMultiDim.
Definition at line 71 of file MinimTransformFunction.h.
Referenced by InvStepTransformation(), InvTransformation(), ROOT::Math::GSLSimAnMinimizer::Minimize(), and ROOT::Math::GSLMinimizer::Minimize().
|
inline |
Definition at line 73 of file MinimTransformFunction.h.
Referenced by MatrixTransformation(), MinimTransformFunction(), and ROOT::Math::BasicMinimizer::SetFinalValues().
|
inlineprivate |
Definition at line 137 of file MinimTransformFunction.h.
|
inline |
Definition at line 106 of file MinimTransformFunction.h.
Referenced by ROOT::Math::GSLSimAnMinimizer::NCalls().
transform from internal to external result is cached also inside the class
Definition at line 83 of file MinimTransformFunction.h.
Referenced by DoDerivative(), DoEval(), ROOT::Math::GSLMinimizer::Minimize(), and ROOT::Math::BasicMinimizer::SetFinalValues().
void ROOT::Math::MinimTransformFunction::Transformation | ( | const double * | xint, |
double * | xext | ||
) | const |
transform from internal to external
Definition at line 62 of file MinimTransformFunction.cxx.
|
private |
Definition at line 148 of file MinimTransformFunction.h.
Referenced by DoDerivative(), DoEval(), NTot(), OriginalFunction(), and ~MinimTransformFunction().
|
private |
Definition at line 147 of file MinimTransformFunction.h.
Referenced by DoDerivative(), GradientTransformation(), InvStepTransformation(), InvTransformation(), MatrixTransformation(), MinimTransformFunction(), NDim(), and Transformation().
|
private |
Definition at line 146 of file MinimTransformFunction.h.
Referenced by DoDerivative(), DoEval(), GradientTransformation(), InvStepTransformation(), InvTransformation(), MatrixTransformation(), MinimTransformFunction(), and Transformation().
|
mutableprivate |
Definition at line 145 of file MinimTransformFunction.h.
Referenced by Transformation().