Class emulator_interpm_krige_table (o2scl)

O2scl : Class List

template<class vec2_t = boost::numeric::ublas::vector<double>, class vec_t = boost::numeric::ublas::vector<double>, class mat_t = boost::numeric::ublas::matrix<double>, class mat_inv_t = o2scl_linalg::matrix_invert_det_cholesky<boost::numeric::ublas::matrix<double>>>
class emulator_interpm_krige_table : public o2scl::emulator_unc<boost::numeric::ublas::vector<double>, boost::numeric::ublas::vector<double>, boost::numeric::ublas::vector<double>>

Emulate data stored in a table object with interpm_krige.

This class is experimental.

Note

Currently, this emulator only works if the data object from the MCMC class is a vector type so that it knows how to find the “log weight” output

Public Functions

inline emulator_interpm_krige_table()

Create an emulator.

inline void set(size_t np, size_t n_out, size_t ix_log_wgt, table<> &t, std::vector<std::string> list)

Set the emulator.

Set the emulator using a table containing np parameters and n_out output quantities. The variable ix_log_wgt should be the index of the log_weight among all of the output variables, from 0 to n_out-1. The list, list, should include the column names of the parameters and then the output quantities (including the log weight column), in order.

inline virtual int eval_unc(size_t n, const vec_t &p, double &log_wgt, double &log_wgt_unc, vec2_t &dat, vec2_t &dat_unc)

Evaluate the emulator at the point p returning log_wgt and dat and their uncertainties.

Public Members

interpm_krige_optim<std::vector<mcovar_funct_rbf_noise>, ubvector, mat_x_t, mat_x_row_t, mat_y_t, mat_y_row_t, mat_t, mat_inv_t> iko

The internal interpolation object.

std::vector<mcovar_funct_rbf_noise> mfrn

The covariance functions.

Protected Types

typedef boost::numeric::ublas::vector<double> ubvector
typedef boost::numeric::ublas::matrix<double> ubmatrix
typedef o2scl::matrix_view_table mat_x_t
typedef const matrix_row_gen<mat_x_t> mat_x_row_t
typedef const matrix_column_gen<mat_x_t> mat_x_col_t
typedef o2scl::matrix_view_table_transpose mat_y_t
typedef const matrix_row_gen<mat_y_t> mat_y_row_t

Protected Attributes

size_t ix

Index of the “log weight” in the MCMC data vector.