void FormatDir()
This protected function gives to the fMyDir TDirectory the structure that is
needed to store the information produced by this class. It creates
directories "Fit" and subdirectories "Fit/Setup" and "Fit/Numbers".
void CleanDir()
This public member function reinitializes the part of the fMyDir directory
structure that belongs to QSigExFit. It removes "Fit" TDirectory and calls
FormatDir().
void ClearCardBuf()
This member function clears the internal variables used to store the
configuration information of this class in card file format
void LoadCardFile(const Char_t* cardfilename)
This public member function reads the card file with filename cardfilename
and saves the information needed by this class in its internal member
variables.
Four cardfile keywords are read by this function: "flux", "variab",
"minimizer" and "minos". The first type of entry specifies different
configuration parameters for the population parameters. The second type
specifies constants that can be used by the parameters fitter function. The
third type specifies which Minuit minimizer has to be used, the "UP" value
on the minimization function used to compute the parameters errors and some
parameters needed by the minimizer. The fourth type is optional and
specifies the maximum number of function calls per parameter allowed in the
MINOs calculations. Refer to Minuit documentation for more details.
Syntax of "flux" card file entries:
flux [fgroup] [active] [startval] [minval] [maxval] [stepval]
where [fgroup] is the flux group (popluation parameter) name, [active] is a
boolean value that indicates if the parameter value is unfixed, [startval]
is the starting parameter value, [minval] and [maxval] the range limits of
the parameter value and [stepval] is the step value used to fit the
parameter.
Syntax of "variab" card file entries:
variab [vname] [vvalue]
where [vname] is the constant name and [vvalue] is the constant value
Syntax of "minimizer" card file entry:
minimizer [minimname] [FCNError] [...] where [minimname] is the Minuit
minimizer name, [FCNError] is the minimization function "UP" value used to
compute the parameters erros, and [...] are the optional minimizer
parameters (see Minuit documentation for more details).
Syntax of "minos" optional card file entry:
minos [maxcalls] where [maxcalls] is the maximum number of function calls
per parameter allowed in the MINOs calculations. If this card file entry is
not used, the default Minuit value is used.
void GetParametersParams()
This protected function reads the "flux" entries from the internal member
variables of QSigExFit and stores the information in
"Fit/Setup/Parameters/[fgroup]" directories as TNamed objects ([fgroup] is
the name of the entry flux group).
void GetConstants()
This protected function reads the "variabs" entries from the internal member
variables of QSigExFit and stores the information in "Fit/Setup/Constants"
TDirectory as TNamed objects.
void GetMinimizerSettings()
This protected member function reads the "minimizer" entry from the internal
variables of QSigExFit and stores the information in "Fit/Setup/Minimizer"
TDirectory as TNamed objects.
void GetMinosSettings()
This protected member function reads the "minos" entry from the internal
variables of QSigExFit and stores the information in "Fit/Setup/MINOs"
TDirectory as TNamed objects.
void SetFCN(void (*fcn)(Int_t&, Double_t*, Double_t&f, Double_t*, Int_t))
This overloaded version of QSigExFit::SetFCN() function is called when fcn is
a compiled function (fcn pointer is passed in compiled code or by the CINT
interpreter). It sets the parameters fitter function.
void SetFCN(void* fcn)
This overloaded version of QSigExFit::SetFCN() function is called when fcn
is an interpreted function by the CINT interpreter. It sets the parameters
fitter function.
Int_t Get()
This function estimates the population parameters values and their
error using the "Probs/JointPDFsProbs/JointPDFsProbs" joint
probability densities TTree, configuration parameters and
constants from the internal member variables (see
QSigExFit::LoadCardFile() for more details on configuration
parameters and fit constants). The parameters fitter function is
defined by calling QSigExFit::SetFCN(). The output of this
function is contained in a set of subfolders in "Fit" TDirectory:
"Fit/Setup/Parameters/[fgroup]", "Fit/Setup/Constants",
"Fit/Setup/Minimizer", "Fit/Setup/MINOs" and
"Fit/Numbers/[fgroup]", where [fgroup] are the flux groups
(parameters names). The subfolder "Fit/Setup" contains the fit
setup information and the subfolder "Fit/Numbers" contains the fit
results and the covariance matrix (TMatrixDSym object) of the
fitted, non-fixed parameters. Each "Fit/Numbers/[fgroup]"
subfolder contains 3 TNamed objects which name is explicit:
-"FitValue"
-"MinusFitError"
-"PlusFitError"
The values of the results are stored in the titles
(TNamed::GetTitle()) of the objects.
The Minuit status is stored in TNamed object Fit/Minuit/Status.
"Fit/Numbers" contains also a fourth TNamed object,
"ActParamIndex" which title is the index of the parameter in the
covariance matrix. This title is "-1" if the parameter is fixed.
This function returns 0
void CheckJointPDFsProbs()
This protected function checks if a "Probs/JointPDFsProbs/JointPDFsProbs"
TTree exists