25 const double lgamma_delta1 = lgamma(params.delta1);
26 const double log_beta_alpha = log(params.beta) * params.alpha - lgamma(params.alpha);
27 const double lgamma_delta2 = lgamma(params.delta2);
28 const double log_gamma_zeta = log(params.gamma) * params.zeta - lgamma(params.zeta);
40 double compute_cohesion(
int point_index,
int cluster_index,
41 const Eigen::VectorXi cls_ass_k,
int n_k)
const;
53 double compute_repulsion(
int point_index,
int cluster_index,
54 const Eigen::VectorXi cls_ass_k,
int n_k)
const;
101 const Eigen::VectorXi& cls_ass_k)
const;
Data structure for managing point distances and cluster allocations.
Parameter management for Bayesian nonparametric MCMC models.
Manages distance matrices and cluster allocations for points.
Definition Data.hpp:26
double point_loglikelihood_cond(int point_index, int cluster_index, const Eigen::VectorXi &cls_ass_k) const
Calculates the conditional log-likelihood with explicit cluster assignments.
Likelihood(const Data &data, const Params ¶m)
Constructs a Likelihood object.
Definition Likelihood.hpp:62
double point_loglikelihood_cond(int point_index, int cluster_index) const
Calculates the conditional log-likelihood of assigning a point to a cluster.
Definition Likelihood.cpp:102
double cluster_loglikelihood(int cluster_index) const
Calculates the full log-likelihood of a cluster.
Definition Likelihood.cpp:14
Structure containing all parameters needed for the NGGP (Normalized Generalized Gamma Process) and DP...
Definition Params.hpp:35