#ifndef DCHISQ_H_
#define DCHISQ_H_
#include <distributions/DistReal.h>
/**
* @short Chi square distribution
* <pre>
* x ~ dchisq(k)
* f(x|k) = 2^(-k/2) * x^(k/2 - 1) * exp(-x/2) / gamma(x/2); k > 0
* </pre>
*/
class DChisqr : public DistReal {
public:
DChisqr();
~DChisqr();
double d(double x, std::vector<SArray const *> const ¶meters,
bool give_log) const;
double p(double q, std::vector<SArray const *> const ¶meters, bool lower,
bool give_log) const;
double q(double p, std::vector<SArray const *> const ¶meters, bool lower,
bool log_p) const;
double r(std::vector<SArray const *> const ¶meters) const;
/**
* Checks that k > 0
*/
bool checkParameterValue(std::vector<SArray const *> const ¶meters) const;
double mean(std::vector<SArray const*> const ¶meters) const;
double var(std::vector<SArray const*> const ¶meters) const;
};
#endif /* DCHISQ_H_ */
syntax highlighted by Code2HTML, v. 0.9.1