37 auto config =
ctx.config(
this);
41 if (config.useCuda()) {
59 logEvalError(
"p.d.f normalization integral is zero or negative");
62 logEvalError(
"p.d.f value is less than zero, trying to recover");
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
double getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
void logEvalError(const char *message, const char *serverValueString=nullptr) const
Log evaluation error message.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooRealProxy _normIntegral
RooTemplateProxy< RooAbsPdf > _pdf
void logEvalErrorCounts() const
double getValV(const RooArgSet *normSet) const override
Return current value, normalized by integrating over the observables in nset.
std::array< double, 3 > _evalErrorCounts
Evaluation error counters, filled by the compute function.
void doEval(RooFit::EvalContext &) const override
Base function for computing multiple values of a RooAbsReal.
void compute(Config cfg, Computer comp, std::span< double > output, VarSpan vars, ArgSpan extraArgs={})
double normalizeWithNaNPacking(RooAbsPdf const &pdf, double rawVal, double normVal)