Public Types | Protected Attributes | List of all members
o2scl::interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t > Class Template Reference

Interpolation by Kriging with a user-specified covariance function. More...

#include <interp_krige.h>

Inheritance diagram for o2scl::interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t >:
o2scl::interp_base< vec_t, vec_t >

Detailed Description

template<class vec_t, class vec2_t = vec_t, class covar_func_t = std::function<double(double,double)>, class covar_integ_t = std::function<double(double,double,double)>>
class o2scl::interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t >

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

Note
The function set() stores a pointer to the covariance function and its derivatives and integrals so they cannot go out of scope before any of the interpolation functions are called.
This class is experimental.

Definition at line 67 of file interp_krige.h.

Public Types

typedef boost::numeric::ublas::vector< double > ubvector
 
typedef boost::numeric::ublas::matrix< double > ubmatrix
 
typedef boost::numeric::ublas::matrix_column< ubmatrixubmatrix_column
 

Protected Attributes

ubvector Kinvf
 Inverse covariance matrix times function vector.
 
covar_func_t * f
 Pointer to user-specified covariance function.
 
covar_func_t * df
 Pointer to user-specified derivative.
 
covar_func_t * df2
 Pointer to user-specified second derivative.
 
covar_integ_t * intp
 Pointer to user-specified integral.
 
- Protected Attributes inherited from o2scl::interp_base< vec_t, vec_t >
search_vec< const vec_t > svx
 To perform binary searches. More...
 
const vec_t * px
 Independent vector.
 
const vec_t * py
 Dependent vector.
 
size_t sz
 Vector size.
 

Select matrix inversion method

size_t matrix_mode
 Method for matrix inversion.
 
static const size_t matrix_cholesky =0
 Use Cholesky decomposition.
 
static const size_t matrix_LU =1
 Use LU decomposition.
 
virtual void set (size_t size, const vec_t &x, const vec2_t &y)
 Initialize interpolation routine.
 
virtual int set_covar_di_noise (size_t n_dim, const vec_t &x, const vec_t &y, covar_func_t &fcovar, covar_func_t &fderiv, covar_func_t &fderiv2, covar_func_t &finteg, double noise_var, bool err_on_fail=true)
 Initialize interpolation routine, specifying derivatives and integrals [not yet implemented].
 
virtual int set_covar_noise (size_t n_dim, const vec_t &x, const vec_t &y, covar_func_t &fcovar, double noise_var, bool err_on_fail=true)
 Initialize interpolation routine.
 
virtual int set_covar (size_t n_dim, const vec_t &x, const vec_t &y, covar_func_t &fcovar, bool err_on_fail=true)
 Initialize interpolation routine.
 
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 $ .
 
virtual const char * type () const
 Return the type, "interp_krige".
 
 interp_krige (const interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t > &)
 
interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t > & operator= (const interp_krige< vec_t, vec2_t, covar_func_t, covar_integ_t > &)
 

Additional Inherited Members

- Public Member Functions inherited from o2scl::interp_base< vec_t, vec_t >
virtual void set (size_t size, const vec_t &x, const vec_t &y)=0
 Initialize interpolation routine.
 
virtual double operator() (double x0) const
 Give the value of the function $ y(x=x_0) $ .
 
virtual const char * type () const=0
 Return the type.
 
- Public Attributes inherited from o2scl::interp_base< vec_t, vec_t >
size_t min_size
 The minimum size of the vectors to interpolate between. More...
 
- Protected Member Functions inherited from o2scl::interp_base< vec_t, vec_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.
 

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).