57                 std::vector<int> 
const& code) :
 
   59  _paramList(
"paramList",
"List of paramficients",
this),
 
   62  for (
auto param : paramList) {
 
   64      coutE(InputArguments) << 
"FlexibleInterpVar::ctor(" << 
GetName() << 
") ERROR: paramficient " << param->GetName()
 
   65             << 
" is not of type RooAbsReal" << std::endl ;
 
   73     coutE(InputArguments) << 
"FlexibleInterpVar::ctor(" << 
GetName() << 
") invalid input std::vectors " << std::endl;
 
 
   87  _paramList(
"paramList",
"List of coefficients",
this)
 
 
   96  _paramList(
"paramList",
this,
other._paramList),
 
   97  _nominal(
other._nominal), _low(
other._low), _high(
other._high), _interpCode(
other._interpCode), _interpBoundary(
other._interpBoundary)
 
 
  118      coutE(InputArguments) << 
"FlexibleInterpVar::setInterpCode ERROR:  " << param.
GetName()
 
  119                            << 
" is not in list" << std::endl;
 
  121      coutI(InputArguments) << 
"FlexibleInterpVar::setInterpCode :  " << param.
GetName()
 
  122                            << 
" is now " << code << std::endl;
 
 
  142  coutW(InputArguments) << 
"FlexibleInterpVar::setNominal : nominal is now " << 
newNominal << std::endl ;
 
 
  153      coutE(InputArguments) << 
"FlexibleInterpVar::setLow ERROR:  " << param.
GetName()
 
  154             << 
" is not in list" << std::endl ;
 
  156      coutW(InputArguments) << 
"FlexibleInterpVar::setLow :  " << param.
GetName()
 
  157             << 
" is now " << 
newLow << std::endl ;
 
 
  169      coutE(InputArguments) << 
"FlexibleInterpVar::setHigh ERROR:  " << param.
GetName()
 
  170             << 
" is not in list" << std::endl ;
 
  172      coutW(InputArguments) << 
"FlexibleInterpVar::setHigh :  " << param.
GetName()
 
  173             << 
" is now " << 
newHigh << std::endl ;
 
 
  202         coutE(InputArguments) << 
"FlexibleInterpVar::evaluate ERROR:  param " << i
 
  203                               << 
" with unknown interpolation code" << std::endl;
 
 
  227      coutE(InputArguments) << 
"FlexibleInterpVar::evaluate ERROR:  param " << 0
 
  228                            << 
" with unknown interpolation code" << std::endl;
 
  235   for (
unsigned int i = 1; i < 
n; i++) {
 
  237         coutE(InputArguments) << 
"FlexibleInterpVar::evaluate ERROR:  Code Squashing AD does not yet support having " 
  238                                  "different interpolation codes for the same class object " 
 
  255         coutE(InputArguments) << 
"FlexibleInterpVar::evaluate ERROR:  param " << i
 
  256                               << 
" with unknown interpolation code" << std::endl;
 
 
  277  os << 
indent << 
"--- FlexibleInterpVar ---" << std::endl;
 
 
  283  for (
int i=0;i<(
int)
_low.size();i++) {
 
  285    os << std::setw(36) << param.
GetName()<<
": "<<std::setw(7) << 
_low[i]<<
"  "<<std::setw(7) << 
_high[i]
 
 
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
 
static void indent(ostringstream &buf, int indent_level)
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
static unsigned int total
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
 
void setValueDirty()
Mark the element dirty. This forces a re-evaluation when a value is requested.
 
Int_t index(const RooAbsArg *arg) const
Returns index of given arg, or -1 if arg is not in the collection.
 
Storage_t::size_type size() const
 
Abstract base class for objects that represent a real value and implements functionality common to al...
 
double getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
 
void printMultiline(std::ostream &os, Int_t contents, bool verbose=false, TString indent="") const override
Structure printing.
 
RooArgList is a container object that can hold multiple RooAbsArg objects.
 
RooAbsArg * at(Int_t idx) const
Return object at given index, or nullptr if index is out of range.
 
bool add(const RooAbsArg &var, bool valueServer, bool shapeServer, bool silent)
Overloaded RooCollection_t::add() method insert object into set and registers object as server to own...
 
A class to maintain the context for squashing of RooFit models into code.
 
std::string buildCall(std::string const &funcname, Args_t const &...args)
Build the code to call the function with name funcname, passing some arguments.
 
void addResult(RooAbsArg const *key, std::string const &value)
A function to save an expression that includes/depends on the result of the input node.
 
std::span< const double > at(RooAbsArg const *arg, RooAbsArg const *caller=nullptr)
 
std::span< double > output()
 
std::vector< int > _interpCode
 
void doEval(RooFit::EvalContext &) const override
Base function for computing multiple values of a RooAbsReal.
 
std::vector< double > _high
 
void printMultiline(std::ostream &os, Int_t contents, bool verbose=false, TString indent="") const override
Interface for detailed printing of object.
 
void setInterpCode(RooAbsReal ¶m, int code)
 
void printAllInterpCodes()
 
void setLow(RooAbsReal ¶m, double newLow)
 
void setHigh(RooAbsReal ¶m, double newHigh)
 
void translate(RooFit::Detail::CodeSquashContext &ctx) const override
This function defines a translation for each RooAbsReal based object that can be used to express the ...
 
void setAllInterpCodes(int code)
 
std::vector< double > _low
 
double evaluate() const override
Calculate and return value of polynomial.
 
~FlexibleInterpVar() override
Destructor.
 
void setNominal(double newNominal)
 
virtual void printFlexibleInterpVars(std::ostream &os) const
 
FlexibleInterpVar()
Default constructor.
 
const char * GetName() const override
Returns name of object.
 
double flexibleInterpSingle(unsigned int code, double low, double high, double boundary, double nominal, double paramVal, double res)
 
Namespace for the RooStats classes.
 
static T Min()
Returns maximum representation for type T.