cepgen is hosted by Hepforge, IPPP Durham
CepGen N/A
Central exclusive processes event generator

Integration algorithm. More...

#include <include/CepGen/Integration/Integrator.h>

+ Inheritance diagram for Integrator:
+ Collaboration diagram for Integrator:

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 ParametersListparameters () const override
 Module user-defined parameters.
 
void setParameters (const ParametersList &params) override
 Set module parameters.
 
void setDescribedParameters (const ParametersList &params_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 >
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.
 

Detailed Description

Definition at line 34 of file Integrator.h.

Constructor & Destructor Documentation

◆ Integrator()

Integrator ( const ParametersList & )
explicit

Member Function Documentation

◆ description()

static ParametersDescription description ( )
static

◆ eval()

virtual double eval ( Integrand & ,
const std::vector< double > &  ) const
virtual

◆ integrate() [1/3]

Value integrate ( const std::function< double(const std::vector< double > &)> & integrand,
const std::vector< Limits > & range )
Parameters
[in]integrandFunction to integrate
[in]rangeintegration range

◆ integrate() [2/3]

Value integrate ( const std::function< double(double)> & integrand,
const Limits & range_1d = {0., 1.} )
Parameters
[in]integrandFunction to integrate
[in]range_1dintegration range

◆ integrate() [3/3]

Value integrate ( Integrand & integrand,
const std::vector< Limits > & = {} )

◆ name()

const std::string & name ( ) const
inherited

Definition at line 42 of file NamedModule.h.

◆ oneDimensional()

virtual bool oneDimensional ( ) const
virtual

Definition at line 40 of file Integrator.h.

◆ operator!=()

template<typename T >
bool operator!= ( const SteeredObject< T > & oth) const
inherited

Definition at line 50 of file SteeredObject.h.

◆ operator==()

template<typename T >
bool operator== ( const SteeredObject< T > & oth) const
inherited

Definition at line 48 of file SteeredObject.h.

◆ parameters()

template<typename T >
const ParametersList & parameters ( ) const
overridevirtualinherited

Reimplemented from Steerable.

Definition at line 53 of file SteeredObject.h.

◆ run()

virtual Value run ( Integrand & integrand,
const std::vector< Limits > & range )
protectedpure virtual
Parameters
[in]integrandFunction to integrate
[in]rangeintegration range

◆ setDescribedParameters()

template<typename T >
void setDescribedParameters ( const ParametersList & params_orig)
inherited

Definition at line 72 of file SteeredObject.h.

◆ setParameters()

template<typename T >
void setParameters ( const ParametersList & )
overridevirtualinherited

Reimplemented from Steerable.

Definition at line 61 of file SteeredObject.h.

◆ steer()

template<typename T >
T steer ( const std::string & key) const
protectedinherited

Definition at line 39 of file Steerable.h.

◆ steerAs()

template<typename T , typename U >
U steerAs ( const std::string & key) const
protectedinherited

Definition at line 44 of file Steerable.h.

◆ steerName()

std::string steerName ( ) const
protectedinherited

Definition at line 48 of file Steerable.h.

◆ steerPath()

std::string steerPath ( const std::string & key) const
protectedinherited

Member Data Documentation

◆ name_

const std::string name_
protectedinherited

Definition at line 45 of file NamedModule.h.

◆ params_

ParametersList params_
mutableprotectedinherited

Definition at line 50 of file Steerable.h.

◆ verbosity_

const int verbosity_
protected

Definition at line 61 of file Integrator.h.