BornAgain  1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
ROOT::Minuit2::MnApplication Class Referenceabstract

Description

application interface class for minimizers (migrad, simplex, Minimize, Scan) User normally instantiates the derived class like ROOT::Minuit2::MnMigrad for using Migrad for minimization

Definition at line 37 of file MnApplication.h.

Inheritance diagram for ROOT::Minuit2::MnApplication:
[legend]
Collaboration diagram for ROOT::Minuit2::MnApplication:
[legend]

Public Member Functions

 MnApplication (const FCNBase &fcn, const MnUserParameterState &state, const MnStrategy &stra, unsigned int nfcn=0)
 constructor from non-gradient functions More...
 
 MnApplication (const FCNGradientBase &fcn, const MnUserParameterState &state, const MnStrategy &stra, unsigned int nfcn=0)
 constructor from gradient function More...
 
virtual ~MnApplication ()
 
void Add (const char *, double)
 
void Add (const char *Name, double val, double err)
 
void Add (const char *Name, double val, double err, double, double)
 
const MnUserCovarianceCovariance () const
 
double Error (const char *) const
 
double Error (unsigned int) const
 
std::vector< double > Errors () const
 
double Ext2int (unsigned int, double) const
 
unsigned int ExtOfInt (unsigned int) const
 
virtual const FCNBaseFcnbase () const
 
void Fix (const char *)
 
void Fix (unsigned int)
 
unsigned int Index (const char *) const
 
double Int2ext (unsigned int, double) const
 
unsigned int IntOfExt (unsigned int) const
 
virtual const ModularFunctionMinimizerMinimizer () const =0
 
virtual ModularFunctionMinimizerMinimizer ()=0
 
const std::vector< ROOT::Minuit2::MinuitParameter > & MinuitParameters () const
 
const char * Name (unsigned int) const
 
unsigned int NumOfCalls () const
 
virtual FunctionMinimum operator() (unsigned int maxfcn=0, double tolerance=0.1)
 
const MinuitParameterParameter (unsigned int i) const
 
const MnUserParametersParameters () const
 
std::vector< double > Params () const
 
const MnMachinePrecisionPrecision () const
 
void Release (const char *)
 
void Release (unsigned int)
 
void RemoveLimits (const char *)
 
void RemoveLimits (unsigned int)
 
void SetError (const char *, double)
 
void SetError (unsigned int, double)
 
void SetLimits (const char *, double, double)
 
void SetLimits (unsigned int, double, double)
 
void SetPrecision (double)
 
void SetValue (const char *, double)
 
void SetValue (unsigned int, double)
 
const MnUserParameterStateState () const
 
const MnStrategyStrategy () const
 
double Value (const char *) const
 
double Value (unsigned int) const
 
unsigned int VariableParameters () const
 

Protected Attributes

const FCNBasefFCN
 
unsigned int fNumCall
 
MnUserParameterState fState
 
MnStrategy fStrategy
 
bool fUseGrad
 

Constructor & Destructor Documentation

◆ MnApplication() [1/2]

ROOT::Minuit2::MnApplication::MnApplication ( const FCNBase fcn,
const MnUserParameterState state,
const MnStrategy stra,
unsigned int  nfcn = 0 
)

constructor from non-gradient functions

◆ MnApplication() [2/2]

ROOT::Minuit2::MnApplication::MnApplication ( const FCNGradientBase fcn,
const MnUserParameterState state,
const MnStrategy stra,
unsigned int  nfcn = 0 
)

constructor from gradient function

◆ ~MnApplication()

virtual ROOT::Minuit2::MnApplication::~MnApplication ( )
inlinevirtual

Definition at line 48 of file MnApplication.h.

48 { }

Member Function Documentation

◆ Add() [1/3]

void ROOT::Minuit2::MnApplication::Add ( const char *  ,
double   
)

◆ Add() [2/3]

void ROOT::Minuit2::MnApplication::Add ( const char *  Name,
double  val,
double  err 
)

◆ Add() [3/3]

void ROOT::Minuit2::MnApplication::Add ( const char *  Name,
double  val,
double  err,
double  ,
double   
)

◆ Covariance()

const MnUserCovariance& ROOT::Minuit2::MnApplication::Covariance ( ) const
inline

Definition at line 67 of file MnApplication.h.

67 {return fState.Covariance();}
MnUserParameterState fState
Definition: MnApplication.h:75
const MnUserCovariance & Covariance() const

References ROOT::Minuit2::MnUserParameterState::Covariance(), and fState.

Here is the call graph for this function:

◆ Error() [1/2]

double ROOT::Minuit2::MnApplication::Error ( const char *  ) const

◆ Error() [2/2]

double ROOT::Minuit2::MnApplication::Error ( unsigned int  ) const

◆ Errors()

std::vector<double> ROOT::Minuit2::MnApplication::Errors ( ) const

◆ Ext2int()

double ROOT::Minuit2::MnApplication::Ext2int ( unsigned int  ,
double   
) const

◆ ExtOfInt()

unsigned int ROOT::Minuit2::MnApplication::ExtOfInt ( unsigned int  ) const

◆ Fcnbase()

virtual const FCNBase& ROOT::Minuit2::MnApplication::Fcnbase ( ) const
inlinevirtual

Reimplemented in ROOT::Minuit2::MnFumiliMinimize.

Definition at line 68 of file MnApplication.h.

68 {return fFCN;}

References fFCN.

◆ Fix() [1/2]

void ROOT::Minuit2::MnApplication::Fix ( const char *  )

◆ Fix() [2/2]

void ROOT::Minuit2::MnApplication::Fix ( unsigned int  )

◆ Index()

unsigned int ROOT::Minuit2::MnApplication::Index ( const char *  ) const

◆ Int2ext()

double ROOT::Minuit2::MnApplication::Int2ext ( unsigned int  ,
double   
) const

◆ IntOfExt()

unsigned int ROOT::Minuit2::MnApplication::IntOfExt ( unsigned int  ) const

◆ Minimizer() [1/2]

virtual const ModularFunctionMinimizer& ROOT::Minuit2::MnApplication::Minimizer ( ) const
pure virtual

◆ Minimizer() [2/2]

◆ MinuitParameters()

const std::vector<ROOT::Minuit2::MinuitParameter>& ROOT::Minuit2::MnApplication::MinuitParameters ( ) const

◆ Name()

const char* ROOT::Minuit2::MnApplication::Name ( unsigned int  ) const

◆ NumOfCalls()

unsigned int ROOT::Minuit2::MnApplication::NumOfCalls ( ) const
inline

Definition at line 70 of file MnApplication.h.

70 {return fNumCall;}

References fNumCall.

◆ operator()()

virtual FunctionMinimum ROOT::Minuit2::MnApplication::operator() ( unsigned int  maxfcn = 0,
double  tolerance = 0.1 
)
virtual

Minimize the function

Parameters
maxfcn: max number of function calls (if = 0) default is used which is set to 200 + 100 * npar + 5 * npar**2
tolerance: value used for terminating iteration procedure. For example, MIGRAD will stop iterating when edm (expected distance from minimum) will be: edm < tolerance * 10**-3 Default value of tolerance used is 0.1

Reimplemented in ROOT::Minuit2::MnFumiliMinimize.

◆ Parameter()

const MinuitParameter& ROOT::Minuit2::MnApplication::Parameter ( unsigned int  i) const

◆ Parameters()

const MnUserParameters& ROOT::Minuit2::MnApplication::Parameters ( ) const
inline

Definition at line 66 of file MnApplication.h.

66 {return fState.Parameters();}
const MnUserParameters & Parameters() const

References fState, and ROOT::Minuit2::MnUserParameterState::Parameters().

Here is the call graph for this function:

◆ Params()

std::vector<double> ROOT::Minuit2::MnApplication::Params ( ) const

◆ Precision()

const MnMachinePrecision& ROOT::Minuit2::MnApplication::Precision ( ) const
inline

Definition at line 64 of file MnApplication.h.

64 {return fState.Precision();}
const MnMachinePrecision & Precision() const

References fState, and ROOT::Minuit2::MnUserParameterState::Precision().

Here is the call graph for this function:

◆ Release() [1/2]

void ROOT::Minuit2::MnApplication::Release ( const char *  )

◆ Release() [2/2]

void ROOT::Minuit2::MnApplication::Release ( unsigned int  )

◆ RemoveLimits() [1/2]

void ROOT::Minuit2::MnApplication::RemoveLimits ( const char *  )

◆ RemoveLimits() [2/2]

void ROOT::Minuit2::MnApplication::RemoveLimits ( unsigned int  )

◆ SetError() [1/2]

void ROOT::Minuit2::MnApplication::SetError ( const char *  ,
double   
)

◆ SetError() [2/2]

void ROOT::Minuit2::MnApplication::SetError ( unsigned int  ,
double   
)

◆ SetLimits() [1/2]

void ROOT::Minuit2::MnApplication::SetLimits ( const char *  ,
double  ,
double   
)

◆ SetLimits() [2/2]

void ROOT::Minuit2::MnApplication::SetLimits ( unsigned int  ,
double  ,
double   
)

◆ SetPrecision()

void ROOT::Minuit2::MnApplication::SetPrecision ( double  )

◆ SetValue() [1/2]

void ROOT::Minuit2::MnApplication::SetValue ( const char *  ,
double   
)

◆ SetValue() [2/2]

void ROOT::Minuit2::MnApplication::SetValue ( unsigned int  ,
double   
)

◆ State()

const MnUserParameterState& ROOT::Minuit2::MnApplication::State ( ) const
inline

Definition at line 65 of file MnApplication.h.

65 {return fState;}

References fState.

◆ Strategy()

const MnStrategy& ROOT::Minuit2::MnApplication::Strategy ( ) const
inline

Definition at line 69 of file MnApplication.h.

69 {return fStrategy;}

References fStrategy.

◆ Value() [1/2]

double ROOT::Minuit2::MnApplication::Value ( const char *  ) const

◆ Value() [2/2]

double ROOT::Minuit2::MnApplication::Value ( unsigned int  ) const

◆ VariableParameters()

unsigned int ROOT::Minuit2::MnApplication::VariableParameters ( ) const

Member Data Documentation

◆ fFCN

const FCNBase& ROOT::Minuit2::MnApplication::fFCN
protected

Definition at line 74 of file MnApplication.h.

Referenced by Fcnbase().

◆ fNumCall

unsigned int ROOT::Minuit2::MnApplication::fNumCall
protected

Definition at line 77 of file MnApplication.h.

Referenced by NumOfCalls().

◆ fState

MnUserParameterState ROOT::Minuit2::MnApplication::fState
protected

Definition at line 75 of file MnApplication.h.

Referenced by Covariance(), Parameters(), Precision(), and State().

◆ fStrategy

MnStrategy ROOT::Minuit2::MnApplication::fStrategy
protected

Definition at line 76 of file MnApplication.h.

Referenced by Strategy().

◆ fUseGrad

bool ROOT::Minuit2::MnApplication::fUseGrad
protected

Definition at line 78 of file MnApplication.h.


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