Nemo  2.4.2
Simulate forward-in-time genetic evolution in a spatially explicit, individual-based stochastic simulator
ttquanti_epistasis.h
Go to the documentation of this file.
1 
27 #ifndef TTQUANTI_EPISTASIS_H
28 #define TTQUANTI_EPISTASIS_H
29 
30 #include "ttquanti.h"
31 #include "ttquanti_bitstring.h"
32 
33 // ------------------------------------------------------------------------------
37 // ------------------------------------------------------------------------------
39 
40 
41 public:
43 
45  TTQuanti_continuous(TT) {}
46 
48 
49  //TTtrait implementation:
50  virtual void init_sequence ();
52  virtual void show_up();
53 
54  //TTQuanti implementation:
55  virtual double get_additive_genotype (const unsigned int trait) const;
56  virtual double get_dominant_genotype (const unsigned int trait) const;
57  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
58  unsigned int to_locus, const TTQuanti *parent);
59  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
60  const TTQuanti *parent);
61  double get_epistatic_genotype (const vector<double>& genotypes) const;
62 };
63 // ------------------------------------------------------------------------------
67 // ------------------------------------------------------------------------------
69 
70 
71 public:
73 
75  TTQuanti_diallelic(TT) {}
76 
78 
79  //TTtrait implementation:
80  virtual void init_sequence ();
82  virtual void show_up();
83 
84  //TTQuanti implementation:
85  virtual double get_additive_genotype (const unsigned int trait) const;
86  virtual double get_dominant_genotype (const unsigned int trait) const;
87  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
88  unsigned int to_locus, const TTQuanti *parent);
89  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
90  const TTQuanti *parent);
91  double get_epistatic_genotype (const vector<double>& genotypes) const;
92 };
93 // ------------------------------------------------------------------------------
97 // ------------------------------------------------------------------------------
99 
100 public:
102 
104  TTQuanti_continuous(TT) {}
105 
107 
108  //TTtrait implementation:
109  virtual void init_sequence ();
111  virtual void show_up();
112 
113  //TTQuanti implementation:
114  virtual double get_additive_genotype (const unsigned int trait) const;
115  virtual double get_dominant_genotype (const unsigned int trait) const;
116  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
117  unsigned int to_locus, const TTQuanti *parent);
118  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
119  const TTQuanti *parent);
120  double get_epistatic_genotype (const vector<double>& genotypes) const;
121 };
122 // ------------------------------------------------------------------------------
126 // ------------------------------------------------------------------------------
128 
129 public:
131 
133  TTQuanti_diallelic(TT) {}
134 
136 
137  //TTtrait implementation:
138  virtual void init_sequence ();
140  virtual void show_up();
141 
142  //TTQuanti implementation:
143  virtual double get_additive_genotype (const unsigned int trait) const;
144  virtual double get_dominant_genotype (const unsigned int trait) const;
145  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
146  unsigned int to_locus, const TTQuanti *parent);
147  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
148  const TTQuanti *parent);
149 
150  double get_epistatic_genotype (const vector<double>& genotypes) const;
151 };
152 // ------------------------------------------------------------------------------
156 // ------------------------------------------------------------------------------
158 
159 public:
161 
164 
166 
167  //TTtrait implementation:
168  virtual void init_sequence ();
170  virtual void show_up();
171 
172  //TTQuanti implementation:
173  virtual double get_additive_genotype (const unsigned int trait) const;
174  virtual double get_dominant_genotype (const unsigned int trait) const;
175  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
176  unsigned int to_locus, const TTQuanti *parent);
177  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
178  const TTQuanti *parent);
179  double get_epistatic_genotype (const vector<double>& genotypes) const;
180 };
181 // ------------------------------------------------------------------------------
185 // ------------------------------------------------------------------------------
187 
188 public:
190 
193 
195 
196  //TTtrait implementation:
197  virtual void init_sequence ();
199  virtual void show_up();
200 
201  //TTQuanti implementation:
202  virtual double get_additive_genotype (const unsigned int trait) const;
203  virtual double get_dominant_genotype (const unsigned int trait) const;
204  virtual void copy_sequence_block (sex_t SEX, unsigned int chromosome, unsigned int from_locus,
205  unsigned int to_locus, const TTQuanti *parent);
206  virtual void copy_sequence_1locus (sex_t SEX, unsigned int chromosome, unsigned int at,
207  const TTQuanti *parent);
208  double get_epistatic_genotype (const vector<double>& genotypes) const;
209 };
210 
211 
212 #endif
213 
TTQuanti_continuous_full_pleio : universal pleiotropy.
Definition: ttquanti_epistasis.h:38
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:138
virtual TTQuanti_continuous_full_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:51
TTQuanti_continuous_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:42
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:109
virtual ~TTQuanti_continuous_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:47
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:81
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:126
virtual void show_up()
Definition: ttquanti_epistasis.cc:215
TTQuanti_continuous_full_pleio_epistasis(const TTQuanti_continuous_full_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:44
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:43
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:63
TTQuanti_continuous_no_pleio : multiple non-pleiotropic traits with epistasis.
Definition: ttquanti_epistasis.h:98
virtual TTQuanti_continuous_no_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:110
TTQuanti_continuous_no_pleio_epistasis(const TTQuanti_continuous_no_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:103
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:434
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:451
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:471
virtual void show_up()
Definition: ttquanti_epistasis.cc:576
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:515
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:499
virtual ~TTQuanti_continuous_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:106
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:525
TTQuanti_continuous_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:101
TTQuanti_continuous.
Definition: ttquanti.h:112
TTQuanti_diallelic_bitstring_full_pleio_epistasis : pleiotropic di-allelic bitstring with epistasis.
Definition: ttquanti_epistasis.h:186
virtual TTQuanti_diallelic_bitstring_full_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:198
virtual ~TTQuanti_diallelic_bitstring_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:194
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:969
TTQuanti_diallelic_bitstring_full_pleio_epistasis(const TTQuanti_diallelic_bitstring_full_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:191
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:1009
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:987
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:1065
virtual void show_up()
Definition: ttquanti_epistasis.cc:1104
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:1050
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:1033
TTQuanti_diallelic_bitstring_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:189
TTQuanti_diallelic_bitstring_no_pleio_epistasis : non-pleiotropic di-allelic bitstring with epistasis...
Definition: ttquanti_epistasis.h:157
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:799
TTQuanti_diallelic_bitstring_no_pleio_epistasis(const TTQuanti_diallelic_bitstring_no_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:162
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:876
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:863
TTQuanti_diallelic_bitstring_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:160
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:886
virtual ~TTQuanti_diallelic_bitstring_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:165
virtual void show_up()
Definition: ttquanti_epistasis.cc:924
virtual TTQuanti_diallelic_bitstring_no_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:169
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:817
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:840
TTQuanti_diallelic_bitstring.
Definition: ttquanti_bitstring.h:39
TTQuanti_diallelic_full_pleio : pleiotropic di-allelic loci, max PD = 2.
Definition: ttquanti_epistasis.h:68
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:350
virtual void show_up()
Definition: ttquanti_epistasis.cc:395
virtual ~TTQuanti_diallelic_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:77
TTQuanti_diallelic_full_pleio_epistasis()
Definition: ttquanti_epistasis.h:72
TTQuanti_diallelic_full_pleio_epistasis(const TTQuanti_diallelic_full_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:74
virtual TTQuanti_diallelic_full_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:81
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:322
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:252
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:338
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:294
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:271
TTQuanti_diallelic_no_pleio_epistasis : single or multiple non-pleiotropic traits,...
Definition: ttquanti_epistasis.h:127
TTQuanti_diallelic_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:130
virtual ~TTQuanti_diallelic_no_pleio_epistasis()
Definition: ttquanti_epistasis.h:135
virtual double get_dominant_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:638
virtual void init_sequence()
Definition: ttquanti_epistasis.cc:711
virtual void show_up()
Definition: ttquanti_epistasis.cc:754
virtual double get_additive_genotype(const unsigned int trait) const
Definition: ttquanti_epistasis.cc:619
double get_epistatic_genotype(const vector< double > &genotypes) const
Definition: ttquanti_epistasis.cc:662
TTQuanti_diallelic_no_pleio_epistasis(const TTQuanti_diallelic_no_pleio_epistasis &TT)
Definition: ttquanti_epistasis.h:132
virtual TTQuanti_diallelic_no_pleio_epistasis * clone()
Definition: ttquanti_epistasis.h:139
virtual void copy_sequence_block(sex_t SEX, unsigned int chromosome, unsigned int from_locus, unsigned int to_locus, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:685
virtual void copy_sequence_1locus(sex_t SEX, unsigned int chromosome, unsigned int at, const TTQuanti *parent)
Definition: ttquanti_epistasis.cc:701
TTQuanti_diallelic.
Definition: ttquanti.h:279
TTQuanti.
Definition: ttquanti.h:59
sex_t
Sex types, males are always 0 and females 1!!
Definition: types.h:34

Generated for Nemo v2.4.2 by  doxygen 1.9.1

Catalogued on GSR