11 #ifndef ROOT_Math_IntegratorOptions 12 #define ROOT_Math_IntegratorOptions 131 if (
this == &rhs)
return *
this;
152 void SetIntegrator(
const char * name);
155 void Print(std::ostream & os = std::cout)
const;
159 static void SetDefaultIntegrator(
const char * name);
160 static void SetDefaultAbsTolerance(
double tol);
161 static void SetDefaultRelTolerance(
double tol);
162 static void SetDefaultWKSize(
unsigned int size);
163 static void SetDefaultNPoints(
unsigned int n);
165 static std::string DefaultIntegrator();
167 static double DefaultAbsTolerance();
168 static double DefaultRelTolerance();
169 static unsigned int DefaultWKSize();
170 static unsigned int DefaultNPoints();
179 static void PrintDefault(
const char * name = 0, std::ostream & os = std::cout);
212 if (
this == &rhs)
return *
this;
231 void SetIntegrator(
const char * name);
234 void Print(std::ostream & os = std::cout)
const;
238 static void SetDefaultIntegrator(
const char * name);
239 static void SetDefaultAbsTolerance(
double tol);
240 static void SetDefaultRelTolerance(
double tol);
241 static void SetDefaultWKSize(
unsigned int size);
242 static void SetDefaultNCalls(
unsigned int ncall);
244 static std::string DefaultIntegrator();
246 static double DefaultAbsTolerance();
247 static double DefaultRelTolerance();
248 static unsigned int DefaultWKSize();
249 static unsigned int DefaultNCalls();
258 static void PrintDefault(
const char * name = 0, std::ostream & os = std::cout);
IntegratorMultiDimOptions & operator=(const IntegratorMultiDimOptions &rhs)
IntegratorOneDimOptions & operator=(const IntegratorOneDimOptions &rhs)
unsigned int NCalls() const
maximum number of function calls
void SetExtraOptions(const IOptions &opt)
set extra options (in this case pointer is cloned)
Namespace for new ROOT classes and functions.
Type
enumeration specifying the integration types.
void SetWKSize(unsigned int size)
set workspace size
IntegratorMultiDimOptions(const IntegratorMultiDimOptions &rhs)
void SetNCalls(unsigned int calls)
set maximum number of function calls
void SetNPoints(unsigned int n)
set number of points rule values of 1,2,3,4,5,6 corresponds to 15,21,31,41,51,61 and they are used in...
double RelTolerance() const
absolute tolerance
void PrintDefault(const char *name, std::ostream &os)
print default options
IntegrationMultiDim::Type IntegratorType() const
type of the integrator (return the enumeration type)
BaseIntegratorOptions & operator=(const BaseIntegratorOptions &opt)
assignment operators
ROOT::Math::IOptions * fExtraOptions
IntegrationOneDim::Type IntegratorType() const
type of the integrator (return the enumeration type)
unsigned int WKSize() const
size of the workspace
Numerical multi dimensional integration options.
double AbsTolerance() const
non-static methods for retrivieng options
Numerical one dimensional integration options.
unsigned int NPoints() const
maximum number of function calls
virtual std::string Integrator() const =0
name of 1D integrator
Base class for Numerical integration options common in 1D and multi-dimension This is an internal cla...
Type
enumeration specifying the integration types.
void Print(std::ostream &os, const OptionType &opt)
virtual ~BaseIntegratorOptions()
protected constructor to avoid user creating this class
virtual ~IntegratorMultiDimOptions()
Namespace for new Math classes and functions.
Generic interface for defining configuration options of a numerical algorithm.
IOptions * ExtraOptions() const
return extra options
virtual ~IntegratorOneDimOptions()
IntegratorOneDimOptions(const IntegratorOneDimOptions &rhs)
BaseIntegratorOptions()
protected constructor to avoid user creating this class
void SetRelTolerance(double tol)
set the relative tolerance
void SetAbsTolerance(double tol)
non-static methods for setting options