12#ifndef ROOT_TFoamSampler
13#define ROOT_TFoamSampler
51 using DistSampler::SetFunction;
56 SetFunction<const ROOT::Math::IGenFunction>(func, 1);
66 bool Init(
const char * =
"")
override;
84 void SetSeed(
unsigned int seed)
override;
97 bool Sample(
double *
x)
override;
105 bool SampleBin(
double prob,
double &
value,
double *error =
nullptr)
override;
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 r
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
DistSampler options class.
Interface class for generic sampling of a distribution, i.e.
const double * Sample()
Sample one event and return an array x with sample coordinates values.
Interface (abstract class) for generic functions objects of one-dimension Provides a method to evalua...
Abstract class representing n-dimensional real positive integrand function.
class implementing the ROOT::Math::DistSampler interface using FOAM for sampling arbitrary distributi...
void SetFunction(const ROOT::Math::IGenFunction &func) override
set the parent function distribution to use for random sampling (one dim case)
const ROOT::Math::IGenFunction * fFunc1D
bool Init(const char *="") override
initialize the generators with the default options
void SetSeed(unsigned int seed) override
Set the random seed for the TRandom instances used by the sampler classes Needs to be called before I...
TFoamSampler()
default constructor
bool SampleBin(double prob, double &value, double *error=nullptr) override
sample one bin given an estimated of the pdf in the bin (this can be function value at the center or ...
TFoamIntegrand * fFoamDist
TRandom * GetRandom() override
Get the random engine used by the sampler.
~TFoamSampler() override
virtual destructor
void SetRandom(TRandom *r) override
Set the random engine to be used Needs to be called before Init to have effect.
TFoam is the main class of the multi-dimensional general purpose Monte Carlo event generator (integra...
This is the base class for the ROOT Random number generators.
TFitResultPtr Fit(FitObject *h1, TF1 *f1, Foption_t &option, const ROOT::Math::MinimizerOptions &moption, const char *goption, ROOT::Fit::DataRange &range)
Namespace for new Math classes and functions.
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.