pub trait Distribution: Clone + Debug + Send + Sync {
type Value: RandomVariable;
type Condition: Clone + Debug + Send + Sync;
// Required method
fn p_kernel(
&self,
x: &Self::Value,
theta: &Self::Condition
) -> Result<f64, DistributionError>;
}Expand description
The trait which all structs of distribution must implement.
fk: The kernel part of probability density functionf. The kernel means that it doesn’t need normalization term of probability density function.
Required Associated Types§
Required Methods§
fn p_kernel(
&self,
x: &Self::Value,
theta: &Self::Condition
) -> Result<f64, DistributionError>
Implementors§
source§impl Distribution for Dirichlet
impl Distribution for Dirichlet
source§impl Distribution for Beta
impl Distribution for Beta
source§impl Distribution for Cauchy
impl Distribution for Cauchy
source§impl Distribution for Normal
impl Distribution for Normal
source§impl Distribution for StudentT
impl Distribution for StudentT
source§impl Distribution for FisherF
impl Distribution for FisherF
source§impl Distribution for InverseWishart
impl Distribution for InverseWishart
source§impl Distribution for NormalInverseWishart
impl Distribution for NormalInverseWishart
type Value = ExactEllipticalParams
type Condition = NormalInverseWishartParams
source§impl Distribution for ChiSquared
impl Distribution for ChiSquared
source§impl Distribution for Gamma
impl Distribution for Gamma
source§impl Distribution for ContinuousUniform
impl Distribution for ContinuousUniform
p returns the constant multiplied value so it can be used only for MCMC.