40 #ifndef _DIRICHLETDISCRETEDISTRIBUTION_H_ 41 #define _DIRICHLETDISCRETEDISTRIBUTION_H_ 45 #include "../VectorTools.h" 46 #include "../ParameterAliasable.h" 47 #include "../../Exceptions.h" 48 #include "../../Io/OutputStream.h" 106 std::vector<BetaDiscreteDistribution* >
vpBDD_;
128 std::string
getName()
const {
return(
"Dirichlet");}
177 #endif // _DIRICHLETDISCRETEDISTRIBUTION_H_ ~DirichletDiscreteDistribution()
Interface for multiple discrete distribution objects.
This class allows to perform a correspondence analysis.
Vdouble rand() const
Draw a random vector from this distribution.
std::string getName() const
The parameter list object.
Vdouble getValueCategory(Vdouble &Vvalue) const
DirichletDiscreteDistribution * clone() const
Create a copy of this object and send a pointer to it.
VVdouble getCategories() const
A partial implementation of the Parametrizable interface.
std::vector< double > Vdouble
DirichletDiscreteDistribution(std::vector< size_t > vn, Vdouble valpha)
Build a new discretized Dirichlet distribution.
virtual double getProbability(Vdouble &category) const
void fireParameterChanged(const ParameterList ¶meters)
Notify the class when one or several parameters have changed.
Vdouble randC() const
Draw a random vector from the continuous version of this distribution.
std::vector< BetaDiscreteDistribution *> vpBDD_
std::vector< Vdouble > VVdouble
void discretize(Vdouble &valpha)
Discretized Dirichlet distribution. If the distribution is in n dimensions, the domain is the n-1 sim...
size_t getNumberOfCategories() const