1 #ifndef GAUSSIAN_DISTRIBUTION_H 2 #define GAUSSIAN_DISTRIBUTION_H 4 #include "ProbabilityDistribution.h" 5 #include <KrisLibrary/math/gaussian.h> 14 virtual void GetParameters(
Vector& parameters);
15 virtual void SetParameters(
const Vector& parameters);
16 virtual Real PDF(Real value);
17 virtual Real CDF(Real value);
18 virtual Real Mean() {
return mean; }
19 virtual Real Variance() {
return var; }
20 virtual Real Skewness() {
return 0; }
21 virtual Real Kurtosis() {
return 0; }
22 virtual Real Sample() {
return RandGaussian(mean,Sqrt(var)); }
23 virtual bool CanSample()
const {
return true; }
33 virtual void GetParameters(
Vector& parameters);
34 virtual void SetParameters(
const Vector& parameters);
35 virtual int NumDimensions() {
return gaussian.numDims(); }
36 virtual Real PDF(
const Vector& value) {
return gaussian.probability(value); }
37 virtual Real CDF(
const Vector& value) { FatalError(
"Erf not done yet");
return 0; }
38 virtual void Mean(
Vector& mean) { mean = gaussian.mu; }
39 virtual void Covariance(
Matrix& var) { gaussian.getCovariance(var); }
40 virtual void Sample(
Vector& x) { gaussian.generate(x); }
41 virtual bool CanSample()
const {
return true; }
Definition: GaussianDistribution.h:10
Definition: ProbabilityDistribution.h:14
Contains all definitions in the statistics directory.
Definition: BernoulliDistribution.h:6
Definition: GaussianDistribution.h:28
Definition: ProbabilityDistribution.h:41
Defines a standard method for random floating-point number generation.