Public Types | Public Member Functions | Protected Attributes | Private Member Functions | List of all members
o2scl::interp_cspline_peri< vec_t, vec2_t > Class Template Reference

Cubic spline interpolation with periodic boundary conditions (GSL) More...

#include <interp.h>

Inheritance diagram for o2scl::interp_cspline_peri< vec_t, vec2_t >:
o2scl::interp_cspline< vec_t, vec2_t > o2scl::interp_base< vec_t, vec2_t >

Public Types

typedef boost::numeric::ublas::vector< double > ubvector
 
typedef boost::numeric::ublas::vector_slice< ubvectorubvector_slice
 
typedef boost::numeric::ublas::vector_range< ubvectorubvector_range
 
typedef boost::numeric::ublas::slice slice
 
typedef boost::numeric::ublas::range range
 
- Public Types inherited from o2scl::interp_cspline< vec_t, vec2_t >
typedef boost::numeric::ublas::vector< double > ubvector
 
typedef boost::numeric::ublas::vector_slice< ubvectorubvector_slice
 
typedef boost::numeric::ublas::vector_range< ubvectorubvector_range
 
typedef boost::numeric::ublas::slice slice
 
typedef boost::numeric::ublas::range range
 

Public Member Functions

virtual const char * type () const
 Return the type, "interp_cspline_peri".
 
virtual void set (size_t size, const vec_t &xa, const vec2_t &ya)
 Initialize interpolation routine. More...
 
- Public Member Functions inherited from o2scl::interp_cspline< vec_t, vec2_t >
 interp_cspline ()
 Create a base interpolation object with natural or periodic boundary conditions.
 
virtual double eval (double x0) const
 Give the value of the function $ y(x=x_0) $ .
 
virtual double deriv (double x0) const
 Give the value of the derivative $ y^{\prime}(x=x_0) $ .
 
virtual double deriv2 (double x0) const
 Give the value of the second derivative $ y^{\prime \prime}(x=x_0) $ .
 
virtual double integ (double a, double b) const
 Give the value of the integral $ \int_a^{b}y(x)~dx $ .
 
- Public Member Functions inherited from o2scl::interp_base< vec_t, vec2_t >
virtual double operator() (double x0) const
 Give the value of the function $ y(x=x_0) $ .
 

Protected Attributes

o2scl_linalg::ubvector_5_mem p5m
 Memory for the tridiagonalization.
 
- Protected Attributes inherited from o2scl::interp_cspline< vec_t, vec2_t >
o2scl_linalg::ubvector_4_mem p4m
 Memory for the tridiagonalization.
 
ubvector c
 
ubvector g
 
ubvector diag
 
ubvector offdiag
 
- Protected Attributes inherited from o2scl::interp_base< vec_t, vec2_t >
search_vec< const vec_t > svx
 To perform binary searches. More...
 
const vec_t * px
 Independent vector.
 
const vec2_t * py
 Dependent vector.
 
size_t sz
 Vector size.
 

Private Member Functions

 interp_cspline_peri (const interp_cspline_peri< vec_t, vec2_t > &)
 
interp_cspline_peri< vec_t, vec2_t > & operator= (const interp_cspline_peri< vec_t, vec2_t > &)
 

Additional Inherited Members

- Public Attributes inherited from o2scl::interp_base< vec_t, vec2_t >
size_t min_size
 The minimum size of the vectors to interpolate between. More...
 
- Protected Member Functions inherited from o2scl::interp_cspline< vec_t, vec2_t >
void coeff_calc (const ubvector &c_array, double dy, double dx, size_t index, double &b, double &c2, double &d) const
 Compute coefficients for cubic spline interpolation.
 
- Protected Member Functions inherited from o2scl::interp_base< vec_t, vec2_t >
double integ_eval (double ai, double bi, double ci, double di, double xi, double a, double b) const
 An internal function to assist in computing the integral for both the cspline and Akima types.
 

Detailed Description

template<class vec_t, class vec2_t = vec_t>
class o2scl::interp_cspline_peri< vec_t, vec2_t >

See also the Interpolation section of the O2scl User's guide.

Definition at line 599 of file interp.h.

Member Function Documentation

◆ set()

template<class vec_t, class vec2_t = vec_t>
virtual void o2scl::interp_cspline_peri< vec_t, vec2_t >::set ( size_t  size,
const vec_t &  xa,
const vec2_t &  ya 
)
inlinevirtual

Periodic boundary conditions

Reimplemented from o2scl::interp_cspline< vec_t, vec2_t >.

Definition at line 631 of file interp.h.


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

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).