XGC1
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
CubInterp< Device > Class Template Reference

#include <cub_interp.hpp>

Public Member Functions

 CubInterp (const View< double *, HostType > &x, const View< double *, HostType > &y)
 
template<class Device2 >
CubInterp< Device2 > mirror () const
 
 CubInterp ()
 
KOKKOS_INLINE_FUNCTION double value (double x) const
 
KOKKOS_INLINE_FUNCTION double derivative (double x) const
 

Private Member Functions

 CubInterp (const View< double *, HostType > &x_grid, const View< double *, HostType > &y)
 

Private Attributes

int ncoeff
 Length of acoef. More...
 
double max_x
 max x cutoff for the interpolation More...
 
double min_x
 min x cutoff for the interpolation More...
 
double dx_inv
 Increment dx on which acoef is mapped. More...
 
Kokkos::View< OneDCoeff *, Kokkos::LayoutRight, Device > acoef
 y data for interpolation More...
 

Friends

template<class Device2 >
class CubInterp
 

Constructor & Destructor Documentation

◆ CubInterp() [1/3]

template<class Device >
CubInterp< Device >::CubInterp ( const View< double *, HostType > &  x,
const View< double *, HostType > &  y 
)

◆ CubInterp() [2/3]

template<class Device >
CubInterp< Device >::CubInterp ( )
inline

◆ CubInterp() [3/3]

CubInterp< HostType >::CubInterp ( const View< double *, HostType > &  x_grid,
const View< double *, HostType > &  y 
)
private

Constructor for CubInterp class

Here is the call graph for this function:

Member Function Documentation

◆ derivative()

template<class Device >
KOKKOS_INLINE_FUNCTION double CubInterp< Device >::derivative ( double  x) const

1D cubic spline interpolation

Parameters
[in]xInput
[in]iderivOrder of derivative to be returned (0,1,2)
Returns
The interpolation

◆ mirror()

template<class Device >
template<class Device2 >
CubInterp<Device2> CubInterp< Device >::mirror ( ) const
inline
Here is the call graph for this function:

◆ value()

template<class Device >
KOKKOS_INLINE_FUNCTION double CubInterp< Device >::value ( double  x) const

1D cubic spline interpolation

Parameters
[in]xInput
[in]iderivOrder of derivative to be returned (0,1,2)
Returns
The interpolation

Friends And Related Function Documentation

◆ CubInterp

template<class Device >
template<class Device2 >
friend class CubInterp
friend

Member Data Documentation

◆ acoef

template<class Device >
Kokkos::View<OneDCoeff*,Kokkos::LayoutRight,Device> CubInterp< Device >::acoef
private

y data for interpolation

◆ dx_inv

template<class Device >
double CubInterp< Device >::dx_inv
private

Increment dx on which acoef is mapped.

◆ max_x

template<class Device >
double CubInterp< Device >::max_x
private

max x cutoff for the interpolation

◆ min_x

template<class Device >
double CubInterp< Device >::min_x
private

min x cutoff for the interpolation

◆ ncoeff

template<class Device >
int CubInterp< Device >::ncoeff
private

Length of acoef.


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