8#ifndef BSPLINE_INTEGRATION_LINEARFORM_H
9#define BSPLINE_INTEGRATION_LINEARFORM_H
11#include <bspline/Spline.h>
12#include <bspline/operators/GenericOperators.h>
26 std::enable_if_t<operators::is_operator_v<O>,
bool> =
true>
41 template <
typename T,
size_t size>
42 static T evaluateInterval(
const std::array<T, size> &
a,
const T &
dxhalf) {
45 static_cast<int>(size) -
static_cast<int>(size % 2 == 0 ? 2 : 1);
78 template <
typename T,
size_t order>
80 const size_t nintervals =
a.getSupport().numberOfIntervals();
85 const size_t absIndex =
a.getSupport().absoluteFromRelative(
i);
87 (
a.getSupport()[
i + 1] -
a.getSupport()[
i]) /
static_cast<T>(2);
90 evaluateInterval(_o.transform(
a.getCoefficients()[
i],
101 template <
typename T,
size_t order>
Multiplicative identity operator.
Definition GenericOperators.h:95
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
Integration routines for Splines.
Definition BilinearForm.h:21