Class xlifepp::IntegrationMethods#

class IntegrationMethods#

handles a collection of IntegrationMethod and related criteria constructor keys : _method : either an IntegrationMethod object or an IntegrationMethodType or a QuadRule _quad : either a QuadRule or an IntegrationMethodType (default value : _defaultRule) _order : order related to _method or _quad _bound : bound of the relative element distance to apply integration method (default value : theRealMax) _function_part: one of _allFunction (default), _regularPart, _singularPart

multiple keys, up to 21 keys can be given : _method=m1,[_order=o1],[_function_part=fp1],_bound=b1, _quad=q2, [_order=o2],[_function_part=fp2],_bound=b2, …, _method=mn,[_order=on],[_function_part=fpn]

Public Functions

inline IntegrationMethods()#

default constructor

IntegrationMethods(const IntegrationMethod&, const IntegrationMethod&)#

short constructor

IntegrationMethods(const IntegrationMethod&, FunctionPart, real_t, const IntegrationMethod&, FunctionPart, real_t, const IntegrationMethod&, FunctionPart = _allFunction, real_t = theRealMax)#

constructor from 3 integration methods

IntegrationMethods(const IntegrationMethod&, FunctionPart, real_t, const IntegrationMethod&, FunctionPart = _allFunction, real_t = theRealMax)#

constructor from 2 integration methods

IntegrationMethods(const IntegrationMethod&, FunctionPart = _allFunction, real_t = theRealMax)#

basic constructor

IntegrationMethods(const IntegrationMethod&, real_t, const IntegrationMethod&, real_t, const IntegrationMethod&)#

short constructor

void add(const IntegrationMethod&, FunctionPart = _allFunction, real_t = 0)#

add IntegrationMethod to the collection

void build(const std::vector<Parameter> &ps)#

build integration methods from a list of parameters (_method, _quad, _order, _bound, _functionPart).

A new set begins with each _method or _quad key. When a set has no _bound key, its bound is 0 (adjacent elements) for a singular method and +inf for a quadrature. Two sets with the same bound and the same function part are not allowed.

void print(std::ostream&) const#

print IntegrationMethods

Public Members

std::vector<IntgMeth> intgMethods#

collection of IntegrationMethod