Gyselalib++
PreallocatableSplineInterpolatorRTheta< RadialExtrapolationRule > Class Template Reference

A class which stores information necessary to create a pointer to an instance of the SplineInterpolatorRTheta class. More...

Inheritance diagram for PreallocatableSplineInterpolatorRTheta< RadialExtrapolationRule >:
IPreallocatableInterpolatorRTheta 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

 PreallocatableSplineInterpolatorRTheta (SplineRThetaBuilder const &builder, evaluator_type const &evaluator)
 Create an object capable of creating SplineInterpolatorRTheta objects. More...
 
std::unique_ptr< IInterpolatorRThetapreallocate () const override
 Create a pointer to an instance of the SplineInterpolatorRTheta class. More...
 
- Public Member Functions inherited from IPreallocatableInterpolatorRTheta
host_t< DFieldRTheta > operator() (host_t< DFieldRTheta > const inout_data, host_t< ConstFieldRTheta< CoordRTheta >> const coordinates) const override
 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 PreallocatableSplineInterpolatorRTheta< RadialExtrapolationRule >

A class which stores information necessary to create a pointer to an instance of the SplineInterpolatorRTheta class.

This class allows an instance of the SplineInterpolatorRTheta class where necessary. This allows the memory allocated in the private members of the SplineInterpolatorRTheta to be freed when the object is not in use. These objects are: m_coefs.

Constructor & Destructor Documentation

◆ PreallocatableSplineInterpolatorRTheta()

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

Create an object capable of creating SplineInterpolatorRTheta objects.

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

◆ preallocate()

template<class RadialExtrapolationRule >
std::unique_ptr<IInterpolatorRTheta> PreallocatableSplineInterpolatorRTheta< RadialExtrapolationRule >::preallocate ( ) const
inlineoverridevirtual

Create a pointer to an instance of the SplineInterpolatorRTheta class.

Returns
A pointer to an instance of the SplineInterpolatorRTheta class.

Implements IPreallocatableInterpolatorRTheta.


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