1 #ifndef UNIFORM_PROBABILITY_DISTRIBUTION_H 2 #define UNIFORM_PROBABILITY_DISTRIBUTION_H 4 #include "ProbabilityDistribution.h" 13 virtual void GetParameters(
Vector& parameters);
14 virtual void SetParameters(
const Vector& parameters);
15 virtual Real PDF(Real value);
16 virtual Real CDF(Real value);
17 virtual Real Minimum() {
return a; }
18 virtual Real Maximum() {
return b; }
19 virtual Real Mean() {
return Half*(a+b); }
20 virtual Real Variance() {
return Sqr(b-a)/12.0; }
21 virtual Real Skewness() {
return 0; }
22 virtual Real Kurtosis() {
return -6.0/5.0; }
23 virtual Real Sample() {
return Rand(a,b); }
24 virtual bool CanSample()
const {
return true; }
34 virtual void GetParameters(
Vector& parameters);
35 virtual void SetParameters(
const Vector& parameters);
36 virtual int NumDimensions() {
return bmin.n; }
37 virtual Real PDF(
const Vector& value);
38 virtual Real CDF(
const Vector& value);
39 virtual void Minimum(
Vector& _bmin) { _bmin=bmin; }
40 virtual void Maximum(
Vector& _bmax) { _bmax=bmax; }
41 virtual void Mean(
Vector& mean) { mean.add(bmin,bmax); mean.inplaceMul(Half); }
42 virtual void Covariance(
Matrix& var);
43 virtual void Sample(
Vector& x);
44 virtual bool CanSample()
const {
return true; }
Definition: UniformDistribution.h:29
Definition: ProbabilityDistribution.h:14
Contains all definitions in the statistics directory.
Definition: BernoulliDistribution.h:6
Real Rand()
Generates a random Real uniformly in [0,1].
Definition: math/random.h:36
Definition: ProbabilityDistribution.h:41
Defines a standard method for random floating-point number generation.