SpECTRE  v2026.04.01
intrp::Cardinal< Dim > Class Template Reference

Interpolates by doing partial summation in each dimension using one-dimensional interpolation. More...

#include <CardinalInterpolator.hpp>

Public Member Functions

 Cardinal (const Mesh< Dim > &source_mesh, const tnsr::I< DataVector, Dim, Frame::ElementLogical > &target_points)
 
 Cardinal (const Mesh< Dim > &source_mesh, const tnsr::I< double, Dim, Frame::ElementLogical > &target_point)
 
DataVector interpolate (const DataVector &f) const
 Interpolates the function f provided on the source_mesh to the target_points with which the interpolator was constructed.
 
const std::array< Matrix, Dim > & interpolation_matrices () const
 The one-dimensional interpolation matrices used to do the interpolation.
 
void pup (PUP::er &p)
 

Friends

template<size_t LocalDim>
bool operator== (const Cardinal< LocalDim > &lhs, const Cardinal< LocalDim > &rhs)
 

Detailed Description

template<size_t Dim>
class intrp::Cardinal< Dim >

Interpolates by doing partial summation in each dimension using one-dimensional interpolation.

Details

The one-dimensional matrices used to do the interpolation depend upon the Spectral::Basis used in each dimension:

For multidimensional bases such as the SphericalHarmonic or ZernikeB2, the matrices used for interpolating cannot be applied per dimension but must be handled specially.


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