Alexandria  2.25.0
SDC-CH common library for the Euclid project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
Euclid::MathUtils::InterpN< T > Class Template Reference
Collaboration diagram for Euclid::MathUtils::InterpN< T >:
Collaboration graph
[legend]

Public Member Functions

 InterpN (const std::tuple< std::vector< T >> &grid, const NdArray::NdArray< double > &values, bool extrapolate)
 
double operator() (const T x) const
 
 InterpN (const InterpN &)=default
 Copy constructor. More...
 
 InterpN (InterpN &&)=default
 Move constructor. More...
 

Private Attributes

std::vector< T > m_knots
 
std::vector< double > m_values
 
bool m_extrapolate
 

Detailed Description

template<typename T>
class Euclid::MathUtils::InterpN< T >

Specialization (and end of the recursion) for a 1-dimensional interpolation.

Definition at line 120 of file GridInterpolation.icpp.

Constructor & Destructor Documentation

template<typename T >
Euclid::MathUtils::InterpN< T >::InterpN ( const std::tuple< std::vector< T >> &  grid,
const NdArray::NdArray< double > &  values,
bool  extrapolate 
)
inline

Constructor

Parameters
gridA 1-dimensional grid
values
type
extrapolate

Definition at line 130 of file GridInterpolation.icpp.

References Euclid::NdArray::NdArray< T >::shape(), std::vector< T >::size(), and Euclid::NdArray::NdArray< T >::size().

Here is the call graph for this function:

template<typename T >
Euclid::MathUtils::InterpN< T >::InterpN ( const InterpN< T > &  )
default

Copy constructor.

template<typename T >
Euclid::MathUtils::InterpN< T >::InterpN ( InterpN< T > &&  )
default

Move constructor.

Member Function Documentation

template<typename T >
double Euclid::MathUtils::InterpN< T >::operator() ( const T  x) const
inline

Call as a function

Parameters
xCoordinate value
Returns
Interpolated value

Definition at line 149 of file GridInterpolation.icpp.

References Euclid::MathUtils::interpolate().

Here is the call graph for this function:

Member Data Documentation

template<typename T >
bool Euclid::MathUtils::InterpN< T >::m_extrapolate
private

Definition at line 162 of file GridInterpolation.icpp.

template<typename T >
std::vector<T> Euclid::MathUtils::InterpN< T >::m_knots
private

Definition at line 160 of file GridInterpolation.icpp.

template<typename T >
std::vector<double> Euclid::MathUtils::InterpN< T >::m_values
private

Definition at line 161 of file GridInterpolation.icpp.


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