Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooGlobalFunc.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Project: RooFit *
3 * Package: RooFitCore *
4 * File: $Id: RooGlobalFunc.h,v 1.14 2007/07/16 21:04:28 wouter Exp $
5 * Authors: *
6 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8 * *
9 * Copyright (c) 2000-2005, Regents of the University of California *
10 * and Stanford University. All rights reserved. *
11 * *
12 * Redistribution and use in source and binary forms, *
13 * with or without modification, are permitted according to the terms *
14 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15 *****************************************************************************/
16#ifndef ROO_GLOBAL_FUNC
17#define ROO_GLOBAL_FUNC
18
19#include "RooCmdArg.h"
20#include "RooLinkedList.h"
21#include "RooArgSet.h"
22
23#include "ROOT/RConfig.hxx"
24
25#include <map>
26#include <string>
27
28class RooDataHist ;
29class RooDataSet ;
30class RooFitResult ;
31class RooAbsPdf ;
32class RooAbsRealLValue ;
33class RooRealConstant ;
34class RooMsgService ;
35class RooFormulaVar ;
36class RooAbsData ;
37class RooCategory ;
38class RooAbsReal ;
39class RooAbsBinning ;
40class RooAbsCollection ;
41class RooAbsPdf ;
42class RooConstVar ;
43class RooRealVar ;
44class RooAbsCategory ;
45class RooNumIntConfig ;
46class TH1 ;
47class TTree ;
48
49/*! \namespace RooFit
50The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs
51(or other types of arguments).
52
53These switches are documented with the relevant functions, e.g. RooAbsPdf::fitTo().
54For an introduction to RooFit (not the namespace), check the [user's guides](https://root.cern/root-user-guides-and-manuals),
55[courses](https://root.cern/learn/courses) or [the RooFit chapter of the Manual](https://root.cern/manual/roofit/).
56*/
57namespace RooFit {
58
59/// Verbosity level for RooMsgService::StreamConfig in RooMsgService
60enum MsgLevel { DEBUG=0, INFO=1, PROGRESS=2, WARNING=3, ERROR=4, FATAL=5 } ;
61/// Topics for a RooMsgService::StreamConfig in RooMsgService
64 Contents=4096, DataHandling=8192, NumIntegration=16384, FastEvaluations=1<<15, HistFactory=1<<16, IO=1<<17 };
66
67/// For setting the offset mode with the Offset() command argument to
68/// RooAbsPdf::fitTo()
69enum class OffsetMode { None, Initial, Bin };
70
71namespace Experimental {
72
73/// Configuration options for parallel minimization with multiprocessing library
74RooCmdArg ParallelGradientOptions(bool enable=true, int orderStrategy=0, int chainFactor=1) ;
75RooCmdArg ParallelDescentOptions(bool enable=false, int splitStrategy=0, int numSplits=4) ;
76
77} // Experimental
78
79/**
80 * \defgroup CmdArgs RooFit command arguments
81 * These arguments can be passed to functions of RooFit objects.
82 * \ingroup Roofitmain
83 * @{
84 */
85
86/**
87 * \defgroup Plotting Arguments for plotOn functions
88 * @{
89 */
90RooCmdArg DrawOption(const char* opt) ;
91RooCmdArg Normalization(double scaleFactor) ;
92RooCmdArg Slice(const RooArgSet& sliceSet) ;
93RooCmdArg Slice(RooCategory& cat, const char* label) ;
94RooCmdArg Slice(std::map<RooCategory*, std::string> const&) ;
95RooCmdArg Project(const RooArgSet& projSet) ;
96RooCmdArg ProjWData(const RooAbsData& projData, bool binData=false) ;
97RooCmdArg ProjWData(const RooArgSet& projSet, const RooAbsData& projData, bool binData=false) ;
99RooCmdArg Precision(double prec) ;
101RooCmdArg Range(const char* rangeName, bool adjustNorm=true) ;
102RooCmdArg Range(double lo, double hi, bool adjustNorm=true) ;
103RooCmdArg NormRange(const char* rangeNameList) ;
106RooCmdArg LineColor(std::string const &color) ;
108RooCmdArg LineStyle(std::string const &style) ;
111RooCmdArg FillColor(std::string const &color) ;
113RooCmdArg FillStyle(std::string const &style) ;
114RooCmdArg ProjectionRange(const char* rangeName) ;
115RooCmdArg Name(const char* name) ;
116RooCmdArg Invisible(bool inv=true) ;
117RooCmdArg AddTo(const char* name, double wgtSel=1.0, double wgtOther=1.0) ;
120RooCmdArg VisualizeError(const RooDataSet& paramData, double Z=1) ;
121RooCmdArg VisualizeError(const RooFitResult& fitres, double Z=1, bool linearMethod=true) ;
122RooCmdArg VisualizeError(const RooFitResult& fitres, const RooArgSet& param, double Z=1, bool linearMethod=true) ;
124
125// RooAbsPdf::plotOn arguments
126RooCmdArg Normalization(double scaleFactor, Int_t scaleType) ;
127template<class... Args_t>
128RooCmdArg Components(Args_t &&... argsOrArgSet) {
129 RooCmdArg out{"SelectCompSet",0};
130 out.setSet(0, RooArgSet{std::forward<Args_t>(argsOrArgSet)...});
131 return out;
132}
133RooCmdArg Components(const char* compSpec) ;
134
135// RooAbsData::plotOn arguments
136RooCmdArg Cut(const char* cutSpec) ;
137RooCmdArg Cut(const RooFormulaVar& cutVar) ;
138RooCmdArg Binning(const RooAbsBinning& binning) ;
139RooCmdArg Binning(const char* binningName) ;
140RooCmdArg Binning(int nBins, double xlo=0.0, double xhi=0.0) ;
142RooCmdArg MarkerStyle(std::string const &style) ;
145RooCmdArg MarkerColor(std::string const &color) ;
146RooCmdArg CutRange(const char* rangeName) ;
147RooCmdArg XErrorSize(double width) ;
149RooCmdArg Efficiency(const RooCategory& cat) ;
150RooCmdArg Rescale(double factor) ;
151
152/** @} */
153
154/**
155 * \defgroup ConstructorArgs Arguments for various constructors
156 * @{
157 */
158// RooDataHist::ctor arguments
159RooCmdArg Weight(double wgt) ;
160RooCmdArg Index(RooCategory& icat) ;
161RooCmdArg Import(const char* state, TH1& histo) ;
162RooCmdArg Import(const std::map<std::string,TH1*>&) ;
163RooCmdArg Import(const char* state, RooDataHist& dhist) ;
164RooCmdArg Import(const std::map<std::string,RooDataHist*>&) ;
165RooCmdArg Import(TH1& histo, bool importDensity=false) ;
166
167// RooDataSet::ctor arguments
168RooCmdArg WeightVar(const char* name="weight", bool reinterpretAsWeight=false) ;
169RooCmdArg WeightVar(const RooRealVar& arg, bool reinterpretAsWeight=false) ;
170RooCmdArg Import(const char* state, RooAbsData& data) ;
171RooCmdArg Import(const std::map<std::string,RooDataSet*>& ) ;
172template<class DataPtr_t>
173RooCmdArg Import(std::map<std::string,DataPtr_t> const& map) {
174 RooCmdArg container("ImportDataSliceMany",0,0,0,0,nullptr,nullptr,nullptr,nullptr) ;
175 for (auto const& item : map) {
176 container.addArg(Import(item.first.c_str(), *item.second)) ;
177 }
178 container.setProcessRecArgs(true,false) ;
179 return container ;
180}
181
182RooCmdArg Link(const char* state, RooAbsData& data) ;
183RooCmdArg Link(const std::map<std::string,RooAbsData*>&) ;
185RooCmdArg Import(TTree& tree) ;
186RooCmdArg ImportFromFile(const char* fname, const char* tname) ;
187RooCmdArg StoreError(const RooArgSet& aset) ;
190
191/** @} */
192
193// RooAbsPdf::printLatex arguments
194RooCmdArg Columns(Int_t ncol) ;
195RooCmdArg OutputFile(const char* fileName) ;
196RooCmdArg Format(const char* what, const RooCmdArg& arg1={}, const RooCmdArg& arg2={},
197 const RooCmdArg& arg3={},const RooCmdArg& arg4={},
198 const RooCmdArg& arg5={},const RooCmdArg& arg6={},
199 const RooCmdArg& arg7={},const RooCmdArg& arg8={}) ;
200RooCmdArg Sibling(const RooAbsCollection& sibling) ;
201
202// RooAbsRealLValue::frame arguments
203RooCmdArg Title(const char* name) ;
204RooCmdArg Bins(Int_t nbin) ;
205RooCmdArg AutoSymRange(const RooAbsData& data, double marginFactor=0.1) ;
206RooCmdArg AutoRange(const RooAbsData& data, double marginFactor=0.1) ;
207
208// RooAbsData::createHistogram arguments
209RooCmdArg AutoSymBinning(Int_t nbins=100, double marginFactor=0.1) ;
210RooCmdArg AutoBinning(Int_t nbins=100, double marginFactor=0.1) ;
211
212// RooAbsReal::fillHistogram arguments
214
215// RooAbsData::reduce arguments
216RooCmdArg SelectVars(const RooArgSet& vars) ;
217RooCmdArg EventRange(Int_t nStart, Int_t nStop) ;
218
219
220/**
221 * \defgroup Fitting Arguments for fitting
222 * @{
223 */
224// RooChi2Var::ctor / RooNLLVar arguments
225RooCmdArg Extended(bool flag=true) ;
227RooCmdArg DataError(std::string const&) ;
228RooCmdArg NumCPU(Int_t nCPU, Int_t interleave=0) ;
229RooCmdArg Parallelize(int nWorkers) ;
230RooCmdArg ModularL(bool flag=false) ;
231RooCmdArg TimingAnalysis(bool timingAnalysis) ;
232
233//RooCmdArg BatchMode(std::string const& batchMode="cpu");
234//// The const char * overload is necessary, otherwise the compiler will cast a
235//// C-Style string to a bool and choose the BatchMode(bool) overload if one
236//// calls for example BatchMode("off").
237//inline RooCmdArg BatchMode(const char * batchMode) { return BatchMode(std::string(batchMode)); }
238//inline RooCmdArg BatchMode(bool batchModeOn) { return BatchMode(batchModeOn ? "cpu" : "off"); }
239
240RooCmdArg IntegrateBins(double precision);
241
242// RooAbsPdf::fitTo arguments
243RooCmdArg PrefitDataFraction(double data_ratio = 0.0) ;
244RooCmdArg Optimize(Int_t flag=2) ;
245
246class EvalBackend : public RooCmdArg {
247public:
249
251
252 EvalBackend(std::string const &name);
253
254 static EvalBackend Legacy();
255 static EvalBackend Cpu();
256 static EvalBackend Cuda();
257 static EvalBackend Codegen();
258 static EvalBackend CodegenNoGrad();
259
260 Value value() const { return static_cast<Value>(getInt(0)); }
261
262 bool operator==(EvalBackend const &other) const { return value() == other.value(); }
263
264 bool operator!=(EvalBackend const &other) const { return value() != other.value(); }
265
266 std::string name() const;
267
268 static Value &defaultValue();
269private:
270 static Value toValue(std::string const& name);
271 static std::string toName(Value value);
272};
273
274////////////////////////////////////////////////////////////////////////////////
275/// Create a RooCmdArg to declare conditional observables.
276/// \param[in] argsOrArgSet Can either be one or more RooRealVar with the
277// observables or a single RooArgSet containing them.
278template<class... Args_t>
279RooCmdArg ConditionalObservables(Args_t &&... argsOrArgSet) {
280 RooCmdArg out{"ProjectedObservables",0};
281 out.setSet(0, RooArgSet{std::forward<Args_t>(argsOrArgSet)...});
282 return out;
283}
284
285// obsolete, for backward compatibility
286template<class... Args_t>
287RooCmdArg ProjectedObservables(Args_t &&... argsOrArgSet) {
288 return ConditionalObservables(std::forward<Args_t>(argsOrArgSet)...);
289}
290
291RooCmdArg Verbose(bool flag=true) ;
292RooCmdArg Save(bool flag=true) ;
293RooCmdArg Timer(bool flag=true) ;
295RooCmdArg Warnings(bool flag=true) ;
297RooCmdArg InitialHesse(bool flag=true) ;
298RooCmdArg Hesse(bool flag=true) ;
299RooCmdArg Minos(bool flag=true) ;
300RooCmdArg Minos(const RooArgSet& minosArgs) ;
301RooCmdArg SplitRange(bool flag=true) ;
302RooCmdArg SumCoefRange(const char* rangeName) ;
303RooCmdArg Constrain(const RooArgSet& params) ;
304RooCmdArg MaxCalls(int n) ;
305
306template<class... Args_t>
307RooCmdArg GlobalObservables(Args_t &&... argsOrArgSet) {
308 RooCmdArg out{"GlobalObservables",0};
309 out.setSet(0, RooArgSet{std::forward<Args_t>(argsOrArgSet)...});
310 return out;
311}
312RooCmdArg GlobalObservablesSource(const char* sourceName);
313RooCmdArg GlobalObservablesTag(const char* tagName) ;
314RooCmdArg ExternalConstraints(const RooArgSet& constraintPdfs) ;
316RooCmdArg EvalErrorWall(bool flag) ;
317RooCmdArg SumW2Error(bool flag) ;
318RooCmdArg AsymptoticError(bool flag) ;
319RooCmdArg CloneData(bool flag) ;
320RooCmdArg Integrate(bool flag) ;
321RooCmdArg Minimizer(const char* type, const char* alg=nullptr) ;
322RooCmdArg Offset(std::string const& mode);
323// The const char * overload is necessary, otherwise the compiler will cast a
324// C-Style string to a bool and choose the Offset(bool) overload if one
325// calls for example Offset("off").
326inline RooCmdArg Offset(const char * mode) { return Offset(std::string(mode)); }
327// For backwards compatibility
328inline RooCmdArg Offset(bool flag=true) { return flag ? Offset("initial") : Offset("off"); }
330/** @} */
331
332// RooAbsPdf::paramOn arguments
333RooCmdArg Label(const char* str) ;
334RooCmdArg Layout(double xmin, double xmax=0.99, double ymin=0.95) ;
335RooCmdArg Parameters(const RooArgSet& params) ;
336RooCmdArg ShowConstants(bool flag=true) ;
337
338// RooTreeData::statOn arguments
339RooCmdArg What(const char* str) ;
340
341// RooProdPdf::ctor arguments
342RooCmdArg Conditional(const RooArgSet& pdfSet, const RooArgSet& depSet, bool depsAreCond=false) ;
343
344/**
345 * \defgroup Generating Arguments for generating data
346 * @{
347 */
348// RooAbsPdf::generate arguments
349RooCmdArg ProtoData(const RooDataSet& protoData, bool randomizeOrder=false, bool resample=false) ;
350RooCmdArg NumEvents(Int_t numEvents) ;
351RooCmdArg NumEvents(double numEvents) ;
352RooCmdArg AutoBinned(bool flag=true) ;
353RooCmdArg GenBinned(const char* tag) ;
355RooCmdArg ExpectedData(bool flag=true) ;
356RooCmdArg Asimov(bool flag=true) ;
357
358/** @} */
359
360// RooAbsRealLValue::createHistogram arguments
361RooCmdArg YVar(const RooAbsRealLValue& var, const RooCmdArg& arg={}) ;
362RooCmdArg ZVar(const RooAbsRealLValue& var, const RooCmdArg& arg={}) ;
363RooCmdArg AxisLabel(const char* name) ;
364RooCmdArg Scaling(bool flag) ;
365
366
367// RooAbsReal::createHistogram arguments
368RooCmdArg IntrinsicBinning(bool flag=true) ;
369
370// RooAbsReal::createIntegral arguments
371template<class... Args_t>
372RooCmdArg NormSet(Args_t &&... argsOrArgSet) {
373 RooCmdArg out{"NormSet",0};
374 out.setSet(0, RooArgSet{std::forward<Args_t>(argsOrArgSet)...});
375 return out;
376}
378
379// RooMCStudy::ctor arguments
380RooCmdArg Silence(bool flag=true) ;
382RooCmdArg FitOptions(const RooCmdArg& arg1 ,const RooCmdArg& arg2={},
383 const RooCmdArg& arg3={},const RooCmdArg& arg4={},
384 const RooCmdArg& arg5={},const RooCmdArg& arg6={}) ;
385RooCmdArg Binned(bool flag=true) ;
386
387// RooMCStudy::plot* arguments
388RooCmdArg Frame(const RooCmdArg& arg1 ,const RooCmdArg& arg2={},
389 const RooCmdArg& arg3={},const RooCmdArg& arg4={},
390 const RooCmdArg& arg5={},const RooCmdArg& arg6={}) ;
392RooCmdArg FrameRange(double xlo, double xhi) ;
393RooCmdArg FitGauss(bool flag=true) ;
394
395// RooRealVar::format arguments
396RooCmdArg AutoPrecision(Int_t ndigit=2) ;
398RooCmdArg TLatexStyle(bool flag=true) ;
399RooCmdArg LatexStyle(bool flag=true) ;
400RooCmdArg LatexTableStyle(bool flag=true) ;
401RooCmdArg VerbatimName(bool flag=true) ;
402
403// RooMsgService::addReportingStream arguments
404RooCmdArg Topic(Int_t topic) ;
405RooCmdArg ObjectName(const char* name) ;
406RooCmdArg ClassName(const char* name) ;
407RooCmdArg BaseClassName(const char* name) ;
408RooCmdArg TagName(const char* name) ;
409RooCmdArg OutputStream(std::ostream& os) ;
410RooCmdArg Prefix(bool flag) ;
411RooCmdArg Color(Color_t color) ;
412
413// RooWorkspace::import() arguments
414RooCmdArg RenameConflictNodes(const char* suffix, bool renameOrigNodes=false) ;
415RooCmdArg RenameAllNodes(const char* suffix) ;
416RooCmdArg RenameAllVariables(const char* suffix) ;
417RooCmdArg RenameAllVariablesExcept(const char* suffix,const char* exceptionList) ;
418RooCmdArg RenameVariable(const char* inputName, const char* outputName) ;
419RooCmdArg Rename(const char* suffix) ;
420RooCmdArg RecycleConflictNodes(bool flag=true) ;
421RooCmdArg Embedded(bool flag=true) ;
422RooCmdArg NoRecursion(bool flag=true) ;
423
424// RooSimCloneTool::build() arguments
425RooCmdArg SplitParam(const char* varname, const char* catname) ;
426RooCmdArg SplitParam(const RooRealVar& var, const RooAbsCategory& cat) ;
427RooCmdArg SplitParamConstrained(const char* varname, const char* catname, const char* rsname) ;
428RooCmdArg SplitParamConstrained(const RooRealVar& var, const RooAbsCategory& cat, const char* rsname) ;
429RooCmdArg Restrict(const char* catName, const char* stateNameList) ;
430
431// RooAbsPdf::createCdf() arguments
432RooCmdArg SupNormSet(const RooArgSet& nset) ;
433RooCmdArg ScanParameters(Int_t nbins,Int_t intOrder) ;
437
438// Generic container arguments (to be able to supply more command line arguments)
439RooCmdArg MultiArg(const RooCmdArg& arg1, const RooCmdArg& arg2,
440 const RooCmdArg& arg3={},const RooCmdArg& arg4={},
441 const RooCmdArg& arg5={},const RooCmdArg& arg6={},
442 const RooCmdArg& arg7={},const RooCmdArg& arg8={}) ;
443
444RooConstVar& RooConst(double val) ;
445
446// End group CmdArgs:
447/**
448 * @}
449 */
450
451namespace Detail {
452
453// Function to pack an arbitrary number of RooCmdArgs into a RooLinkedList. Implementation detail of many high-level RooFit functions.
454template <typename... Args>
455inline std::unique_ptr<RooLinkedList> createCmdList(RooCmdArg const* arg1, Args &&...args)
456{
457 auto cmdList = std::make_unique<RooLinkedList>();
458 for (auto &arg : {arg1, static_cast<RooCmdArg const *>(args)...}) {
459 cmdList->Add(const_cast<RooCmdArg *>(arg));
460 }
461 return cmdList;
462}
463
464inline std::unique_ptr<RooLinkedList> createCmdList()
465{
466 return std::make_unique<RooLinkedList>();
467}
468
469inline std::unique_ptr<RooLinkedList> createCmdList(RooLinkedList const *cmdList)
470{
471 auto cmdListCopy = std::make_unique<RooLinkedList>();
472 for (auto *arg : *cmdList) {
473 cmdListCopy->Add(arg);
474 }
475 return cmdListCopy;
476}
477
478// RooFit-internal helper struct to build a map object that only uses
479// std::vector, which can be implicitly converted to std::map in C++. Used to
480// avoid std::map in pythonizations.
481template <class Key_t, class Val_t>
482struct FlatMap {
483 std::vector<Key_t> keys;
484 std::vector<Val_t> vals;
485};
486
487template <class Key_t, class Val_t>
489 std::map<Key_t, Val_t> out;
490 for (std::size_t i = 0; i < flatMap.keys.size(); ++i) {
491 out[flatMap.keys[i]] = flatMap.vals[i];
492 }
493 return out;
494}
495
496// Internal variant of Slice(), Import(), and Link(), that take flat maps instad of std::map.
497RooCmdArg SliceFlatMap(FlatMap<RooCategory *, std::string> const &args);
498RooCmdArg ImportFlatMap(FlatMap<std::string, RooDataHist *> const &args);
499RooCmdArg ImportFlatMap(FlatMap<std::string, TH1 *> const &args);
500RooCmdArg ImportFlatMap(FlatMap<std::string, RooDataSet *> const &args);
501RooCmdArg LinkFlatMap(FlatMap<std::string, RooAbsData *> const &args);
502
503} // namespace Detail
504
505} // namespace RooFit
506
507namespace RooFitShortHand {
508
509RooConstVar& C(double value);
510
511} // namespace RooFitShortHand
512
513#endif
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
short Style_t
Definition RtypesCore.h:82
short Color_t
Definition RtypesCore.h:85
float Size_t
Definition RtypesCore.h:89
short Width_t
Definition RtypesCore.h:84
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Option_t Option_t TPoint TPoint const char mode
Option_t Option_t width
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
Option_t Option_t style
char name[80]
Definition TGX11.cxx:110
float xmin
#define hi
float ymin
float xmax
Abstract base class for RooRealVar binning definitions.
A space to attach TBranches.
Abstract container object that can hold multiple RooAbsArg objects.
Abstract base class for binned and unbinned datasets.
Definition RooAbsData.h:57
Abstract interface for all probability density functions.
Definition RooAbsPdf.h:40
Abstract base class for objects that represent a real value that may appear on the left hand side of ...
Abstract base class for objects that represent a real value and implements functionality common to al...
Definition RooAbsReal.h:59
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition RooArgSet.h:24
Object to represent discrete states.
Definition RooCategory.h:28
Named container for two doubles, two integers two object points and three string pointers that can be...
Definition RooCmdArg.h:26
void addArg(const RooCmdArg &arg)
Utility function to add nested RooCmdArg to payload of this RooCmdArg.
Int_t getInt(Int_t idx) const
Definition RooCmdArg.h:87
void setProcessRecArgs(bool flag, bool prefix=true)
Definition RooCmdArg.h:46
Represents a constant real-valued object.
Definition RooConstVar.h:23
Container class to hold N-dimensional binned data.
Definition RooDataHist.h:40
Container class to hold unbinned data.
Definition RooDataSet.h:34
RooFitResult is a container class to hold the input and output of a PDF fit to a dataset.
static Value & defaultValue()
static EvalBackend Cuda()
static EvalBackend Codegen()
static EvalBackend CodegenNoGrad()
bool operator!=(EvalBackend const &other) const
EvalBackend(Value value)
static EvalBackend Legacy()
std::string name() const
Value value() const
static EvalBackend Cpu()
static Value toValue(std::string const &name)
static std::string toName(Value value)
bool operator==(EvalBackend const &other) const
A RooFormulaVar is a generic implementation of a real-valued object, which takes a RooArgList of serv...
Collection class for internal use, storing a collection of RooAbsArg pointers in a doubly linked list...
Singleton class that organizes messages generated in RooFit.
Holds the configuration parameters of the various numeric integrators used by RooRealIntegral.
Provides static functions to create and keep track of RooRealVar constants.
Variable that can be changed from the outside.
Definition RooRealVar.h:37
TH1 is the base class of all histogram classes in ROOT.
Definition TH1.h:59
A TTree represents a columnar dataset.
Definition TTree.h:79
RooCmdArg RecycleConflictNodes(bool flag=true)
RooCmdArg ScanNoCdf()
RooCmdArg AutoRange(const RooAbsData &data, double marginFactor=0.1)
RooCmdArg FitGauss(bool flag=true)
RooCmdArg FrameBins(Int_t nbins)
RooCmdArg ClassName(const char *name)
RooCmdArg FitModel(RooAbsPdf &pdf)
RooCmdArg LatexStyle(bool flag=true)
RooCmdArg VerbatimName(bool flag=true)
RooCmdArg IntegratedObservables(const RooArgSet &intObs)
RooCmdArg OutputStream(std::ostream &os)
RooCmdArg Topic(Int_t topic)
RooCmdArg Parameters(const RooArgSet &params)
RooCmdArg NumIntConfig(const RooNumIntConfig &cfg)
RooCmdArg ScanParameters(Int_t nbins, Int_t intOrder)
RooCmdArg Label(const char *str)
RooCmdArg TagName(const char *name)
RooCmdArg MultiArg(const RooCmdArg &arg1, const RooCmdArg &arg2, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={})
RooCmdArg BaseClassName(const char *name)
RooCmdArg FitOptions(const RooCmdArg &arg1, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={})
RooCmdArg IntrinsicBinning(bool flag=true)
RooCmdArg Restrict(const char *catName, const char *stateNameList)
RooCmdArg TLatexStyle(bool flag=true)
RooCmdArg RenameAllVariables(const char *suffix)
RooCmdArg ShowConstants(bool flag=true)
RooCmdArg RenameVariable(const char *inputName, const char *outputName)
RooCmdArg Color(Color_t color)
RooCmdArg FixedPrecision(Int_t ndigit=2)
RooCmdArg AutoPrecision(Int_t ndigit=2)
RooCmdArg Title(const char *name)
RooCmdArg RenameAllNodes(const char *suffix)
RooCmdArg ZVar(const RooAbsRealLValue &var, const RooCmdArg &arg={})
RooCmdArg SplitParam(const char *varname, const char *catname)
RooCmdArg Rename(const char *suffix)
RooCmdArg SupNormSet(const RooArgSet &nset)
RooCmdArg SelectVars(const RooArgSet &vars)
RooCmdArg AutoBinning(Int_t nbins=100, double marginFactor=0.1)
RooCmdArg Frame(const RooCmdArg &arg1, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={})
RooCmdArg YVar(const RooAbsRealLValue &var, const RooCmdArg &arg={})
RooCmdArg FrameRange(double xlo, double xhi)
RooCmdArg Conditional(const RooArgSet &pdfSet, const RooArgSet &depSet, bool depsAreCond=false)
RooCmdArg LatexTableStyle(bool flag=true)
RooCmdArg RenameAllVariablesExcept(const char *suffix, const char *exceptionList)
RooCmdArg Scaling(bool flag)
RooConstVar & RooConst(double val)
RooCmdArg Columns(Int_t ncol)
RooCmdArg EventRange(Int_t nStart, Int_t nStop)
RooCmdArg ScanAllCdf()
RooCmdArg ObjectName(const char *name)
RooCmdArg Format(const char *what, const RooCmdArg &arg1={}, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={})
RooCmdArg Silence(bool flag=true)
RooCmdArg NoRecursion(bool flag=true)
RooCmdArg AxisLabel(const char *name)
RooCmdArg Sibling(const RooAbsCollection &sibling)
RooCmdArg Binned(bool flag=true)
RooCmdArg NormSet(Args_t &&... argsOrArgSet)
RooCmdArg SplitParamConstrained(const char *varname, const char *catname, const char *rsname)
RooCmdArg What(const char *str)
RooCmdArg RenameConflictNodes(const char *suffix, bool renameOrigNodes=false)
RooCmdArg AutoSymRange(const RooAbsData &data, double marginFactor=0.1)
RooCmdArg ScanNumCdf()
RooCmdArg Bins(Int_t nbin)
RooCmdArg Embedded(bool flag=true)
RooCmdArg OutputFile(const char *fileName)
RooCmdArg AutoSymBinning(Int_t nbins=100, double marginFactor=0.1)
RooCmdArg Layout(double xmin, double xmax=0.99, double ymin=0.95)
RooCmdArg OwnLinked()
RooCmdArg ImportFromFile(const char *fname, const char *tname)
RooCmdArg StoreAsymError(const RooArgSet &aset)
RooCmdArg Weight(double wgt)
RooCmdArg StoreError(const RooArgSet &aset)
RooCmdArg Link(const char *state, RooAbsData &data)
RooCmdArg WeightVar(const char *name="weight", bool reinterpretAsWeight=false)
RooCmdArg Import(const char *state, TH1 &histo)
RooCmdArg InitialHesse(bool flag=true)
RooCmdArg IntegrateBins(double precision)
Integrate the PDF over bins.
RooCmdArg MaxCalls(int n)
RooCmdArg ProjectedObservables(Args_t &&... argsOrArgSet)
RooCmdArg SplitRange(bool flag=true)
RooCmdArg AsymptoticError(bool flag)
RooCmdArg PrefitDataFraction(double data_ratio=0.0)
RooCmdArg Offset(std::string const &mode)
RooCmdArg Constrain(const RooArgSet &params)
RooCmdArg GlobalObservablesTag(const char *tagName)
RooCmdArg Minimizer(const char *type, const char *alg=nullptr)
RooCmdArg Hesse(bool flag=true)
RooCmdArg Strategy(Int_t code)
RooCmdArg Save(bool flag=true)
RooCmdArg Integrate(bool flag)
RooCmdArg SumW2Error(bool flag)
RooCmdArg GlobalObservables(Args_t &&... argsOrArgSet)
RooCmdArg GlobalObservablesSource(const char *sourceName)
RooCmdArg SumCoefRange(const char *rangeName)
RooCmdArg PrintEvalErrors(Int_t numErrors)
RooCmdArg Optimize(Int_t flag=2)
RooCmdArg Parallelize(int nWorkers)
RooCmdArg EvalErrorWall(bool flag)
RooCmdArg Warnings(bool flag=true)
RooCmdArg ExternalConstraints(const RooArgSet &constraintPdfs)
RooCmdArg Minos(bool flag=true)
RooCmdArg ModularL(bool flag=false)
RooCmdArg TimingAnalysis(bool timingAnalysis)
RooCmdArg PrintLevel(Int_t code)
RooCmdArg NumCPU(Int_t nCPU, Int_t interleave=0)
RooCmdArg DataError(Int_t)
RooCmdArg CloneData(bool flag)
RooCmdArg RecoverFromUndefinedRegions(double strength)
When parameters are chosen such that a PDF is undefined, try to indicate to the minimiser how to leav...
RooCmdArg Verbose(bool flag=true)
RooCmdArg ConditionalObservables(Args_t &&... argsOrArgSet)
Create a RooCmdArg to declare conditional observables.
RooCmdArg Extended(bool flag=true)
RooCmdArg ProtoData(const RooDataSet &protoData, bool randomizeOrder=false, bool resample=false)
RooCmdArg AllBinned()
RooCmdArg AutoBinned(bool flag=true)
RooCmdArg Asimov(bool flag=true)
RooCmdArg NumEvents(Int_t numEvents)
RooCmdArg GenBinned(const char *tag)
RooCmdArg ExpectedData(bool flag=true)
RooCmdArg RefreshNorm()
RooCmdArg Components(Args_t &&... argsOrArgSet)
RooCmdArg ProjectionRange(const char *rangeName)
RooCmdArg MarkerColor(Color_t color)
RooCmdArg Binning(const RooAbsBinning &binning)
RooCmdArg ProjWData(const RooAbsData &projData, bool binData=false)
RooCmdArg Precision(double prec)
RooCmdArg EvalErrorValue(double value)
RooCmdArg NormRange(const char *rangeNameList)
RooCmdArg ShowProgress()
RooCmdArg DrawOption(const char *opt)
RooCmdArg Project(const RooArgSet &projSet)
RooCmdArg FillStyle(Style_t style)
RooCmdArg Range(const char *rangeName, bool adjustNorm=true)
RooCmdArg FillColor(Color_t color)
RooCmdArg Invisible(bool inv=true)
RooCmdArg MarkerStyle(Style_t style)
RooCmdArg LineWidth(Width_t width)
RooCmdArg Normalization(double scaleFactor)
RooCmdArg VisualizeError(const RooDataSet &paramData, double Z=1)
RooCmdArg ShiftToZero()
RooCmdArg Slice(const RooArgSet &sliceSet)
RooCmdArg AddTo(const char *name, double wgtSel=1.0, double wgtOther=1.0)
RooCmdArg CutRange(const char *rangeName)
RooCmdArg XErrorSize(double width)
RooCmdArg MoveToBack()
RooCmdArg MarkerSize(Size_t size)
RooCmdArg Rescale(double factor)
RooCmdArg Cut(const char *cutSpec)
RooCmdArg LineColor(Color_t color)
RooCmdArg Efficiency(const RooCategory &cat)
RooCmdArg Name(const char *name)
RooCmdArg LineStyle(Style_t style)
RooCmdArg VLines()
RooCmdArg Asymmetry(const RooCategory &cat)
const Int_t n
Definition legend1.C:16
RooConstVar & C(double value)
RooCmdArg LinkFlatMap(FlatMap< std::string, RooAbsData * > const &args)
auto flatMapToStdMap(FlatMap< Key_t, Val_t > const &flatMap)
RooCmdArg ImportFlatMap(FlatMap< std::string, RooDataHist * > const &args)
RooCmdArg SliceFlatMap(FlatMap< RooCategory *, std::string > const &args)
std::unique_ptr< RooLinkedList > createCmdList()
RooCmdArg ParallelGradientOptions(bool enable=true, int orderStrategy=0, int chainFactor=1)
Configuration options for parallel minimization with multiprocessing library.
RooCmdArg ParallelDescentOptions(bool enable=false, int splitStrategy=0, int numSplits=4)
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...
Definition CodegenImpl.h:64
MsgLevel
Verbosity level for RooMsgService::StreamConfig in RooMsgService.
@ SimComponents
@ BulkPartition
OffsetMode
For setting the offset mode with the Offset() command argument to RooAbsPdf::fitTo()
MsgTopic
Topics for a RooMsgService::StreamConfig in RooMsgService.
@ FastEvaluations
@ NumIntegration
@ InputArguments
@ ObjectHandling
@ LinkStateMgmt
void inv(rsa_NUMBER *, rsa_NUMBER *, rsa_NUMBER *)
Definition rsaaux.cxx:949
static const char * what
Definition stlLoader.cc:5
std::vector< Key_t > keys
std::vector< Val_t > vals
static int Prefix[4096]
Definition gifdecode.c:12