ALFI
Advanced Library for Function Interpolation
Loading...
Searching...
No Matches
alfi::spline::CubicSpline< Number, Container > Class Template Reference

#include <cubic.h>

Classes

struct  Conditions
 
struct  Types
 

Public Types

using Condition
 
using Type
 

Public Member Functions

 CubicSpline ()=default
 
template<typename ContainerXType>
 CubicSpline (ContainerXType &&X, const Container< Number > &Y, Type type=typename Types::Default{})
 
 CubicSpline (const CubicSpline &other)=default
 
 CubicSpline (CubicSpline &&other) noexcept=default
 
CubicSplineoperator= (const CubicSpline &other)=default
 
CubicSplineoperator= (CubicSpline &&other) noexcept=default
 
template<typename ContainerXType>
void construct (ContainerXType &&X, const Container< Number > &Y, Type type=typename Types::Default{})
 
Number eval (Number x) const
 
Number eval (Number x, SizeT segment) const
 
Container< Number > eval (const Container< Number > &xx, bool sorted=true) const
 
Number operator() (Number x) const
 
Container< Number > operator() (const Container< Number > &xx) const
 
Type type () const
 
const Container< Number > & X () const &
 
Container< Number > && X () &&
 
const Container< Number > & coeffs () const &
 
Container< Number > && coeffs () &&
 

Static Public Member Functions

static Container< Number > compute_coeffs (const Container< Number > &X, const Container< Number > &Y, Type type=typename Types::Default{})
 
static std::pair< SizeT, SizeTsegment (SizeT index)
 

Member Typedef Documentation

◆ Condition

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
using alfi::spline::CubicSpline< Number, Container >::Condition

◆ Type

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
using alfi::spline::CubicSpline< Number, Container >::Type

Constructor & Destructor Documentation

◆ CubicSpline() [1/4]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
alfi::spline::CubicSpline< Number, Container >::CubicSpline ( )
default

◆ CubicSpline() [2/4]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
template<typename ContainerXType>
alfi::spline::CubicSpline< Number, Container >::CubicSpline ( ContainerXType && X,
const Container< Number > & Y,
Type type = typename Types::Default{} )
inline

◆ CubicSpline() [3/4]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
alfi::spline::CubicSpline< Number, Container >::CubicSpline ( const CubicSpline< Number, Container > & other)
default

◆ CubicSpline() [4/4]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
alfi::spline::CubicSpline< Number, Container >::CubicSpline ( CubicSpline< Number, Container > && other)
defaultnoexcept

Member Function Documentation

◆ compute_coeffs()

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
static Container< Number > alfi::spline::CubicSpline< Number, Container >::compute_coeffs ( const Container< Number > & X,
const Container< Number > & Y,
Type type = typename Types::Default{} )
inlinestatic

◆ operator=() [1/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
CubicSpline & alfi::spline::CubicSpline< Number, Container >::operator= ( const CubicSpline< Number, Container > & other)
default

◆ operator=() [2/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
CubicSpline & alfi::spline::CubicSpline< Number, Container >::operator= ( CubicSpline< Number, Container > && other)
defaultnoexcept

◆ construct()

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
template<typename ContainerXType>
void alfi::spline::CubicSpline< Number, Container >::construct ( ContainerXType && X,
const Container< Number > & Y,
Type type = typename Types::Default{} )
inline

◆ eval() [1/3]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Number alfi::spline::CubicSpline< Number, Container >::eval ( Number x) const
inline

◆ eval() [2/3]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Number alfi::spline::CubicSpline< Number, Container >::eval ( Number x,
SizeT segment ) const
inline

◆ eval() [3/3]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Container< Number > alfi::spline::CubicSpline< Number, Container >::eval ( const Container< Number > & xx,
bool sorted = true ) const
inline

◆ operator()() [1/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Number alfi::spline::CubicSpline< Number, Container >::operator() ( Number x) const
inline

◆ operator()() [2/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Container< Number > alfi::spline::CubicSpline< Number, Container >::operator() ( const Container< Number > & xx) const
inline

◆ type()

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Type alfi::spline::CubicSpline< Number, Container >::type ( ) const
inline

◆ X() [1/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
const Container< Number > & alfi::spline::CubicSpline< Number, Container >::X ( ) const &
inline

◆ X() [2/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Container< Number > && alfi::spline::CubicSpline< Number, Container >::X ( ) &&
inline

◆ coeffs() [1/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
const Container< Number > & alfi::spline::CubicSpline< Number, Container >::coeffs ( ) const &
inline

◆ coeffs() [2/2]

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
Container< Number > && alfi::spline::CubicSpline< Number, Container >::coeffs ( ) &&
inline

◆ segment()

template<typename Number = DefaultNumber, template< typename, typename... > class Container = DefaultContainer>
static std::pair< SizeT, SizeT > alfi::spline::CubicSpline< Number, Container >::segment ( SizeT index)
inlinestatic

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