Eigen::VectorXd truncatedGaussianProposal(uint id, const Eigen::VectorXd& sample, double sigma, const Eigen::VectorXd& min, const Eigen::VectorXd& max) { return bouncyBounds(gaussianProposal(id, sample, sigma), min, max); }
Eigen::VectorXd GaussianCovProposal::boundedPropose(uint id, const Eigen::VectorXd& sample, double sigma) { return bouncyBounds(propose(id, sample, sigma), bounds_.min, bounds_.max); }