CMP++: Uncertainty Quantification & Bayesian Calibration
Loading...
Searching...
No Matches
cmp::distribution::UniformSphereDistribution Class Reference

#include <distribution.h>

Inheritance diagram for cmp::distribution::UniformSphereDistribution:
Collaboration diagram for cmp::distribution::UniformSphereDistribution:

Public Member Functions

 UniformSphereDistribution (size_t dim)
 
 UniformSphereDistribution ()=default
 
double logPDF (const Eigen::Ref< const Eigen::VectorXd > &x) const
 
Eigen::VectorXd sample (std::default_random_engine &rng)
 
Eigen::MatrixXd toCanonical (const Eigen::MatrixXd &x) const
 
Eigen::MatrixXd toPhysical (const Eigen::MatrixXd &z) const
 
size_t dimension () const
 
- Public Member Functions inherited from cmp::distribution::MultivariateDistribution< UniformSphereDistribution >
double logPDF (const Eigen::Ref< const Eigen::VectorXd > &x) const
 Computes the joint log probability density function (log-PDF) of the distribution.
 
Eigen::VectorXd sample (std::default_random_engine &rng)
 Draws a single vector sample from the joint distribution.
 
Eigen::MatrixXd toCanonical (const Eigen::MatrixXd &x) const
 Transforms physical samples to standard canonical space.
 
Eigen::MatrixXd fromCanonical (const Eigen::MatrixXd &x) const
 Transforms standard canonical samples back to physical space.
 
size_t dimension () const
 Returns the dimensionality of the multivariate space.
 

Private Attributes

std::normal_distribution< double > distN_ {0., 1.}
 Normal distribution helper for generating spherical coords.
 
std::size_t dim_ {1}
 Dimensionality of the sphere's embedding space.
 

Constructor & Destructor Documentation

◆ UniformSphereDistribution() [1/2]

cmp::distribution::UniformSphereDistribution::UniformSphereDistribution ( size_t  dim)
inline

◆ UniformSphereDistribution() [2/2]

cmp::distribution::UniformSphereDistribution::UniformSphereDistribution ( )
default

Member Function Documentation

◆ dimension()

size_t cmp::distribution::UniformSphereDistribution::dimension ( ) const
inline

◆ logPDF()

double cmp::distribution::UniformSphereDistribution::logPDF ( const Eigen::Ref< const Eigen::VectorXd > &  x) const
inline

◆ sample()

Eigen::VectorXd cmp::distribution::UniformSphereDistribution::sample ( std::default_random_engine &  rng)
inline

◆ toCanonical()

Eigen::MatrixXd cmp::distribution::UniformSphereDistribution::toCanonical ( const Eigen::MatrixXd &  x) const
inline

◆ toPhysical()

Eigen::MatrixXd cmp::distribution::UniformSphereDistribution::toPhysical ( const Eigen::MatrixXd &  z) const
inline

Member Data Documentation

◆ dim_

std::size_t cmp::distribution::UniformSphereDistribution::dim_ {1}
private

Dimensionality of the sphere's embedding space.

◆ distN_

std::normal_distribution<double> cmp::distribution::UniformSphereDistribution::distN_ {0., 1.}
private

Normal distribution helper for generating spherical coords.


The documentation for this class was generated from the following file: