SpECTRE  2021.08.02
intrp::Irregular< Dim > Class Template Reference

Interpolates a Variables onto an arbitrary set of points. More...

#include <IrregularInterpolant.hpp>

Public Member Functions

 Irregular (const Mesh< Dim > &source_mesh, const tnsr::I< DataVector, Dim, Frame::Logical > &target_points) noexcept
 
void pup (PUP::er &p) noexcept
 Serialization for Charm++.
 
template<typename TagsList >
void interpolate (const gsl::not_null< Variables< TagsList > * > result, const Variables< TagsList > &vars) const noexcept
 
template<typename TagsList >
void interpolate (gsl::not_null< Variables< TagsList > * > result, const Variables< TagsList > &vars) const noexcept
 Performs the interpolation on a Variables with grid points corresponding to the Mesh<Dim> specified in the constructor. The result is a Variables whose internal DataVector goes over the list of target_points that were specified in the constructor. More...
 
template<typename TagsList >
Variables< TagsList > interpolate (const Variables< TagsList > &vars) const noexcept
 Performs the interpolation on a Variables with grid points corresponding to the Mesh<Dim> specified in the constructor. The result is a Variables whose internal DataVector goes over the list of target_points that were specified in the constructor. More...
 

Friends

bool operator== (const Irregular &lhs, const Irregular &rhs) noexcept
 

Detailed Description

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

Interpolates a Variables onto an arbitrary set of points.

Member Function Documentation

◆ interpolate() [1/2]

template<size_t Dim>
template<typename TagsList >
Variables< TagsList > intrp::Irregular< Dim >::interpolate ( const Variables< TagsList > &  vars) const
noexcept

Performs the interpolation on a Variables with grid points corresponding to the Mesh<Dim> specified in the constructor. The result is a Variables whose internal DataVector goes over the list of target_points that were specified in the constructor.

Note
for the void function, result will be resized to the proper size.

◆ interpolate() [2/2]

template<size_t Dim>
template<typename TagsList >
void intrp::Irregular< Dim >::interpolate ( gsl::not_null< Variables< TagsList > * >  result,
const Variables< TagsList > &  vars 
) const
noexcept

Performs the interpolation on a Variables with grid points corresponding to the Mesh<Dim> specified in the constructor. The result is a Variables whose internal DataVector goes over the list of target_points that were specified in the constructor.

Note
for the void function, result will be resized to the proper size.