English Français

Documentation / Developer's manual

Available modules

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

Description of the class TPolynomialMultiDimFit. More...

#include <TPolynomialMultiDimFit.h>

Inheritance diagram for URANIE::Modeler::TPolynomialMultiDimFit:
Collaboration diagram for URANIE::Modeler::TPolynomialMultiDimFit:

Public Member Functions

Constructor and Destructor
 TPolynomialMultiDimFit (URANIE::DataServer::TDataServer *tds, TString architecture, TMultiDimFit::EMDFPolyType type, Option_t *option="")
 Default constructor with the TDataServer and architecture.
 
 TPolynomialMultiDimFit (URANIE::DataServer::TDataServer *tds, const char *varexpinput, const char *varexpoutput, TMultiDimFit::EMDFPolyType type, Option_t *option="")
 Default constructor with the TDataServer and input and output attributes.
 
virtual ~TPolynomialMultiDimFit ()
 Default destructor.
 
Get and Set methods
void setMinAngle (Double_t dangle=1)
 
void setMaxAngle (Double_t dangle=0)
 
void setMaxFunctions (Int_t n)
 
void setMaxStudy (Int_t n)
 
void setMaxTerms (Int_t n)
 
void setMaxPowers (const Int_t *powers)
 
void setMinRelativeError (Double_t derror)
 
void setPowerLimit (Double_t limit=1e-3)
 
void setPowers (const Int_t *powers, Int_t terms)
 
TMultiDimFit * getMultiDimFit ()
 Get the TMultiDimFit ROOT object.
 
Estimate
void estimate (Option_t *option="")
 
void fillData (TMatrixD &Aw, TVectorD &yw)
 Fill the data in a TMatrix and a TVector.
 
Export the model in extrenal langage
void exportModelCplusplus (std::ofstream *sourcefile) const
 Export the model in an external file with a specified langage.
 
void exportModelFortran (std::ofstream *sourcefile) const
 Export the model in Fortran langage in a file.
 
void exportModelPMML (const char *file="", const char *name="", Option_t *option="") const
 Export the model in a PMML file (not yet implemented)
 
void exportModelPython (std::ofstream *sourcefile) const
 Export the model in Python langage in a file (not yet implemented)
 
Printing Log
virtual void printLog (Option_t *option="")
 
- Public Member Functions inherited from URANIE::Modeler::TModeler
 TModeler (URANIE::DataServer::TDataServer *tds, TString architecture, Option_t *option="")
 Constructor with a dataserver.
 
 TModeler (URANIE::DataServer::TDataServer *tds, const char *varexpinput, const char *varexpoutput, Option_t *option="")
 Default constructor with input and output attributes.
 
virtual ~TModeler ()
 Default destructor.
 
TVectorD getParameters ()
 Return the parameter vector of the model.
 
Double_t getR2 () const
 Return the R2 quality.
 
const char * getInputName (Int_t i) const
 Return the name of input attributes.
 
const char * getOutputName (Int_t i=0)
 Return the name of output attribute.
 
Int_t getNInput ()
 Gets the number of input.
 
Bool_t getIntercept ()
 Gets the boolean attribut _bIntercept.
 
void setDrawProgressBar (Bool_t bbool=kTRUE)
 Set the "draw progress bar" flag.
 
Bool_t getDrawProgressBar ()
 Get the "draw progress bar" flag.
 
void train (Option_t *option="text")
 
virtual void exportFunction (const char *lang, const char *file="", const char *name="", Option_t *option="")
 Export the model in an external file with a specified langage.
 
void setLog ()
 
void unsetLog ()
 
void changeLog ()
 
Bool_t getLog ()
 

Private Attributes

TMultiDimFit * _MultiDimFit
 The object TMultiDimFit.
 

Additional Inherited Members

- Public Attributes inherited from URANIE::Modeler::TModeler
Bool_t _blog
 Boolean for edit the log.
 
Bool_t _bdrawProgressBar
 Boolean to know if the progress bar has to be drawn.
 
Bool_t _bStoreYHat
 Boolean to specify if we add the \hat{} attribute in the TDS [default kTRUE].
 
URANIE::DataServer::TDataServer * _tds
 
Int_t _nS
 Pointer to a TDS.
 
TString _sInputAttributes
 The string of input attributes (separated by the character ":".
 
TString _sOutputAttributes
 The string of output attributes (separated by the character ":".
 
TString _sIntermediateArchitecture
 The intermediate (between the first and last character ",") information.
 
TList * _listOfInputAttributes
 The list of input Leaf.
 
TList * _listOfOutputAttributes
 The list of output Leaf.
 
Int_t _nX
 The number of input attributes.
 
Int_t _nY
 The number of output attributes.
 
TString _sFileName
 The name of the file when export the model without extension.
 
TString _sFunctionName
 The name of the function when export the model.
 
TVectorD _parameterValues
 The list of parameters.
 
Double_t _dr2
 The R2 quality.
 
Bool_t _bIntercept
 For certain models, add the intercept (Default is TRUE)
 

Detailed Description

Description of the class TPolynomialMultiDimFit.

To write by the developper. It is a Uranie Wrapper to the ROOT class TMultiDimFit

See also
$ROOTSYS/tutorials/fit/multidimfit.C

Constructor & Destructor Documentation

◆ TPolynomialMultiDimFit() [1/2]

URANIE::Modeler::TPolynomialMultiDimFit::TPolynomialMultiDimFit ( URANIE::DataServer::TDataServer *  tds,
TString  architecture,
TMultiDimFit::EMDFPolyType  type,
Option_t *  option = "" 
)

Default constructor with the TDataServer and architecture.

If you don't want a intercept for the linear regression, put "nointercept" in the option argument.

TPolynomialMultiDimFit * tpr = new TPolynomialMultiDimFit(tds, TString("i1:i2:i3,out"), "nointercept");
tpr->setCriteria(0.977);
tpr->estimate("Q2");
Description of the class TPolynomialMultiDimFit.
Definition TPolynomialMultiDimFit.h:61
void estimate(Option_t *option="")
Parameters
tds(URANIE::DataServer::TDataServer *) the dataserver
architecture(TString)[""] The list of input and output attributes to pass to the function. The names of attributes are separated by the character ":" and the type (Input or Output) are separated by the character ","
option(Option_t *)[""] The option to pass

Referenced by ClassImp().

◆ TPolynomialMultiDimFit() [2/2]

URANIE::Modeler::TPolynomialMultiDimFit::TPolynomialMultiDimFit ( URANIE::DataServer::TDataServer *  tds,
const char *  varexpinput,
const char *  varexpoutput,
TMultiDimFit::EMDFPolyType  type,
Option_t *  option = "" 
)

Default constructor with the TDataServer and input and output attributes.

If you don't want a intercept for the linear regression, put "nointercept" in the option argument.

TPolynomialMultiDimFit * tpr = new TPolynomialMultiDimFit(tds, "i1:i2:i3", "out", "nointercept");
tpr->setCriteria(0.977);
tpr->estimate("Q2");
Parameters
tds(URANIE::DataServer::TDataServer *) the dataserver
varexpinput(const char*) The list of input attributes to pass to the function separated by the caracter ":"
varexpoutput(const char *) The list of output attributes separated by the caracter ":"
option(Option_t *)[""] The option to pass

◆ ~TPolynomialMultiDimFit()

virtual URANIE::Modeler::TPolynomialMultiDimFit::~TPolynomialMultiDimFit ( )
virtual

Default destructor.

Referenced by ClassImp().

Member Function Documentation

◆ estimate()

void URANIE::Modeler::TPolynomialMultiDimFit::estimate ( Option_t *  option = "")

Referenced by ClassImp().

◆ exportModelCplusplus()

void URANIE::Modeler::TPolynomialMultiDimFit::exportModelCplusplus ( std::ofstream *  sourcefile) const
virtual

Export the model in an external file with a specified langage.

It will be the main interface function to the export.

Parameters
lang(const char *) the langage to export (C|Fortran)
file(const char *) the file to export the modeler. If empty, use the name of the model, plus the extension of the langage.
name(const char *) the name of the function in the export file. If empty, use the name of the model
option(Option_t *)[""] The option to pass Export the model in C++ langage in a file
Warning
Nothing to do; It is just to define this else it is an abstract classe.
Don't use this method. Use the main method TModeler::exportFunction.
Parameters
sourcefile(std::ofstream *) the pointer to the file to export the modeler.

Implements URANIE::Modeler::TModeler.

Referenced by ClassImp().

◆ exportModelFortran()

void URANIE::Modeler::TPolynomialMultiDimFit::exportModelFortran ( std::ofstream *  sourcefile) const
virtual

Export the model in Fortran langage in a file.

Warning
Nothing to do; It is just to define this else it is an abstract classe.
Don't use this method. Use the main method TModeler::exportFunction.
Parameters
sourcefile(std::ofstream *) the pointer to the file to export the modeler.

Implements URANIE::Modeler::TModeler.

Referenced by ClassImp().

◆ exportModelPMML()

void URANIE::Modeler::TPolynomialMultiDimFit::exportModelPMML ( const char *  file = "",
const char *  name = "",
Option_t *  option = "" 
) const
inlinevirtual

Export the model in a PMML file (not yet implemented)

Warning
Don't use this method. Use the main method TModeler::exportFunction.
Parameters
sourcefile(std::ofstream *) the pointer to the file to export the modeler.

Implements URANIE::Modeler::TModeler.

◆ exportModelPython()

void URANIE::Modeler::TPolynomialMultiDimFit::exportModelPython ( std::ofstream *  sourcefile) const
inlinevirtual

Export the model in Python langage in a file (not yet implemented)

Warning
Don't use this method. Use the main method TModeler::exportFunction.
Parameters
sourcefile(std::ofstream *) the pointer to the file to export the modeler.

Implements URANIE::Modeler::TModeler.

◆ fillData()

void URANIE::Modeler::TPolynomialMultiDimFit::fillData ( TMatrixD &  Aw,
TVectorD &  yw 
)

Fill the data in a TMatrix and a TVector.

Todo:
To deplace in the TModeler Class because it is the same for TLinearRegression.

Referenced by ClassImp().

◆ getMultiDimFit()

TMultiDimFit * URANIE::Modeler::TPolynomialMultiDimFit::getMultiDimFit ( )
inline

Get the TMultiDimFit ROOT object.

Returns
The TMultiDimFit Root Object

References _MultiDimFit.

◆ printLog()

virtual void URANIE::Modeler::TPolynomialMultiDimFit::printLog ( Option_t *  option = "")
virtual

Reimplemented from URANIE::Modeler::TModeler.

Referenced by ClassImp().

◆ setMaxAngle()

void URANIE::Modeler::TPolynomialMultiDimFit::setMaxAngle ( Double_t  dangle = 0)

Referenced by ClassImp().

◆ setMaxFunctions()

void URANIE::Modeler::TPolynomialMultiDimFit::setMaxFunctions ( Int_t  n)

Referenced by ClassImp().

◆ setMaxPowers()

void URANIE::Modeler::TPolynomialMultiDimFit::setMaxPowers ( const Int_t *  powers)

Referenced by ClassImp().

◆ setMaxStudy()

void URANIE::Modeler::TPolynomialMultiDimFit::setMaxStudy ( Int_t  n)

Referenced by ClassImp().

◆ setMaxTerms()

void URANIE::Modeler::TPolynomialMultiDimFit::setMaxTerms ( Int_t  n)

Referenced by ClassImp().

◆ setMinAngle()

void URANIE::Modeler::TPolynomialMultiDimFit::setMinAngle ( Double_t  dangle = 1)

Referenced by ClassImp().

◆ setMinRelativeError()

void URANIE::Modeler::TPolynomialMultiDimFit::setMinRelativeError ( Double_t  derror)

Referenced by ClassImp().

◆ setPowerLimit()

void URANIE::Modeler::TPolynomialMultiDimFit::setPowerLimit ( Double_t  limit = 1e-3)

Referenced by ClassImp().

◆ setPowers()

void URANIE::Modeler::TPolynomialMultiDimFit::setPowers ( const Int_t *  powers,
Int_t  terms 
)

Referenced by ClassImp().

Member Data Documentation

◆ _MultiDimFit

TMultiDimFit* URANIE::Modeler::TPolynomialMultiDimFit::_MultiDimFit
private

The object TMultiDimFit.

Referenced by ClassImp(), and getMultiDimFit().