11#ifndef BSPLINE_INTEGRATION_NUMERICAL_H
12#define BSPLINE_INTEGRATION_NUMERICAL_H
14#include <bspline/Spline.h>
15#include <bspline/exceptions/BSplineException.h>
16#include <bspline/internal/misc.h>
18#include <boost/math/quadrature/gauss.hpp>
21using namespace boost::math::quadrature;
44template <
size_t ordergl,
typename T,
typename F,
size_t order1,
size_t order2>
54 const auto m1Index =
m1.getSupport().intervalIndexFromAbsolute(
ai).value();
55 const auto m2Index =
m2.getSupport().intervalIndexFromAbsolute(
ai).value();
65 return f(
x) * evaluateInterval(
x,
c1,
xm) *
66 evaluateInterval(
x,
c2,
xm);
Represents a global Grid.
Definition Grid.h:27
const T & at(size_t i) const
Gives access to the i-th element of the Grid.
Definition Grid.h:218
Represents the Spline's Support.
Definition Support.h:33
Exceptions and error codes.
Definition BSplineException.h:19
Integration routines for Splines.
Definition BilinearForm.h:21
T integrate(const F &f, const bspline::Spline< T, order1 > &m1, const bspline::Spline< T, order2 > &m2)
Calculates matrix element of user-provided function.
Definition numerical.h:45