English Français

Documentation / Manuel développeur

Modules disponibles

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Calibration: URANIE::Calibration::TMahalanobisDistanceFunction Class Reference
Uranie / Calibration v4.9.0
/* @license-end */
URANIE::Calibration::TMahalanobisDistanceFunction Class Reference

Description of the class TMahalanobisDistanceFunction
The distance is estimated as. More...

#include <TStandardDistanceFunction.h>

Inheritance diagram for URANIE::Calibration::TMahalanobisDistanceFunction:
Collaboration diagram for URANIE::Calibration::TMahalanobisDistanceFunction:

Public Member Functions

Constructor and Destructor
 TMahalanobisDistanceFunction (URANIE::DataServer::TDataServer *tdsEval, URANIE::DataServer::TDataServer *tdsObs, const char *reference, const char *output, const char *weight="")
 Default constructor.
 
virtual ~TMahalanobisDistanceFunction ()
 Default destructor.
 
Estimate
Int_t localeval (Double_t *res)
 
- Public Member Functions inherited from URANIE::Calibration::TDistanceFunction
 TDistanceFunction (URANIE::DataServer::TDataServer *tdsEval, URANIE::DataServer::TDataServer *tdsObs, const char *reference, const char *output, const char *weight="")
 Standard constructor.
 
virtual ~TDistanceFunction ()
 Default destructor.
 
void fillInOutAtt (URANIE::DataServer::TDataServer *tdsPar)
 Internal initialisation method.
 
void initParameters (URANIE::DataServer::TDataServer *tdsPar, URANIE::Relauncher::TRun *run)
 
void initParameters (URANIE::DataServer::TDataServer *tdsPar, const char *funcName, const char *varexpinput, const char *varexpoutput)
 
void initParameters (URANIE::DataServer::TDataServer *tdsPar, void(*fcn)(Double_t *, Double_t *), const char *varexpinput, const char *varexpoutput)
 
void initParameters (URANIE::DataServer::TDataServer *tdsPar, URANIE::Launcher::TCode *Code)
 
Int_t eval (Double_t *theta, Double_t *res, int=0)
 Official method inherited from TSimpleEval, it is the main method of a DF It calls three methods in a row : runConfiguration, getData and localeval.
 
void runConfiguration (double *theta)
 Runs the code provided on the reference input to get estimations.
 
vector< vector< double > > getObservationVector ()
 Return the observation vector of vector.
 
TMatrixD getObservationMatrix ()
 Return the observation matrix.
 
void setSaveAllEvaluations (bool value)
 Choose whether every evaluations should be kept (might slown down the process)
 
void changeLauncher (TString tlcName)
 Change the code launcher.
 
void changeCodeLauncherOpt (TString opt)
 Change the option of the code launcher.
 
void dumpAllDataservers ()
 
void keepParametersValue ()
 
void dumpDetails ()
 
void addCodeLauncherOpt (TString opt)
 add options to the already of the code launcher
 
void setUseMatrix (bool value)
 Choose whether vector of vector or matrix should be used in the distance function localeval method.
 
void setVarWeights (int nwei, double *wei)
 Set a weight to ponderate variable when _nVar >1.
 
void setVarWeights (vector< double > wei)
 Set a weight to ponderate variable when _nVar >1.
 
void setObservationCovarianceMatrix (TMatrixD &mat)
 set the observatiton covariance matrix
 
bool getSaveAllEvaluation ()
 Check the value of the saveAll option.
 
bool getUseMatrix ()
 Check the value of the useMatrix option.
 
void setGaussianRandomNoise (const char *stdname)
 Set Normal random noise for an output variable.
 
void setSeed (UInt_t nval)
 Set the seed of the random generator if one is used.
 
void setLog ()
 
void unsetLog ()
 
void changeLog ()
 
Bool_t getLog ()
 
virtual void printLog (Option_t *option="")
 

Additional Inherited Members

- Public Attributes inherited from URANIE::Calibration::TDistanceFunction
URANIE::DataServer::TDataServer * _tdsEval
 pointer toward the evaluation dataserver
 
URANIE::DataServer::TDataServer * _tdsObs
 pointer toward the reference dataserver
 
URANIE::DataServer::TDSNtupleD * _allData
 pointer toward the reference dataserver
 
- Protected Member Functions inherited from URANIE::Calibration::TDistanceFunction
void getData (bool reference=false)
 Get the data either the reference one, or the estimated one for a given parameter configuration.
 
- Protected Attributes inherited from URANIE::Calibration::TDistanceFunction
vector< string > _vrefName
 Vector of reference name.
 
vector< string > _voutName
 Vector of output name.
 
vector< string > _vparName
 Vector of parameters name.
 
vector< vector< double > > _yObs
 Vector of observations outputs (size: _nVar < _nObs >)
 
vector< vector< double > > _yExp
 Vector of tested values (size: _nVar <_nObs>)
 
TMatrixD _mObsCovMat
 Observation Covariance matrix.
 
TMatrixD _myObs
 Vector of observations outputs (size: _nVar < _nObs >)
 
TMatrixD _myExp
 Vector of tested values (size: _nVar <_nObs>)
 
unsigned int _nObs
 Number of observations.
 
unsigned int _nVar
 Number of variables;.
 
unsigned int _nPar
 Number of Parameters;.
 
vector< double > _vParValues
 
vector< double > _varWeights
 Vector of variable weights (size: _nVar)
 
vector< vector< double > > _obsWeights
 Vector of observation weights outputs (size: _nObs)
 
URANIE::Relauncher::TRun * _run
 
TString _tlcType
 
TString _codeLauncherOpt
 Option for code launcher.
 
URANIE::Launcher::TCode * _code
 
TString _funcName
 
void(* _pFunction )(double *, double *)
 Function pointer.
 
TString _varexpinput
 
TString _varexpoutput
 
bool _baprioriSet
 Whether apriori is set to evaluator.
 
bool _bsaveAll
 Whether all evaluations should be saved, not only a priori and a posteriori.
 
bool _buseMatrix
 Use matrix instead of vectors.
 
bool _blog
 Boolean to decide if the log information is shown or not.
 
bool _dumpAllTds
 dump all tested dataserver;
 
bool _keepParValue
 Keep the parameters values in runner case.
 
bool _bdumpDetails
 Dump the details in Distance Computation.
 
int _icalc
 Calcul iterator;.
 
unsigned int _ivar
 
unsigned int _iobs
 
TList * _listOfParameters
 list of parameters
 
TRandom3 * _rand
 The random generator.
 
int _nSeed
 The seed of the random generator.
 
TMatrixD _mSigma
 Vector of variance of errors.
 
bool _boolNoise
 Whether noise is add to the output.
 

Detailed Description

Description of the class TMahalanobisDistanceFunction
The distance is estimated as.

\[ Dist = \sum_{i=1}^{n_{Var}} \alpha_i \times \sqrt{ (\mathbf{y_{i,Obs}} - \mathbf{y_{i,Est}})^{T} \Omega^{-1} (\mathbf{y_{i,Obs}} - \mathbf{y_{i,Est}}) } \]

where

  • $n_{Var}$ is the number of output variables
  • $\mathbf{y_{i,Obs}}$ and $\mathbf{y_{i,Est}}$ are respectively the reference and estimated matrix of output $ i $
  • $ \Omega $ is the covariance matrix of the events (from the reference file)
  • $ \alpha_i $ is a weight that might be used to ponderate one variable with respect to the others

Constructor & Destructor Documentation

◆ TMahalanobisDistanceFunction()

URANIE::Calibration::TMahalanobisDistanceFunction::TMahalanobisDistanceFunction ( URANIE::DataServer::TDataServer *  tdsEval,
URANIE::DataServer::TDataServer *  tdsObs,
const char *  reference,
const char *  output,
const char *  weight = "" 
)

Default constructor.

  • the evaluation dataserver
  • the reference dataserver
  • the list of variable that are the output reference (_nVar in total)
  • the outputs of the code (_nVar as well)
  • the observation weight (uncertainty for instance)

◆ ~TMahalanobisDistanceFunction()

virtual URANIE::Calibration::TMahalanobisDistanceFunction::~TMahalanobisDistanceFunction ( )
virtual

Default destructor.

Member Function Documentation

◆ localeval()

Int_t URANIE::Calibration::TMahalanobisDistanceFunction::localeval ( Double_t *  res)
virtual

Evaluate the distance function

Implements URANIE::Calibration::TDistanceFunction.