Integration algorithm. More...
#include <include/CepGen/Integration/Integrator.h>
Public Member Functions | |
Integrator (const ParametersList &) | |
virtual bool | oneDimensional () const |
Is the integrator designed for one-dimensional case? | |
virtual double | eval (Integrand &, const std::vector< double > &) const |
Compute function value at one point. | |
Value | integrate (Integrand &integrand, const std::vector< Limits > &={}) |
Evaluate the integral for a given range. | |
Value | integrate (const std::function< double(double)> &integrand, const Limits &range_1d={0., 1.}) |
Evaluate the integral of a function for a given range. | |
Value | integrate (const std::function< double(const std::vector< double > &)> &integrand, const std::vector< Limits > &range) |
Evaluate the integral of a function for a given range. | |
const std::string & | name () const |
Module unique indexing name. | |
bool | operator== (const SteeredObject &oth) const |
Equality operator. | |
bool | operator!= (const SteeredObject &oth) const |
Inequality operator. | |
const ParametersList & | parameters () const override |
Module user-defined parameters. | |
void | setParameters (const ParametersList ¶ms) override |
Set module parameters. | |
void | setDescribedParameters (const ParametersList ¶ms_orig) |
Set (documented) module parameters. | |
Static Public Member Functions | |
static ParametersDescription | description () |
Protected Member Functions | |
virtual Value | run (Integrand &integrand, const std::vector< Limits > &range)=0 |
Evaluate the integral of a function for a given range. | |
template<typename T > | |
T | steer (const std::string &key) const |
Retrieve a parameters as previously steered. | |
template<typename T , typename U > | |
U | steerAs (const std::string &key) const |
Retrieve a recast parameters as previously steered. | |
std::string | steerName () const |
Retrieve module name from parameters. | |
std::string | steerPath (const std::string &key) const |
Retrieve a path from common search paths. | |
Protected Attributes | |
const int | verbosity_ |
Integrator verbosity. | |
const std::string | name_ |
Module unique indexing name. | |
ParametersList | params_ |
Module parameters. | |
Definition at line 34 of file Integrator.h.
|
explicit |
|
static |
|
virtual |
Value integrate | ( | const std::function< double(const std::vector< double > &)> & | integrand, |
const std::vector< Limits > & | range ) |
[in] | integrand | Function to integrate |
[in] | range | integration range |
Value integrate | ( | const std::function< double(double)> & | integrand, |
const Limits & | range_1d = {0., 1.} ) |
[in] | integrand | Function to integrate |
[in] | range_1d | integration range |
|
inherited |
Definition at line 42 of file NamedModule.h.
|
virtual |
Definition at line 40 of file Integrator.h.
|
inherited |
Definition at line 50 of file SteeredObject.h.
|
inherited |
Definition at line 48 of file SteeredObject.h.
|
overridevirtualinherited |
Reimplemented from Steerable.
Definition at line 53 of file SteeredObject.h.
|
protectedpure virtual |
[in] | integrand | Function to integrate |
[in] | range | integration range |
|
inherited |
Definition at line 72 of file SteeredObject.h.
|
overridevirtualinherited |
Reimplemented from Steerable.
Definition at line 61 of file SteeredObject.h.
|
protectedinherited |
Definition at line 39 of file Steerable.h.
Definition at line 44 of file Steerable.h.
|
protectedinherited |
Definition at line 48 of file Steerable.h.
|
protectedinherited |
|
protectedinherited |
Definition at line 45 of file NamedModule.h.
|
mutableprotectedinherited |
Definition at line 50 of file Steerable.h.
|
protected |
Definition at line 61 of file Integrator.h.