Alexandria
2.18
Please provide a description of the project.
|
Go to the documentation of this file.
40 if (numericalIntegrationScheme !=
nullptr) {
41 return (*numericalIntegrationScheme)(
function, min, max);
45 <<
"requiere that you provide a NumericalIntegrationScheme";
67 return iter->second(f1, f2);
71 return iter->second(f2, f1);
77 return iter2->second(f1, f2);
81 return iter2->second(f2, f1);
Interface class representing a function.
ELEMENTS_API std::map< std::pair< std::type_index, std::type_index >, MultiplyFunction > multiplySpecificSpecificMap
ELEMENTS_API double integrate(const Function &function, const double min, const double max, std::unique_ptr< NumericalIntegrationScheme > numericalIntegrationScheme=nullptr)
std::unique_ptr< Function > clone() const override
std::unique_ptr< Function > m_f2
ELEMENTS_API std::map< std::type_index, MultiplyFunction > multiplySpecificGenericMap
DefaultMultiplication(const Function &f1, const Function &f2)
Interface representing an integrable function.
virtual std::unique_ptr< Function > clone() const =0
virtual double integrate(const double a, const double b) const =0
ELEMENTS_API std::unique_ptr< Function > multiply(const Function &f1, const Function &f2)
double operator()(const double x) const override
std::unique_ptr< Function > m_f1