Docs
Loading...
Searching...
No Matches
r_bindings.cpp File Reference
#include "Rcpp/XPtr.h"
#include "params/DP-params.hpp"
#include "params/GaussianMixtureModel-params.hpp"
#include "params/NGGP-params.hpp"
#include "params/Natarajan-params.hpp"
#include "params/utils-params.hpp"
#include "utils/Data.hpp"
#include "utils/Datax.hpp"
#include "utils/Params.hpp"
#include <RcppEigen.h>
#include <memory>
#include "likelihoods/Gamma_likelihood_distances.hpp"
#include "likelihoods/GaussianMixtureModel_likelihood.hpp"
#include "likelihoods/Natarajan_likelihood.hpp"
#include "likelihoods/Natarajan_likelihood_summaryStats.hpp"
#include "likelihoods/Null_likelihood.hpp"
#include "utils/Likelihood.hpp"
#include "processes/DP.hpp"
#include "processes/DPx.hpp"
#include "processes/NGGP.hpp"
#include "processes/NGGPx.hpp"
#include "utils/Process.hpp"
#include "processes/module/binary_covariate_module.hpp"
#include "processes/module/binary_covariate_module_cache.hpp"
#include "processes/module/categorical_covariate_module.hpp"
#include "processes/module/continuos_covariate_module.hpp"
#include "processes/module/continuos_covariate_module_cache.hpp"
#include "processes/module/spatial_module.hpp"
#include "processes/module/spatial_module_cache.hpp"
#include "processes/module/spatial_module_continuous.hpp"
#include "processes/caches/binary_cache.hpp"
#include "processes/caches/continuos_cache.hpp"
#include "processes/caches/spatial_cache.hpp"
#include "utils/ClusterInfo.hpp"
#include "samplers/U_sampler/MALA.hpp"
#include "samplers/U_sampler/RWMH.hpp"
#include "samplers/U_sampler/U_sampler.hpp"
#include "samplers/neal.hpp"
#include "samplers/neal_ZDNAM.hpp"
#include "samplers/splitmerge.hpp"
#include "samplers/splitmerge_LSS.hpp"
#include "samplers/splitmerge_LSS_SDDS.hpp"
#include "samplers/splitmerge_SAMS.hpp"
#include "utils/Sampler.hpp"

Functions

Data * get_data_ptr (SEXP sexp)
ClusterInfo * get_cluster_info_ptr (SEXP sexp)
Rcpp::XPtr< Params > create_Params (double delta1, double alpha, double beta, double delta2, double gamma, double zeta, int BI, int NI, double a, double sigma, double tau, Eigen::MatrixXd D)
Rcpp::XPtr< utils_params > create_utils_params (int BI, int NI, Eigen::MatrixXd D)
Rcpp::XPtr< NGGP_params > create_NGGP_params (double a, double sigma, double tau)
Rcpp::XPtr< DP_params > create_DP_params (double a)
Rcpp::XPtr< Natarajan_params > create_Natarajan_params (double delta1, double alpha, double beta, double delta2, double gamma, double zeta)
Rcpp::XPtr< GaussianMixtureModel_params > create_GaussianMixtureModel_params (double m0, double kappa0, double alpha0, double beta0)
Rcpp::XPtr< Data > create_Data (Rcpp::XPtr< utils_params > params, Eigen::VectorXi initial_allocations)
Rcpp::XPtr< ContinuosCache > create_Continuos_cache (Eigen::VectorXi &initial_allocations, Eigen::VectorXd continuos_covariates)
Rcpp::XPtr< BinaryCache > create_Binary_cache (Eigen::VectorXi &initial_allocations, Eigen::VectorXi binary_covariates)
Rcpp::XPtr< SpatialCache > create_Spatial_cache (Eigen::VectorXi &initial_allocations, Eigen::MatrixXi W)
Rcpp::XPtr< Datax > create_Datax (Rcpp::XPtr< utils_params > params, Rcpp::List modules_list, Eigen::VectorXi initial_allocations)
Rcpp::XPtr< Natarajan_likelihood > create_Natarajan_likelihood (SEXP data_sexp, Rcpp::XPtr< Natarajan_params > params, Rcpp::XPtr< utils_params > utils)
Rcpp::XPtr< Natarajan_likelihood_summaryStats > create_Natarajan_likelihood_summaryStats (SEXP data_sexp, Rcpp::XPtr< Natarajan_params > params, Rcpp::XPtr< utils_params > utils)
Rcpp::XPtr< Null_likelihood > create_Null_likelihood (SEXP data_sexp)
Rcpp::XPtr< Gamma_likelihood_distances > create_Gamma_likelihood_distances (SEXP data_sexp, Rcpp::XPtr< Natarajan_params > params, Rcpp::XPtr< utils_params > utils)
Rcpp::XPtr< GaussianMixtureModel_likelihood > create_GaussianMixtureModel_likelihood (SEXP data_sexp, Rcpp::XPtr< GaussianMixtureModel_params > params)
Rcpp::XPtr< RWMH > create_RWMH (Rcpp::XPtr< NGGP_params > params, SEXP data_sexp, bool use_V, double proposal_sd, bool tuning_enabled)
Rcpp::XPtr< MALA > create_MALA (Rcpp::XPtr< NGGP_params > params, SEXP data_sexp, bool use_V, double proposal_sd, bool tuning_enabled)
Rcpp::XPtr< DP > create_DP (SEXP data_sexp, Rcpp::XPtr< DP_params > params)
Rcpp::XPtr< NGGP > create_NGGP (SEXP data_sexp, Rcpp::XPtr< NGGP_params > params, Rcpp::XPtr< U_sampler > u_sampler)
Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModule (SEXP data_sexp, Eigen::MatrixXi W, double spatial_coefficient)
Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModuleContinuous (SEXP data_sexp, Eigen::MatrixXd W, double spatial_coefficient)
Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModuleCache (SEXP data_sexp, Rcpp::XPtr< SpatialCache > cache, double spatial_coefficient)
Rcpp::XPtr< std::shared_ptr< Module > > create_ContinuosCovariatesModule (SEXP data_sexp, Eigen::VectorXd covariates, bool fixed_v, double m=0, double B=1, double v=1, double nu=1, double S0=1)
Rcpp::XPtr< std::shared_ptr< Module > > create_ContinuosCovariatesModuleCache (SEXP data_sexp, Rcpp::XPtr< ContinuosCache > cache, bool fixed_v, double m=0, double B=1, double v=1, double nu=1, double S0=1)
Rcpp::XPtr< std::shared_ptr< Module > > create_BinaryCovariatesModule (SEXP data_sexp, Eigen::VectorXi covariates, double prior_a=1.0, double prior_b=1.0)
Rcpp::XPtr< std::shared_ptr< Module > > create_BinaryCovariatesModuleCache (SEXP data_sexp, Rcpp::XPtr< BinaryCache > cache, double beta_prior_alpha=1.0, double beta_prior_beta=1.0)
Rcpp::XPtr< std::shared_ptr< Module > > create_CategoricalCovariatesModule (SEXP data_sexp, Eigen::VectorXi categorical_covariate, std::vector< double > prior_alpha)
Rcpp::XPtr< DPx > create_DPx (SEXP data_sexp, Rcpp::XPtr< DP_params > params, Rcpp::List modules_list)
Rcpp::XPtr< NGGPx > create_NGGPx (SEXP data_sexp, Rcpp::XPtr< NGGP_params > params, Rcpp::XPtr< U_sampler > u_sampler, Rcpp::List modules_list)
Rcpp::XPtr< Neal3 > create_Neal3 (SEXP data_sexp, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process)
Rcpp::XPtr< Neal3ZDNAM > create_Neal3ZDNAM (SEXP data_sexp, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process)
Rcpp::XPtr< SplitMerge > create_SplitMerge (SEXP data_sexp, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process, bool shuffle)
Rcpp::XPtr< SplitMerge_SAMS > create_SplitMerge_SAMS (SEXP data_sexp, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process, bool shuffle)
Rcpp::XPtr< SplitMerge_LSS > create_SplitMerge_LSS (SEXP data_sexp, Rcpp::XPtr< utils_params > params, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process, bool shuffle)
Rcpp::XPtr< SplitMerge_LSS_SDDS > create_SplitMerge_LSS_SDDS (SEXP data_sexp, Rcpp::XPtr< utils_params > params, Rcpp::XPtr< Likelihood > likelihood, Rcpp::XPtr< Process > process, bool shuffle)
void process_update_params (Rcpp::XPtr< Process > process)
void sampler_step (Rcpp::XPtr< Sampler > sampler)
Eigen::VectorXi data_get_allocations (SEXP data_sexp)
int data_get_K (SEXP data_sexp)
double u_sampler_get_U (Rcpp::XPtr< U_sampler > u_sampler)
double u_sampler_get_acceptance_rate (Rcpp::XPtr< U_sampler > u_sampler)
int params_get_BI (Rcpp::XPtr< utils_params > params)
int params_get_NI (Rcpp::XPtr< utils_params > params)
double NGGP_params_get_a (Rcpp::XPtr< NGGP_params > params)
double params_get_sigma (Rcpp::XPtr< NGGP_params > params)
double params_get_tau (Rcpp::XPtr< NGGP_params > params)
std::string params_get_name (Rcpp::XPtr< Process_params > params)
double DP_params_get_a (Rcpp::XPtr< DP_params > params)
void cluster_info_set_allocation (Rcpp::XPtr< ClusterInfo > cluster_info, int index, int cluster, int old_cluster)
void cluster_info_recompute (Rcpp::XPtr< ClusterInfo > cluster_info, int K, Eigen::VectorXi allocations)
void datax_set_allocation (Rcpp::XPtr< Datax > data, int index, int cluster)
void datax_set_allocations (Rcpp::XPtr< Datax > data, Eigen::VectorXi new_allocations)
void lss_sdds_accepted_moves (Rcpp::XPtr< SplitMerge_LSS_SDDS > sampler)
 RCPP_MODULE (bnpclust_module)

Function Documentation

◆ cluster_info_recompute()

void cluster_info_recompute ( Rcpp::XPtr< ClusterInfo > cluster_info,
int K,
Eigen::VectorXi allocations )

◆ cluster_info_set_allocation()

void cluster_info_set_allocation ( Rcpp::XPtr< ClusterInfo > cluster_info,
int index,
int cluster,
int old_cluster )

◆ create_Binary_cache()

Rcpp::XPtr< BinaryCache > create_Binary_cache ( Eigen::VectorXi & initial_allocations,
Eigen::VectorXi binary_covariates )

◆ create_BinaryCovariatesModule()

Rcpp::XPtr< std::shared_ptr< Module > > create_BinaryCovariatesModule ( SEXP data_sexp,
Eigen::VectorXi covariates,
double prior_a = 1.0,
double prior_b = 1.0 )

◆ create_BinaryCovariatesModuleCache()

Rcpp::XPtr< std::shared_ptr< Module > > create_BinaryCovariatesModuleCache ( SEXP data_sexp,
Rcpp::XPtr< BinaryCache > cache,
double beta_prior_alpha = 1.0,
double beta_prior_beta = 1.0 )

◆ create_CategoricalCovariatesModule()

Rcpp::XPtr< std::shared_ptr< Module > > create_CategoricalCovariatesModule ( SEXP data_sexp,
Eigen::VectorXi categorical_covariate,
std::vector< double > prior_alpha )

◆ create_Continuos_cache()

Rcpp::XPtr< ContinuosCache > create_Continuos_cache ( Eigen::VectorXi & initial_allocations,
Eigen::VectorXd continuos_covariates )

◆ create_ContinuosCovariatesModule()

Rcpp::XPtr< std::shared_ptr< Module > > create_ContinuosCovariatesModule ( SEXP data_sexp,
Eigen::VectorXd covariates,
bool fixed_v,
double m = 0,
double B = 1,
double v = 1,
double nu = 1,
double S0 = 1 )

◆ create_ContinuosCovariatesModuleCache()

Rcpp::XPtr< std::shared_ptr< Module > > create_ContinuosCovariatesModuleCache ( SEXP data_sexp,
Rcpp::XPtr< ContinuosCache > cache,
bool fixed_v,
double m = 0,
double B = 1,
double v = 1,
double nu = 1,
double S0 = 1 )

◆ create_Data()

Rcpp::XPtr< Data > create_Data ( Rcpp::XPtr< utils_params > params,
Eigen::VectorXi initial_allocations )

◆ create_Datax()

Rcpp::XPtr< Datax > create_Datax ( Rcpp::XPtr< utils_params > params,
Rcpp::List modules_list,
Eigen::VectorXi initial_allocations )

◆ create_DP()

Rcpp::XPtr< DP > create_DP ( SEXP data_sexp,
Rcpp::XPtr< DP_params > params )

◆ create_DP_params()

Rcpp::XPtr< DP_params > create_DP_params ( double a)

◆ create_DPx()

Rcpp::XPtr< DPx > create_DPx ( SEXP data_sexp,
Rcpp::XPtr< DP_params > params,
Rcpp::List modules_list )

◆ create_Gamma_likelihood_distances()

Rcpp::XPtr< Gamma_likelihood_distances > create_Gamma_likelihood_distances ( SEXP data_sexp,
Rcpp::XPtr< Natarajan_params > params,
Rcpp::XPtr< utils_params > utils )

◆ create_GaussianMixtureModel_likelihood()

Rcpp::XPtr< GaussianMixtureModel_likelihood > create_GaussianMixtureModel_likelihood ( SEXP data_sexp,
Rcpp::XPtr< GaussianMixtureModel_params > params )

◆ create_GaussianMixtureModel_params()

Rcpp::XPtr< GaussianMixtureModel_params > create_GaussianMixtureModel_params ( double m0,
double kappa0,
double alpha0,
double beta0 )

◆ create_MALA()

Rcpp::XPtr< MALA > create_MALA ( Rcpp::XPtr< NGGP_params > params,
SEXP data_sexp,
bool use_V,
double proposal_sd,
bool tuning_enabled )

◆ create_Natarajan_likelihood()

Rcpp::XPtr< Natarajan_likelihood > create_Natarajan_likelihood ( SEXP data_sexp,
Rcpp::XPtr< Natarajan_params > params,
Rcpp::XPtr< utils_params > utils )

◆ create_Natarajan_likelihood_summaryStats()

Rcpp::XPtr< Natarajan_likelihood_summaryStats > create_Natarajan_likelihood_summaryStats ( SEXP data_sexp,
Rcpp::XPtr< Natarajan_params > params,
Rcpp::XPtr< utils_params > utils )

◆ create_Natarajan_params()

Rcpp::XPtr< Natarajan_params > create_Natarajan_params ( double delta1,
double alpha,
double beta,
double delta2,
double gamma,
double zeta )

◆ create_Neal3()

Rcpp::XPtr< Neal3 > create_Neal3 ( SEXP data_sexp,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process )

◆ create_Neal3ZDNAM()

Rcpp::XPtr< Neal3ZDNAM > create_Neal3ZDNAM ( SEXP data_sexp,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process )

◆ create_NGGP()

Rcpp::XPtr< NGGP > create_NGGP ( SEXP data_sexp,
Rcpp::XPtr< NGGP_params > params,
Rcpp::XPtr< U_sampler > u_sampler )

◆ create_NGGP_params()

Rcpp::XPtr< NGGP_params > create_NGGP_params ( double a,
double sigma,
double tau )

◆ create_NGGPx()

Rcpp::XPtr< NGGPx > create_NGGPx ( SEXP data_sexp,
Rcpp::XPtr< NGGP_params > params,
Rcpp::XPtr< U_sampler > u_sampler,
Rcpp::List modules_list )

◆ create_Null_likelihood()

Rcpp::XPtr< Null_likelihood > create_Null_likelihood ( SEXP data_sexp)

◆ create_Params()

Rcpp::XPtr< Params > create_Params ( double delta1,
double alpha,
double beta,
double delta2,
double gamma,
double zeta,
int BI,
int NI,
double a,
double sigma,
double tau,
Eigen::MatrixXd D )

◆ create_RWMH()

Rcpp::XPtr< RWMH > create_RWMH ( Rcpp::XPtr< NGGP_params > params,
SEXP data_sexp,
bool use_V,
double proposal_sd,
bool tuning_enabled )

◆ create_Spatial_cache()

Rcpp::XPtr< SpatialCache > create_Spatial_cache ( Eigen::VectorXi & initial_allocations,
Eigen::MatrixXi W )

◆ create_SpatialModule()

Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModule ( SEXP data_sexp,
Eigen::MatrixXi W,
double spatial_coefficient )

◆ create_SpatialModuleCache()

Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModuleCache ( SEXP data_sexp,
Rcpp::XPtr< SpatialCache > cache,
double spatial_coefficient )

◆ create_SpatialModuleContinuous()

Rcpp::XPtr< std::shared_ptr< Module > > create_SpatialModuleContinuous ( SEXP data_sexp,
Eigen::MatrixXd W,
double spatial_coefficient )

◆ create_SplitMerge()

Rcpp::XPtr< SplitMerge > create_SplitMerge ( SEXP data_sexp,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process,
bool shuffle )

◆ create_SplitMerge_LSS()

Rcpp::XPtr< SplitMerge_LSS > create_SplitMerge_LSS ( SEXP data_sexp,
Rcpp::XPtr< utils_params > params,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process,
bool shuffle )

◆ create_SplitMerge_LSS_SDDS()

Rcpp::XPtr< SplitMerge_LSS_SDDS > create_SplitMerge_LSS_SDDS ( SEXP data_sexp,
Rcpp::XPtr< utils_params > params,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process,
bool shuffle )

◆ create_SplitMerge_SAMS()

Rcpp::XPtr< SplitMerge_SAMS > create_SplitMerge_SAMS ( SEXP data_sexp,
Rcpp::XPtr< Likelihood > likelihood,
Rcpp::XPtr< Process > process,
bool shuffle )

◆ create_utils_params()

Rcpp::XPtr< utils_params > create_utils_params ( int BI,
int NI,
Eigen::MatrixXd D )

◆ data_get_allocations()

Eigen::VectorXi data_get_allocations ( SEXP data_sexp)

◆ data_get_K()

int data_get_K ( SEXP data_sexp)

◆ datax_set_allocation()

void datax_set_allocation ( Rcpp::XPtr< Datax > data,
int index,
int cluster )

◆ datax_set_allocations()

void datax_set_allocations ( Rcpp::XPtr< Datax > data,
Eigen::VectorXi new_allocations )

◆ DP_params_get_a()

double DP_params_get_a ( Rcpp::XPtr< DP_params > params)

◆ get_cluster_info_ptr()

ClusterInfo * get_cluster_info_ptr ( SEXP sexp)

◆ get_data_ptr()

Data * get_data_ptr ( SEXP sexp)

◆ lss_sdds_accepted_moves()

void lss_sdds_accepted_moves ( Rcpp::XPtr< SplitMerge_LSS_SDDS > sampler)

◆ NGGP_params_get_a()

double NGGP_params_get_a ( Rcpp::XPtr< NGGP_params > params)

◆ params_get_BI()

int params_get_BI ( Rcpp::XPtr< utils_params > params)

◆ params_get_name()

std::string params_get_name ( Rcpp::XPtr< Process_params > params)

◆ params_get_NI()

int params_get_NI ( Rcpp::XPtr< utils_params > params)

◆ params_get_sigma()

double params_get_sigma ( Rcpp::XPtr< NGGP_params > params)

◆ params_get_tau()

double params_get_tau ( Rcpp::XPtr< NGGP_params > params)

◆ process_update_params()

void process_update_params ( Rcpp::XPtr< Process > process)

◆ RCPP_MODULE()

RCPP_MODULE ( bnpclust_module )

◆ sampler_step()

void sampler_step ( Rcpp::XPtr< Sampler > sampler)

◆ u_sampler_get_acceptance_rate()

double u_sampler_get_acceptance_rate ( Rcpp::XPtr< U_sampler > u_sampler)

◆ u_sampler_get_U()

double u_sampler_get_U ( Rcpp::XPtr< U_sampler > u_sampler)