class RooAcceptReject: public TNamed, public RooPrintable



Class RooAcceptReject is a generic toy monte carlo generator implement the accept/reject sampling technique on any positively valued function. The RooAcceptReject generator is used by the various generator context classes to take care of generation of observables for which p.d.fs do not define internal methods

Function Members (Methods)

public:
RooAcceptReject(const RooAcceptReject&)
RooAcceptReject(const RooAbsReal& func, const RooArgSet& genVars, const RooAbsReal* maxFuncVal = 0, Bool_t verbose = kFALSE)
virtual~RooAcceptReject()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
voidattachParameters(const RooArgSet& vars)
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual Int_tRooPrintable::defaultPrintContents(Option_t* opt) const
static ostream&RooPrintable::defaultPrintStream(ostream* os = 0)
virtual RooPrintable::StyleOptionRooPrintable::defaultPrintStyle(Option_t* opt) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) 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 voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
const RooArgSet*generateEvent(UInt_t remaining)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Double_tgetFuncMax()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() 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 voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tisValid() const
Bool_tisVerbose() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidRooPrintable::nameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* options = 0) const
virtual voidRooPrintable::printAddress(ostream& os) const
virtual voidprintArgs(ostream& os) const
virtual voidprintClassName(ostream& os) const
virtual voidRooPrintable::printExtras(ostream& os) const
virtual voidRooPrintable::printMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
virtual voidprintName(ostream& os) const
virtual voidRooPrintable::printStream(ostream& os, Int_t contents, RooPrintable::StyleOption style, TString indent = "") const
virtual voidprintTitle(ostream& os) const
virtual voidRooPrintable::printTree(ostream& os, TString indent = "") const
virtual voidRooPrintable::printValue(ostream& os) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidsetVerbose(Bool_t verbose = kTRUE)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() 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 voidTObject::UseCurrentStyle()
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
protected:
voidaddEventToCache()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
const RooArgSet*nextAcceptedEvent()

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
enum RooPrintable::ContentsOption { kName
kClassName
kValue
kArgs
kExtras
kAddress
kTitle
};
enum RooPrintable::StyleOption { kInline
kSingleLine
kStandard
kVerbose
kTreeStructure
};
protected:
RooDataSet*_cacheDataset holding generared values of observables
UInt_t_catSampleMultNumber of real and discrete dimensions to be samplesd
RooArgSet_catVars
RooArgSet*_cloneSetSet owning clone of input function
UInt_t_eventsUsedAccepted number of function samples
RooAbsReal*_funcClonePointer to top level node of cloned function
const RooAbsReal*_funcMaxValContainer for maximum function value
Double_t_funcSumMaximum function value found, and sum of all samples made
RooRealVar*_funcValPtrRRVs storing function value in context and in output dataset
RooRealVar*_funcValStore
Bool_t_isValidVerbose and valid flag
Double_t_maxFuncVal
static const UInt_t_maxSampleDimNumber of filledelements in _minTrialsArray
UInt_t_minTrialsMinimum number of max.finding trials, total number of samples
static const UInt_t_minTrialsArray[2147483647]Minimum number of trials samples for 1,2,3 dimensional problems
static Int_tRooPrintable::_nameLength
TIterator*_nextCatVarIterator of categories to be generated
TIterator*_nextRealVarIterator over variables to be generated
UInt_t_realSampleDim
RooArgSet_realVarsSets of discrete and real valued observabeles
UInt_t_totalEventsTotal number of function samples
Bool_t_verbose
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooAcceptReject(const RooAbsReal& func, const RooArgSet& genVars, const RooAbsReal* maxFuncVal = 0, Bool_t verbose = kFALSE)
 Initialize an accept-reject generator for the specified distribution function,
 which must be non-negative but does not need to be normalized over the
 variables to be generated, genVars. The function and its dependents are
 cloned and so will not be disturbed during the generation process.
~RooAcceptReject()
 Destructor
void attachParameters(const RooArgSet& vars)
 Reattach original parameters to function clone
const RooArgSet * generateEvent(UInt_t remaining)
 Return a pointer to a generated event. The caller does not own the event and it
 will be overwritten by a subsequent call. The input parameter 'remaining' should
 contain your best guess at the total number of subsequent events you will request.
const RooArgSet * nextAcceptedEvent()
 Scan through events in the cache which have not been used yet,
 looking for the first accepted one which is added to the specified
 container. Return a pointer to the accepted event, or else zero
 if we use up the cache before we accept an event. The caller does
 not own the event and it will be overwritten by a subsequent call.
void addEventToCache()
 Add a trial event to our cache and update our estimates
 of the function maximum value and integral.
Double_t getFuncMax()
 Empirically determine maximum value of function by taking a large number
 of samples. The actual number depends on the number of dimensions in which
 the sampling occurs
void printName(ostream& os) const
 Print name of the generator
void printTitle(ostream& os) const
 Print the title of the generator
void printClassName(ostream& os) const
 Print the class name of the generator
void printArgs(ostream& os) const
 Print the arguments of the generator
RooAcceptReject(const RooAbsReal& func, const RooArgSet& genVars, const RooAbsReal* maxFuncVal = 0, Bool_t verbose = kFALSE)
Bool_t isValid()
 If true, generator is in a valid state
void setVerbose(Bool_t verbose = kTRUE)
 If flag is true, verbose messaging will be active during generation
Bool_t isVerbose()
 Return status of verbose messaging flag
void Print(Option_t* options = 0) const
 ascii printing interface

Last change: Mon Aug 25 11:35:09 2008
Last generated: 2008-08-25 11:35
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.