#include <RooMultiVarGaussian.h>
Inheritance diagram for RooMultiVarGaussian:

Public Member Functions | |
| RooMultiVarGaussian () | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const RooFitResult &fr) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const RooArgList &mu, const TMatrixDSym &covMatrix) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const TVectorD &mu, const TMatrixDSym &covMatrix) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const TMatrixDSym &covMatrix) | |
| void | setAnaIntZ (Double_t z) |
| RooMultiVarGaussian (const RooMultiVarGaussian &other, const char *name=0) | |
| virtual TObject * | clone (const char *newname) const |
| virtual | ~RooMultiVarGaussian () |
| Int_t | getAnalyticalIntegral (RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const |
| Double_t | analyticalIntegral (Int_t code, const char *rangeName=0) const |
| Int_t | getGenerator (const RooArgSet &directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const |
| void | initGenerator (Int_t code) |
| void | generateEvent (Int_t code) |
| const TMatrixDSym & | covarianceMatrix () const |
| RooMultiVarGaussian () | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const RooFitResult &fr) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const RooArgList &mu, const TMatrixDSym &covMatrix) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const TVectorD &mu, const TMatrixDSym &covMatrix) | |
| RooMultiVarGaussian (const char *name, const char *title, const RooArgList &xvec, const TMatrixDSym &covMatrix) | |
| void | setAnaIntZ (Double_t z) |
| RooMultiVarGaussian (const RooMultiVarGaussian &other, const char *name=0) | |
| virtual TObject * | clone (const char *newname) const |
| virtual | ~RooMultiVarGaussian () |
| Int_t | getAnalyticalIntegral (RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const |
| Double_t | analyticalIntegral (Int_t code, const char *rangeName=0) const |
| Int_t | getGenerator (const RooArgSet &directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const |
| void | initGenerator (Int_t code) |
| void | generateEvent (Int_t code) |
| const TMatrixDSym & | covarianceMatrix () const |
Static Public Member Functions | |
| static void | blockDecompose (const TMatrixD &input, const vector< int > &map1, const vector< int > &map2, TMatrixDSym &S11, TMatrixD &S12, TMatrixD &S21, TMatrixDSym &S22) |
| static void | blockDecompose (const TMatrixD &input, const vector< int > &map1, const vector< int > &map2, TMatrixDSym &S11, TMatrixD &S12, TMatrixD &S21, TMatrixDSym &S22) |
Protected Member Functions | |
| void | decodeCode (Int_t code, vector< int > &map1, vector< int > &map2) const |
| AnaIntData & | anaIntData (Int_t code) const |
| GenData & | genData (Int_t code) const |
| void | syncMuVec () const |
| Double_t | evaluate () const |
| Do not persist. | |
| void | decodeCode (Int_t code, vector< int > &map1, vector< int > &map2) const |
| AnaIntData & | anaIntData (Int_t code) const |
| GenData & | genData (Int_t code) const |
| void | syncMuVec () const |
| Double_t | evaluate () const |
| Do not persist. | |
Protected Attributes | |
| map< int, AnaIntData > | _anaIntCache |
| map< int, GenData > | _genCache |
| RooListProxy | _x |
| RooListProxy | _mu |
| TMatrixDSym | _cov |
| TMatrixDSym | _covI |
| Double_t | _det |
| Double_t | _z |
| TVectorD | _muVec |
| map< int, AnaIntData > | _anaIntCache |
| map< int, GenData > | _genCache |
Classes | |
| class | AnaIntData |
| class | GenData |
Definition at line 28 of file RooMultiVarGaussian.h.
| RooMultiVarGaussian::RooMultiVarGaussian | ( | ) | [inline] |
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const RooFitResult & | fr | |||
| ) |
Definition at line 64 of file RooMultiVarGaussian.cxx.
References _cov, _covI, _det, _mu, _x, RooListProxy::add(), RooListProxy::addOwned(), RooArgList::at(), RooAbsArg::Clone(), TMatrixTSym< Element >::Determinant(), RooAbsCollection::find(), RooFitResult::floatParsFinal(), Form(), TNamed::GetName(), RooAbsCollection::getSize(), i, TMatrixTSym< Element >::Invert(), kTRUE, and RooAbsRealLValue::setConstant().
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const RooArgList & | mu, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
Definition at line 43 of file RooMultiVarGaussian.cxx.
References _cov, _covI, _det, _mu, _x, RooListProxy::add(), TMatrixTSym< Element >::Determinant(), and TMatrixTSym< Element >::Invert().
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const TVectorD & | mu, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
Definition at line 100 of file RooMultiVarGaussian.cxx.
References _cov, _covI, _det, _mu, _x, RooListProxy::add(), TMatrixTSym< Element >::Determinant(), TVectorT< Element >::GetNrows(), i, TMatrixTSym< Element >::Invert(), and RooFit::RooConst().
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
Definition at line 122 of file RooMultiVarGaussian.cxx.
References _cov, _covI, _det, _mu, _x, RooListProxy::add(), TMatrixTSym< Element >::Determinant(), RooAbsCollection::getSize(), i, TMatrixTSym< Element >::Invert(), and RooFit::RooConst().
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const RooMultiVarGaussian & | other, | |
| const char * | name = 0 | |||
| ) |
Definition at line 147 of file RooMultiVarGaussian.cxx.
| virtual RooMultiVarGaussian::~RooMultiVarGaussian | ( | ) | [inline, virtual] |
Definition at line 40 of file RooMultiVarGaussian.h.
| RooMultiVarGaussian::RooMultiVarGaussian | ( | ) | [inline] |
Definition at line 31 of file RooMultiVarGaussian.h.
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const RooFitResult & | fr | |||
| ) |
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const RooArgList & | mu, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const TVectorD & | mu, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const char * | name, | |
| const char * | title, | |||
| const RooArgList & | xvec, | |||
| const TMatrixDSym & | covMatrix | |||
| ) |
| RooMultiVarGaussian::RooMultiVarGaussian | ( | const RooMultiVarGaussian & | other, | |
| const char * | name = 0 | |||
| ) |
| virtual RooMultiVarGaussian::~RooMultiVarGaussian | ( | ) | [inline, virtual] |
Definition at line 40 of file RooMultiVarGaussian.h.
| void RooMultiVarGaussian::setAnaIntZ | ( | Double_t | z | ) | [inline] |
| virtual TObject* RooMultiVarGaussian::clone | ( | const char * | newname | ) | const [inline, virtual] |
Implements RooAbsArg.
Definition at line 39 of file RooMultiVarGaussian.h.
References RooMultiVarGaussian().
| Int_t RooMultiVarGaussian::getAnalyticalIntegral | ( | RooArgSet & | allVars, | |
| RooArgSet & | analVars, | |||
| const char * | rangeName = 0 | |||
| ) | const [virtual] |
Reimplemented from RooAbsReal.
Definition at line 185 of file RooMultiVarGaussian.cxx.
References _cov, _muVec, _x, _z, RooArgSet::add(), RooArgList::at(), code, coutW, cxcoutD, RooAbsCollection::find(), RooAbsRealLValue::getMax(), RooAbsRealLValue::getMin(), TNamed::GetName(), RooAbsCollection::getSize(), i, RooFit::Integration, sqrt(), and syncMuVec().
| Double_t RooMultiVarGaussian::analyticalIntegral | ( | Int_t | code, | |
| const char * | rangeName = 0 | |||
| ) | const [virtual] |
Reimplemented from RooAbsReal.
Definition at line 229 of file RooMultiVarGaussian.cxx.
References _det, _muVec, _x, anaIntData(), RooArgList::at(), exp(), ROOT::Math::fabs(), RooAbsCollection::getSize(), RooAbsPdf::getVal(), i, RooMultiVarGaussian::AnaIntData::nint, RooMultiVarGaussian::AnaIntData::pmap, pow(), RooMultiVarGaussian::AnaIntData::S22bar, RooMultiVarGaussian::AnaIntData::S22det, sqrt(), syncMuVec(), and u.
| Int_t RooMultiVarGaussian::getGenerator | ( | const RooArgSet & | directVars, | |
| RooArgSet & | generateVars, | |||
| Bool_t | staticInitOK = kTRUE | |||
| ) | const [virtual] |
Reimplemented from RooAbsPdf.
Definition at line 310 of file RooMultiVarGaussian.cxx.
References _x, RooArgSet::add(), RooArgList::at(), code, coutW, RooAbsCollection::find(), TNamed::GetName(), RooAbsCollection::getSize(), i, and RooFit::Integration.
| void RooMultiVarGaussian::initGenerator | ( | Int_t | code | ) | [virtual] |
Reimplemented from RooAbsPdf.
Definition at line 342 of file RooMultiVarGaussian.cxx.
References _genCache.
| void RooMultiVarGaussian::generateEvent | ( | Int_t | code | ) | [virtual] |
Reimplemented from RooAbsPdf.
Definition at line 354 of file RooMultiVarGaussian.cxx.
References _x, RooArgList::at(), RooRandom::gaussian(), genData(), TMatrixTBase< Element >::GetNcols(), RooAbsPdf::getVal(), i, k, kFALSE, kTRUE, RooMultiVarGaussian::GenData::mu1, RooMultiVarGaussian::GenData::mu2, ok, RooMultiVarGaussian::GenData::omap, RooMultiVarGaussian::GenData::pmap, RooMultiVarGaussian::GenData::S12S22I, RooMultiVarGaussian::GenData::UT, and x2.
| const TMatrixDSym& RooMultiVarGaussian::covarianceMatrix | ( | ) | const [inline] |
| void RooMultiVarGaussian::blockDecompose | ( | const TMatrixD & | input, | |
| const vector< int > & | map1, | |||
| const vector< int > & | map2, | |||
| TMatrixDSym & | S11, | |||
| TMatrixD & | S12, | |||
| TMatrixD & | S21, | |||
| TMatrixDSym & | S22 | |||
| ) | [static] |
Definition at line 531 of file RooMultiVarGaussian.cxx.
References i, j, TMatrixTSym< Element >::ResizeTo(), and TMatrixT< Element >::ResizeTo().
Referenced by anaIntData(), RooFitResult::createHessePdf(), G__G__RooFitCore3_762_0_15(), G__setup_memfuncRooMultiVarGaussian(), genData(), and RooFitResult::reducedCovarianceMatrix().
| void RooMultiVarGaussian::decodeCode | ( | Int_t | code, | |
| vector< int > & | map1, | |||
| vector< int > & | map2 | |||
| ) | const [protected] |
Definition at line 514 of file RooMultiVarGaussian.cxx.
References _x, RooAbsCollection::getSize(), and i.
Referenced by anaIntData(), and genData().
| RooMultiVarGaussian::AnaIntData & RooMultiVarGaussian::anaIntData | ( | Int_t | code | ) | const [protected] |
Definition at line 257 of file RooMultiVarGaussian.cxx.
References _anaIntCache, _covI, blockDecompose(), decodeCode(), TMatrixTSym< Element >::Determinant(), TMatrixT< Element >::Invert(), RooMultiVarGaussian::AnaIntData::nint, RooMultiVarGaussian::AnaIntData::pmap, TMatrixT< Element >::ResizeTo(), RooMultiVarGaussian::AnaIntData::S22bar, and RooMultiVarGaussian::AnaIntData::S22det.
Referenced by analyticalIntegral().
| RooMultiVarGaussian::GenData & RooMultiVarGaussian::genData | ( | Int_t | code | ) | const [protected] |
Definition at line 420 of file RooMultiVarGaussian.cxx.
References _cov, _genCache, _muVec, _x, blockDecompose(), decodeCode(), TDecompChol::Decompose(), RooAbsCollection::getSize(), TDecompChol::GetU(), i, TMatrixT< Element >::kInverted, TMatrixT< Element >::kTransposed, RooMultiVarGaussian::GenData::mu1, RooMultiVarGaussian::GenData::mu2, RooMultiVarGaussian::GenData::omap, RooMultiVarGaussian::GenData::pmap, TMatrixT< Element >::ResizeTo(), TVectorT< Element >::ResizeTo(), RooMultiVarGaussian::GenData::S12S22I, syncMuVec(), and RooMultiVarGaussian::GenData::UT.
Referenced by generateEvent().
| void RooMultiVarGaussian::syncMuVec | ( | ) | const [protected] |
Definition at line 156 of file RooMultiVarGaussian.cxx.
References _mu, _muVec, RooArgList::at(), RooAbsCollection::getSize(), RooAbsPdf::getVal(), i, and TVectorT< Element >::ResizeTo().
Referenced by analyticalIntegral(), evaluate(), genData(), and getAnalyticalIntegral().
| Double_t RooMultiVarGaussian::evaluate | ( | ) | const [protected, virtual] |
Do not persist.
Implements RooAbsReal.
Definition at line 166 of file RooMultiVarGaussian.cxx.
References _covI, _muVec, _x, RooArgList::at(), exp(), RooAbsCollection::getSize(), RooAbsPdf::getVal(), i, syncMuVec(), and x.
| void RooMultiVarGaussian::setAnaIntZ | ( | Double_t | z | ) | [inline] |
| virtual TObject* RooMultiVarGaussian::clone | ( | const char * | newname | ) | const [inline, virtual] |
Implements RooAbsArg.
Definition at line 39 of file RooMultiVarGaussian.h.
References RooMultiVarGaussian().
| Int_t RooMultiVarGaussian::getAnalyticalIntegral | ( | RooArgSet & | allVars, | |
| RooArgSet & | analVars, | |||
| const char * | rangeName = 0 | |||
| ) | const [virtual] |
Reimplemented from RooAbsReal.
| Double_t RooMultiVarGaussian::analyticalIntegral | ( | Int_t | code, | |
| const char * | rangeName = 0 | |||
| ) | const [virtual] |
Reimplemented from RooAbsReal.
| Int_t RooMultiVarGaussian::getGenerator | ( | const RooArgSet & | directVars, | |
| RooArgSet & | generateVars, | |||
| Bool_t | staticInitOK = kTRUE | |||
| ) | const [virtual] |
Reimplemented from RooAbsPdf.
| const TMatrixDSym& RooMultiVarGaussian::covarianceMatrix | ( | ) | const [inline] |
| static void RooMultiVarGaussian::blockDecompose | ( | const TMatrixD & | input, | |
| const vector< int > & | map1, | |||
| const vector< int > & | map2, | |||
| TMatrixDSym & | S11, | |||
| TMatrixD & | S12, | |||
| TMatrixD & | S21, | |||
| TMatrixDSym & | S22 | |||
| ) | [static] |
| void RooMultiVarGaussian::decodeCode | ( | Int_t | code, | |
| vector< int > & | map1, | |||
| vector< int > & | map2 | |||
| ) | const [protected] |
| AnaIntData& RooMultiVarGaussian::anaIntData | ( | Int_t | code | ) | const [protected] |
| void RooMultiVarGaussian::syncMuVec | ( | ) | const [protected] |
| Double_t RooMultiVarGaussian::evaluate | ( | ) | const [protected, virtual] |
map<int,AnaIntData> RooMultiVarGaussian::_anaIntCache [mutable, protected] |
map<int,GenData> RooMultiVarGaussian::_genCache [mutable, protected] |
RooListProxy RooMultiVarGaussian::_x [protected] |
Definition at line 80 of file RooMultiVarGaussian.h.
Referenced by analyticalIntegral(), decodeCode(), evaluate(), genData(), generateEvent(), getAnalyticalIntegral(), getGenerator(), and RooMultiVarGaussian().
RooListProxy RooMultiVarGaussian::_mu [protected] |
Definition at line 81 of file RooMultiVarGaussian.h.
Referenced by RooMultiVarGaussian(), and syncMuVec().
TMatrixDSym RooMultiVarGaussian::_cov [protected] |
Definition at line 82 of file RooMultiVarGaussian.h.
Referenced by covarianceMatrix(), genData(), getAnalyticalIntegral(), and RooMultiVarGaussian().
TMatrixDSym RooMultiVarGaussian::_covI [protected] |
Definition at line 83 of file RooMultiVarGaussian.h.
Referenced by anaIntData(), evaluate(), and RooMultiVarGaussian().
Double_t RooMultiVarGaussian::_det [protected] |
Definition at line 84 of file RooMultiVarGaussian.h.
Referenced by analyticalIntegral(), and RooMultiVarGaussian().
Double_t RooMultiVarGaussian::_z [protected] |
Definition at line 85 of file RooMultiVarGaussian.h.
Referenced by getAnalyticalIntegral(), and setAnaIntZ().
TVectorD RooMultiVarGaussian::_muVec [mutable, protected] |
Definition at line 88 of file RooMultiVarGaussian.h.
Referenced by analyticalIntegral(), evaluate(), genData(), getAnalyticalIntegral(), and syncMuVec().
map<int,AnaIntData> RooMultiVarGaussian::_anaIntCache [mutable, protected] |
Definition at line 77 of file RooMultiVarGaussian.h.
map<int,GenData> RooMultiVarGaussian::_genCache [mutable, protected] |
Definition at line 78 of file RooMultiVarGaussian.h.
1.5.1