Gyselalib++
 
Loading...
Searching...
No Matches
neumann_spline_quadrature.hpp File Reference

File providing quadrature coefficients via a spline quadrature. More...

#include <cassert>
#include <ddc/ddc.hpp>
#include <ddc/kernels/splines.hpp>
#include <sll/matrix.hpp>
#include "ddc_aliases.hpp"

Go to the source code of this file.

Functions

template<class ExecSpace , class Grid1D , class SplineBuilder >
DFieldMem< IdxRange< Grid1D >, typename ExecSpace::memory_space > neumann_spline_quadrature_coefficients_1d (IdxRange< Grid1D > const &idx_range, SplineBuilder const &builder)
 Get the spline quadrature coefficients in 1D.
 
template<class ExecSpace , class... DDims, class... SplineBuilders>
DFieldMem< IdxRange< DDims... >, typename ExecSpace::memory_space > neumann_spline_quadrature_coefficients (IdxRange< DDims... > const &idx_range, SplineBuilders const &... builders)
 Get the spline quadrature coefficients in ND from N 1D quadrature coefficient.
 

Detailed Description

File providing quadrature coefficients via a spline quadrature.

Function Documentation

◆ neumann_spline_quadrature_coefficients_1d()

template<class ExecSpace , class Grid1D , class SplineBuilder >
DFieldMem< IdxRange< Grid1D >, typename ExecSpace::memory_space > neumann_spline_quadrature_coefficients_1d ( IdxRange< Grid1D > const &  idx_range,
SplineBuilder const &  builder 
)

Get the spline quadrature coefficients in 1D.

This function calculates the quadrature coefficients which define a quadrature equivalent to calculating and integrating a spline approximation of a function. The spline approximation would be calculated with homogeneous Neumann boundary conditions. This method of defining quadrature coefficients is described in section Emily Bourne's thesis[1].

[1] Non-Uniform Numerical Schemes for the Modelling of Turbulence in the 5D GYSELA Code Emily Bourne, December 2022-

Parameters
[in]idx_rangeThe index range on which the splines quadrature will be carried out.
[in]builderThe spline builder used for the quadrature coefficients.
Returns
The quadrature coefficients for the method defined on the provided index range.

◆ neumann_spline_quadrature_coefficients()

template<class ExecSpace , class... DDims, class... SplineBuilders>
DFieldMem< IdxRange< DDims... >, typename ExecSpace::memory_space > neumann_spline_quadrature_coefficients ( IdxRange< DDims... > const &  idx_range,
SplineBuilders const &...  builders 
)

Get the spline quadrature coefficients in ND from N 1D quadrature coefficient.

This function calculates the quadrature coefficients which define a quadrature equivalent to calculating and integrating a spline approximation of a function. The spline approximation would be calculated with homogeneous Neumann boundary conditions.

Parameters
[in]idx_rangeThe index range on which the coefficients will be defined.
[in]buildersThe spline builder used for the quadrature coefficients in the different dimensions.
Returns
The coefficients which define the spline quadrature method in ND.