num::trapz¶
Defined in header <quadrature/quadrature.hpp>
template <bool Parallel = false, typename Float = double,
std::invocable<Float> Func = scalar_fn>
Float trapz(Func &&f, Float a, Float b, idx n = 100);
Composite Trapezoidal numerical integration over \([a, b]\) with \(n\) panels.
Computes \(\int_a^b f(x)\,\mathrm{d}x \approx h \left( \frac{f(a)+f(b)}{2} + \sum_{i=1}^{n-1} f(a+ih) \right)\) with \(\mathcal{O}(h^2)\) error.
Template parameters¶
Float: Floating point scalar type (double,float).Func: Integrand callableFloat(Float x).Parallel: Thread the panel sum with OpenMP (default: sequential).
Parameters¶
f: Integrand function.a: Lower integration limit.b: Upper integration limit.n: Number of uniform subintervals / panels (default: 100).
Return value¶
Approximated integral value.