mirror of
http://43.156.76.180:8026/YuuMJ/EukPhylo.git
synced 2025-12-28 07:00:25 +08:00
38 lines
1.1 KiB
C++
38 lines
1.1 KiB
C++
// $Id: uniDistribution.h 2812 2007-11-25 10:32:11Z itaymay $
|
|
|
|
// version 2.00
|
|
// last modified 21 Mar 2004
|
|
#ifndef ___UNIFORM_DIST
|
|
#define ___UNIFORM_DIST
|
|
|
|
#include "distribution.h"
|
|
|
|
/***********************************************************
|
|
This represents a distribution of one line over the value 1:
|
|
|
|
|
________|________
|
|
1
|
|
_globalRate represents the rate for two joint genes.
|
|
************************************************************/
|
|
|
|
class uniDistribution : public distribution {
|
|
|
|
public:
|
|
uniDistribution() {_globalRate=1;}
|
|
virtual const int categories() const { return 1;}
|
|
virtual void change_number_of_categories(int in_number_of_categories);
|
|
virtual const MDOUBLE rates(const int i) const { return _globalRate;};
|
|
virtual const MDOUBLE ratesProb(const int i) const { return 1.0;};
|
|
virtual distribution* clone() const { return new uniDistribution(*this); }
|
|
virtual void setGlobalRate(const MDOUBLE x) {_globalRate = x;}
|
|
virtual MDOUBLE getGlobalRate() const{return _globalRate;}
|
|
virtual const MDOUBLE getCumulativeProb(const MDOUBLE x) const {
|
|
if (x<1.0) return 0.0; else return 1.0;
|
|
}
|
|
|
|
MDOUBLE _globalRate;
|
|
};
|
|
|
|
#endif
|
|
|