62      if (myarg->isConstant())
 
   98      removeConstantParameters(co);
 
  119      removeConstantParameters(
p);
 
  126   if (printModelConfig) {
 
  141   os << endl << 
"=== Using the following for " << 
GetName() << 
" ===" << endl;
 
  145      os << 
"Observables:             ";
 
  149      os << 
"Parameters of Interest:  ";
 
  153      os << 
"Nuisance Parameters:     ";
 
  157      os << 
"Global Observables:      ";
 
  161      os << 
"Constraint Parameters:   ";
 
  165      os << 
"Conditional Observables: ";
 
  169      os << 
"Proto Data:              ";
 
  186      os << 
"Snapshot:                " << endl;
 
  187      snapshot->
Print(
"v");
 
  218      coutE(ObjectHandling) << 
"workspace not set" << endl;
 
  259   if (snapshotVars.
empty())
 
  263   snapshotVars.
snapshot(tempSnapshot);
 
  273   return modelSnapshot;
 
  349   for (
auto const *arg : set) {
 
  350      if (!arg->isFundamental()) {
 
  355   if (errorMsgPrefix && !nonparams.
empty()) {
 
  356      cout << errorMsgPrefix << 
" ERROR: specified set contains non-parameters: " << nonparams << endl;
 
  358   return (nonparams.
empty());
 
  385   for (
auto *arg : set) {
 
  386      arg->setAttribute(
"Constant", 
true);
 
  395std::unique_ptr<RooLinkedList>
 
  398   auto addCmdArg = [&](
RooCmdArg const &cmdArg) {
 
  400         std::stringstream ss;
 
  401         ss << 
"Illegal command argument \"" << cmdArg.GetName()
 
  402            << 
"\" passed to ModelConfig::createNLL(). This option is retrieved from the ModelConfig itself.";
 
  403         const std::string errorMsg = ss.str();
 
  404         oocoutE(&modelConfig, InputArguments) << errorMsg << std::endl;
 
  405         throw std::runtime_error(errorMsg);
 
  407      cmdArgs.push_back(cmdArg);
 
  422   auto finalCmdList = std::make_unique<RooLinkedList>(cmdList);
 
  424      finalCmdList->Add(&arg);
 
  445   std::vector<RooCmdArg> cmdArgs;
 
  446   auto finalCmdList = finalizeCmdList(*
this, cmdList, cmdArgs);
 
  456   std::vector<RooCmdArg> cmdArgs;
 
  457   auto finalCmdList = finalizeCmdList(*
this, cmdList, cmdArgs);
 
  458   return std::unique_ptr<RooFitResult>{
GetPdf()->
fitTo(
data, *finalCmdList)};
 
ROOT::RRangeCast< T, false, Range_t > static_range_cast(Range_t &&coll)
 
winID h TVirtualViewer3D TVirtualGLPainter p
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
 
void Print(Option_t *options=nullptr) const override
Print the object to the defaultPrintStream().
 
RooFit::OwningPtr< RooArgSet > getParameters(const RooAbsData *data, bool stripDisconnected=true) const
Create a list of leaf nodes in the arg tree starting with ourself as top node that don't match any of...
 
RooFit::OwningPtr< RooArgSet > getObservables(const RooArgSet &set, bool valueOnly=true) const
Given a set of possible observables, return the observables that this PDF depends on.
 
RooAbsCollection is an abstract container object that can hold multiple RooAbsArg objects.
 
virtual bool remove(const RooAbsArg &var, bool silent=false, bool matchByNameOnly=false)
Remove the specified argument from our list.
 
void assignFast(const RooAbsCollection &other, bool setValDirty=true) const
Functional equivalent of assign() but assumes this and other collection have same layout.
 
const char * GetName() const override
Returns name of object.
 
virtual bool add(const RooAbsArg &var, bool silent=false)
Add the specified argument to list.
 
void Print(Option_t *options=nullptr) const override
This method must be overridden when a class wants to print itself.
 
RooAbsData is the common abstract base class for binned and unbinned datasets.
 
void Print(Option_t *options=nullptr) const override
This method must be overridden when a class wants to print itself.
 
virtual RooFit::OwningPtr< RooAbsReal > createNLL(RooAbsData &data, const RooLinkedList &cmdList={})
Construct representation of -log(L) of PDF with given dataset.
 
virtual RooFit::OwningPtr< RooFitResult > fitTo(RooAbsData &data, const RooLinkedList &cmdList={})
Fit PDF to given dataset.
 
RooArgSet is a container object that can hold multiple RooAbsArg objects.
 
RooArgSet * snapshot(bool deepCopy=true) const
Use RooAbsCollection::snapshot(), but return as RooArgSet.
 
RooCmdArg is a named container for two doubles, two integers two object points and three string point...
 
RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in ...
 
TObject * FindObject(const char *name) const override
Return pointer to obejct with given name.
 
static RooMsgService & instance()
Return reference to singleton instance.
 
void setGlobalKillBelow(RooFit::MsgLevel level)
 
RooFit::MsgLevel globalKillBelow() const
 
static std::ostream & defaultPrintStream(std::ostream *os=nullptr)
Return a reference to the current default stream to use in Print().
 
RooRealVar represents a variable that can be changed from the outside.
 
ModelConfig is a simple class that holds configuration information specifying how a model should be u...
 
virtual void SetSnapshot(const RooArgSet &set)
Set parameter values for a particular hypothesis if using a common PDF by saving a snapshot in the wo...
 
virtual void SetObservables(const RooArgSet &set)
Specify the observables.
 
std::string fSnapshotName
name for RooArgSet that specifies a particular hypothesis
 
std::string fExtConstraintsName
name for RooArgSet specifying external constraints
 
void ImportPdfInWS(const RooAbsPdf &pdf)
internal function to import Pdf in WS
 
void SetExternalConstraints(const RooArgSet &set)
Specify the external constraints.
 
RooAbsData * GetProtoData() const
get Proto data set (return nullptr if not existing)
 
void DefineSetInWS(const char *name, const RooArgSet &set)
helper functions to define a set in the WS
 
std::unique_ptr< RooFitResult > fitTo(RooAbsData &data, const RooLinkedList &cmdList={})
Wrapper around RooAbsPdf::fitTo(RooAbsData&, const RooLinkedList&), where the pdf and some configurat...
 
std::string fWSName
name of the WS
 
const RooArgSet * GetConditionalObservables() const
get RooArgSet for conditional observables (return nullptr if not existing)
 
void GuessObsAndNuisance(const RooAbsData &data, bool printModelConfig=true)
Makes sensible guesses of observables, parameters of interest and nuisance parameters if one or multi...
 
std::string fConditionalObsName
name for RooArgSet specifying conditional observables
 
const RooArgSet * GetGlobalObservables() const
get RooArgSet for global observables (return nullptr if not existing)
 
virtual void SetConditionalObservables(const RooArgSet &set)
Specify the conditional observables.
 
TRef fRefWS
WS reference used in the file.
 
const RooArgSet * GetParametersOfInterest() const
get RooArgSet containing the parameter of interest (return nullptr if not existing)
 
const RooArgSet * GetNuisanceParameters() const
get RooArgSet containing the nuisance parameters (return nullptr if not existing)
 
std::unique_ptr< RooAbsReal > createNLL(RooAbsData &data, const RooLinkedList &cmdList={}) const
Wrapper around RooAbsPdf::createNLL(RooAbsData&, const RooLinkedList&), where the pdf and some config...
 
void LoadSnapshot() const
load the snapshot from ws if it exists
 
void Print(Option_t *option="") const override
overload the print method
 
std::string fGlobalObsName
name for RooArgSet specifying global observables
 
void ImportDataInWS(RooAbsData &data)
internal function to import data in WS
 
void SetWS(RooWorkspace &ws) override
Set a workspace that owns all the necessary components for the analysis.
 
bool SetHasOnlyParameters(const RooArgSet &set, const char *errorMsgPrefix=nullptr)
helper function to check that content of a given set is exclusively parameters
 
const RooArgSet * GetObservables() const
get RooArgSet for observables (return nullptr if not existing)
 
const RooArgSet * GetSnapshot() const
get RooArgSet for parameters for a particular hypothesis (return nullptr if not existing)
 
const RooArgSet * GetConstraintParameters() const
get RooArgSet containing the constraint parameters (return nullptr if not existing)
 
const RooArgSet * GetExternalConstraints() const
get RooArgSet for global observables (return nullptr if not existing)
 
RooWorkspace * GetWS() const override
get from TRef
 
RooAbsPdf * GetPdf() const
get model PDF (return nullptr if pdf has not been specified or does not exist)
 
virtual void SetNuisanceParameters(const RooArgSet &set)
Specify the nuisance parameters (parameters that are not POI).
 
RooAbsPdf * GetPriorPdf() const
get parameters prior pdf (return nullptr if not existing)
 
virtual void SetGlobalObservables(const RooArgSet &set)
Specify the global observables.
 
The RooWorkspace is a persistable container for RooFit projects.
 
const RooArgSet * set(RooStringView name)
Return pointer to previously defined named set with given nmame If no such set is found a null pointe...
 
bool import(const RooAbsArg &arg, const RooCmdArg &arg1=RooCmdArg(), 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(), const RooCmdArg &arg9=RooCmdArg())
Import a RooAbsArg object, e.g.
 
bool saveSnapshot(RooStringView, const char *paramNames)
Save snapshot of values and attributes (including "Constant") of given parameters.
 
void merge(const RooWorkspace &)
 
bool removeSet(const char *name)
Remove a named set from the workspace.
 
bool loadSnapshot(const char *name)
Load the values and attributes of the parameters in the snapshot saved with the given name.
 
bool defineSet(const char *name, const RooArgSet &aset, bool importMissing=false)
Define a named RooArgSet with given constituents.
 
const char * GetName() const override
Returns name of object.
 
TObject * GetObject() const
Return a pointer to the referenced object.
 
RooCmdArg RecycleConflictNodes(bool flag=true)
 
RooCmdArg GlobalObservables(Args_t &&... argsOrArgSet)
 
RooCmdArg ExternalConstraints(const RooArgSet &constraintPdfs)
 
RooCmdArg ConditionalObservables(Args_t &&... argsOrArgSet)
Create a RooCmdArg to declare conditional observables.
 
MsgLevel
Verbosity level for RooMsgService::StreamConfig in RooMsgService.
 
Namespace for the RooStats classes.