11#ifndef ROOT_Math_IntegratorOptions
12#define ROOT_Math_IntegratorOptions
131 if (
this == &rhs)
return *
this;
155 void Print(std::ostream & os = std::cout)
const;
179 static void PrintDefault(
const char *
name = 0, std::ostream & os = std::cout);
212 if (
this == &rhs)
return *
this;
234 void Print(std::ostream & os = std::cout)
const;
258 static void PrintDefault(
const char *
name = 0, std::ostream & os = std::cout);
Base class for Numerical integration options common in 1D and multi-dimension This is an internal cla...
BaseIntegratorOptions()
protected constructor to avoid user creating this class
virtual std::string Integrator() const =0
name of 1D integrator
ROOT::Math::IOptions * fExtraOptions
void SetAbsTolerance(double tol)
non-static methods for setting options
double RelTolerance() const
absolute tolerance
virtual ~BaseIntegratorOptions()
protected constructor to avoid user creating this class
void SetExtraOptions(const IOptions &opt)
set extra options (in this case pointer is cloned)
void SetRelTolerance(double tol)
set the relative tolerance
unsigned int WKSize() const
size of the workspace
double AbsTolerance() const
non-static methods for retrivieng options
BaseIntegratorOptions & operator=(const BaseIntegratorOptions &opt)
assignment operators
void SetWKSize(unsigned int size)
set workspace size
IOptions * ExtraOptions() const
return extra options
Generic interface for defining configuration options of a numerical algorithm.
Numerical multi dimensional integration options.
static void SetDefaultAbsTolerance(double tol)
static std::string DefaultIntegrator()
static void SetDefaultWKSize(unsigned int size)
static void SetDefaultIntegrator(const char *name)
void Print(std::ostream &os=std::cout) const
print all the options
static void SetDefaultNCalls(unsigned int ncall)
static unsigned int DefaultWKSize()
static ROOT::Math::IOptions * FindDefault(const char *name)
void SetIntegrator(const char *name)
set multi-dim integrator name
static IntegrationMultiDim::Type DefaultIntegratorType()
static ROOT::Math::IOptions & Default(const char *name)
static unsigned int DefaultNCalls()
void SetNCalls(unsigned int calls)
set maximum number of function calls
virtual ~IntegratorMultiDimOptions()
IntegratorMultiDimOptions(const IntegratorMultiDimOptions &rhs)
static void SetDefaultRelTolerance(double tol)
static void PrintDefault(const char *name=0, std::ostream &os=std::cout)
print only the specified default options
unsigned int NCalls() const
maximum number of function calls
IntegratorMultiDimOptions & operator=(const IntegratorMultiDimOptions &rhs)
static double DefaultRelTolerance()
static double DefaultAbsTolerance()
std::string Integrator() const
name of multi-dim integrator
IntegrationMultiDim::Type IntegratorType() const
type of the integrator (return the enumeration type)
Numerical one dimensional integration options.
static void SetDefaultNPoints(unsigned int n)
static std::string DefaultIntegrator()
virtual ~IntegratorOneDimOptions()
IntegrationOneDim::Type IntegratorType() const
type of the integrator (return the enumeration type)
static double DefaultAbsTolerance()
static void SetDefaultAbsTolerance(double tol)
static double DefaultRelTolerance()
void Print(std::ostream &os=std::cout) const
print all the options
void SetIntegrator(const char *name)
set 1D integrator name
static void SetDefaultRelTolerance(double tol)
std::string Integrator() const
name of 1D integrator
void SetNPoints(unsigned int n)
Set number of points for active integration rule.
static void SetDefaultIntegrator(const char *name)
IntegratorOneDimOptions(const IntegratorOneDimOptions &rhs)
static void PrintDefault(const char *name=0, std::ostream &os=std::cout)
print only the specified default options
static ROOT::Math::IOptions & Default(const char *name)
retrieve specific options - if not existing create a IOptions
static void SetDefaultWKSize(unsigned int size)
static unsigned int DefaultNPoints()
static unsigned int DefaultWKSize()
static IntegrationOneDim::Type DefaultIntegratorType()
static ROOT::Math::IOptions * FindDefault(const char *name)
unsigned int NPoints() const
Number of points used by current integration rule.
IntegratorOneDimOptions & operator=(const IntegratorOneDimOptions &rhs)
Type
enumeration specifying the integration types.
Type
enumeration specifying the integration types.
Namespace for new Math classes and functions.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...