// Generated by using Rcpp::compileAttributes() -> do not edit by hand
// Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

#include <RcppArmadillo.h>
#include <Rcpp.h>

using namespace Rcpp;

#ifdef RCPP_USE_GLOBAL_ROSTREAM
Rcpp::Rostream<true>&  Rcpp::Rcout = Rcpp::Rcpp_cout_get();
Rcpp::Rostream<false>& Rcpp::Rcerr = Rcpp::Rcpp_cerr_get();
#endif

// mlpKriging_new
SEXP mlpKriging_new(const arma::vec& y, const arma::mat& X, Rcpp::IntegerVector hidden_dims, int d_out, std::string activation, std::string kernel, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters);
RcppExport SEXP _rlibkriging_mlpKriging_new(SEXP ySEXP, SEXP XSEXP, SEXP hidden_dimsSEXP, SEXP d_outSEXP, SEXP activationSEXP, SEXP kernelSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< const arma::vec& >::type y(ySEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X(XSEXP);
    Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type hidden_dims(hidden_dimsSEXP);
    Rcpp::traits::input_parameter< int >::type d_out(d_outSEXP);
    Rcpp::traits::input_parameter< std::string >::type activation(activationSEXP);
    Rcpp::traits::input_parameter< std::string >::type kernel(kernelSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_new(y, X, hidden_dims, d_out, activation, kernel, regmodel, normalize, optim, objective, parameters));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_fit
void mlpKriging_fit(SEXP model_ptr, const arma::vec& y, const arma::mat& X, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters);
RcppExport SEXP _rlibkriging_mlpKriging_fit(SEXP model_ptrSEXP, SEXP ySEXP, SEXP XSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y(ySEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X(XSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    mlpKriging_fit(model_ptr, y, X, regmodel, normalize, optim, objective, parameters);
    return R_NilValue;
END_RCPP
}
// mlpKriging_predict
Rcpp::List mlpKriging_predict(SEXP model_ptr, const arma::mat& x_new, bool withStd, bool withCov, bool withDeriv);
RcppExport SEXP _rlibkriging_mlpKriging_predict(SEXP model_ptrSEXP, SEXP x_newSEXP, SEXP withStdSEXP, SEXP withCovSEXP, SEXP withDerivSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type x_new(x_newSEXP);
    Rcpp::traits::input_parameter< bool >::type withStd(withStdSEXP);
    Rcpp::traits::input_parameter< bool >::type withCov(withCovSEXP);
    Rcpp::traits::input_parameter< bool >::type withDeriv(withDerivSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_predict(model_ptr, x_new, withStd, withCov, withDeriv));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_simulate
arma::mat mlpKriging_simulate(SEXP model_ptr, int nsim, int seed, const arma::mat& x_new, bool will_update);
RcppExport SEXP _rlibkriging_mlpKriging_simulate(SEXP model_ptrSEXP, SEXP nsimSEXP, SEXP seedSEXP, SEXP x_newSEXP, SEXP will_updateSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< int >::type nsim(nsimSEXP);
    Rcpp::traits::input_parameter< int >::type seed(seedSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type x_new(x_newSEXP);
    Rcpp::traits::input_parameter< bool >::type will_update(will_updateSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_simulate(model_ptr, nsim, seed, x_new, will_update));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_update_simulate
arma::mat mlpKriging_update_simulate(SEXP model_ptr, const arma::vec& y_u, const arma::mat& X_u);
RcppExport SEXP _rlibkriging_mlpKriging_update_simulate(SEXP model_ptrSEXP, SEXP y_uSEXP, SEXP X_uSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X_u(X_uSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_update_simulate(model_ptr, y_u, X_u));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_update
void mlpKriging_update(SEXP model_ptr, const arma::vec& y_u, const arma::mat& X_u, bool refit);
RcppExport SEXP _rlibkriging_mlpKriging_update(SEXP model_ptrSEXP, SEXP y_uSEXP, SEXP X_uSEXP, SEXP refitSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X_u(X_uSEXP);
    Rcpp::traits::input_parameter< bool >::type refit(refitSEXP);
    mlpKriging_update(model_ptr, y_u, X_u, refit);
    return R_NilValue;
END_RCPP
}
// mlpKriging_logLikelihood
double mlpKriging_logLikelihood(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_logLikelihood(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_logLikelihood(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_logLikelihoodFun
Rcpp::List mlpKriging_logLikelihoodFun(SEXP model_ptr, const arma::vec& theta_gp, bool withGrad, bool withHess);
RcppExport SEXP _rlibkriging_mlpKriging_logLikelihoodFun(SEXP model_ptrSEXP, SEXP theta_gpSEXP, SEXP withGradSEXP, SEXP withHessSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type theta_gp(theta_gpSEXP);
    Rcpp::traits::input_parameter< bool >::type withGrad(withGradSEXP);
    Rcpp::traits::input_parameter< bool >::type withHess(withHessSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_logLikelihoodFun(model_ptr, theta_gp, withGrad, withHess));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_summary
std::string mlpKriging_summary(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_summary(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_summary(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_theta
arma::vec mlpKriging_theta(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_theta(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_theta(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_sigma2
double mlpKriging_sigma2(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_sigma2(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_sigma2(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_kernel
std::string mlpKriging_kernel(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_kernel(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_kernel(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_featureDim
int mlpKriging_featureDim(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_featureDim(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_featureDim(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_hiddenDims
Rcpp::IntegerVector mlpKriging_hiddenDims(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_hiddenDims(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_hiddenDims(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_activation
std::string mlpKriging_activation(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_activation(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_activation(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_isFitted
bool mlpKriging_isFitted(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_isFitted(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_isFitted(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_X
arma::mat mlpKriging_X(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_X(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_X(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_centerX
arma::vec mlpKriging_centerX(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_centerX(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_centerX(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_scaleX
arma::vec mlpKriging_scaleX(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_scaleX(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_scaleX(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_y
arma::vec mlpKriging_y(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_y(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_y(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_centerY
double mlpKriging_centerY(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_centerY(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_centerY(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_scaleY
double mlpKriging_scaleY(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_scaleY(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_scaleY(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_normalize
bool mlpKriging_normalize(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_normalize(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_normalize(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_regmodel
std::string mlpKriging_regmodel(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_regmodel(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_regmodel(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_F
arma::mat mlpKriging_F(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_F(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_F(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_T
arma::mat mlpKriging_T(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_T(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_T(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_M
arma::mat mlpKriging_M(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_M(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_M(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_z
arma::vec mlpKriging_z(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_z(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_z(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_beta
arma::vec mlpKriging_beta(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_beta(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_beta(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_copy
SEXP mlpKriging_copy(SEXP model_ptr);
RcppExport SEXP _rlibkriging_mlpKriging_copy(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpKriging_copy(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// mlpKriging_save
void mlpKriging_save(SEXP model_ptr, std::string filename);
RcppExport SEXP _rlibkriging_mlpKriging_save(SEXP model_ptrSEXP, SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    mlpKriging_save(model_ptr, filename);
    return R_NilValue;
END_RCPP
}
// warpKriging_new
SEXP warpKriging_new(const arma::vec& y, const arma::mat& X, Rcpp::CharacterVector warping, std::string kernel, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters, Rcpp::Nullable<arma::vec> noise);
RcppExport SEXP _rlibkriging_warpKriging_new(SEXP ySEXP, SEXP XSEXP, SEXP warpingSEXP, SEXP kernelSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP, SEXP noiseSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< const arma::vec& >::type y(ySEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X(XSEXP);
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type warping(warpingSEXP);
    Rcpp::traits::input_parameter< std::string >::type kernel(kernelSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<arma::vec> >::type noise(noiseSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_new(y, X, warping, kernel, regmodel, normalize, optim, objective, parameters, noise));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_fit
void warpKriging_fit(SEXP model_ptr, const arma::vec& y, const arma::mat& X, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters, Rcpp::Nullable<arma::vec> noise);
RcppExport SEXP _rlibkriging_warpKriging_fit(SEXP model_ptrSEXP, SEXP ySEXP, SEXP XSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP, SEXP noiseSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y(ySEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X(XSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<arma::vec> >::type noise(noiseSEXP);
    warpKriging_fit(model_ptr, y, X, regmodel, normalize, optim, objective, parameters, noise);
    return R_NilValue;
END_RCPP
}
// warpKriging_predict
Rcpp::List warpKriging_predict(SEXP model_ptr, const arma::mat& x_new, bool withStd, bool withCov, bool withDeriv);
RcppExport SEXP _rlibkriging_warpKriging_predict(SEXP model_ptrSEXP, SEXP x_newSEXP, SEXP withStdSEXP, SEXP withCovSEXP, SEXP withDerivSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type x_new(x_newSEXP);
    Rcpp::traits::input_parameter< bool >::type withStd(withStdSEXP);
    Rcpp::traits::input_parameter< bool >::type withCov(withCovSEXP);
    Rcpp::traits::input_parameter< bool >::type withDeriv(withDerivSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_predict(model_ptr, x_new, withStd, withCov, withDeriv));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_simulate
arma::mat warpKriging_simulate(SEXP model_ptr, int nsim, int seed, const arma::mat& x_new, bool will_update);
RcppExport SEXP _rlibkriging_warpKriging_simulate(SEXP model_ptrSEXP, SEXP nsimSEXP, SEXP seedSEXP, SEXP x_newSEXP, SEXP will_updateSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< int >::type nsim(nsimSEXP);
    Rcpp::traits::input_parameter< int >::type seed(seedSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type x_new(x_newSEXP);
    Rcpp::traits::input_parameter< bool >::type will_update(will_updateSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_simulate(model_ptr, nsim, seed, x_new, will_update));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_update_simulate
arma::mat warpKriging_update_simulate(SEXP model_ptr, const arma::vec& y_u, const arma::mat& X_u);
RcppExport SEXP _rlibkriging_warpKriging_update_simulate(SEXP model_ptrSEXP, SEXP y_uSEXP, SEXP X_uSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X_u(X_uSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_update_simulate(model_ptr, y_u, X_u));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_update
void warpKriging_update(SEXP model_ptr, const arma::vec& y_u, const arma::mat& X_u, bool refit);
RcppExport SEXP _rlibkriging_warpKriging_update(SEXP model_ptrSEXP, SEXP y_uSEXP, SEXP X_uSEXP, SEXP refitSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< const arma::mat& >::type X_u(X_uSEXP);
    Rcpp::traits::input_parameter< bool >::type refit(refitSEXP);
    warpKriging_update(model_ptr, y_u, X_u, refit);
    return R_NilValue;
END_RCPP
}
// warpKriging_logLikelihood
double warpKriging_logLikelihood(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_logLikelihood(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_logLikelihood(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_logLikelihoodFun
Rcpp::List warpKriging_logLikelihoodFun(SEXP model_ptr, const arma::vec& theta_gp, bool withGrad, bool withHess);
RcppExport SEXP _rlibkriging_warpKriging_logLikelihoodFun(SEXP model_ptrSEXP, SEXP theta_gpSEXP, SEXP withGradSEXP, SEXP withHessSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< const arma::vec& >::type theta_gp(theta_gpSEXP);
    Rcpp::traits::input_parameter< bool >::type withGrad(withGradSEXP);
    Rcpp::traits::input_parameter< bool >::type withHess(withHessSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_logLikelihoodFun(model_ptr, theta_gp, withGrad, withHess));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_summary
std::string warpKriging_summary(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_summary(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_summary(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_theta
arma::vec warpKriging_theta(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_theta(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_theta(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_sigma2
double warpKriging_sigma2(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_sigma2(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_sigma2(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_kernel
std::string warpKriging_kernel(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_kernel(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_kernel(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_featureDim
int warpKriging_featureDim(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_featureDim(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_featureDim(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_warping
Rcpp::CharacterVector warpKriging_warping(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_warping(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_warping(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_isFitted
bool warpKriging_isFitted(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_isFitted(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_isFitted(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_X
arma::mat warpKriging_X(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_X(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_X(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_centerX
arma::vec warpKriging_centerX(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_centerX(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_centerX(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_scaleX
arma::vec warpKriging_scaleX(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_scaleX(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_scaleX(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_y
arma::vec warpKriging_y(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_y(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_y(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_centerY
double warpKriging_centerY(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_centerY(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_centerY(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_scaleY
double warpKriging_scaleY(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_scaleY(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_scaleY(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_normalize
bool warpKriging_normalize(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_normalize(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_normalize(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_regmodel
std::string warpKriging_regmodel(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_regmodel(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_regmodel(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_F
arma::mat warpKriging_F(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_F(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_F(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_T
arma::mat warpKriging_T(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_T(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_T(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_M
arma::mat warpKriging_M(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_M(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_M(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_z
arma::vec warpKriging_z(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_z(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_z(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_beta
arma::vec warpKriging_beta(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_beta(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_beta(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_copy
SEXP warpKriging_copy(SEXP model_ptr);
RcppExport SEXP _rlibkriging_warpKriging_copy(SEXP model_ptrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    rcpp_result_gen = Rcpp::wrap(warpKriging_copy(model_ptr));
    return rcpp_result_gen;
END_RCPP
}
// warpKriging_save
void warpKriging_save(SEXP model_ptr, std::string filename);
RcppExport SEXP _rlibkriging_warpKriging_save(SEXP model_ptrSEXP, SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type model_ptr(model_ptrSEXP);
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    warpKriging_save(model_ptr, filename);
    return R_NilValue;
END_RCPP
}
// new_Kriging
Rcpp::List new_Kriging(std::string kernel, std::string noise_model);
RcppExport SEXP _rlibkriging_new_Kriging(SEXP kernelSEXP, SEXP noise_modelSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type kernel(kernelSEXP);
    Rcpp::traits::input_parameter< std::string >::type noise_model(noise_modelSEXP);
    rcpp_result_gen = Rcpp::wrap(new_Kriging(kernel, noise_model));
    return rcpp_result_gen;
END_RCPP
}
// new_KrigingFit
Rcpp::List new_KrigingFit(arma::vec y, arma::mat X, std::string kernel, std::string noise_model, Rcpp::Nullable<Rcpp::NumericVector> noise, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters);
RcppExport SEXP _rlibkriging_new_KrigingFit(SEXP ySEXP, SEXP XSEXP, SEXP kernelSEXP, SEXP noise_modelSEXP, SEXP noiseSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< arma::vec >::type y(ySEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X(XSEXP);
    Rcpp::traits::input_parameter< std::string >::type kernel(kernelSEXP);
    Rcpp::traits::input_parameter< std::string >::type noise_model(noise_modelSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::NumericVector> >::type noise(noiseSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    rcpp_result_gen = Rcpp::wrap(new_KrigingFit(y, X, kernel, noise_model, noise, regmodel, normalize, optim, objective, parameters));
    return rcpp_result_gen;
END_RCPP
}
// kriging_fit
void kriging_fit(Rcpp::List k, arma::vec y, arma::mat X, Rcpp::Nullable<Rcpp::NumericVector> noise, std::string regmodel, bool normalize, std::string optim, std::string objective, Rcpp::Nullable<Rcpp::List> parameters);
RcppExport SEXP _rlibkriging_kriging_fit(SEXP kSEXP, SEXP ySEXP, SEXP XSEXP, SEXP noiseSEXP, SEXP regmodelSEXP, SEXP normalizeSEXP, SEXP optimSEXP, SEXP objectiveSEXP, SEXP parametersSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type y(ySEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X(XSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::NumericVector> >::type noise(noiseSEXP);
    Rcpp::traits::input_parameter< std::string >::type regmodel(regmodelSEXP);
    Rcpp::traits::input_parameter< bool >::type normalize(normalizeSEXP);
    Rcpp::traits::input_parameter< std::string >::type optim(optimSEXP);
    Rcpp::traits::input_parameter< std::string >::type objective(objectiveSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::List> >::type parameters(parametersSEXP);
    kriging_fit(k, y, X, noise, regmodel, normalize, optim, objective, parameters);
    return R_NilValue;
END_RCPP
}
// kriging_copy
Rcpp::List kriging_copy(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_copy(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_copy(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_model
Rcpp::List kriging_model(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_model(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_model(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_summary
std::string kriging_summary(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_summary(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_summary(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_predict
Rcpp::List kriging_predict(Rcpp::List k, arma::mat X_n, bool return_stdev, bool return_cov, bool return_deriv);
RcppExport SEXP _rlibkriging_kriging_predict(SEXP kSEXP, SEXP X_nSEXP, SEXP return_stdevSEXP, SEXP return_covSEXP, SEXP return_derivSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X_n(X_nSEXP);
    Rcpp::traits::input_parameter< bool >::type return_stdev(return_stdevSEXP);
    Rcpp::traits::input_parameter< bool >::type return_cov(return_covSEXP);
    Rcpp::traits::input_parameter< bool >::type return_deriv(return_derivSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_predict(k, X_n, return_stdev, return_cov, return_deriv));
    return rcpp_result_gen;
END_RCPP
}
// kriging_simulate
arma::mat kriging_simulate(Rcpp::List k, int nsim, int seed, arma::mat X_n, Rcpp::Nullable<Rcpp::NumericVector> with_noise, bool will_update);
RcppExport SEXP _rlibkriging_kriging_simulate(SEXP kSEXP, SEXP nsimSEXP, SEXP seedSEXP, SEXP X_nSEXP, SEXP with_noiseSEXP, SEXP will_updateSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< int >::type nsim(nsimSEXP);
    Rcpp::traits::input_parameter< int >::type seed(seedSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X_n(X_nSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::NumericVector> >::type with_noise(with_noiseSEXP);
    Rcpp::traits::input_parameter< bool >::type will_update(will_updateSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_simulate(k, nsim, seed, X_n, with_noise, will_update));
    return rcpp_result_gen;
END_RCPP
}
// kriging_update_simulate
arma::mat kriging_update_simulate(Rcpp::List k, arma::vec y_u, Rcpp::Nullable<Rcpp::NumericVector> noise_u, arma::mat X_u);
RcppExport SEXP _rlibkriging_kriging_update_simulate(SEXP kSEXP, SEXP y_uSEXP, SEXP noise_uSEXP, SEXP X_uSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::NumericVector> >::type noise_u(noise_uSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X_u(X_uSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_update_simulate(k, y_u, noise_u, X_u));
    return rcpp_result_gen;
END_RCPP
}
// kriging_update
void kriging_update(Rcpp::List k, arma::vec y_u, arma::mat X_u, Rcpp::Nullable<Rcpp::NumericVector> noise_u, bool refit);
RcppExport SEXP _rlibkriging_kriging_update(SEXP kSEXP, SEXP y_uSEXP, SEXP X_uSEXP, SEXP noise_uSEXP, SEXP refitSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type y_u(y_uSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X_u(X_uSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::NumericVector> >::type noise_u(noise_uSEXP);
    Rcpp::traits::input_parameter< bool >::type refit(refitSEXP);
    kriging_update(k, y_u, X_u, noise_u, refit);
    return R_NilValue;
END_RCPP
}
// kriging_save
void kriging_save(Rcpp::List k, std::string filename);
RcppExport SEXP _rlibkriging_kriging_save(SEXP kSEXP, SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    kriging_save(k, filename);
    return R_NilValue;
END_RCPP
}
// kriging_covMat
arma::mat kriging_covMat(Rcpp::List k, arma::mat X1, arma::mat X2);
RcppExport SEXP _rlibkriging_kriging_covMat(SEXP kSEXP, SEXP X1SEXP, SEXP X2SEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X1(X1SEXP);
    Rcpp::traits::input_parameter< arma::mat >::type X2(X2SEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_covMat(k, X1, X2));
    return rcpp_result_gen;
END_RCPP
}
// kriging_logLikelihoodFun
Rcpp::List kriging_logLikelihoodFun(Rcpp::List k, arma::vec theta, bool return_grad, bool return_hess, bool bench);
RcppExport SEXP _rlibkriging_kriging_logLikelihoodFun(SEXP kSEXP, SEXP thetaSEXP, SEXP return_gradSEXP, SEXP return_hessSEXP, SEXP benchSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type theta(thetaSEXP);
    Rcpp::traits::input_parameter< bool >::type return_grad(return_gradSEXP);
    Rcpp::traits::input_parameter< bool >::type return_hess(return_hessSEXP);
    Rcpp::traits::input_parameter< bool >::type bench(benchSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_logLikelihoodFun(k, theta, return_grad, return_hess, bench));
    return rcpp_result_gen;
END_RCPP
}
// kriging_logLikelihood
double kriging_logLikelihood(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_logLikelihood(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_logLikelihood(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_leaveOneOutFun
Rcpp::List kriging_leaveOneOutFun(Rcpp::List k, arma::vec theta, bool return_grad, bool bench);
RcppExport SEXP _rlibkriging_kriging_leaveOneOutFun(SEXP kSEXP, SEXP thetaSEXP, SEXP return_gradSEXP, SEXP benchSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type theta(thetaSEXP);
    Rcpp::traits::input_parameter< bool >::type return_grad(return_gradSEXP);
    Rcpp::traits::input_parameter< bool >::type bench(benchSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_leaveOneOutFun(k, theta, return_grad, bench));
    return rcpp_result_gen;
END_RCPP
}
// kriging_leaveOneOutVec
Rcpp::List kriging_leaveOneOutVec(Rcpp::List k, arma::vec theta);
RcppExport SEXP _rlibkriging_kriging_leaveOneOutVec(SEXP kSEXP, SEXP thetaSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type theta(thetaSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_leaveOneOutVec(k, theta));
    return rcpp_result_gen;
END_RCPP
}
// kriging_leaveOneOut
double kriging_leaveOneOut(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_leaveOneOut(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_leaveOneOut(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_logMargPostFun
Rcpp::List kriging_logMargPostFun(Rcpp::List k, arma::vec theta, bool return_grad, bool bench);
RcppExport SEXP _rlibkriging_kriging_logMargPostFun(SEXP kSEXP, SEXP thetaSEXP, SEXP return_gradSEXP, SEXP benchSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    Rcpp::traits::input_parameter< arma::vec >::type theta(thetaSEXP);
    Rcpp::traits::input_parameter< bool >::type return_grad(return_gradSEXP);
    Rcpp::traits::input_parameter< bool >::type bench(benchSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_logMargPostFun(k, theta, return_grad, bench));
    return rcpp_result_gen;
END_RCPP
}
// kriging_logMargPost
double kriging_logMargPost(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_logMargPost(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_logMargPost(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_kernel
std::string kriging_kernel(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_kernel(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_kernel(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_optim
std::string kriging_optim(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_optim(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_optim(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_objective
std::string kriging_objective(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_objective(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_objective(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_X
arma::mat kriging_X(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_X(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_X(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_centerX
arma::vec kriging_centerX(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_centerX(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_centerX(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_scaleX
arma::vec kriging_scaleX(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_scaleX(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_scaleX(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_y
arma::vec kriging_y(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_y(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_y(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_centerY
double kriging_centerY(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_centerY(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_centerY(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_scaleY
double kriging_scaleY(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_scaleY(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_scaleY(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_normalize
bool kriging_normalize(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_normalize(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_normalize(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_regmodel
std::string kriging_regmodel(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_regmodel(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_regmodel(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_F
arma::mat kriging_F(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_F(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_F(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_T
arma::mat kriging_T(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_T(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_T(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_M
arma::mat kriging_M(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_M(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_M(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_z
arma::vec kriging_z(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_z(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_z(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_beta
arma::vec kriging_beta(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_beta(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_beta(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_is_beta_estim
bool kriging_is_beta_estim(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_is_beta_estim(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_is_beta_estim(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_theta
arma::vec kriging_theta(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_theta(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_theta(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_is_theta_estim
bool kriging_is_theta_estim(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_is_theta_estim(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_is_theta_estim(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_sigma2
double kriging_sigma2(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_sigma2(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_sigma2(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_is_sigma2_estim
bool kriging_is_sigma2_estim(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_is_sigma2_estim(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_is_sigma2_estim(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_noise_model
std::string kriging_noise_model(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_noise_model(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_noise_model(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_nugget
double kriging_nugget(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_nugget(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_nugget(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_is_nugget_estim
bool kriging_is_nugget_estim(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_is_nugget_estim(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_is_nugget_estim(k));
    return rcpp_result_gen;
END_RCPP
}
// kriging_noise
arma::vec kriging_noise(Rcpp::List k);
RcppExport SEXP _rlibkriging_kriging_noise(SEXP kSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type k(kSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_noise(k));
    return rcpp_result_gen;
END_RCPP
}
// linalg_get_num_nugget
double linalg_get_num_nugget();
RcppExport SEXP _rlibkriging_linalg_get_num_nugget() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(linalg_get_num_nugget());
    return rcpp_result_gen;
END_RCPP
}
// linalg_set_num_nugget
void linalg_set_num_nugget(double nugget);
RcppExport SEXP _rlibkriging_linalg_set_num_nugget(SEXP nuggetSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< double >::type nugget(nuggetSEXP);
    linalg_set_num_nugget(nugget);
    return R_NilValue;
END_RCPP
}
// linalg_check_chol_rcond
void linalg_check_chol_rcond(bool cr);
RcppExport SEXP _rlibkriging_linalg_check_chol_rcond(SEXP crSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< bool >::type cr(crSEXP);
    linalg_check_chol_rcond(cr);
    return R_NilValue;
END_RCPP
}
// linalg_chol_rcond_checked
bool linalg_chol_rcond_checked();
RcppExport SEXP _rlibkriging_linalg_chol_rcond_checked() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(linalg_chol_rcond_checked());
    return rcpp_result_gen;
END_RCPP
}
// linalg_chol_safe
arma::mat linalg_chol_safe(arma::mat X);
RcppExport SEXP _rlibkriging_linalg_chol_safe(SEXP XSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< arma::mat >::type X(XSEXP);
    rcpp_result_gen = Rcpp::wrap(linalg_chol_safe(X));
    return rcpp_result_gen;
END_RCPP
}
// linalg_set_chol_warning
void linalg_set_chol_warning(bool warn);
RcppExport SEXP _rlibkriging_linalg_set_chol_warning(SEXP warnSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< bool >::type warn(warnSEXP);
    linalg_set_chol_warning(warn);
    return R_NilValue;
END_RCPP
}
// linalg_rcond_approx_chol
double linalg_rcond_approx_chol(arma::mat X);
RcppExport SEXP _rlibkriging_linalg_rcond_approx_chol(SEXP XSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< arma::mat >::type X(XSEXP);
    rcpp_result_gen = Rcpp::wrap(linalg_rcond_approx_chol(X));
    return rcpp_result_gen;
END_RCPP
}
// linalg_rcond_chol
double linalg_rcond_chol(arma::mat X);
RcppExport SEXP _rlibkriging_linalg_rcond_chol(SEXP XSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< arma::mat >::type X(XSEXP);
    rcpp_result_gen = Rcpp::wrap(linalg_rcond_chol(X));
    return rcpp_result_gen;
END_RCPP
}
// linalg_chol_block
arma::mat linalg_chol_block(arma::mat C, arma::mat Loo);
RcppExport SEXP _rlibkriging_linalg_chol_block(SEXP CSEXP, SEXP LooSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< arma::mat >::type C(CSEXP);
    Rcpp::traits::input_parameter< arma::mat >::type Loo(LooSEXP);
    rcpp_result_gen = Rcpp::wrap(linalg_chol_block(C, Loo));
    return rcpp_result_gen;
END_RCPP
}
// kriging_load
Rcpp::List kriging_load(std::string filename);
RcppExport SEXP _rlibkriging_kriging_load(SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    rcpp_result_gen = Rcpp::wrap(kriging_load(filename));
    return rcpp_result_gen;
END_RCPP
}
// warpkriging_load
SEXP warpkriging_load(std::string filename);
RcppExport SEXP _rlibkriging_warpkriging_load(SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    rcpp_result_gen = Rcpp::wrap(warpkriging_load(filename));
    return rcpp_result_gen;
END_RCPP
}
// mlpkriging_load
SEXP mlpkriging_load(std::string filename);
RcppExport SEXP _rlibkriging_mlpkriging_load(SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    rcpp_result_gen = Rcpp::wrap(mlpkriging_load(filename));
    return rcpp_result_gen;
END_RCPP
}
// class_saved
std::string class_saved(std::string filename);
RcppExport SEXP _rlibkriging_class_saved(SEXP filenameSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filename(filenameSEXP);
    rcpp_result_gen = Rcpp::wrap(class_saved(filename));
    return rcpp_result_gen;
END_RCPP
}
// optim_is_reparametrized
bool optim_is_reparametrized();
RcppExport SEXP _rlibkriging_optim_is_reparametrized() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_is_reparametrized());
    return rcpp_result_gen;
END_RCPP
}
// optim_use_reparametrize
void optim_use_reparametrize(bool reparametrize);
RcppExport SEXP _rlibkriging_optim_use_reparametrize(SEXP reparametrizeSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< bool >::type reparametrize(reparametrizeSEXP);
    optim_use_reparametrize(reparametrize);
    return R_NilValue;
END_RCPP
}
// optim_get_theta_lower_factor
double optim_get_theta_lower_factor();
RcppExport SEXP _rlibkriging_optim_get_theta_lower_factor() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_theta_lower_factor());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_theta_lower_factor
void optim_set_theta_lower_factor(double theta_lower_factor);
RcppExport SEXP _rlibkriging_optim_set_theta_lower_factor(SEXP theta_lower_factorSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< double >::type theta_lower_factor(theta_lower_factorSEXP);
    optim_set_theta_lower_factor(theta_lower_factor);
    return R_NilValue;
END_RCPP
}
// optim_get_theta_upper_factor
double optim_get_theta_upper_factor();
RcppExport SEXP _rlibkriging_optim_get_theta_upper_factor() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_theta_upper_factor());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_theta_upper_factor
void optim_set_theta_upper_factor(double theta_upper_factor);
RcppExport SEXP _rlibkriging_optim_set_theta_upper_factor(SEXP theta_upper_factorSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< double >::type theta_upper_factor(theta_upper_factorSEXP);
    optim_set_theta_upper_factor(theta_upper_factor);
    return R_NilValue;
END_RCPP
}
// optim_variogram_bounds_heuristic_used
bool optim_variogram_bounds_heuristic_used();
RcppExport SEXP _rlibkriging_optim_variogram_bounds_heuristic_used() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_variogram_bounds_heuristic_used());
    return rcpp_result_gen;
END_RCPP
}
// optim_use_variogram_bounds_heuristic
void optim_use_variogram_bounds_heuristic(bool variogram_bounds_heuristic);
RcppExport SEXP _rlibkriging_optim_use_variogram_bounds_heuristic(SEXP variogram_bounds_heuristicSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< bool >::type variogram_bounds_heuristic(variogram_bounds_heuristicSEXP);
    optim_use_variogram_bounds_heuristic(variogram_bounds_heuristic);
    return R_NilValue;
END_RCPP
}
// optim_set_log_level
void optim_set_log_level(int l);
RcppExport SEXP _rlibkriging_optim_set_log_level(SEXP lSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< int >::type l(lSEXP);
    optim_set_log_level(l);
    return R_NilValue;
END_RCPP
}
// optim_get_log_level
int optim_get_log_level();
RcppExport SEXP _rlibkriging_optim_get_log_level() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_log_level());
    return rcpp_result_gen;
END_RCPP
}
// optim_get_max_iteration
int optim_get_max_iteration();
RcppExport SEXP _rlibkriging_optim_get_max_iteration() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_max_iteration());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_max_iteration
void optim_set_max_iteration(int max_iteration);
RcppExport SEXP _rlibkriging_optim_set_max_iteration(SEXP max_iterationSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< int >::type max_iteration(max_iterationSEXP);
    optim_set_max_iteration(max_iteration);
    return R_NilValue;
END_RCPP
}
// optim_get_gradient_tolerance
double optim_get_gradient_tolerance();
RcppExport SEXP _rlibkriging_optim_get_gradient_tolerance() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_gradient_tolerance());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_gradient_tolerance
void optim_set_gradient_tolerance(double gradient_tolerance);
RcppExport SEXP _rlibkriging_optim_set_gradient_tolerance(SEXP gradient_toleranceSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< double >::type gradient_tolerance(gradient_toleranceSEXP);
    optim_set_gradient_tolerance(gradient_tolerance);
    return R_NilValue;
END_RCPP
}
// optim_get_objective_rel_tolerance
double optim_get_objective_rel_tolerance();
RcppExport SEXP _rlibkriging_optim_get_objective_rel_tolerance() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_objective_rel_tolerance());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_objective_rel_tolerance
void optim_set_objective_rel_tolerance(double objective_rel_tolerance);
RcppExport SEXP _rlibkriging_optim_set_objective_rel_tolerance(SEXP objective_rel_toleranceSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< double >::type objective_rel_tolerance(objective_rel_toleranceSEXP);
    optim_set_objective_rel_tolerance(objective_rel_tolerance);
    return R_NilValue;
END_RCPP
}
// optim_get_thread_start_delay_ms
int optim_get_thread_start_delay_ms();
RcppExport SEXP _rlibkriging_optim_get_thread_start_delay_ms() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_thread_start_delay_ms());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_thread_start_delay_ms
void optim_set_thread_start_delay_ms(int delay_ms);
RcppExport SEXP _rlibkriging_optim_set_thread_start_delay_ms(SEXP delay_msSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< int >::type delay_ms(delay_msSEXP);
    optim_set_thread_start_delay_ms(delay_ms);
    return R_NilValue;
END_RCPP
}
// optim_get_thread_pool_size
int optim_get_thread_pool_size();
RcppExport SEXP _rlibkriging_optim_get_thread_pool_size() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(optim_get_thread_pool_size());
    return rcpp_result_gen;
END_RCPP
}
// optim_set_thread_pool_size
void optim_set_thread_pool_size(int pool_size);
RcppExport SEXP _rlibkriging_optim_set_thread_pool_size(SEXP pool_sizeSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< int >::type pool_size(pool_sizeSEXP);
    optim_set_thread_pool_size(pool_size);
    return R_NilValue;
END_RCPP
}
// random_reset_seed
void random_reset_seed(unsigned int seed);
RcppExport SEXP _rlibkriging_random_reset_seed(SEXP seedSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< unsigned int >::type seed(seedSEXP);
    random_reset_seed(seed);
    return R_NilValue;
END_RCPP
}
// random_randu
double random_randu();
RcppExport SEXP _rlibkriging_random_randu() {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    rcpp_result_gen = Rcpp::wrap(random_randu());
    return rcpp_result_gen;
END_RCPP
}
// random_randu_vec
arma::vec random_randu_vec(unsigned int n);
RcppExport SEXP _rlibkriging_random_randu_vec(SEXP nSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< unsigned int >::type n(nSEXP);
    rcpp_result_gen = Rcpp::wrap(random_randu_vec(n));
    return rcpp_result_gen;
END_RCPP
}
// random_randu_mat
arma::mat random_randu_mat(unsigned int n, unsigned int d);
RcppExport SEXP _rlibkriging_random_randu_mat(SEXP nSEXP, SEXP dSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< unsigned int >::type n(nSEXP);
    Rcpp::traits::input_parameter< unsigned int >::type d(dSEXP);
    rcpp_result_gen = Rcpp::wrap(random_randu_mat(n, d));
    return rcpp_result_gen;
END_RCPP
}
// random_randn_mat
arma::mat random_randn_mat(unsigned int n, unsigned int d);
RcppExport SEXP _rlibkriging_random_randn_mat(SEXP nSEXP, SEXP dSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< unsigned int >::type n(nSEXP);
    Rcpp::traits::input_parameter< unsigned int >::type d(dSEXP);
    rcpp_result_gen = Rcpp::wrap(random_randn_mat(n, d));
    return rcpp_result_gen;
END_RCPP
}

static const R_CallMethodDef CallEntries[] = {
    {"_rlibkriging_mlpKriging_new", (DL_FUNC) &_rlibkriging_mlpKriging_new, 11},
    {"_rlibkriging_mlpKriging_fit", (DL_FUNC) &_rlibkriging_mlpKriging_fit, 8},
    {"_rlibkriging_mlpKriging_predict", (DL_FUNC) &_rlibkriging_mlpKriging_predict, 5},
    {"_rlibkriging_mlpKriging_simulate", (DL_FUNC) &_rlibkriging_mlpKriging_simulate, 5},
    {"_rlibkriging_mlpKriging_update_simulate", (DL_FUNC) &_rlibkriging_mlpKriging_update_simulate, 3},
    {"_rlibkriging_mlpKriging_update", (DL_FUNC) &_rlibkriging_mlpKriging_update, 4},
    {"_rlibkriging_mlpKriging_logLikelihood", (DL_FUNC) &_rlibkriging_mlpKriging_logLikelihood, 1},
    {"_rlibkriging_mlpKriging_logLikelihoodFun", (DL_FUNC) &_rlibkriging_mlpKriging_logLikelihoodFun, 4},
    {"_rlibkriging_mlpKriging_summary", (DL_FUNC) &_rlibkriging_mlpKriging_summary, 1},
    {"_rlibkriging_mlpKriging_theta", (DL_FUNC) &_rlibkriging_mlpKriging_theta, 1},
    {"_rlibkriging_mlpKriging_sigma2", (DL_FUNC) &_rlibkriging_mlpKriging_sigma2, 1},
    {"_rlibkriging_mlpKriging_kernel", (DL_FUNC) &_rlibkriging_mlpKriging_kernel, 1},
    {"_rlibkriging_mlpKriging_featureDim", (DL_FUNC) &_rlibkriging_mlpKriging_featureDim, 1},
    {"_rlibkriging_mlpKriging_hiddenDims", (DL_FUNC) &_rlibkriging_mlpKriging_hiddenDims, 1},
    {"_rlibkriging_mlpKriging_activation", (DL_FUNC) &_rlibkriging_mlpKriging_activation, 1},
    {"_rlibkriging_mlpKriging_isFitted", (DL_FUNC) &_rlibkriging_mlpKriging_isFitted, 1},
    {"_rlibkriging_mlpKriging_X", (DL_FUNC) &_rlibkriging_mlpKriging_X, 1},
    {"_rlibkriging_mlpKriging_centerX", (DL_FUNC) &_rlibkriging_mlpKriging_centerX, 1},
    {"_rlibkriging_mlpKriging_scaleX", (DL_FUNC) &_rlibkriging_mlpKriging_scaleX, 1},
    {"_rlibkriging_mlpKriging_y", (DL_FUNC) &_rlibkriging_mlpKriging_y, 1},
    {"_rlibkriging_mlpKriging_centerY", (DL_FUNC) &_rlibkriging_mlpKriging_centerY, 1},
    {"_rlibkriging_mlpKriging_scaleY", (DL_FUNC) &_rlibkriging_mlpKriging_scaleY, 1},
    {"_rlibkriging_mlpKriging_normalize", (DL_FUNC) &_rlibkriging_mlpKriging_normalize, 1},
    {"_rlibkriging_mlpKriging_regmodel", (DL_FUNC) &_rlibkriging_mlpKriging_regmodel, 1},
    {"_rlibkriging_mlpKriging_F", (DL_FUNC) &_rlibkriging_mlpKriging_F, 1},
    {"_rlibkriging_mlpKriging_T", (DL_FUNC) &_rlibkriging_mlpKriging_T, 1},
    {"_rlibkriging_mlpKriging_M", (DL_FUNC) &_rlibkriging_mlpKriging_M, 1},
    {"_rlibkriging_mlpKriging_z", (DL_FUNC) &_rlibkriging_mlpKriging_z, 1},
    {"_rlibkriging_mlpKriging_beta", (DL_FUNC) &_rlibkriging_mlpKriging_beta, 1},
    {"_rlibkriging_mlpKriging_copy", (DL_FUNC) &_rlibkriging_mlpKriging_copy, 1},
    {"_rlibkriging_mlpKriging_save", (DL_FUNC) &_rlibkriging_mlpKriging_save, 2},
    {"_rlibkriging_warpKriging_new", (DL_FUNC) &_rlibkriging_warpKriging_new, 10},
    {"_rlibkriging_warpKriging_fit", (DL_FUNC) &_rlibkriging_warpKriging_fit, 9},
    {"_rlibkriging_warpKriging_predict", (DL_FUNC) &_rlibkriging_warpKriging_predict, 5},
    {"_rlibkriging_warpKriging_simulate", (DL_FUNC) &_rlibkriging_warpKriging_simulate, 5},
    {"_rlibkriging_warpKriging_update_simulate", (DL_FUNC) &_rlibkriging_warpKriging_update_simulate, 3},
    {"_rlibkriging_warpKriging_update", (DL_FUNC) &_rlibkriging_warpKriging_update, 4},
    {"_rlibkriging_warpKriging_logLikelihood", (DL_FUNC) &_rlibkriging_warpKriging_logLikelihood, 1},
    {"_rlibkriging_warpKriging_logLikelihoodFun", (DL_FUNC) &_rlibkriging_warpKriging_logLikelihoodFun, 4},
    {"_rlibkriging_warpKriging_summary", (DL_FUNC) &_rlibkriging_warpKriging_summary, 1},
    {"_rlibkriging_warpKriging_theta", (DL_FUNC) &_rlibkriging_warpKriging_theta, 1},
    {"_rlibkriging_warpKriging_sigma2", (DL_FUNC) &_rlibkriging_warpKriging_sigma2, 1},
    {"_rlibkriging_warpKriging_kernel", (DL_FUNC) &_rlibkriging_warpKriging_kernel, 1},
    {"_rlibkriging_warpKriging_featureDim", (DL_FUNC) &_rlibkriging_warpKriging_featureDim, 1},
    {"_rlibkriging_warpKriging_warping", (DL_FUNC) &_rlibkriging_warpKriging_warping, 1},
    {"_rlibkriging_warpKriging_isFitted", (DL_FUNC) &_rlibkriging_warpKriging_isFitted, 1},
    {"_rlibkriging_warpKriging_X", (DL_FUNC) &_rlibkriging_warpKriging_X, 1},
    {"_rlibkriging_warpKriging_centerX", (DL_FUNC) &_rlibkriging_warpKriging_centerX, 1},
    {"_rlibkriging_warpKriging_scaleX", (DL_FUNC) &_rlibkriging_warpKriging_scaleX, 1},
    {"_rlibkriging_warpKriging_y", (DL_FUNC) &_rlibkriging_warpKriging_y, 1},
    {"_rlibkriging_warpKriging_centerY", (DL_FUNC) &_rlibkriging_warpKriging_centerY, 1},
    {"_rlibkriging_warpKriging_scaleY", (DL_FUNC) &_rlibkriging_warpKriging_scaleY, 1},
    {"_rlibkriging_warpKriging_normalize", (DL_FUNC) &_rlibkriging_warpKriging_normalize, 1},
    {"_rlibkriging_warpKriging_regmodel", (DL_FUNC) &_rlibkriging_warpKriging_regmodel, 1},
    {"_rlibkriging_warpKriging_F", (DL_FUNC) &_rlibkriging_warpKriging_F, 1},
    {"_rlibkriging_warpKriging_T", (DL_FUNC) &_rlibkriging_warpKriging_T, 1},
    {"_rlibkriging_warpKriging_M", (DL_FUNC) &_rlibkriging_warpKriging_M, 1},
    {"_rlibkriging_warpKriging_z", (DL_FUNC) &_rlibkriging_warpKriging_z, 1},
    {"_rlibkriging_warpKriging_beta", (DL_FUNC) &_rlibkriging_warpKriging_beta, 1},
    {"_rlibkriging_warpKriging_copy", (DL_FUNC) &_rlibkriging_warpKriging_copy, 1},
    {"_rlibkriging_warpKriging_save", (DL_FUNC) &_rlibkriging_warpKriging_save, 2},
    {"_rlibkriging_new_Kriging", (DL_FUNC) &_rlibkriging_new_Kriging, 2},
    {"_rlibkriging_new_KrigingFit", (DL_FUNC) &_rlibkriging_new_KrigingFit, 10},
    {"_rlibkriging_kriging_fit", (DL_FUNC) &_rlibkriging_kriging_fit, 9},
    {"_rlibkriging_kriging_copy", (DL_FUNC) &_rlibkriging_kriging_copy, 1},
    {"_rlibkriging_kriging_model", (DL_FUNC) &_rlibkriging_kriging_model, 1},
    {"_rlibkriging_kriging_summary", (DL_FUNC) &_rlibkriging_kriging_summary, 1},
    {"_rlibkriging_kriging_predict", (DL_FUNC) &_rlibkriging_kriging_predict, 5},
    {"_rlibkriging_kriging_simulate", (DL_FUNC) &_rlibkriging_kriging_simulate, 6},
    {"_rlibkriging_kriging_update_simulate", (DL_FUNC) &_rlibkriging_kriging_update_simulate, 4},
    {"_rlibkriging_kriging_update", (DL_FUNC) &_rlibkriging_kriging_update, 5},
    {"_rlibkriging_kriging_save", (DL_FUNC) &_rlibkriging_kriging_save, 2},
    {"_rlibkriging_kriging_covMat", (DL_FUNC) &_rlibkriging_kriging_covMat, 3},
    {"_rlibkriging_kriging_logLikelihoodFun", (DL_FUNC) &_rlibkriging_kriging_logLikelihoodFun, 5},
    {"_rlibkriging_kriging_logLikelihood", (DL_FUNC) &_rlibkriging_kriging_logLikelihood, 1},
    {"_rlibkriging_kriging_leaveOneOutFun", (DL_FUNC) &_rlibkriging_kriging_leaveOneOutFun, 4},
    {"_rlibkriging_kriging_leaveOneOutVec", (DL_FUNC) &_rlibkriging_kriging_leaveOneOutVec, 2},
    {"_rlibkriging_kriging_leaveOneOut", (DL_FUNC) &_rlibkriging_kriging_leaveOneOut, 1},
    {"_rlibkriging_kriging_logMargPostFun", (DL_FUNC) &_rlibkriging_kriging_logMargPostFun, 4},
    {"_rlibkriging_kriging_logMargPost", (DL_FUNC) &_rlibkriging_kriging_logMargPost, 1},
    {"_rlibkriging_kriging_kernel", (DL_FUNC) &_rlibkriging_kriging_kernel, 1},
    {"_rlibkriging_kriging_optim", (DL_FUNC) &_rlibkriging_kriging_optim, 1},
    {"_rlibkriging_kriging_objective", (DL_FUNC) &_rlibkriging_kriging_objective, 1},
    {"_rlibkriging_kriging_X", (DL_FUNC) &_rlibkriging_kriging_X, 1},
    {"_rlibkriging_kriging_centerX", (DL_FUNC) &_rlibkriging_kriging_centerX, 1},
    {"_rlibkriging_kriging_scaleX", (DL_FUNC) &_rlibkriging_kriging_scaleX, 1},
    {"_rlibkriging_kriging_y", (DL_FUNC) &_rlibkriging_kriging_y, 1},
    {"_rlibkriging_kriging_centerY", (DL_FUNC) &_rlibkriging_kriging_centerY, 1},
    {"_rlibkriging_kriging_scaleY", (DL_FUNC) &_rlibkriging_kriging_scaleY, 1},
    {"_rlibkriging_kriging_normalize", (DL_FUNC) &_rlibkriging_kriging_normalize, 1},
    {"_rlibkriging_kriging_regmodel", (DL_FUNC) &_rlibkriging_kriging_regmodel, 1},
    {"_rlibkriging_kriging_F", (DL_FUNC) &_rlibkriging_kriging_F, 1},
    {"_rlibkriging_kriging_T", (DL_FUNC) &_rlibkriging_kriging_T, 1},
    {"_rlibkriging_kriging_M", (DL_FUNC) &_rlibkriging_kriging_M, 1},
    {"_rlibkriging_kriging_z", (DL_FUNC) &_rlibkriging_kriging_z, 1},
    {"_rlibkriging_kriging_beta", (DL_FUNC) &_rlibkriging_kriging_beta, 1},
    {"_rlibkriging_kriging_is_beta_estim", (DL_FUNC) &_rlibkriging_kriging_is_beta_estim, 1},
    {"_rlibkriging_kriging_theta", (DL_FUNC) &_rlibkriging_kriging_theta, 1},
    {"_rlibkriging_kriging_is_theta_estim", (DL_FUNC) &_rlibkriging_kriging_is_theta_estim, 1},
    {"_rlibkriging_kriging_sigma2", (DL_FUNC) &_rlibkriging_kriging_sigma2, 1},
    {"_rlibkriging_kriging_is_sigma2_estim", (DL_FUNC) &_rlibkriging_kriging_is_sigma2_estim, 1},
    {"_rlibkriging_kriging_noise_model", (DL_FUNC) &_rlibkriging_kriging_noise_model, 1},
    {"_rlibkriging_kriging_nugget", (DL_FUNC) &_rlibkriging_kriging_nugget, 1},
    {"_rlibkriging_kriging_is_nugget_estim", (DL_FUNC) &_rlibkriging_kriging_is_nugget_estim, 1},
    {"_rlibkriging_kriging_noise", (DL_FUNC) &_rlibkriging_kriging_noise, 1},
    {"_rlibkriging_linalg_get_num_nugget", (DL_FUNC) &_rlibkriging_linalg_get_num_nugget, 0},
    {"_rlibkriging_linalg_set_num_nugget", (DL_FUNC) &_rlibkriging_linalg_set_num_nugget, 1},
    {"_rlibkriging_linalg_check_chol_rcond", (DL_FUNC) &_rlibkriging_linalg_check_chol_rcond, 1},
    {"_rlibkriging_linalg_chol_rcond_checked", (DL_FUNC) &_rlibkriging_linalg_chol_rcond_checked, 0},
    {"_rlibkriging_linalg_chol_safe", (DL_FUNC) &_rlibkriging_linalg_chol_safe, 1},
    {"_rlibkriging_linalg_set_chol_warning", (DL_FUNC) &_rlibkriging_linalg_set_chol_warning, 1},
    {"_rlibkriging_linalg_rcond_approx_chol", (DL_FUNC) &_rlibkriging_linalg_rcond_approx_chol, 1},
    {"_rlibkriging_linalg_rcond_chol", (DL_FUNC) &_rlibkriging_linalg_rcond_chol, 1},
    {"_rlibkriging_linalg_chol_block", (DL_FUNC) &_rlibkriging_linalg_chol_block, 2},
    {"_rlibkriging_kriging_load", (DL_FUNC) &_rlibkriging_kriging_load, 1},
    {"_rlibkriging_warpkriging_load", (DL_FUNC) &_rlibkriging_warpkriging_load, 1},
    {"_rlibkriging_mlpkriging_load", (DL_FUNC) &_rlibkriging_mlpkriging_load, 1},
    {"_rlibkriging_class_saved", (DL_FUNC) &_rlibkriging_class_saved, 1},
    {"_rlibkriging_optim_is_reparametrized", (DL_FUNC) &_rlibkriging_optim_is_reparametrized, 0},
    {"_rlibkriging_optim_use_reparametrize", (DL_FUNC) &_rlibkriging_optim_use_reparametrize, 1},
    {"_rlibkriging_optim_get_theta_lower_factor", (DL_FUNC) &_rlibkriging_optim_get_theta_lower_factor, 0},
    {"_rlibkriging_optim_set_theta_lower_factor", (DL_FUNC) &_rlibkriging_optim_set_theta_lower_factor, 1},
    {"_rlibkriging_optim_get_theta_upper_factor", (DL_FUNC) &_rlibkriging_optim_get_theta_upper_factor, 0},
    {"_rlibkriging_optim_set_theta_upper_factor", (DL_FUNC) &_rlibkriging_optim_set_theta_upper_factor, 1},
    {"_rlibkriging_optim_variogram_bounds_heuristic_used", (DL_FUNC) &_rlibkriging_optim_variogram_bounds_heuristic_used, 0},
    {"_rlibkriging_optim_use_variogram_bounds_heuristic", (DL_FUNC) &_rlibkriging_optim_use_variogram_bounds_heuristic, 1},
    {"_rlibkriging_optim_set_log_level", (DL_FUNC) &_rlibkriging_optim_set_log_level, 1},
    {"_rlibkriging_optim_get_log_level", (DL_FUNC) &_rlibkriging_optim_get_log_level, 0},
    {"_rlibkriging_optim_get_max_iteration", (DL_FUNC) &_rlibkriging_optim_get_max_iteration, 0},
    {"_rlibkriging_optim_set_max_iteration", (DL_FUNC) &_rlibkriging_optim_set_max_iteration, 1},
    {"_rlibkriging_optim_get_gradient_tolerance", (DL_FUNC) &_rlibkriging_optim_get_gradient_tolerance, 0},
    {"_rlibkriging_optim_set_gradient_tolerance", (DL_FUNC) &_rlibkriging_optim_set_gradient_tolerance, 1},
    {"_rlibkriging_optim_get_objective_rel_tolerance", (DL_FUNC) &_rlibkriging_optim_get_objective_rel_tolerance, 0},
    {"_rlibkriging_optim_set_objective_rel_tolerance", (DL_FUNC) &_rlibkriging_optim_set_objective_rel_tolerance, 1},
    {"_rlibkriging_optim_get_thread_start_delay_ms", (DL_FUNC) &_rlibkriging_optim_get_thread_start_delay_ms, 0},
    {"_rlibkriging_optim_set_thread_start_delay_ms", (DL_FUNC) &_rlibkriging_optim_set_thread_start_delay_ms, 1},
    {"_rlibkriging_optim_get_thread_pool_size", (DL_FUNC) &_rlibkriging_optim_get_thread_pool_size, 0},
    {"_rlibkriging_optim_set_thread_pool_size", (DL_FUNC) &_rlibkriging_optim_set_thread_pool_size, 1},
    {"_rlibkriging_random_reset_seed", (DL_FUNC) &_rlibkriging_random_reset_seed, 1},
    {"_rlibkriging_random_randu", (DL_FUNC) &_rlibkriging_random_randu, 0},
    {"_rlibkriging_random_randu_vec", (DL_FUNC) &_rlibkriging_random_randu_vec, 1},
    {"_rlibkriging_random_randu_mat", (DL_FUNC) &_rlibkriging_random_randu_mat, 2},
    {"_rlibkriging_random_randn_mat", (DL_FUNC) &_rlibkriging_random_randn_mat, 2},
    {NULL, NULL, 0}
};

RcppExport void R_init_rlibkriging(DllInfo *dll) {
    R_registerRoutines(dll, NULL, CallEntries, NULL, NULL);
    R_useDynamicSymbols(dll, FALSE);
}
