12 #ifndef HAMMER_MATH_Integrator_HH
13 #define HAMMER_MATH_Integrator_HH
27 double integrate(std::function<
double(
double)>& func,
double low,
double high);
double integrate(std::function< double(double)> &func, double low, double high)
integration function based on gaussian method
const EvaluationWeights & getEvaluationWeights() const
Hammer numerical integration forward declarations.
std::vector< double > _baseWeights
the evaluation weights for the range [-1,1]
const EvaluationGrid & getEvaluationPoints() const
returns the position of the evaluation points given an integration range
Integrator & operator=(const Integrator &other)=default
std::vector< BoundaryFunction > IntegrationBoundaries
EvaluationGrid _evaluationPoints
std::vector< double > _basePoints
the evaluation points in the range [-1,1]
uint16_t getPointsNumber() const
the number of evaluation points
void applyRange(const IntegrationBoundaries &boundaries)
apply rescaling factor for the size of the interval from the canonical [-1,1] interval to the actual ...
std::vector< double > EvaluationWeights
std::vector< std::vector< double >> EvaluationGrid
EvaluationWeights _evaluationWeights
Tensor integration class.