11 #ifndef ROOT_Math_IntegratorOptions 12 #define ROOT_Math_IntegratorOptions 14 #ifndef ROOT_Math_AllIntegrationTypes 133 if (
this == &rhs)
return *
this;
154 void SetIntegrator(
const char *
name);
157 void Print(std::ostream & os = std::cout)
const;
161 static void SetDefaultIntegrator(
const char * name);
162 static void SetDefaultAbsTolerance(
double tol);
163 static void SetDefaultRelTolerance(
double tol);
164 static void SetDefaultWKSize(
unsigned int size);
165 static void SetDefaultNPoints(
unsigned int n);
167 static std::string DefaultIntegrator();
169 static double DefaultAbsTolerance();
170 static double DefaultRelTolerance();
171 static unsigned int DefaultWKSize();
172 static unsigned int DefaultNPoints();
181 static void PrintDefault(
const char * name = 0, std::ostream & os = std::cout);
214 if (
this == &rhs)
return *
this;
233 void SetIntegrator(
const char *
name);
236 void Print(std::ostream & os = std::cout)
const;
240 static void SetDefaultIntegrator(
const char * name);
241 static void SetDefaultAbsTolerance(
double tol);
242 static void SetDefaultRelTolerance(
double tol);
243 static void SetDefaultWKSize(
unsigned int size);
244 static void SetDefaultNCalls(
unsigned int ncall);
246 static std::string DefaultIntegrator();
248 static double DefaultAbsTolerance();
249 static double DefaultRelTolerance();
250 static unsigned int DefaultWKSize();
251 static unsigned int DefaultNCalls();
260 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)
This namespace contains pre-defined functions to be used in conjuction with TExecutor::Map and TExecu...
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