#ifndef DBERN_H_ #define DBERN_H_ #include /** * @short Bernoulli distribution *
 * R ~ dbern(p)
 * f(r | p) = p^r * (1 - p)^(1 -r) ; r in 0:1
 * 
*/ class DBern : public DistDiscrete { public: DBern(); ~DBern(); double d(double x, std::vector const ¶meters, bool give_log) const; double p(double x, std::vector const ¶meters, bool lower, bool give_log) const; double q(double p, std::vector const ¶meters, bool lower, bool log_p) const; double r(std::vector const ¶meters) const; /** Checks that p is scalar */ bool checkParameterDim (std::vector const ¶meters) const; /** Checks that p lies in the open interval (0,1) */ bool checkParameterValue(std::vector const ¶meters) const; double mean(std::vector const ¶meters) const; double var(std::vector const ¶meters) const; }; #endif /* DBERN_H_ */