#include "QSigExGCJointProbs.h" |
QSigExGCJointProbs
class description - header file - source file - inheritance tree (.pdf)
protected:
void CheckCleanData() const
void CheckPDFs() const
void CheckPDFsProbs() const
virtual void FormatDir()
public:
QSigExGCJointProbs()
QSigExGCJointProbs(const QSigExGCJointProbs& rhs)
QSigExGCJointProbs(TDirectory* dir, const Char_t* cardfilename = "NULL")
virtual ~QSigExGCJointProbs()
static TClass* Class()
virtual void CleanDir()
virtual void ClearCardBuf()
virtual Int_t Get()
virtual TClass* IsA() const
virtual void LoadCardFile(const Char_t* cardfilename = "NULL")
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
private:
TDirectory* fProbsDir Pointer to the TDirectory that contains the probabilities
TDirectory* fGCJointProbsDir Pointer to the TDirectory that contains the joint probability densities from the PDFs using gaussian correlations
QSigExGCJointProbs
This class, used with class QSigExGaussCor, allows to compute
joint probability densities of flux groups considering the
correlations between their variables. To achieve this, it can use,
for each variable x, a mapping function y(x) that has a gaussian
distribution, such that the distribution of y(x) variables for
each flux group is multi-gaussian. The covariance matrix of y(x)
variables being computed for each flux group, it is possible to
compute the joint probabilities using the multi-gaussian equation.
The class QSigExGCJointProbs computes the joint probability
densities using already existing covariance matrices and y(x)
mapping functions, as described in QSigExGCJointProbs::Get(). The
output information is stored in a TTree located in
"Probs/JointPDFsProbs".
void FormatDir()
This protected member function gives to the fMyDir TDirectory the structure
that is needed to store the information produced by this class. It creates
TDirectory "PDFs/JointPDFsProbs".
void CleanDir()
This function reinitializes the part of the fMyDir directory structure that
belongs to QSigExGCJointProbs. It removes TDirectory "Probs/JointPDFsProbs".
void LoadCardFile(const Char_t* cardfilename)
This function does actually nothing in this class.
Int_t Get()
This function computes the joint probability densities of correlated or
non-correlated variables. For each event in each flux group, it reads the
marginal probability density from the corresponding TTree in
"Probs/PDFsProbs" and multiply them together, to get the joint probability
density as if the variables of this flux group were not correlated. Then, it
looks in the flux group directories in "PDFs" TDirectory to find covariance
matrices in y variables space (space in which the set of variables have a
multi-gaussian distribution). If this matrix exists, it determines which
marginal PDFs in this flux group are represented in this matrix (using a
"TMatrixIndex" TNamed object in the PDFs directories). For each of these
PDFs, it loads the y(x) mapping function, TF1 object named "GaussMapping"
located in the marginal PDF directory. The function then loops over the
events in the TTree located in "Event Info" main TDirectory (not the one in
the flux groups directories). For each event in each flux group, it uses the
set of y(x) values and the covariance matrix to compute a joint probability
density correlation correction factor. The correlated joint probability
densities are finally computed by multiplying the uncorrelated joint
probability densities by their correction factor. The output of this
function is a "JointPDFsProbs" TTree located in "Probs/JointPDFsPRobs"
TDirectory.
The previously explained algorithm allows to compute joint probability
densities of flux groups for which a covariance matrix has been produced or
not. In addition, all the marginal PDFs in a flux group don't need to be
included in the covariance matrix, in a way that the marginal PDFs that are
not correlated to the other PDFs can be excluded of the correlation
correction process.
The function returns the number of computed joint probability densities
Summary:
Inputs: -TTree objects in "Probs/PDFsProbs"
-When they exist, TMatrixDSym objects (covariance matrices in y
space) in the flux group directories located in "PDFs" TDirectory
-When they exist, "GaussMapping" TF1 objects (y(x) mapping
functions) and "TMatrixIndex" TNamed objects located in the PDFs
directories
-clean TTree located in "Event Info" main TDirectory
Ouput: -"JointPDFsProbs" joint probability densities TTree object located
in "Probs/JointPDFsProbs"
WARNING: THE INPUT TTREES MUST HAVE BRANCHES OF TYPE DOUBLE_T
THE OUTPUT TTREE HAS BRANCHES OF TYPE DOUBLE_T
void CheckPDFs()
This protected function check if "PDFs" TDirectory exists
void CheckPDFsProbs()
This protected function checks if a "Probs/PDFsProbs" TDirectory exists
void CheckCleanData()
This protected function check if "Event Info" TDirectory exists
Author: Pierre-Luc Drouin
Last update: Fri Nov 17 16:35:14 2006
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.