Class interpm_base (o2scl)¶
-
template<class vec_t = boost::numeric::ublas::vector<double>, class mat_x_t = o2scl::const_matrix_view_table<>, class mat_y_t = o2scl::const_matrix_view_table<>>
class interpm_base¶ Base class for multidimensional interpolation.
Subclassed by o2scl::interpm_idw< boost::numeric::ublas::vector< double >, o2scl::const_matrix_view_table<>, o2scl::matrix_view_table<> >, o2scl::interpm_krige_optim< vector< double >, o2scl::const_matrix_view_table, o2scl::const_matrix_row_gen, o2scl::matrix_view_table, o2scl::matrix_column_gen, boost::numeric::ublas::matrix< double >, o2scl_linalg::matrix_invert_det_cholesky< boost::numeric::ublas::matrix< double > > >, o2scl::interpm_idw< vec_t, mat_x_t, mat_y_t >, o2scl::interpm_krige_optim< vec_t, mat_x_t, mat_x_row_t, mat_y_t, mat_y_col_t, mat_inv_kxx_t, mat_inv_t, vec3_t >, o2scl::interpm_python< vec_t, mat_x_t, mat_y_t >
Public Functions
-
inline interpm_base()¶
-
virtual int set_data(size_t n_in, size_t n_out, size_t n_pts, mat_x_t &user_x, mat_y_t &user_y) = 0¶
Set the data to be interpolated.
The variable
user_xshould be arranged so that parameters are indexed by the columns and data points are points are indexed by the rows. The variableuser_yshould be arranged so that output quantities are indexed by the columns and points are indexed by the rows. Children are allowed (but not required) to useswapto take over management of the input data. None of the valuesn_in,n_out, orn_ptsare allowed to be zero. The matrixuser_xshould haven_ptsrows andn_incolumns, while the matrixuser_yshould haven_ptsrows andn_outcolumns.
-
inline virtual int add_data(size_t n_in, size_t n_out, size_t n_pts, mat_x_t &user_x, mat_y_t &user_y)¶
Add data to be interpolated.
The arguments in this function should be arranged similarly to the set_data() function. Children may not implement this function (in which case it calls the error handler), or they may simply append the additional data set to the one previously specified in set_data() call.
-
virtual int eval(const vec_t &x, vec_t &y) const = 0¶
Evaluate the interpolation at point
x, returningy.
-
inline virtual int operator()(size_t nx, const vec_t &x, size_t ny, vec_t &y) const¶
Evaluate the interpolation at point
x, returningy.
-
inline virtual int operator()(size_t nx, const vec_t &x, vec_t &y) const¶
Evaluate the interpolation at point
x, returningy.
-
inline interpm_base()¶