NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ poly_integration()

template<typename T = double>
T integration::Integrator< T >::poly_integration ( int  i,
int  j,
int  l 
)
inline

Returns the the weight needed for polynomial integration.

Purpose

Assuming the function \(f(x)\) is given through points \(\{(x_l,f(x_l),l=0,\dots,k)\}\), polynomial interpolation is defined by

\begin{align*} \int^{x_j}_{x_i}dx \, f(x) = h \sum^k_{l=0} w_{i,j,l}\, f(x_l) \end{align*}

This is needed for computing integrals over small intervals with less grid points than needed for Gregory quadrature. Polynomial integration is used for the polynomial collocation method for solving the Volterra integral equations.

poly_integration returns the weight \(w_{i,j,l}\) for given indices.

Parameters
i

Index of lower integral bound.

j

Index of upper integral bound.

l

Index of weight.

Definition at line 321 of file integration.hpp.

321 {return poly_integration_[i*(k_+1)*(k_+1) + j*(k_+1) + l];}