Gyselalib++
SplineInterpolatorRTheta< RadialExtrapolationRule > Class Template Reference

A class for interpolating a function using splines in polar coordinates. More...

Inheritance diagram for SplineInterpolatorRTheta< RadialExtrapolationRule >:
IInterpolatorRTheta

Public Types

using evaluator_type = ddc::SplineEvaluator2D< Kokkos::DefaultHostExecutionSpace, Kokkos::HostSpace, BSplinesR, BSplinesTheta, GridR, GridTheta, RadialExtrapolationRule, RadialExtrapolationRule, ddc::PeriodicExtrapolationRule< Theta >, ddc::PeriodicExtrapolationRule< Theta >, GridR, GridTheta >
 The type of the 2D Spline Evaluator used by this class.
 

Public Member Functions

 SplineInterpolatorRTheta (SplineRThetaBuilder const &builder, evaluator_type const &evaluator)
 Create a spline interpolator object. More...
 
host_t< DFieldRTheta > operator() (host_t< DFieldRTheta > const inout_data, host_t< Field< CoordRTheta const, IdxRangeRTheta >> const coordinates) const override
 Approximate the value of a function at a set of polar coordinates using the current values at a known set of interpolation points. More...
 
- Public Member Functions inherited from IInterpolatorRTheta
virtual host_t< DFieldRTheta > operator() (host_t< DFieldRTheta > inout_data, host_t< ConstFieldRTheta< CoordRTheta >> coordinates) const =0
 Approximate the value of a function at a set of coordinates using the current values at a known set of interpolation points. More...
 

Detailed Description

template<class RadialExtrapolationRule>
class SplineInterpolatorRTheta< RadialExtrapolationRule >

A class for interpolating a function using splines in polar coordinates.

Template Parameters
RadialExtrapolationRuleThe extrapolation rule applied at the outer radial bound.

Constructor & Destructor Documentation

◆ SplineInterpolatorRTheta()

template<class RadialExtrapolationRule >
SplineInterpolatorRTheta< RadialExtrapolationRule >::SplineInterpolatorRTheta ( SplineRThetaBuilder const &  builder,
evaluator_type const &  evaluator 
)
inline

Create a spline interpolator object.

Parameters
[in]builderAn operator which builds spline coefficients from the values of a function at known interpolation points.
[in]evaluatorAn operator which evaluates the value of a spline at requested coordinates.

Member Function Documentation

◆ operator()()

template<class RadialExtrapolationRule >
host_t<DFieldRTheta> SplineInterpolatorRTheta< RadialExtrapolationRule >::operator() ( host_t< DFieldRTheta > const  inout_data,
host_t< Field< CoordRTheta const, IdxRangeRTheta >> const  coordinates 
) const
inlineoverride

Approximate the value of a function at a set of polar coordinates using the current values at a known set of interpolation points.

Parameters
[in,out]inout_dataOn input: an array containing the value of the function at the interpolation points. On output: an array containing the value of the function at the coordinates.
[in]coordinatesThe polar coordinates where the function should be evaluated.
Returns
A reference to the inout_data array containing the value of the function at the coordinates.

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