26 auto nums = dataMap.
at(
_pdf);
35 std::size_t nEvalErrorsType0 = extraArgs[0];
36 std::size_t nEvalErrorsType1 = extraArgs[1];
37 std::size_t nEvalErrorsType2 = extraArgs[2];
39 for (std::size_t i = 0; i < nEvalErrorsType0; ++i) {
40 logEvalError(
"p.d.f normalization integral is zero or negative");
42 for (std::size_t i = 0; i < nEvalErrorsType1; ++i) {
43 logEvalError(
"p.d.f value is less than zero, trying to recover");
45 for (std::size_t i = 0; i < nEvalErrorsType2; ++i) {
void logEvalError(const char *message, const char *serverValueString=nullptr) const
Log evaluation error message.
virtual void compute(cudaStream_t *, Computer, RestrictArr, size_t, const VarVector &, ArgVector &)=0
RooSpan< const double > at(RooAbsArg const *arg, RooAbsArg const *caller=nullptr)
RooRealProxy _normIntegral
RooTemplateProxy< RooAbsPdf > _pdf
void computeBatch(cudaStream_t *, double *output, size_t size, RooFit::Detail::DataMap const &) const override
Base function for computing multiple values of a RooAbsReal.
R__EXTERN RooBatchComputeInterface * dispatchCUDA
R__EXTERN RooBatchComputeInterface * dispatchCPU
This dispatch pointer points to an implementation of the compute library, provided one has been loade...
std::vector< double > ArgVector