File: replacementModel.h

package info (click to toggle)
fastml 3.11-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 5,772 kB
  • sloc: cpp: 48,522; perl: 3,588; ansic: 819; makefile: 386; python: 83; sh: 55
file content (26 lines) | stat: -rw-r--r-- 912 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// $Id: replacementModel.h 962 2006-11-07 15:13:34Z privmane $

#ifndef ___REPLACEMENT_MODEL
#define ___REPLACEMENT_MODEL

#include "definitions.h"

class replacementModel{
public:
	virtual const MDOUBLE Pij_t(const int i, const int j, const MDOUBLE t) const = 0;
	virtual const MDOUBLE freq(const int i) const = 0;
	virtual const MDOUBLE dPij_dt(const int i, const int j, const MDOUBLE t) const =0;
	virtual const MDOUBLE d2Pij_dt2(const int i, const int j, const MDOUBLE t) const =0;
	virtual replacementModel* clone() const = 0;
	virtual ~replacementModel()=0;
	virtual	const int alphabetSize() const =0;

    //virtual const MDOUBLE Q(const int i, const int j, const MDOUBLE r = 1.0) const = 0;
	//note that we ask that sigma over i sigma over j!=i of p(i)Qij = 1;
	//this is beacuse we ask the [sigma over i sigma over j!=i p(i)*pij(d)]/d approaches
	//1 as d -> 0. (and l'hopital from here).
};


#endif