1 #ifndef PROBABILITYDISTRIBUTION2D_H
3 #define PROBABILITYDISTRIBUTION2D_H
21 { assert(pRng != 0); m_pRng = pRng; m_supportsMarginalsAndConditionals = supportsMarginalsAndConditionals; }
28 bool hasMarginalsAndConditionals()
const {
return m_supportsMarginalsAndConditionals; }
29 virtual double pickMarginalX()
const {
return std::numeric_limits<double>::quiet_NaN(); }
30 virtual double pickMarginalY()
const {
return std::numeric_limits<double>::quiet_NaN(); }
31 virtual double pickConditionalOnX(
double x)
const {
return std::numeric_limits<double>::quiet_NaN(); }
32 virtual double pickConditionalOnY(
double y)
const {
return std::numeric_limits<double>::quiet_NaN(); }
37 bool m_supportsMarginalsAndConditionals;
40 #endif // PROBABILITYDISTRIBUTION2D_H
virtual Point2D pickPoint() const =0
Pick a point according to a specific distrubution, specified in a subclass of ProbabilityDistribution...
This class allows you to generate random numbers, and uses the GNU Scientific Library for this...
Definition: gslrandomnumbergenerator.h:16
Abstract base class for 2D probability distribution implementations so that they can be used intercha...
Definition: probabilitydistribution2d.h:17