+
class RooProdPdf
-
library: libRooFitCore
#include "RooProdPdf.h"
Display options:
Show inherited
Show non-public

class RooProdPdf: public RooAbsPdf

Function Members (Methods)

public:
RooProdPdf(const RooProdPdf& other, const char* name = 0)
RooProdPdf(const char* name, const char* title, Double_t cutOff = 0)
RooProdPdf(const char* name, const char* title, const RooArgList& pdfList, Double_t cutOff = 0)
RooProdPdf(const char* name, const char* title, const RooArgSet& fullPdfSet, const RooLinkedList& cmdArgList)
RooProdPdf(const char* name, const char* title, RooAbsPdf& pdf1, RooAbsPdf& pdf2, Double_t cutOff = 0)
RooProdPdf(const char* name, const char* title, const RooArgSet& fullPdfSet, const RooCmdArg& arg1, const RooCmdArg& arg2 = RooCmdArg(), const RooCmdArg& arg3 = RooCmdArg(), const RooCmdArg& arg4 = RooCmdArg(), const RooCmdArg& arg5 = RooCmdArg(), const RooCmdArg& arg6 = RooCmdArg(), const RooCmdArg& arg7 = RooCmdArg(), const RooCmdArg& arg8 = RooCmdArg())
virtual~RooProdPdf()
voidTObject::AbstractMethod(const char* method) const
virtual Double_tRooAbsReal::analyticalIntegral(Int_t code, const char* rangeName = 0) const
virtual Double_tanalyticalIntegralWN(Int_t code, const RooArgSet* normSet, const char* rangeName = 0) const
virtual voidTObject::AppendPad(Option_t* option = "")
voidRooAbsArg::attachDataSet(const RooAbsData& set)
TIterator*RooAbsArg::attribIterator() const
RooAbsFunc*RooAbsReal::bindVars(const RooArgSet& vars, const RooArgSet* nset = 0, Bool_t clipInvalid = kFALSE) const
voidRooAbsArg::branchNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
virtual voidTObject::Browse(TBrowser* b)
Bool_tRooAbsPdf::canBeExtended() const
Bool_tRooAbsArg::checkDependents(const RooArgSet* nset) const
virtual Bool_tcheckObservables(const RooArgSet* nset) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
static voidRooAbsPdf::clearEvalError()
TIterator*RooAbsArg::clientIterator() const
virtual TObject*clone(const char* newname) const
virtual TObject*RooAbsArg::Clone(const char* newname = 0) const
virtual Int_tRooAbsArg::Compare(const TObject* other) const
virtual voidRooAbsArg::constOptimize(RooAbsArg::ConstOpCode opcode)
virtual voidTNamed::Copy(TObject& named) const
static voidRooAbsArg::copyList(TList& dest, const TList& source)
virtual RooAbsArg*RooAbsReal::createFundamental(const char* newname = 0) const
TH1*RooAbsReal::createHistogram(const char* name, const RooAbsRealLValue& xvar, const RooCmdArg& arg1 = RooCmdArg::none, const RooCmdArg& arg2 = RooCmdArg::none, const RooCmdArg& arg3 = RooCmdArg::none, const RooCmdArg& arg4 = RooCmdArg::none, const RooCmdArg& arg5 = RooCmdArg::none, const RooCmdArg& arg6 = RooCmdArg::none, const RooCmdArg& arg7 = RooCmdArg::none, const RooCmdArg& arg8 = RooCmdArg::none) const
RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const char* rangeName) const
RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const RooArgSet& nset, const char* rangeName = 0) const
RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const RooNumIntConfig& cfg, const char* rangeName = 0) const
RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const RooArgSet& nset, const RooNumIntConfig& cfg, const char* rangeName = 0) const
virtual RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const RooArgSet* nset = 0, const RooNumIntConfig* cfg = 0, const char* rangeName = 0) const
RooAbsReal*RooAbsReal::createIntegral(const RooArgSet& iset, const RooCmdArg arg1, const RooCmdArg arg2 = RooCmdArg::none, const RooCmdArg arg3 = RooCmdArg::none, const RooCmdArg arg4 = RooCmdArg::none, const RooCmdArg arg5 = RooCmdArg::none, const RooCmdArg arg6 = RooCmdArg::none, const RooCmdArg arg7 = RooCmdArg::none, const RooCmdArg arg8 = RooCmdArg::none) const
const RooAbsReal*RooAbsReal::createProjection(const RooArgSet& depVars, const RooArgSet& projVars) const
const RooAbsReal*RooAbsReal::createProjection(const RooArgSet& depVars, const RooArgSet& projVars, RooArgSet*& cloneSet) const
virtual Double_tRooAbsReal::defaultErrorLevel() const
static RooNumIntConfig*RooAbsReal::defaultIntegratorConfig()
static ostream&RooPrintable::defaultStream(ostream* os = 0)
virtual voidTObject::Delete(Option_t* option = "")
Bool_tRooAbsArg::deleteWatch() const
Bool_tRooAbsArg::dependentOverlaps(const RooAbsData* dset, const RooAbsArg& testArg) const
Bool_tRooAbsArg::dependentOverlaps(const RooArgSet* depList, const RooAbsArg& testArg) const
Bool_tRooAbsArg::dependsOn(const RooAbsCollection& serverList, const RooAbsArg* ignoreArg = 0) const
Bool_tRooAbsArg::dependsOn(const RooAbsArg& server, const RooAbsArg* ignoreArg = 0) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
static Bool_tRooAbsPdf::evalError()
virtual Double_tevaluate() const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual Double_texpectedEvents(const RooArgSet* nset) const
virtual Double_texpectedEvents(const RooArgSet& nset) const
virtual Double_tRooAbsPdf::extendedTerm(UInt_t observedEvents, const RooArgSet* nset = 0) const
virtual RooAbsPdf::ExtendModeextendMode() const
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
TH1*RooAbsReal::fillHistogram(TH1* hist, const RooArgList& plotVars, Double_t scaleFactor = 1, const RooArgSet* projectedVars = 0) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
RooAbsArg*RooAbsArg::findServer(const char* name) const
RooAbsArg*RooAbsArg::findServer(const RooAbsArg& arg) const
RooAbsArg*RooAbsArg::findServer(Int_t index) const
virtual RooFitResult*RooAbsPdf::fitTo(RooAbsData& data, const RooLinkedList& cmdList)
virtual RooFitResult*RooAbsPdf::fitTo(RooAbsData& data, Option_t* fitOpt = "", Option_t* optOpt = "c", const char* fitRange = 0)
virtual RooFitResult*RooAbsPdf::fitTo(RooAbsData& data, const RooArgSet& projDeps, Option_t* fitOpt = "", Option_t* optOpt = "c", const char* fitRange = 0)
virtual RooFitResult*RooAbsPdf::fitTo(RooAbsData& data, RooCmdArg arg1, RooCmdArg arg2 = RooCmdArg::none, RooCmdArg arg3 = RooCmdArg::none, RooCmdArg arg4 = RooCmdArg::none, RooCmdArg arg5 = RooCmdArg::none, RooCmdArg arg6 = RooCmdArg::none, RooCmdArg arg7 = RooCmdArg::none, RooCmdArg arg8 = RooCmdArg::none)
virtual voidRooAbsPdf::fixAddCoefNormalization(const RooArgSet& addNormSet = RooArgSet())
virtual voidRooAbsPdf::fixAddCoefRange(const char* rangeName = 0)
virtual Bool_tforceAnalyticalInt(const RooAbsArg& dep) const
virtual voidRooAbsReal::forceNumInt(Bool_t flag = kTRUE)
RooDataSet*RooAbsPdf::generate(const RooArgSet& whatVars, Int_t nEvents = 0, Bool_t verbose = kFALSE) const
RooDataSet*RooAbsPdf::generate(const RooArgSet& whatVars, const RooDataSet& prototype, Int_t nEvents = 0, Bool_t verbose = kFALSE, Bool_t randProtoOrder = kFALSE, Bool_t resampleProto = kFALSE) const
RooDataSet*RooAbsPdf::generate(const RooArgSet& whatVars, Int_t nEvents, const RooCmdArg& arg1, const RooCmdArg& arg2 = RooCmdArg::none, const RooCmdArg& arg3 = RooCmdArg::none, const RooCmdArg& arg4 = RooCmdArg::none, const RooCmdArg& arg5 = RooCmdArg::none)
RooDataSet*RooAbsPdf::generate(const RooArgSet& whatVars, const RooCmdArg& arg1 = RooCmdArg::none, const RooCmdArg& arg2 = RooCmdArg::none, const RooCmdArg& arg3 = RooCmdArg::none, const RooCmdArg& arg4 = RooCmdArg::none, const RooCmdArg& arg5 = RooCmdArg::none, const RooCmdArg& arg6 = RooCmdArg::none)
virtual voidgenerateEvent(Int_t code)
virtual Int_tRooAbsReal::getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName = 0) const
virtual Int_tgetAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& numVars, const RooArgSet* normSet, const char* rangeName = 0) const
Bool_tRooAbsArg::getAttribute(const Text_t* name) const
RooLinkedListRooAbsArg::getCloningAncestors() const
RooArgSet*RooAbsArg::getComponents() const
RooArgSet*RooAbsArg::getDependents(const RooArgSet& set) const
RooArgSet*RooAbsArg::getDependents(const RooAbsData* set) const
RooArgSet*RooAbsArg::getDependents(const RooArgSet* depList) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tgetGenerator(const RooArgSet& directVars, RooArgSet& generateVars, Bool_t staticInitOK = kTRUE) const
virtual const char*TObject::GetIconName() const
const RooNumIntConfig*RooAbsReal::getIntegratorConfig() const
Double_tRooAbsPdf::getLogVal(const RooArgSet* set = 0) const
virtual Int_tRooAbsReal::getMaxVal(const RooArgSet& vars) const
virtual const char*TNamed::GetName() const
Double_tRooAbsPdf::getNorm(const RooArgSet& nset) const
virtual Double_tRooAbsPdf::getNorm(const RooArgSet* set = 0) const
virtual const RooAbsReal*RooAbsPdf::getNormObj(const RooArgSet* set, const RooArgSet* iset, const TNamed* rangeName = 0) const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
RooArgSet*RooAbsArg::getObservables(const RooArgSet& set) const
RooArgSet*RooAbsArg::getObservables(const RooAbsData* data) const
RooArgSet*RooAbsArg::getObservables(const RooAbsData& data) const
virtual RooArgSet*RooAbsArg::getObservables(const RooArgSet* depList) const
virtual Option_t*TObject::GetOption() const
RooArgSet*RooAbsArg::getParameters(const RooAbsData* data) const
RooArgSet*RooAbsArg::getParameters(const RooAbsData& data) const
RooArgSet*RooAbsArg::getParameters(const RooArgSet& set) const
virtual RooArgSet*RooAbsArg::getParameters(const RooArgSet* depList) const
virtual Int_tRooAbsReal::getPlotBins() const
const char*RooAbsReal::getPlotLabel() const
Double_tRooAbsReal::getPlotMax() const
Double_tRooAbsReal::getPlotMin() const
virtual const char*TNamed::GetTitle() const
TStringRooAbsReal::getTitle(Bool_t appendUnit = kFALSE) const
virtual UInt_tTObject::GetUniqueID() const
const Text_t*RooAbsReal::getUnit() const
virtual Double_tgetVal(const RooArgSet* set = 0) const
RooArgSet*RooAbsArg::getVariables() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual Bool_tRooAbsArg::hasRange(const char*) const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidinitGenerator(Int_t code)
static voidRooPrintable::inLinePrint(ostream& os, const TNamed& named)
virtual Bool_tRooAbsReal::inPlotRange(Double_t value) const
virtual Bool_tRooAbsArg::inRange(const char*) const
virtual voidTObject::Inspect() const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tRooAbsArg::isCloneOf(const RooAbsArg& other) const
Bool_tRooAbsArg::isConstant() const
virtual Bool_tRooAbsArg::isDerived() const
virtual Bool_tisDirectGenSafe(const RooAbsArg& arg) const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tRooAbsArg::isFundamental() const
virtual Bool_tRooAbsArg::isLValue() const
Bool_tTObject::IsOnHeap() const
Bool_tRooAbsPdf::isSelectedComp() const
Bool_tRooAbsArg::isShapeServer(const RooAbsArg& arg) const
Bool_tRooAbsArg::isShapeServer(const char* name) const
virtual Bool_tRooAbsArg::IsSortable() const
Bool_tRooAbsArg::isValueServer(const RooAbsArg& arg) const
Bool_tRooAbsArg::isValueServer(const char* name) const
Bool_tTObject::IsZombie() const
voidRooAbsArg::leafNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
RooPrintable::PrintOptionRooPrintable::lessVerbose(RooPrintable::PrintOption opt) const
virtual voidTNamed::ls(Option_t* option = "") const
virtual Double_tRooAbsReal::maxVal(Int_t code)
voidTObject::MayNotUse(const char* method) const
Bool_tRooAbsPdf::mustBeExtended() const
static voidRooAbsArg::nameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
Bool_tRooAbsArg::observableOverlaps(const RooAbsData* dset, const RooAbsArg& testArg) const
Bool_tRooAbsArg::observableOverlaps(const RooArgSet* depList, const RooAbsArg& testArg) const
static voidRooPrintable::oneLinePrint(ostream& os, const TNamed& named)
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TNamed&TNamed::operator=(const TNamed& rhs)
Bool_tRooAbsReal::operator==(Double_t value) const
virtual Bool_tRooAbsReal::operator==(const RooAbsArg& other)
Bool_tRooAbsArg::overlaps(const RooAbsArg& testArg) const
virtual voidTObject::Paint(Option_t* option = "")
virtual RooPlot*RooAbsPdf::paramOn(RooPlot* frame, const RooAbsData* data, const char* label = "", Int_t sigDigits = 2, Option_t* options = "NELU", Double_t xmin = 0.65, Double_t xmax = 0.99, Double_t ymax = 0.95)
virtual RooPlot*RooAbsPdf::paramOn(RooPlot* frame, const RooCmdArg& arg1 = RooCmdArg::none, const RooCmdArg& arg2 = RooCmdArg::none, const RooCmdArg& arg3 = RooCmdArg::none, const RooCmdArg& arg4 = RooCmdArg::none, const RooCmdArg& arg5 = RooCmdArg::none, const RooCmdArg& arg6 = RooCmdArg::none, const RooCmdArg& arg7 = RooCmdArg::none, const RooCmdArg& arg8 = RooCmdArg::none)
RooPrintable::PrintOptionRooPrintable::parseOptions(Option_t* options) const
const RooArgList&pdfList() const
virtual RooPlot*RooAbsPdf::plotCompOn(RooPlot* frame, const char* compNameList, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0, const RooArgSet* projSet = 0) const
virtual RooPlot*RooAbsPdf::plotCompOn(RooPlot* frame, const RooArgSet& compSet, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0, const RooArgSet* projSet = 0) const
virtual RooPlot*RooAbsPdf::plotCompSliceOn(RooPlot* frame, const char* compNameList, const RooArgSet& sliceSet, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0) const
virtual RooPlot*RooAbsPdf::plotCompSliceOn(RooPlot* frame, const RooArgSet& compSet, const RooArgSet& sliceSet, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0) const
RooPlot*RooAbsPdf::plotNLLOn(RooPlot* frame, RooDataSet* data, Option_t* drawOptions = "L", Double_t prec = 1e-2, Bool_t fixMinToZero = kTRUE)
virtual RooPlot*RooAbsPdf::plotNLLOn(RooPlot* frame, RooDataSet* data, Bool_t extended, Option_t* drawOptions = "L", Double_t prec = 1e-2, Bool_t fixMinToZero = kTRUE)
virtual RooPlot*RooAbsPdf::plotNLLOn(RooPlot* frame, RooDataSet* data, Bool_t extended, const RooArgSet& projDeps, Option_t* drawOptions = "L", Double_t prec = 1e-2, Bool_t fixMinToZero = kTRUE)
virtual RooPlot*RooAbsPdf::plotOn(RooPlot* frame, const RooCmdArg& arg1 = RooCmdArg::none, const RooCmdArg& arg2 = RooCmdArg::none, const RooCmdArg& arg3 = RooCmdArg::none, const RooCmdArg& arg4 = RooCmdArg::none, const RooCmdArg& arg5 = RooCmdArg::none, const RooCmdArg& arg6 = RooCmdArg::none, const RooCmdArg& arg7 = RooCmdArg::none, const RooCmdArg& arg8 = RooCmdArg::none, const RooCmdArg& arg9 = RooCmdArg::none, const RooCmdArg& arg10 = RooCmdArg::none) const
virtual RooPlot*RooAbsReal::plotSliceOn(RooPlot* frame, const RooArgSet& sliceSet, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0) const
virtual voidTObject::Pop()
virtual voidRooAbsArg::Print(Option_t* options = 0) const
voidRooAbsArg::printCompactTree(const char* indent = "", const char* fileName = 0, const char* namePat = 0)
voidRooAbsArg::printCompactTree(ostream& os, const char* indent = "", const char* namePat = 0)
voidRooAbsArg::printDirty(Bool_t depth = kTRUE) const
virtual voidRooAbsPdf::printToStream(ostream& stream, RooPrintable::PrintOption opt = Standard, TString indent = "") const
virtual Int_tTObject::Read(const char* name)
virtual Bool_tRooAbsReal::readFromStream(istream& is, Bool_t compact, Bool_t verbose = kFALSE)
Bool_tRooAbsArg::recursiveCheckDependents(const RooArgSet* nset) const
Bool_tRooAbsArg::recursiveCheckObservables(const RooArgSet* nset) const
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidRooAbsPdf::resetErrorCounters(Int_t resetValue = 10)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
virtual Bool_tselfNormalized() const
TIterator*RooAbsArg::serverIterator() const
voidRooAbsArg::setAttribute(const Text_t* name, Bool_t value = kTRUE)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
static voidRooAbsReal::setCacheCheck(Bool_t flag)
voidRooAbsArg::setDeleteWatch(Bool_t flag = kTRUE)
static voidRooAbsArg::setDirtyInhibit(Bool_t flag)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
voidRooAbsReal::setIntegratorConfig()
voidRooAbsReal::setIntegratorConfig(const RooNumIntConfig& config)
virtual voidTNamed::SetName(const char* name)
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidRooAbsReal::setPlotBins(Int_t value)
voidRooAbsReal::setPlotLabel(const char* label)
voidRooAbsReal::setPlotMax(Double_t value)
voidRooAbsReal::setPlotMin(Double_t value)
voidRooAbsReal::setPlotRange(Double_t min, Double_t max)
virtual voidTNamed::SetTitle(const char* title = "")
voidRooAbsPdf::setTraceCounter(Int_t value, Bool_t allNodes = kFALSE)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidRooAbsReal::setUnit(const char* unit)
TIterator*RooAbsArg::shapeClientIterator() const
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
RooNumIntConfig*RooAbsReal::specialIntegratorConfig() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual Bool_tRooAbsPdf::traceEvalHook(Double_t value) const
Bool_tRooAbsPdf::traceEvalPdf(Double_t value) const
voidRooAbsArg::treeNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0, Bool_t doBranch = kTRUE, Bool_t doLeaf = kTRUE, Bool_t valueOnly = kFALSE) const
virtual voidTObject::UseCurrentStyle()
TIterator*RooAbsArg::valueClientIterator() const
static voidRooAbsArg::verboseDirty(Bool_t flag)
static intRooAbsPdf::verboseEval()
static voidRooAbsPdf::verboseEval(Int_t stat)
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual voidRooAbsReal::writeToStream(ostream& os, Bool_t compact) const
protected:
voidRooAbsArg::addServer(RooAbsArg& server, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
voidRooAbsArg::addServerList(RooAbsCollection& serverList, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
Bool_tRooAbsReal::allClientsCached(RooAbsArg* var, RooArgSet& cacheList)
virtual voidRooAbsReal::attachToTree(TTree& t, Int_t bufSize = 32000)
Double_tcalculate(const RooArgList* partIntList, const RooLinkedList* normSetList) const
voidRooAbsArg::changeServer(RooAbsArg& server, Bool_t valueProp, Bool_t shapeProp)
TStringRooAbsArg::cleanBranchName() const
voidclearCache()
voidRooAbsArg::clearShapeDirty() const
voidRooAbsArg::clearValueDirty() const
virtual voidRooAbsReal::copyCache(const RooAbsArg* source)
UInt_tRooAbsArg::crc32(const char* data) const
const RooAbsReal*RooAbsReal::createProjection(const RooArgSet& dependentVars, const RooArgSet* projectedVars, RooArgSet*& cloneSet, const char* rangeName = 0) const
voidRooAbsReal::doConstOpt(RooAbsData& dataset, const RooArgSet* normSet, Bool_t verbose)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidfactorizeProduct(const RooArgSet& normSet, const RooArgSet& intSet, RooLinkedList& termList, RooLinkedList& normList, RooLinkedList& impDepList, RooLinkedList& crossDepList, RooLinkedList& intList) const
virtual voidRooAbsReal::fillTreeBranch(TTree& t)
Bool_tRooAbsReal::findCacheableBranches(RooAbsArg* arg, RooAbsData* dset, RooArgSet& cacheList, const RooArgSet* normSet, Bool_t verbose)
RooAbsArg*RooAbsArg::findNewServer(const RooAbsCollection& newSet, Bool_t nameChange) const
RooArgSet*findPdfNSet(RooAbsPdf& pdf) const
voidRooAbsReal::findRedundantCacheServers(RooAbsData* dset, RooArgSet& cacheList, RooArgSet& pruneList, Bool_t verbose)
voidRooAbsReal::findUnusedDataVariables(RooAbsData* dset, RooArgSet& pruneList, Bool_t verbose)
virtual RooAbsGenContext*genContext(const RooArgSet& vars, const RooDataSet* prototype = 0, const RooArgSet* auxProto = 0, Bool_t verbose = kFALSE) const
virtual voidRooAbsArg::getObservablesHook(const RooArgSet*, RooArgSet*) const
virtual voidRooAbsArg::getParametersHook(const RooArgSet*, RooArgSet*) const
voidgetPartIntList(const RooArgSet* nset, const RooArgSet* iset, RooArgList*& partList, RooLinkedList*& nsetList, Int_t& code, const char* isetRangeName = 0) const
RooAbsProxy*RooAbsArg::getProxy(Int_t index) const
static voidRooAbsPdf::globalSelectComp(Bool_t flag)
voidgroupProductTerms(RooLinkedList& groupedTerms, RooArgSet& outerIntDeps, const RooLinkedList& terms, const RooLinkedList& norms, const RooLinkedList& imps, const RooLinkedList& ints, const RooLinkedList& cross) const
voidinitializeFromCmdArgList(const RooArgSet& fullPdfSet, const RooLinkedList& l)
TStringRooAbsReal::integralNameSuffix(const RooArgSet& iset, const RooArgSet* nset = 0, const char* rangeName = 0) const
Bool_tRooAbsArg::isShapeDirty() const
virtual Bool_tRooAbsReal::isValid() const
virtual Bool_tRooAbsReal::isValidReal(Double_t value, Bool_t printError = kFALSE) const
Bool_tRooAbsArg::isValueDirty() const
voidRooAbsReal::makeProjectionSet(const RooAbsArg* plotVar, const RooArgSet* allVars, RooArgSet& projectedVars, Bool_t silent) const
const char*makeRGPPName(const char* pfx, const RooArgSet& term, const RooArgSet& iset, const RooArgSet& nset, const char* isetRangeName) const
voidTObject::MakeZombie()
Bool_tRooAbsReal::matchArgs(const RooArgSet& allDeps, RooArgSet& numDeps, const RooArgProxy& a) const
Bool_tRooAbsReal::matchArgs(const RooArgSet& allDeps, RooArgSet& numDeps, const RooArgSet& set) const
Bool_tRooAbsReal::matchArgs(const RooArgSet& allDeps, RooArgSet& numDeps, const RooArgProxy& a, const RooArgProxy& b) const
Bool_tRooAbsReal::matchArgs(const RooArgSet& allDeps, RooArgSet& numDeps, const RooArgProxy& a, const RooArgProxy& b, const RooArgProxy& c) const
Bool_tRooAbsReal::matchArgs(const RooArgSet& allDeps, RooArgSet& numDeps, const RooArgProxy& a, const RooArgProxy& b, const RooArgProxy& c, const RooArgProxy& d) const
Int_tRooAbsArg::numProxies() const
RooAbsArg::OperModeRooAbsArg::operMode() const
virtual voidoperModeHook()
voidRooAbsReal::optimizeDirty(RooAbsData& dataset, const RooArgSet* normSet, Bool_t verbose)
virtual RooPlot*RooAbsPdf::paramOn(RooPlot* frame, const RooArgSet& params, Bool_t showConstants = kFALSE, const char* label = "", Int_t sigDigits = 2, Option_t* options = "NELU", Double_t xmin = 0.65, Double_t xmax = 0.99, Double_t ymax = 0.95, const RooCmdArg* formatCmd = 0)
virtual RooPlot*RooAbsReal::plotAsymOn(RooPlot* frame, const RooAbsCategoryLValue& asymCat, RooAbsReal::PlotOpt o) const
virtual RooPlot*RooAbsPdf::plotCompOnEngine(RooPlot* frame, RooArgSet* selNodes, Option_t* drawOptions = "L", Double_t scaleFactor = 1.0, RooAbsReal::ScaleType stype = Relative, const RooAbsData* projData = 0, const RooArgSet* projSet = 0) const
virtual RooPlot*RooAbsPdf::plotOn(RooPlot* frame, RooLinkedList& cmdList) const
virtual RooPlot*RooAbsPdf::plotOn(RooPlot* frame, RooAbsReal::PlotOpt o) const
voidRooAbsPdf::plotOnCompSelect(RooArgSet* selNodes) const
Bool_tRooAbsReal::plotSanityChecks(RooPlot* frame) const
voidRooAbsArg::printAttribList(ostream& os) const
virtual voidprintCompactTreeHook(ostream& os, const char* indent = "")
RooAbsReal*processProductTerm(const RooArgSet* nset, const RooArgSet* iset, const char* isetRangeName, const RooArgSet* term, const RooArgSet& termNSet, const RooArgSet& termISet, Bool_t& isOwned, Bool_t forceWrap = kFALSE) const
static voidRooAbsPdf::raiseEvalError()
Int_t*RooAbsPdf::randomizeProtoOrder(Int_t nProto, Int_t nGen, Bool_t resample = kFALSE) const
Bool_tRooAbsArg::recursiveRedirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE)
Bool_tRooAbsArg::redirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE, Bool_t isRecursionStep = kFALSE)
virtual Bool_tredirectServersHook(const RooAbsCollection& newServerList, Bool_t mustReplaceAll, Bool_t nameChange, Bool_t isRecursive)
voidRooAbsArg::registerProxy(RooArgProxy& proxy)
voidRooAbsArg::registerProxy(RooSetProxy& proxy)
voidRooAbsArg::registerProxy(RooListProxy& proxy)
voidRooAbsArg::removeServer(RooAbsArg& server, Bool_t force = kFALSE)
voidRooAbsArg::replaceServer(RooAbsArg& oldServer, RooAbsArg& newServer, Bool_t valueProp, Bool_t shapeProp)
voidRooAbsPdf::selectComp(Bool_t flag)
virtual voidRooAbsReal::selectNormalization(const RooArgSet* depSet = 0, Bool_t force = kFALSE)
virtual voidRooAbsReal::selectNormalizationRange(const char* rangeName = 0, Bool_t force = kFALSE)
virtual voidRooAbsArg::serverNameChangeHook(const RooAbsArg*, const RooAbsArg*)
voidRooAbsArg::setOperMode(RooAbsArg::OperMode mode, Bool_t recurseADirty = kTRUE)
voidRooAbsArg::setProxyNormSet(const RooArgSet* nset)
voidRooAbsArg::setShapeDirty() const
virtual voidRooAbsReal::setTreeBranchStatus(TTree& t, Bool_t active)
voidRooAbsArg::setValueDirty() const
virtual voidRooAbsReal::syncCache(const RooArgSet* set = 0)
virtual Bool_tRooAbsPdf::syncNormalization(const RooArgSet* dset, Bool_t adjustProxies = kTRUE) const
virtual voidRooAbsPdf::syncNormalizationPostHook(RooAbsReal* norm, const RooArgSet* dset) const
virtual Bool_tRooAbsPdf::syncNormalizationPreHook(RooAbsReal* norm, const RooArgSet* dset) const
Double_tRooAbsReal::traceEval(const RooArgSet* set) const
voidRooAbsReal::undoConstOpt(RooAbsData& dataset, const RooArgSet* normSet, Bool_t verbose)
voidRooAbsArg::unRegisterProxy(RooArgProxy& proxy)
voidRooAbsArg::unRegisterProxy(RooSetProxy& proxy)
voidRooAbsArg::unRegisterProxy(RooListProxy& proxy)
voiduseDefaultGen(Bool_t flag = kTRUE)

Data Members

public:
enum RooAbsPdf::ExtendMode { CanNotBeExtended
CanBeExtended
MustBeExtended
};
enum RooAbsReal::ScaleType { Raw
Relative
NumEvent
RelativeExpected
};
enum RooAbsArg::ConstOpCode { Activate
DeActivate
ConfigChange
ValueChange
};
enum RooAbsArg::OperMode { Auto
AClean
ADirty
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
enum RooPrintable::PrintOption { InLine
OneLine
Standard
Shape
Verbose
};
protected:
THashListRooAbsArg::_attribListList of string attributes
static Bool_tRooAbsReal::_cacheCheck
RooRefCountListRooAbsArg::_clientList! list of client objects
RooRefCountListRooAbsArg::_clientListShape! subset of clients that requested shape dirty flag propagation
RooRefCountListRooAbsArg::_clientListValue! subset of clients that requested value dirty flag propagation
TIterator*RooAbsArg::_clientShapeIter! Iterator over _clientListShape
TIterator*RooAbsArg::_clientValueIter! Iterator over _clientListValue
RooArgSet*_curNormSet!
Double_t_cutOffCutoff parameter for running product
Bool_tRooAbsArg::_deleteWatch! Delete watch flag
Int_tRooAbsPdf::_errorCountNumber of errors remaining to print
static Bool_tRooAbsPdf::_evalError
Int_t_extendedIndexIndex of extended PDF (if any)
Bool_tRooAbsReal::_forceNumIntForce numerical integration if flag set
RooAICRegistry_genCodeRegistry of composite direct generator codes
static Bool_tRooAbsPdf::_globalSelectCompGlobal activation switch for component selection
static Bool_tRooAbsArg::_inhibitDirtyStatic flag controlling global inhibit of dirty state propagation
TStringRooAbsReal::_labelPlot label for objects value
static Int_tRooAbsArg::_nameLength
Int_tRooAbsPdf::_negCountNumber of negative probablities remaining to print
RooAbsReal*RooAbsPdf::_normNormalization integral (owned by _normMgr)
RooNormManagerRooAbsPdf::_normMgrNormalization manager
RooArgSet*RooAbsPdf::_normSetNormalization set with for above integral
RooNormListManager_partListMgrPartial integral list manager
RooLinkedList_partNormListCache[10]Cache of normalization lists
RooNormListManager_partOwnedListMgrPartial integral list manager for owned components
TIterator*_pdfIter! Iterator of PDF list
RooListProxy_pdfListList of PDF components
RooLinkedList_pdfNSetListList of PDF component normalization sets
Int_tRooAbsReal::_plotBinsNumber of plot bins
Double_tRooAbsReal::_plotMaxMaximum of plot range
Double_tRooAbsReal::_plotMinMinimum of plot range
TListRooAbsArg::_proxyList! list of proxies
Double_tRooAbsPdf::_rawValue
Bool_tRooAbsPdf::_selectCompComponent selection flag for RooAbsPdf::plotCompOn
RooRefCountListRooAbsArg::_serverList! list of server objects
RooNumIntConfig*RooAbsReal::_specIntegratorConfig! Numeric integrator configuration specific for this object
Int_tRooAbsPdf::_traceCountNumber of traces remaining to print
TStringRooAbsReal::_unitUnit for objects value
Bool_t_useDefaultGenUse default or distributed event generator
Double_tRooAbsReal::_valueCache for current value of object
static Bool_tRooAbsArg::_verboseDirtyStatic flag controlling verbose messaging for dirty state changes
static Int_tRooAbsPdf::_verboseEval
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooProdPdf(const char* name, const char* title, Double_t cutOff = 0)
 Dummy constructor
RooProdPdf(const char* name, const char* title, RooAbsPdf& pdf1, RooAbsPdf& pdf2, Double_t cutOff = 0)
 Constructor with 2 PDFs (most frequent use case).

 The optional cutOff parameter can be used as a speed optimization if
 one or more of the PDF have sizable regions with very small values,
 which would pull the entire product of PDFs to zero in those regions.

 After each PDF multiplication, the running product is compared with
 the cutOff parameter. If the running product is smaller than the
 cutOff value, the product series is terminated and remaining PDFs
 are not evaluated.

 There is no magic value of the cutOff, the user should experiment
 to find the appropriate balance between speed and precision.
 If a cutoff is specified, the PDFs most likely to be small should
 be put first in the product. The default cutOff value is zero.
RooProdPdf(const char* name, const char* title, const RooArgList& pdfList, Double_t cutOff)
 Constructor from a list of PDFs

 The optional cutOff parameter can be used as a speed optimization if
 one or more of the PDF have sizable regions with very small values,
 which would pull the entire product of PDFs to zero in those regions.

 After each PDF multiplication, the running product is compared with
 the cutOff parameter. If the running product is smaller than the
 cutOff value, the product series is terminated and remaining PDFs
 are not evaluated.

 There is no magic value of the cutOff, the user should experiment
 to find the appropriate balance between speed and precision.
 If a cutoff is specified, the PDFs most likely to be small should
 be put first in the product. The default cutOff value is zero.
cout << " RooProdPdf(" << GetName() << ")
RooProdPdf(const char* name, const char* title, const RooArgSet& fullPdfSet, const RooCmdArg& arg1, const RooCmdArg& arg2 = RooCmdArg(), const RooCmdArg& arg3 = RooCmdArg(), const RooCmdArg& arg4 = RooCmdArg(), const RooCmdArg& arg5 = RooCmdArg(), const RooCmdArg& arg6 = RooCmdArg(), const RooCmdArg& arg7 = RooCmdArg(), const RooCmdArg& arg8 = RooCmdArg())
 Constructor from named argument list

 fullPdf -- Set of 'regular' PDFS that are normalized over all their observables
 ConditionalPdf(pdfSet,depSet) -- Add PDF to product with condition that it
                                  only be normalized over specified observables
                                  any remaining observables will be conditional
                                  observables


 For example, given a PDF F(x,y) and G(y)

 RooProdPdf("P","P",G,Partial(F,x)) will construct a 2-dimensional PDF as follows:

   P(x,y) = G(y)/Int[y]G(y) * F(x,y)/Int[x]G(x,y)

 which is a well normalized and properly defined PDF, but different from the

  P'(x,y) = F(x,y)*G(y) / Int[x,y] F(x,y)*G(y)

 In the former case the y distribution of P is identical to that of G, while
 F only is used to determine the correlation between X and Y. In the latter
 case the Y distribution is defined by the product of F and G.

 This P(x,y) construction is analoguous to generating events from F(x,y) with
 a prototype dataset sampled from G(y)
RooProdPdf(const char* name, const char* title, const RooArgSet& fullPdfSet, const RooLinkedList& cmdArgList)
   cout << "RooProdPdf::ctor" << endl ;
   cmdArgList.Print("v") ;
void initializeFromCmdArgList(const RooArgSet& fullPdfSet, const RooLinkedList& l)
 Initialize RooProdPdf from a list of RooCmdArg configuration arguments
~RooProdPdf()
 Destructor
Double_t getVal(const RooArgSet* set = 0) const
Double_t evaluate()
 Calculate current unnormalized value of object
Double_t calculate(const RooArgList* partIntList, const RooLinkedList* normSetList) const
 Calculate running product of pdfs, skipping factorized components
void factorizeProduct(const RooArgSet& normSet, const RooArgSet& intSet, RooLinkedList& termList, RooLinkedList& normList, RooLinkedList& impDepList, RooLinkedList& crossDepList, RooLinkedList& intList) const
 Factorize product in irreducible terms for given choice of integration/normalization
void getPartIntList(const RooArgSet* nset, const RooArgSet* iset, RooArgList*& partList, RooLinkedList*& nsetList, Int_t& code, const char* isetRangeName = 0) const
 Check if this configuration was created before
void groupProductTerms(RooLinkedList& groupedTerms, RooArgSet& outerIntDeps, const RooLinkedList& terms, const RooLinkedList& norms, const RooLinkedList& imps, const RooLinkedList& ints, const RooLinkedList& cross) const
 Start out with each term in its own group
RooAbsReal* processProductTerm(const RooArgSet* nset, const RooArgSet* iset, const char* isetRangeName, const RooArgSet* term, const RooArgSet& termNSet, const RooArgSet& termISet, Bool_t& isOwned, Bool_t forceWrap = kFALSE) const
 CASE I: factorizing term: term is integrated over all normalizing observables

 Check if all observbales of this term are integrated. If so the term cancels
const char* makeRGPPName(const char* pfx, const RooArgSet& term, const RooArgSet& iset, const RooArgSet& nset, const char* isetRangeName) const
 Make an appropriate name for a RooGenProdProj object in getPartIntList()
Bool_t forceAnalyticalInt(const RooAbsArg& dep) const
Int_t getAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& numVars, const RooArgSet* normSet, const char* rangeName = 0) const
 Determine which part (if any) of given integral can be performed analytically.
 If any analytical integration is possible, return integration scenario code.

 RooProdPdf implements two strategies in implementing analytical integrals

 First, PDF components whose entire set of dependents are requested to be integrated
 can be dropped from the product, as they will integrate out to 1 by construction
:
 Second, RooProdPdf queries each remaining component PDF for its analytical integration
 capability of the requested set ('allVars'). It finds the largest common set of variables
 that can be integrated by all remaining components. If such a set exists, it reconfirms that
 each component is capable of analytically integrating the common set, and combines the components
 individual integration codes into a single integration code valid for RooProdPdf.
Double_t analyticalIntegralWN(Int_t code, const RooArgSet* normSet, const char* rangeName = 0) const
 Return analytical integral defined by given scenario code
Bool_t checkObservables(const RooArgSet* nset) const
 Check that none of the PDFs have overlapping dependents
RooAbsPdf::ExtendMode extendMode()
Double_t expectedEvents(const RooArgSet* nset)
RooAbsGenContext* genContext(const RooArgSet& vars, const RooDataSet* prototype = 0, const RooArgSet* auxProto = 0, Bool_t verbose = kFALSE) const
Int_t getGenerator(const RooArgSet& directVars, RooArgSet& generateVars, Bool_t staticInitOK = kTRUE) const
void initGenerator(Int_t code)
void generateEvent(Int_t code)
void operModeHook()
void clearCache()
   cout << "RooProdPdf::clearCache(" << GetName() << ") sterilizing cache content" << endl ;
Bool_t redirectServersHook(const RooAbsCollection& newServerList, Bool_t mustReplaceAll, Bool_t nameChange, Bool_t isRecursive)
 Throw away cache, as figuring out redirections on the cache is an unsolvable problem.
void printCompactTreeHook(ostream& os, const char* indent = "")
Bool_t isDirectGenSafe(const RooAbsArg& arg) const
 Only override base class behaviour if default generator method is enabled
RooArgSet* findPdfNSet(RooAbsPdf& pdf) const
 Look up user specified normalization set for given input PDF component
TObject* clone(const char* newname) const
{ return new RooProdPdf(*this,newname) ; }
Bool_t selfNormalized()
{ return kTRUE ; }
Double_t expectedEvents(const RooArgSet* nset)
const RooArgList& pdfList()
{ return _pdfList ; }
void useDefaultGen(Bool_t flag = kTRUE)
{ _useDefaultGen = flag ; }

Last update: Mon Jun 25 19:45:06 2007
Copyright (c) 2000-2005, Regents of the University of California *

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.