Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooFit::Experimental Namespace Reference

Classes

class  CodegenContext
 A class to maintain the context for squashing of RooFit models into code. More...
 
struct  CodegenIntegralImplCaller
 
struct  Prio
 
class  RooFuncWrapper
 A wrapper class to store a C++ function of type 'double (*)(double*, double*)'. More...
 

Typedefs

using PrioHighest = Prio< 1 >
 
using PrioLowest = Prio< 10 >
 

Functions

void codegen (RooAbsArg &arg, CodegenContext &ctx)
 
void codegenImpl (ParamHistFunc &arg, CodegenContext &ctx)
 
void codegenImpl (PiecewiseInterpolation &arg, CodegenContext &ctx)
 
void codegenImpl (RooAbsArg &arg, CodegenContext &ctx)
 This function defines a translation for each RooAbsReal based object that can be used to express the class as simple C++ code.
 
void codegenImpl (RooAddition &arg, CodegenContext &ctx)
 
void codegenImpl (RooAddPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooBernstein &arg, CodegenContext &ctx)
 
void codegenImpl (RooBifurGauss &arg, CodegenContext &ctx)
 
void codegenImpl (RooCBShape &arg, CodegenContext &ctx)
 
void codegenImpl (RooChebychev &arg, CodegenContext &ctx)
 
void codegenImpl (RooConstraintSum &arg, CodegenContext &ctx)
 
void codegenImpl (RooConstVar &arg, CodegenContext &ctx)
 
void codegenImpl (RooEfficiency &arg, CodegenContext &ctx)
 
void codegenImpl (RooEffProd &arg, CodegenContext &ctx)
 
void codegenImpl (RooExponential &arg, CodegenContext &ctx)
 
void codegenImpl (RooExtendPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooFit::Detail::RooFixedProdPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooFit::Detail::RooNLLVarNew &arg, CodegenContext &ctx)
 
void codegenImpl (RooFit::Detail::RooNormalizedPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooFormulaVar &arg, CodegenContext &ctx)
 
void codegenImpl (RooGamma &arg, CodegenContext &ctx)
 
void codegenImpl (RooGaussian &arg, CodegenContext &ctx)
 
void codegenImpl (RooGenericPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooHistFunc &arg, CodegenContext &ctx)
 
void codegenImpl (RooHistPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooLandau &arg, CodegenContext &ctx)
 
void codegenImpl (RooLognormal &arg, CodegenContext &ctx)
 
void codegenImpl (RooMultiVarGaussian &arg, CodegenContext &ctx)
 
void codegenImpl (RooParamHistFunc &arg, CodegenContext &ctx)
 
void codegenImpl (RooPoisson &arg, CodegenContext &ctx)
 
void codegenImpl (RooPolynomial &arg, CodegenContext &ctx)
 
void codegenImpl (RooPolyVar &arg, CodegenContext &ctx)
 
void codegenImpl (RooProduct &arg, CodegenContext &ctx)
 
void codegenImpl (RooRatio &arg, CodegenContext &ctx)
 
void codegenImpl (RooRealIntegral &arg, CodegenContext &ctx)
 
void codegenImpl (RooRealSumFunc &arg, CodegenContext &ctx)
 
void codegenImpl (RooRealSumPdf &arg, CodegenContext &ctx)
 
void codegenImpl (RooRealVar &arg, CodegenContext &ctx)
 
void codegenImpl (RooRecursiveFraction &arg, CodegenContext &ctx)
 
void codegenImpl (RooStats::HistFactory::FlexibleInterpVar &arg, CodegenContext &ctx)
 
void codegenImpl (RooUniform &arg, CodegenContext &ctx)
 
template<class Arg_t , int P>
std::string codegenIntegralImpl (Arg_t &arg, int code, const char *rangeName, CodegenContext &ctx, Prio< P > p)
 
std::string codegenIntegralImpl (RooAbsReal &arg, int, const char *, CodegenContext &)
 This function defines the analytical integral translation for the class.
 
std::string codegenIntegralImpl (RooBernstein &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooBifurGauss &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooCBShape &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooChebychev &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooEfficiency &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooExponential &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooGamma &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooGaussian &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooHistFunc &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooHistPdf &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooLandau &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooLognormal &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooMultiVarGaussian &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooPoisson &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooPolynomial &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooPolyVar &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooRealSumPdf &arg, int code, const char *rangeName, CodegenContext &ctx)
 
std::string codegenIntegralImpl (RooUniform &arg, int code, const char *rangeName, CodegenContext &ctx)
 
void declareDispatcherCode (std::string const &funcName)
 
RooCmdArg ParallelDescentOptions (bool enable=false, int splitStrategy=0, int numSplits=4)
 
RooCmdArg ParallelGradientOptions (bool enable=true, int orderStrategy=0, int chainFactor=1)
 Configuration options for parallel minimization with multiprocessing library.
 

Typedef Documentation

◆ PrioHighest

Definition at line 42 of file CodegenContext.h.

◆ PrioLowest

Definition at line 43 of file CodegenContext.h.

Function Documentation

◆ codegen()

void RooFit::Experimental::codegen ( RooAbsArg arg,
CodegenContext ctx 
)

Definition at line 388 of file CodegenContext.cxx.

◆ codegenImpl() [1/40]

void RooFit::Experimental::codegenImpl ( ParamHistFunc arg,
CodegenContext ctx 
)

Definition at line 136 of file CodegenImpl.cxx.

◆ codegenImpl() [2/40]

void RooFit::Experimental::codegenImpl ( PiecewiseInterpolation arg,
CodegenContext ctx 
)

Definition at line 144 of file CodegenImpl.cxx.

◆ codegenImpl() [3/40]

void RooFit::Experimental::codegenImpl ( RooAbsArg arg,
CodegenContext ctx 
)

This function defines a translation for each RooAbsReal based object that can be used to express the class as simple C++ code.

The function adds the code represented by each class as an std::string (that is later concatenated with code strings from translate calls) to form the C++ code that AD tools can understand. Any class that wants to support AD, has to implement this function.

Parameters
[in]ctxAn object to manage auxiliary information for code-squashing. Also takes the code string that this class outputs into the squashed code through the 'addToCodeBody' function.

Definition at line 222 of file CodegenImpl.cxx.

◆ codegenImpl() [4/40]

void RooFit::Experimental::codegenImpl ( RooAddition arg,
CodegenContext ctx 
)

Definition at line 243 of file CodegenImpl.cxx.

◆ codegenImpl() [5/40]

void RooFit::Experimental::codegenImpl ( RooAddPdf arg,
CodegenContext ctx 
)

Definition at line 230 of file CodegenImpl.cxx.

◆ codegenImpl() [6/40]

void RooFit::Experimental::codegenImpl ( RooBernstein arg,
CodegenContext ctx 
)

Definition at line 272 of file CodegenImpl.cxx.

◆ codegenImpl() [7/40]

void RooFit::Experimental::codegenImpl ( RooBifurGauss arg,
CodegenContext ctx 
)

Definition at line 279 of file CodegenImpl.cxx.

◆ codegenImpl() [8/40]

void RooFit::Experimental::codegenImpl ( RooCBShape arg,
CodegenContext ctx 
)

Definition at line 285 of file CodegenImpl.cxx.

◆ codegenImpl() [9/40]

void RooFit::Experimental::codegenImpl ( RooChebychev arg,
CodegenContext ctx 
)

Definition at line 291 of file CodegenImpl.cxx.

◆ codegenImpl() [10/40]

void RooFit::Experimental::codegenImpl ( RooConstraintSum arg,
CodegenContext ctx 
)

Definition at line 316 of file CodegenImpl.cxx.

◆ codegenImpl() [11/40]

void RooFit::Experimental::codegenImpl ( RooConstVar arg,
CodegenContext ctx 
)

Definition at line 303 of file CodegenImpl.cxx.

◆ codegenImpl() [12/40]

void RooFit::Experimental::codegenImpl ( RooEfficiency arg,
CodegenContext ctx 
)

Definition at line 339 of file CodegenImpl.cxx.

◆ codegenImpl() [13/40]

void RooFit::Experimental::codegenImpl ( RooEffProd arg,
CodegenContext ctx 
)

Definition at line 334 of file CodegenImpl.cxx.

◆ codegenImpl() [14/40]

void RooFit::Experimental::codegenImpl ( RooExponential arg,
CodegenContext ctx 
)

Definition at line 346 of file CodegenImpl.cxx.

◆ codegenImpl() [15/40]

void RooFit::Experimental::codegenImpl ( RooExtendPdf arg,
CodegenContext ctx 
)

Definition at line 357 of file CodegenImpl.cxx.

◆ codegenImpl() [16/40]

void RooFit::Experimental::codegenImpl ( RooFit::Detail::RooFixedProdPdf arg,
CodegenContext ctx 
)

Definition at line 127 of file CodegenImpl.cxx.

◆ codegenImpl() [17/40]

void RooFit::Experimental::codegenImpl ( RooFit::Detail::RooNLLVarNew &  arg,
CodegenContext ctx 
)

Definition at line 400 of file CodegenImpl.cxx.

◆ codegenImpl() [18/40]

void RooFit::Experimental::codegenImpl ( RooFit::Detail::RooNormalizedPdf arg,
CodegenContext ctx 
)

Definition at line 442 of file CodegenImpl.cxx.

◆ codegenImpl() [19/40]

void RooFit::Experimental::codegenImpl ( RooFormulaVar arg,
CodegenContext ctx 
)

Definition at line 326 of file CodegenImpl.cxx.

◆ codegenImpl() [20/40]

void RooFit::Experimental::codegenImpl ( RooGamma arg,
CodegenContext ctx 
)

Definition at line 321 of file CodegenImpl.cxx.

◆ codegenImpl() [21/40]

void RooFit::Experimental::codegenImpl ( RooGaussian arg,
CodegenContext ctx 
)

Definition at line 363 of file CodegenImpl.cxx.

◆ codegenImpl() [22/40]

void RooFit::Experimental::codegenImpl ( RooGenericPdf arg,
CodegenContext ctx 
)

Definition at line 369 of file CodegenImpl.cxx.

◆ codegenImpl() [23/40]

void RooFit::Experimental::codegenImpl ( RooHistFunc arg,
CodegenContext ctx 
)

Definition at line 377 of file CodegenImpl.cxx.

◆ codegenImpl() [24/40]

void RooFit::Experimental::codegenImpl ( RooHistPdf arg,
CodegenContext ctx 
)

Definition at line 383 of file CodegenImpl.cxx.

◆ codegenImpl() [25/40]

void RooFit::Experimental::codegenImpl ( RooLandau arg,
CodegenContext ctx 
)

Definition at line 389 of file CodegenImpl.cxx.

◆ codegenImpl() [26/40]

void RooFit::Experimental::codegenImpl ( RooLognormal arg,
CodegenContext ctx 
)

Definition at line 394 of file CodegenImpl.cxx.

◆ codegenImpl() [27/40]

void RooFit::Experimental::codegenImpl ( RooMultiVarGaussian arg,
CodegenContext ctx 
)

Definition at line 235 of file CodegenImpl.cxx.

◆ codegenImpl() [28/40]

void RooFit::Experimental::codegenImpl ( RooParamHistFunc arg,
CodegenContext ctx 
)

Definition at line 448 of file CodegenImpl.cxx.

◆ codegenImpl() [29/40]

void RooFit::Experimental::codegenImpl ( RooPoisson arg,
CodegenContext ctx 
)

Definition at line 463 of file CodegenImpl.cxx.

◆ codegenImpl() [30/40]

void RooFit::Experimental::codegenImpl ( RooPolynomial arg,
CodegenContext ctx 
)

Definition at line 483 of file CodegenImpl.cxx.

◆ codegenImpl() [31/40]

void RooFit::Experimental::codegenImpl ( RooPolyVar arg,
CodegenContext ctx 
)

Definition at line 472 of file CodegenImpl.cxx.

◆ codegenImpl() [32/40]

void RooFit::Experimental::codegenImpl ( RooProduct arg,
CodegenContext ctx 
)

Definition at line 494 of file CodegenImpl.cxx.

◆ codegenImpl() [33/40]

void RooFit::Experimental::codegenImpl ( RooRatio arg,
CodegenContext ctx 
)

Definition at line 499 of file CodegenImpl.cxx.

◆ codegenImpl() [34/40]

void RooFit::Experimental::codegenImpl ( RooRealIntegral arg,
CodegenContext ctx 
)

Definition at line 534 of file CodegenImpl.cxx.

◆ codegenImpl() [35/40]

void RooFit::Experimental::codegenImpl ( RooRealSumFunc arg,
CodegenContext ctx 
)

Definition at line 586 of file CodegenImpl.cxx.

◆ codegenImpl() [36/40]

void RooFit::Experimental::codegenImpl ( RooRealSumPdf arg,
CodegenContext ctx 
)

Definition at line 591 of file CodegenImpl.cxx.

◆ codegenImpl() [37/40]

void RooFit::Experimental::codegenImpl ( RooRealVar arg,
CodegenContext ctx 
)

Definition at line 596 of file CodegenImpl.cxx.

◆ codegenImpl() [38/40]

void RooFit::Experimental::codegenImpl ( RooRecursiveFraction arg,
CodegenContext ctx 
)

Definition at line 612 of file CodegenImpl.cxx.

◆ codegenImpl() [39/40]

void RooFit::Experimental::codegenImpl ( RooStats::HistFactory::FlexibleInterpVar arg,
CodegenContext ctx 
)

Definition at line 617 of file CodegenImpl.cxx.

◆ codegenImpl() [40/40]

void RooFit::Experimental::codegenImpl ( RooUniform arg,
CodegenContext ctx 
)

Definition at line 643 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [1/20]

template<class Arg_t , int P>
std::string RooFit::Experimental::codegenIntegralImpl ( Arg_t &  arg,
int  code,
const char *  rangeName,
CodegenContext ctx,
Prio< P >  p 
)

Definition at line 138 of file CodegenImpl.h.

◆ codegenIntegralImpl() [2/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooAbsReal arg,
int  ,
const char *  ,
CodegenContext  
)

This function defines the analytical integral translation for the class.

Parameters
[in]codeThe code that decides the integrands.
[in]rangeNameName of the normalization range.
[in]ctxAn object to manage auxiliary information for code-squashing.
Returns
The representative code string of the integral for the given object.

Definition at line 656 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [3/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooBernstein arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 664 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [4/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooBifurGauss arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 672 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [5/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooCBShape arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 681 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [6/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooChebychev arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 688 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [7/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooEfficiency arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 699 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [8/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooExponential arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 704 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [9/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooGamma arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 728 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [10/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooGaussian arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 738 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [11/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooHistFunc arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 763 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [12/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooHistPdf arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 768 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [13/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooLandau arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 773 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [14/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooLognormal arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 783 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [15/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooMultiVarGaussian arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 790 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [16/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooPoisson arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 802 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [17/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooPolynomial arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 829 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [18/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooPolyVar arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 817 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [19/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooRealSumPdf arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 841 of file CodegenImpl.cxx.

◆ codegenIntegralImpl() [20/20]

std::string RooFit::Experimental::codegenIntegralImpl ( RooUniform arg,
int  code,
const char *  rangeName,
CodegenContext ctx 
)

Definition at line 847 of file CodegenImpl.cxx.

◆ declareDispatcherCode()

void RooFit::Experimental::declareDispatcherCode ( std::string const &  funcName)

Definition at line 355 of file CodegenContext.cxx.

◆ ParallelDescentOptions()

RooCmdArg RooFit::Experimental::ParallelDescentOptions ( bool  enable = false,
int  splitStrategy = 0,
int  numSplits = 4 
)

Definition at line 123 of file RooGlobalFunc.cxx.

◆ ParallelGradientOptions()

RooCmdArg RooFit::Experimental::ParallelGradientOptions ( bool  enable = true,
int  orderStrategy = 0,
int  chainFactor = 1 
)

Configuration options for parallel minimization with multiprocessing library.

Definition at line 118 of file RooGlobalFunc.cxx.