DDC 0.0.0

a discrete domain computation library

ddc::GrevilleInterpolationPoints< BSplines, BcXmin, BcXmax > Class Template Reference

A class which provides helper functions to initialise the Greville points from a B-Spline definition. More...

Public Types

using interpolation_mesh_type
 The type of the mesh.
 

Static Public Member Functions

template<class Sampling , typename U = BSplines, std::enable_if_t< is_uniform_mesh_v< U >, bool > = true>
static auto get_sampling ()
 Get the UniformPointSampling defining the Greville points.
 
template<class Sampling , typename U = BSplines, std::enable_if_t< !is_uniform_mesh_v< U >, bool > = true>
static auto get_sampling ()
 Get the NonUniformPointSampling defining the Greville points.
 
template<class Sampling >
static ddc::DiscreteDomain< Samplingget_domain ()
 Get the domain which gives us access to all of the Greville points.
 

Detailed Description

template<class BSplines, ddc::BoundCond BcXmin, ddc::BoundCond BcXmax>
class ddc::GrevilleInterpolationPoints< BSplines, BcXmin, BcXmax >

A class which provides helper functions to initialise the Greville points from a B-Spline definition.

Template Parameters
BSplinesThe bspline class relative to which the Greville points will be calculated.
BcXminThe (left) boundary condition that will be used to build the splines.
BcXmaxThe (right) boundary condition that will be used to build the splines.

Member Typedef Documentation

◆ interpolation_mesh_type

template<class BSplines , ddc::BoundCond BcXmin, ddc::BoundCond BcXmax>
using ddc::GrevilleInterpolationPoints< BSplines, BcXmin, BcXmax >::interpolation_mesh_type
Initial value:
std::conditional_t<
NonUniformPointSampling models a non-uniform discretization of the CDim segment .
Definition non_uniform_point_sampling.hpp:34
UniformPointSampling models a uniform discretization of the provided continuous dimension.
Definition uniform_point_sampling.hpp:36
constexpr bool enable_chunk
Definition chunk_traits.hpp:16

The type of the mesh.

This is either NonUniformPointSampling or UniformPointSampling.

Member Function Documentation

◆ get_sampling() [1/2]

template<class BSplines , ddc::BoundCond BcXmin, ddc::BoundCond BcXmax>
template<class Sampling , typename U = BSplines, std::enable_if_t< is_uniform_mesh_v< U >, bool > = true>
static auto ddc::GrevilleInterpolationPoints< BSplines, BcXmin, BcXmax >::get_sampling ( )
inlinestatic

Get the UniformPointSampling defining the Greville points.

This function is called when the result is a UniformPointSampling. This is the case when uniform splines are used with an odd degree and with boundary conditions which do not introduce additional interpolation points.

Returns
The mesh of uniform Greville points.

◆ get_sampling() [2/2]

template<class BSplines , ddc::BoundCond BcXmin, ddc::BoundCond BcXmax>
template<class Sampling , typename U = BSplines, std::enable_if_t< !is_uniform_mesh_v< U >, bool > = true>
static auto ddc::GrevilleInterpolationPoints< BSplines, BcXmin, BcXmax >::get_sampling ( )
inlinestatic

Get the NonUniformPointSampling defining the Greville points.

Returns
The mesh of non-uniform Greville points.

◆ get_domain()

Get the domain which gives us access to all of the Greville points.

Returns
The domain of the Greville points.

The documentation for this class was generated from the following file: