source: branches/items/GDE/TREEPUZZLE/src/model2.c

Last change on this file was 191, checked in by jobb, 24 years ago

treepuzzle

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 39.4 KB
Line 
1/*
2 * model2.c
3 *
4 *
5 * Part of TREE-PUZZLE 5.0 (June 2000)
6 *
7 * (c) 1999-2000 by Heiko A. Schmidt, Korbinian Strimmer,
8 *                  M. Vingron, and Arndt von Haeseler
9 * (c) 1995-1999 by Korbinian Strimmer and Arndt von Haeseler
10 *
11 * All parts of the source except where indicated are distributed under
12 * the GNU public licence.  See http://www.opensource.org for details.
13 */
14
15
16/* definitions */
17#define EXTERN extern
18
19/* prototypes */
20#include <stdio.h>
21#include "util.h"
22#include "ml.h"
23
24
25void jttdata(dmatrix q, double *f)
26{
27        /*
28         * JTT model for amino acid evolution
29         * D.T. Jones, W.R. Taylor, and J.M. Thornton
30         * "The rapid generation of mutation data matrices from protein sequences"
31         * CABIOS  vol. 8 no. 3 1992 pp. 275-282
32         */
33
34        q[0][1]=3.1628651460584e+00;    q[0][2]=3.2804935927860e+00;
35        q[0][3]=4.8477237048666e+00;    q[0][4]=3.4612244897959e+00;
36        q[0][5]=3.3130910900946e+00;    q[0][6]=6.3199473337722e+00;
37        q[0][7]=1.0440154440154e+01;    q[0][8]=1.3061224489796e+00;
38        q[0][9]=2.1726844583987e+00;    q[0][10]=1.8443597219107e+00;
39        q[0][11]=2.2137668626773e+00;   q[0][12]=2.7210884353741e+00;
40        q[0][13]=8.3265306122449e-01;   q[0][14]=1.1537414965986e+01;
41        q[0][15]=2.2838213546288e+01;   q[0][16]=2.7007955724663e+01;
42        q[0][17]=5.1311953352770e-01;   q[0][18]=8.3673469387755e-01;
43        q[0][19]=1.7474335188621e+01; 
44       
45        q[1][2]=2.6598918637222e+00;    q[1][3]=9.1014867485456e-01;
46        q[1][4]=6.1624649859944e+00;    q[1][5]=1.8036482885837e+01;
47        q[1][6]=1.8924731182796e+00;    q[1][7]=8.1810886516769e+00;
48        q[1][8]=1.9119717452198e+01;    q[1][9]=1.4410687351864e+00;
49        q[1][10]=2.2211961707760e+00;   q[1][11]=3.9239234676922e+01;
50        q[1][12]=2.5060690943044e+00;   q[1][13]=3.9439775910364e-01;
51        q[1][14]=4.1953094963476e+00;   q[1][15]=5.9016766126741e+00;
52        q[1][16]=3.8437069743152e+00;   q[1][17]=7.6766706682673e+00;
53        q[1][18]=1.4173669467787e+00;   q[1][19]=1.0308123249300e+00;
54
55        q[2][3]=3.2226935854843e+01;    q[2][4]=1.8710963455150e+00;
56        q[2][5]=4.5351268130622e+00;    q[2][6]=3.3951344979102e+00;
57        q[2][7]=4.5987249708180e+00;    q[2][8]=2.3693774375271e+01;
58        q[2][9]=2.9235880398671e+00;    q[2][10]=8.0960899565551e-01;
59        q[2][11]=1.5024269384537e+01;   q[2][12]=1.9003322259136e+00;
60        q[2][13]=4.3853820598007e-01;   q[2][14]=7.1083317047749e-01;
61        q[2][15]=2.9456208772690e+01;   q[2][16]=1.3735908553410e+01;
62        q[2][17]=1.6706217370669e-01;   q[2][18]=4.1661129568106e+00;
63        q[2][19]=9.7452934662237e-01; 
64       
65        q[3][4]=6.2857142857143e-01;    q[3][5]=3.0662020905923e+00;
66        q[3][6]=4.5450549450549e+01;    q[3][7]=7.5402435402435e+00;
67        q[3][8]=6.0544672718586e+00;    q[3][9]=6.8808114961961e-01;
68        q[3][10]=3.6130902064968e-01;   q[3][11]=1.6718197057180e+00;
69        q[3][12]=1.0879120879121e+00;   q[3][13]=1.9340659340659e-01;
70        q[3][14]=7.3949579831933e-01;   q[3][15]=3.4196528109572e+00;
71        q[3][16]=2.4749487800335e+00;   q[3][17]=3.4536891679749e-01;
72        q[3][18]=2.6895604395604e+00;   q[3][19]=1.8608058608059e+00;
73
74        q[4][5]=5.5191637630662e-01;    q[4][6]=3.2442396313364e-01;
75        q[4][7]=3.3297297297297e+00;    q[4][8]=4.3726708074534e+00;
76        q[4][9]=9.1868131868132e-01;    q[4][10]=9.9466248037677e-01;
77        q[4][11]=2.9830508474576e-01;   q[4][12]=2.4095238095238e+00;
78        q[4][13]=4.1485714285714e+00;   q[4][14]=7.3949579831933e-01;
79        q[4][15]=1.2862939958592e+01;   q[4][16]=2.8125907990315e+00;
80        q[4][17]=6.8244897959184e+00;   q[4][18]=1.2885714285714e+01;
81        q[4][19]=3.7714285714286e+00; 
82       
83        q[5][6]=2.0316061593796e+01;    q[5][7]=1.3922214897825e+00;
84        q[5][8]=3.3861536130889e+01;    q[5][9]=4.7172339855267e-01;
85        q[5][10]=4.2320327755868e+00;   q[5][11]=1.7835941652395e+01;
86        q[5][12]=2.6573751451800e+00;   q[5][13]=2.7595818815331e-01;
87        q[5][14]=9.4992143198743e+00;   q[5][15]=3.2350653941322e+00;
88        q[5][16]=3.0973838067678e+00;   q[5][17]=1.0512692882031e+00;
89        q[5][18]=1.5331010452962e+00;   q[5][19]=1.0778164924506e+00;
90
91        q[6][7]=6.6857641051189e+00;    q[6][8]=1.4458024443999e+00;
92        q[6][9]=6.7068415455512e-01;    q[6][10]=5.7932850559579e-01;
93        q[6][11]=1.0365070686558e+01;   q[6][12]=1.0138248847926e+00;
94        q[6][13]=2.6359447004608e-01;   q[6][14]=1.1291226167887e+00;
95        q[6][15]=1.8337006611901e+00;   q[6][16]=1.9520424900414e+00;
96        q[6][17]=6.9519420671494e-01;   q[6][18]=3.8018433179723e-01;
97        q[6][19]=2.7772657450077e+00; 
98       
99        q[7][8]=1.2113479939567e+00;    q[7][9]=3.2670032670033e-01;
100        q[7][10]=4.1817641817642e-01;   q[7][11]=1.6354950592239e+00;
101        q[7][12]=7.6447876447876e-01;   q[7][13]=3.0579150579151e-01;
102        q[7][14]=1.2391551215081e+00;   q[7][15]=1.1138492529797e+01;
103        q[7][16]=1.8888816176952e+00;   q[7][17]=3.3491450634308e+00;
104        q[7][18]=3.1853281853282e-01;   q[7][19]=2.8416988416988e+00;
105
106        q[8][9]=1.0931677018634e+00;    q[8][10]=3.2194389461470e+00;
107        q[8][11]=3.1498052426571e+00;   q[8][12]=1.9130434782609e+00;
108        q[8][13]=2.7329192546584e+00;   q[8][14]=6.7304834977469e+00;
109        q[8][15]=4.3726708074534e+00;   q[8][16]=2.8162964522581e+00;
110        q[8][17]=7.8083407275954e-01;   q[8][18]=3.5118012422360e+01;
111        q[8][19]=7.2877846790890e-01; 
112       
113        q[9][10]=1.4069798333535e+01;   q[9][11]=1.2292791953809e+00;
114        q[9][12]=2.8366300366300e+01;   q[9][13]=4.7384615384615e+00;
115        q[9][14]=5.8780435251023e-01;   q[9][15]=2.4105749323141e+00;
116        q[9][16]=1.5243062022723e+01;   q[9][17]=8.2888540031397e-01;
117        q[9][18]=1.8434065934066e+00;   q[9][19]=5.7699633699634e+01;
118
119        q[10][11]=8.8039805231089e-01;  q[10][12]=2.2425954997384e+01;
120        q[10][13]=1.5099529042386e+01;  q[10][14]=6.2626896912611e+00;
121        q[10][15]=3.4917298022888e+00;  q[10][16]=1.6109411169944e+00;
122        q[10][17]=3.2366001345593e+00;  q[10][18]=1.4505494505495e+00;
123        q[10][19]=1.0557823129252e+01; 
124       
125        q[11][12]=3.6577885391445e+00;  q[11][13]=1.4915254237288e-01;
126        q[11][14]=1.2868062479229e+00;  q[11][15]=2.8162964522581e+00;
127        q[11][16]=5.7494151926786e+00;  q[11][17]=5.4790729851263e-01;
128        q[11][18]=5.3268765133172e-01;  q[11][19]=7.4899112187248e-01;
129
130        q[12][13]=2.5666666666667e+00;  q[12][14]=9.4491129785247e-01;
131        q[12][15]=1.6397515527950e+00;  q[12][16]=1.2180790960452e+01;
132        q[12][17]=1.1972789115646e+00;  q[12][18]=1.1130952380952e+00;
133        q[12][19]=1.7746031746032e+01; 
134       
135        q[13][14]=8.8739495798319e-01;  q[13][15]=5.6298136645963e+00;
136        q[13][16]=8.3099273607748e-01;  q[13][17]=3.3224489795918e+00;
137        q[13][18]=3.3392857142857e+01;  q[13][19]=3.6000000000000e+00;
138
139        q[14][15]=1.6261762676085e+01;  q[14][16]=6.8852490148602e+00;
140        q[14][17]=4.2256902761104e-01;  q[14][18]=6.7787114845938e-01;
141        q[14][19]=1.2549019607843e+00; 
142       
143        q[15][16]=2.7891216619293e+01;  q[15][17]=1.8740017746229e+00;
144        q[15][18]=3.7349896480331e+00;  q[15][19]=2.4182194616977e+00;
145
146        q[16][17]=4.8702870978900e-01;  q[16][18]=1.1985472154964e+00;
147        q[16][19]=6.7925746569814e+00; 
148       
149        q[17][18]=4.6020408163265e+00;  q[17][19]=1.4693877551020e+00;
150
151        q[18][19]=1.0000000000000e+00; 
152
153
154        f[0] = 0.077; f[1] = 0.051; f[2] = 0.043; f[3] = 0.052;
155        f[4] = 0.02; f[5] = 0.041; f[6] = 0.062; f[7] = 0.074;
156        f[8] = 0.023; f[9] = 0.052; f[10] = 0.091; f[11] = 0.059;
157        f[12] = 0.024; f[13] = 0.04; f[14] = 0.051; f[15] = 0.069;
158        f[16] = 0.059; f[17] = 0.014; f[18] = 0.032; f[19] = 0.066;
159}
160
161void dyhfdata(dmatrix q, double *f)
162{
163        /*
164         * Dayhoff model for amino acid evolution
165         * Dayhoff, M.O., Schwartz, R.M., Orcutt, B.C. (1978)
166         * "A model of evolutionary change in proteins."
167         * Dayhoff, M.O. (ed.) Atlas of Protein Sequence Structur., Vol5, Suppl. 3,
168         * National Biomedical Research Foundation, Washington DC, pp. 345-352.
169         */
170
171        q[0][1]=9.6472567159749e-01;    q[0][2]=3.5927991886410e+00;
172        q[0][3]=4.3200552414656e+00;    q[0][4]=1.3184584178499e+00;
173        q[0][5]=3.2267534963169e+00;    q[0][6]=7.0141987829615e+00;
174        q[0][7]=8.5773867857875e+00;    q[0][8]=8.1434196396611e-01;
175        q[0][9]=2.3518447453539e+00;    q[0][10]=1.4735711728911e+00;
176        q[0][11]=9.3940162271805e-01;   q[0][12]=2.5490196078431e+00;
177        q[0][13]=6.5922920892495e-01;   q[0][14]=8.9189834148670e+00;
178        q[0][15]=1.4540712836859e+01;   q[0][16]=1.3411904595370e+01;
179        q[0][17]=3.8517964118027e-02;   q[0][18]=8.7897227856660e-01;
180        q[0][19]=7.4036511156187e+00; 
181       
182        q[1][2]=1.1890243902439e+00;    q[1][3]=5.9525626545377e-02;
183        q[1][4]=8.4778922655537e-01;    q[1][5]=8.8348561504191e+00;
184        q[1][6]=5.5954088952654e-02;    q[1][7]=3.1434881434075e-01;
185        q[1][8]=8.4753987678285e+00;    q[1][9]=2.2684090115941e+00;
186        q[1][10]=5.5954088952654e-01;   q[1][11]=1.6681312769010e+01;
187        q[1][12]=3.1707317073171e+00;   q[1][13]=4.8959827833572e-01;
188        q[1][14]=3.6754156468900e+00;   q[1][15]=5.4755072760812e+00;
189        q[1][16]=9.6472567159749e-01;   q[1][17]=7.5538020086083e+00;
190        q[1][18]=2.7977044476327e-01;   q[1][19]=8.6083213773314e-01;
191
192        q[2][3]=3.2459324155194e+01;    q[2][4]=7.3852625416383e-02;
193        q[2][5]=3.7732198142415e+00;    q[2][6]=5.3911764705882e+00;
194        q[2][7]=5.0264375413087e+00;    q[2][8]=1.9061418685121e+01;
195        q[2][9]=2.7901430842607e+00;    q[2][10]=1.2482698961938e+00;
196        q[2][11]=1.1542279411765e+01;   q[2][12]=1.9117647058824e-01;
197        q[2][13]=5.0183823529412e-01;   q[2][14]=1.5181660899654e+00;
198        q[2][15]=1.7697478991597e+01;   q[2][16]=8.3557302231237e+00;
199        q[2][17]=8.6029411764706e-01;   q[2][18]=3.4411764705882e+00;
200        q[2][19]=5.7352941176471e-01; 
201       
202        q[3][4]=2.5534152404601e-02;    q[3][5]=4.8811013767209e+00;
203        q[3][6]=4.0561952440551e+01;    q[3][7]=4.4423506911730e+00;
204        q[3][8]=3.0865788117500e+00;    q[3][9]=8.5749078239692e-01;
205        q[3][10]=2.5926985518518e-02;   q[3][11]=2.5930851063830e+00;
206        q[3][12]=1.1667143483333e-01;   q[3][13]=1.2963492759259e-02;
207        q[3][14]=4.7853935065891e-01;   q[3][15]=3.4167709637046e+00;
208        q[3][16]=2.3984722282163e+00;   q[3][17]=3.2408731898147e-02;
209        q[3][18]=8.1351689612015e-02;   q[3][19]=6.3829787234043e-01;
210
211        q[4][5]=2.1864264103535e-02;    q[4][6]=1.4770525083277e-02;
212        q[4][7]=3.9055458751427e-01;    q[4][8]=1.0223340673168e+00;
213        q[4][9]=1.5970515970516e+00;    q[4][10]=3.9098448749850e-02;
214        q[4][11]=8.0776309049169e-03;   q[4][12]=1.4155086538140e-01;
215        q[4][13]=8.6898395721925e-02;   q[4][14]=6.8155604487784e-01;
216        q[4][15]=5.8097784568373e+00;   q[4][16]=5.9929928084086e-01;
217        q[4][17]=3.4759358288770e-01;   q[4][18]=3.4759358288770e+00;
218        q[4][19]=1.7647058823529e+00; 
219       
220        q[5][6]=2.5476780185759e+01;    q[5][7]=1.0174974779977e+00;
221        q[5][8]=2.1573939173192e+01;    q[5][9]=6.5266504894988e-01;
222        q[5][10]=2.6634492806410e+00;   q[5][11]=5.5466331269350e+00;
223        q[5][12]=4.0247678018576e+00;   q[5][13]=1.8038017885416e-02;
224        q[5][14]=5.5044618466582e+00;   q[5][15]=2.0267580716497e+00;
225        q[5][16]=1.9256432155439e+00;   q[5][17]=9.6202762055552e-02;
226        q[5][18]=1.0061919504644e-01;   q[5][19]=1.2538699690402e+00;
227
228        q[6][7]=2.8869795109055e+00;    q[6][8]=1.5519031141869e+00;
229        q[6][9]=2.1701112877583e+00;    q[6][10]=4.0484429065744e-01;
230        q[6][11]=2.9823529411765e+00;   q[6][12]=1.0705882352941e+00;
231        q[6][13]=1.9801735189768e-02;   q[6][14]=1.7993079584775e+00;
232        q[6][15]=2.8184873949580e+00;   q[6][16]=1.2261663286004e+00;
233        q[6][17]=7.3114099162219e-02;   q[6][18]=7.6470588235294e-01;
234        q[6][19]=1.3058823529412e+00; 
235       
236        q[7][8]=3.7906768788150e-01;    q[7][9]=2.3128004846840e-02;
237        q[7][10]=2.5776602775942e-01;   q[7][11]=9.6662260409782e-01;
238        q[7][12]=6.0145406477198e-01;   q[7][13]=5.4775280898876e-01;
239        q[7][14]=1.2382877804129e+00;   q[7][15]=8.2853366065527e+00;
240        q[7][16]=1.1110604644803e+00;   q[7][17]=1.2888301387971e-01;
241        q[7][18]=1.7114723586662e-02;   q[7][19]=1.9233311302049e+00;
242
243        q[8][9]=2.7354343963341e-01;    q[8][10]=1.5876246692449e+00;
244        q[8][11]=9.6993944636678e-01;   q[8][12]=1.2544085640577e-01;
245        q[8][13]=1.6868512110727e+00;   q[8][14]=3.3075513942601e+00;
246        q[8][15]=1.2530894710826e+00;   q[8][16]=8.1434196396611e-01;
247        q[8][17]=1.0121107266436e+00;   q[8][18]=4.4982698961938e+00;
248        q[8][19]=1.5570934256055e+00; 
249       
250        q[9][10]=9.2275320303002e+00;   q[9][11]=1.6663354531002e+00;
251        q[9][12]=1.1780604133545e+01;   q[9][13]=6.9753577106518e+00;
252        q[9][14]=4.2551201720752e-01;   q[9][15]=8.8575970928912e-01;
253        q[9][16]=6.8951811852420e+00;   q[9][17]=9.8802836705702e-02;
254        q[9][18]=1.3434022257552e+00;   q[9][19]=3.1526232114467e+01;
255
256        q[10][11]=6.5787197231834e-01;  q[10][12]=1.8622837370242e+01;
257        q[10][13]=5.6340830449827e+00;  q[10][14]=1.1377976796255e+00;
258        q[10][15]=6.1690558576372e-01;  q[10][16]=1.2098794893211e+00;
259        q[10][17]=1.7543252595156e+00;  q[10][18]=1.0346020761246e+00;
260        q[10][19]=6.2906574394464e+00; 
261       
262        q[11][12]=8.6029411764706e+00;  q[11][13]=6.6640454965565e-03;
263        q[11][14]=1.2089100346021e+00;  q[11][15]=3.4411764705882e+00;
264        q[11][16]=4.9442190669371e+00;  q[11][17]=3.4272233982290e-02;
265        q[11][18]=4.7794117647059e-01;  q[11][19]=3.7500000000000e-01;
266
267        q[12][13]=3.2500000000000e+00;  q[12][14]=5.9976931949250e-01;
268        q[12][15]=2.1848739495798e+00;  q[12][16]=3.6916835699797e+00;
269        q[12][17]=1.6247577591604e-01;  q[12][18]=1.1508700794053e-01;
270        q[12][19]=9.0588235294118e+00; 
271       
272        q[13][14]=3.9359861591695e-01;  q[13][15]=1.6386554621849e+00;
273        q[13][16]=4.9442190669371e-01;  q[13][17]=2.8676470588235e+00;
274        q[13][18]=2.4852941176471e+01;  q[13][19]=4.4117647058824e-01;
275
276        q[14][15]=8.6431043005437e+00;  q[14][16]=2.8308077795013e+00;
277        q[14][17]=3.5840244687362e-02;  q[14][18]=4.3804743506776e-02;
278        q[14][19]=1.7301038062284e+00; 
279       
280        q[15][16]=1.9663865546218e+01;  q[15][17]=2.7857142857143e+00;
281        q[15][18]=1.2016806722689e+00;  q[15][19]=1.0840336134454e+00;
282
283        q[16][17]=4.2019597219666e-02;  q[16][18]=1.5162271805274e+00;
284        q[16][19]=5.6592292089249e+00; 
285       
286        q[17][18]=2.2941176470588e+00;  q[17][19]=1.2654363316538e-01;
287
288        q[18][19]=1.0000000000000e+00; 
289
290
291        f[0] = 0.087; f[1] = 0.041; f[2] = 0.040; f[3] = 0.047;
292        f[4] = 0.033; f[5] = 0.038; f[6] = 0.05; f[7] = 0.089;
293        f[8] = 0.034; f[9] = 0.037; f[10] = 0.085; f[11] = 0.08;
294        f[12] = 0.015; f[13] = 0.04; f[14] = 0.051; f[15] = 0.07;
295        f[16] = 0.058; f[17] = 0.01; f[18] = 0.03; f[19] = 0.065;
296}
297
298void mtrevdata(dmatrix q, double *f)
299{       
300        /*
301         * mtREV24 model of amino acid evolution
302         * (complete sequence data of mtDNA from 24 vertebrate species)
303         * Adachi, J. and Hasegawa, M. (1996)
304         */
305
306        q[0][1]=1.2199217606346e+01;    q[0][2]=1.4182139942122e+01;
307        q[0][3]=9.2985091873208e+00;    q[0][4]=3.1542792981957e+01;
308        q[0][5]=1.0025852846688e+00;    q[0][6]=5.1418866803338e+00;
309        q[0][7]=6.3531246495131e+01;    q[0][8]=7.3137132861715e+00;
310        q[0][9]=5.0782382656186e+01;    q[0][10]=1.3399741808481e+01;
311        q[0][11]=4.4021672780560e+00;   q[0][12]=7.4673480520104e+01;
312        q[0][13]=3.3513021631978e+00;   q[0][14]=2.8582502221773e+01;
313        q[0][15]=2.0413623195312e+02;   q[0][16]=2.5301305153906e+02;
314        q[0][17]=1.0000000000000e+00;   q[0][18]=3.4084158197615e+00;
315        q[0][19]=1.0266468401249e+02; 
316       
317        q[1][2]=6.9661274444534e+00;    q[1][3]=1.0000000000000e+00;
318        q[1][4]=5.4384584796568e+01;    q[1][5]=1.1631134513343e+02;
319        q[1][6]=1.0000000000000e+00;    q[1][7]=1.2122831341194e+01;
320        q[1][8]=8.6961067087353e+01;    q[1][9]=1.0000000000000e+00;
321        q[1][10]=8.1976829394538e+00;   q[1][11]=7.4423215395318e+01;
322        q[1][12]=1.0000000000000e+00;   q[1][13]=2.4659158338099e+00;
323        q[1][14]=1.2439947713615e+01;   q[1][15]=3.1791814866372e+00;
324        q[1][16]=1.0935327216119e+00;   q[1][17]=1.1550775790126e+01;
325        q[1][18]=1.0000000000000e+00;   q[1][19]=4.0211417480338e+00;
326
327        q[2][3]=4.1809325468160e+02;    q[2][4]=3.1020979842967e+01;
328        q[2][5]=9.1349622725361e+01;    q[2][6]=3.3185663516310e+01;
329        q[2][7]=2.8052324651124e+01;    q[2][8]=2.6112087577885e+02;
330        q[2][9]=1.4261453863336e+01;    q[2][10]=7.9775653461977e+00;
331        q[2][11]=3.2036829276162e+02;   q[2][12]=3.4424354918739e+01;
332        q[2][13]=7.9996445145608e+00;   q[2][14]=3.8586541461044e+01;
333        q[2][15]=2.6020426225852e+02;   q[2][16]=1.2550758780474e+02;
334        q[2][17]=5.6207759736659e+00;   q[2][18]=1.0071406219571e+02;
335        q[2][19]=1.0000000000000e+00; 
336       
337        q[3][4]=1.0000000000000e+00;    q[3][5]=2.9097352675564e+01;
338        q[3][6]=3.0713149855302e+02;    q[3][7]=2.9877072751897e+01;
339        q[3][8]=5.9995408885817e+01;    q[3][9]=2.2827096245105e+00;
340        q[3][10]=1.0000000000000e+00;   q[3][11]=1.2183938185384e+00;
341        q[3][12]=1.0000000000000e+00;   q[3][13]=2.6221929413096e+00;
342        q[3][14]=7.0708004204733e+00;   q[3][15]=3.6327934317139e+01;
343        q[3][16]=1.4743408713748e+01;   q[3][17]=1.0453246057102e+01;
344        q[3][18]=1.1165627147496e+01;   q[3][19]=1.0000000000000e+00;
345
346        q[4][5]=3.9599394038972e+01;    q[4][6]=1.0000000000000e+00;
347        q[4][7]=1.6163581056674e+01;    q[4][8]=7.4467985406234e+01;
348        q[4][9]=3.3018175376623e+01;    q[4][10]=1.3500725995091e+01;
349        q[4][11]=1.0000000000000e+00;   q[4][12]=3.2504095376923e+00;
350        q[4][13]=3.7264767083096e+01;   q[4][14]=1.6454136037822e+01;
351        q[4][15]=1.4581783243113e+02;   q[4][16]=9.4720031458442e+01;
352        q[4][17]=1.7684087896962e+01;   q[4][18]=1.3409157685926e+02;
353        q[4][19]=1.0000000000000e+00; 
354       
355        q[5][6]=1.6503249008836e+02;    q[5][7]=3.5530760735494e+00;
356        q[5][8]=3.0652523140859e+02;    q[5][9]=4.3905393139325e+00;
357        q[5][10]=2.0895470525345e+01;   q[5][11]=2.4504076430724e+02;
358        q[5][12]=2.4931300477797e+01;   q[5][13]=1.0059428264289e+01;
359        q[5][14]=7.2256314165467e+01;   q[5][15]=2.8480937892158e+01;
360        q[5][16]=4.9962974409828e+01;   q[5][17]=1.0000000000000e+00;
361        q[5][18]=2.0430790980529e+01;   q[5][19]=9.9986289000676e+00;
362
363        q[6][7]=1.4884496769963e+01;    q[6][8]=2.5853576435567e+01;
364        q[6][9]=1.7418201388328e+00;    q[6][10]=1.0000000000000e+00;
365        q[6][11]=1.6519126809071e+02;   q[6][12]=1.0000000000000e+00;
366        q[6][13]=1.4067850525292e+00;   q[6][14]=6.7547121641947e+00;
367        q[6][15]=2.8794794140840e+01;   q[6][16]=7.8001372062558e+00;
368        q[6][17]=1.0000000000000e+00;   q[6][18]=6.9067239183061e+00;
369        q[6][19]=1.1127702362585e+01; 
370       
371        q[7][8]=1.0000000000000e+00;    q[7][9]=3.1466649021550e+00;
372        q[7][10]=1.2699794194865e+00;   q[7][11]=1.1962111069278e+01;
373        q[7][12]=1.0000000000000e+00;   q[7][13]=1.0000000000000e+00;
374        q[7][14]=1.0000000000000e+00;   q[7][15]=6.6277950574411e+01;
375        q[7][16]=5.8800079133028e+00;   q[7][17]=5.7494182626674e+00;
376        q[7][18]=1.6887657206208e+00;   q[7][19]=1.3320553471351e+00;
377
378        q[8][9]=6.4536986087271e+00;    q[8][10]=6.0472584534958e+00;
379        q[8][11]=6.7197196398961e+01;   q[8][12]=6.2977633277779e+00;
380        q[8][13]=2.5347805183364e+01;   q[8][14]=3.2089868698728e+01;
381        q[8][15]=4.0766987134407e+01;   q[8][16]=2.3570850628539e+01;
382        q[8][17]=3.7286635325194e+00;   q[8][18]=3.5270764890474e+02;
383        q[8][19]=1.0000000000000e+00; 
384       
385        q[9][10]=1.7320653206333e+02;   q[9][11]=1.0298655619743e+01;
386        q[9][12]=2.7262244199514e+02;   q[9][13]=4.4561065036310e+01;
387        q[9][14]=1.0856482766156e+01;   q[9][15]=2.5107659603898e+01;
388        q[9][16]=1.9391167162525e+02;   q[9][17]=1.0000000000000e+00;
389        q[9][18]=1.3161329199391e+01;   q[9][19]=6.4365086389428e+02;
390
391        q[10][11]=7.8314019154706e+00;  q[10][12]=2.8290920517725e+02;
392        q[10][13]=1.1371735519833e+02;  q[10][14]=2.1105885757279e+01;
393        q[10][15]=3.8741359395934e+01;  q[10][16]=6.6524559321657e+01;
394        q[10][17]=1.7071378554833e+01;  q[10][18]=2.3234516108847e+01;
395        q[10][19]=4.8247261078055e+01; 
396       
397        q[11][12]=4.8092094826036e+01;  q[11][13]=3.3887559483420e+00;
398        q[11][14]=2.6368577564199e+01;  q[11][15]=5.5679895711418e+01;
399        q[11][16]=7.1750284708933e+01;  q[11][17]=1.2631893872825e+01;
400        q[11][18]=2.6932728996777e+01;  q[11][19]=1.0000000000000e+00;
401
402        q[12][13]=4.7798798034572e+01;  q[12][14]=9.9165053447429e+00;
403        q[12][15]=5.8505442466161e+01;  q[12][16]=2.7798190504760e+02;
404        q[12][17]=1.1427000119701e+01;  q[12][18]=2.1029990530586e+01;
405        q[12][19]=2.0397078683768e+02; 
406       
407        q[13][14]=9.1089574817139e+00;  q[13][15]=3.3835737720574e+01;
408        q[13][16]=1.7815549567056e+01;  q[13][17]=4.1272404968214e+00;
409        q[13][18]=2.4504156395152e+02;  q[13][19]=3.3435675442163e+00;
410
411        q[14][15]=8.9421193040709e+01;  q[14][16]=6.7485067008375e+01;
412        q[14][17]=2.2161693733113e+00;  q[14][18]=8.5338209390745e+00;
413        q[14][19]=4.3342126659660e+00; 
414       
415        q[15][16]=3.1432036618746e+02;  q[15][17]=2.0305343047059e+01;
416        q[15][18]=3.4167877957799e+01;  q[15][19]=1.0000000000000e+00;
417
418        q[16][17]=5.2559565123081e+00;  q[16][18]=2.0382362288681e+01;
419        q[16][19]=1.0765527137500e+02; 
420       
421        q[17][18]=1.3814733274637e+01;  q[17][19]=2.8259139240676e+00;
422
423        q[18][19]=1.0000000000000e+00; 
424
425
426        /* amino acid frequencies */
427        f[0]=0.072; f[1]=0.019; f[2]=0.039; f[3]=0.019; f[4]=0.006;
428        f[5]=0.025; f[6]=0.024; f[7]=0.056; f[8]=0.028; f[9]=0.088;
429        f[10]=0.168; f[11]=0.023; f[12]=0.054; f[13]=0.061; f[14]=0.054;
430        f[15]=0.072; f[16]=0.086; f[17]=0.029; f[18]=0.033; f[19]=0.043;
431}
432
433void blosum62data(dmatrix q, double *f)
434{
435        /*
436         * BLOSUM62 model of amino acid evolution
437         *
438         * S. Henikoff and J. G. Henikoff.  1992.  PNAS USA 89:10915-10919.
439         *
440         */
441
442        q[0][1]=7.3579038969751e-01;    q[0][2]=4.8539105546575e-01;
443        q[0][3]=5.4316182089867e-01;    q[0][4]=1.4599953104700e+00;
444        q[0][5]=1.1997057046020e+00;    q[0][6]=1.1709490427999e+00;
445        q[0][7]=1.9558835749595e+00;    q[0][8]=7.1624144499779e-01;
446        q[0][9]=6.0589900368677e-01;    q[0][10]=8.0001653051838e-01;
447        q[0][11]=1.2952012667833e+00;   q[0][12]=1.2537582666635e+00;
448        q[0][13]=4.9296467974759e-01;   q[0][14]=1.1732759009239e+00;
449        q[0][15]=4.3250926870566e+00;   q[0][16]=1.7291780194850e+00;
450        q[0][17]=4.6583936772479e-01;   q[0][18]=7.1820669758623e-01;
451        q[0][19]=2.1877745220045e+00; 
452       
453        q[1][2]=1.2974467051337e+00;    q[1][3]=5.0096440855513e-01;
454        q[1][4]=2.2782657420895e-01;    q[1][5]=3.0208336100636e+00;
455        q[1][6]=1.3605741904203e+00;    q[1][7]=4.1876330851753e-01;
456        q[1][8]=1.4561411663360e+00;    q[1][9]=2.3203644514174e-01;
457        q[1][10]=6.2271166969249e-01;   q[1][11]=5.4111151414889e+00;
458        q[1][12]=9.8369298745695e-01;   q[1][13]=3.7164469320875e-01;
459        q[1][14]=4.4813366171831e-01;   q[1][15]=1.1227831042096e+00;
460        q[1][16]=9.1466595456337e-01;   q[1][17]=4.2638231012175e-01;
461        q[1][18]=7.2051744121611e-01;   q[1][19]=4.3838834377202e-01;
462
463        q[2][3]=3.1801000482161e+00;    q[2][4]=3.9735894989702e-01;
464        q[2][5]=1.8392161469920e+00;    q[2][6]=1.2404885086396e+00;
465        q[2][7]=1.3558723444845e+00;    q[2][8]=2.4145014342081e+00;
466        q[2][9]=2.8301732627800e-01;    q[2][10]=2.1188815961519e-01;
467        q[2][11]=1.5931370434574e+00;   q[2][12]=6.4844127878707e-01;
468        q[2][13]=3.5486124922252e-01;   q[2][14]=4.9488704370192e-01;
469        q[2][15]=2.9041016564560e+00;   q[2][16]=1.8981736345332e+00;
470        q[2][17]=1.9148204624678e-01;   q[2][18]=5.3822251903674e-01;
471        q[2][19]=3.1285879799342e-01; 
472       
473        q[3][4]=2.4083661480204e-01;    q[3][5]=1.1909457033960e+00;
474        q[3][6]=3.7616252083685e+00;    q[3][7]=7.9847324896839e-01;
475        q[3][8]=7.7814266402188e-01;    q[3][9]=4.1855573246161e-01;
476        q[3][10]=2.1813157759360e-01;   q[3][11]=1.0324479249521e+00;
477        q[3][12]=2.2262189795786e-01;   q[3][13]=2.8173069420651e-01;
478        q[3][14]=7.3062827299842e-01;   q[3][15]=1.5827541420653e+00;
479        q[3][16]=9.3418750943056e-01;   q[3][17]=1.4534504627853e-01;
480        q[3][18]=2.6142220896504e-01;   q[3][19]=2.5812928941763e-01;
481
482        q[4][5]=3.2980150463028e-01;    q[4][6]=1.4074889181440e-01;
483        q[4][7]=4.1820319228376e-01;    q[4][8]=3.5405810983129e-01;
484        q[4][9]=7.7489402279418e-01;    q[4][10]=8.3184264014158e-01;
485        q[4][11]=2.8507880090648e-01;   q[4][12]=7.6768882347954e-01;
486        q[4][13]=4.4133747118660e-01;   q[4][14]=3.5600849876863e-01;
487        q[4][15]=1.1971884150942e+00;   q[4][16]=1.1198313585160e+00;
488        q[4][17]=5.2766441887169e-01;   q[4][18]=4.7023773369610e-01;
489        q[4][19]=1.1163524786062e+00; 
490       
491        q[5][6]=5.5289191779282e+00;    q[5][7]=6.0984630538281e-01;
492        q[5][8]=2.4353411311401e+00;    q[5][9]=2.3620245120365e-01;
493        q[5][10]=5.8073709318144e-01;   q[5][11]=3.9452776745146e+00;
494        q[5][12]=2.4948960771127e+00;   q[5][13]=1.4435695975031e-01;
495        q[5][14]=8.5857057567418e-01;   q[5][15]=1.9348709245965e+00;
496        q[5][16]=1.2774802945956e+00;   q[5][17]=7.5865380864172e-01;
497        q[5][18]=9.5898974285014e-01;   q[5][19]=5.3078579012486e-01;
498
499        q[6][7]=4.2357999217628e-01;    q[6][8]=1.6268910569817e+00;
500        q[6][9]=1.8684804693170e-01;    q[6][10]=3.7262517508685e-01;
501        q[6][11]=2.8024271516787e+00;   q[6][12]=5.5541539747043e-01;
502        q[6][13]=2.9140908416530e-01;   q[6][14]=9.2656393484598e-01;
503        q[6][15]=1.7698932389373e+00;   q[6][16]=1.0710972360073e+00;
504        q[6][17]=4.0763564893830e-01;   q[6][18]=5.9671930034577e-01;
505        q[6][19]=5.2425384633796e-01; 
506       
507        q[7][8]=5.3985912495418e-01;    q[7][9]=1.8929629237636e-01;
508        q[7][10]=2.1772115923623e-01;   q[7][11]=7.5204244030271e-01;
509        q[7][12]=4.5943617357855e-01;   q[7][13]=3.6816646445253e-01;
510        q[7][14]=5.0408659952683e-01;   q[7][15]=1.5093262532236e+00;
511        q[7][16]=6.4143601140497e-01;   q[7][17]=5.0835892463812e-01;
512        q[7][18]=3.0805573703500e-01;   q[7][19]=2.5334079019018e-01;
513
514        q[8][9]=2.5271844788492e-01;    q[8][10]=3.4807220979697e-01;
515        q[8][11]=1.0225070358890e+00;   q[8][12]=9.8431152535870e-01;
516        q[8][13]=7.1453370392764e-01;   q[8][14]=5.2700733915060e-01;
517        q[8][15]=1.1170297629105e+00;   q[8][16]=5.8540709022472e-01;
518        q[8][17]=3.0124860078016e-01;   q[8][18]=4.2189539693890e+00;
519        q[8][19]=2.0155597175031e-01; 
520       
521        q[9][10]=3.8909637733035e+00;   q[9][11]=4.0619358664202e-01;
522        q[9][12]=3.3647977631042e+00;   q[9][13]=1.5173593259539e+00;
523        q[9][14]=3.8835540920564e-01;   q[9][15]=3.5754441245967e-01;
524        q[9][16]=1.1790911972601e+00;   q[9][17]=3.4198578754023e-01;
525        q[9][18]=6.7461709322842e-01;   q[9][19]=8.3118394054582e+00;
526
527        q[10][11]=4.4557027426059e-01;  q[10][12]=6.0305593795716e+00;
528        q[10][13]=2.0648397032375e+00;  q[10][14]=3.7455568747097e-01;
529        q[10][15]=3.5296918452729e-01;  q[10][16]=9.1525985769421e-01;
530        q[10][17]=6.9147463459998e-01;  q[10][18]=8.1124585632307e-01;
531        q[10][19]=2.2314056889131e+00; 
532       
533        q[11][12]=1.0730611843319e+00;  q[11][13]=2.6692475051102e-01;
534        q[11][14]=1.0473834507215e+00;  q[11][15]=1.7521659178195e+00;
535        q[11][16]=1.3038752007987e+00;  q[11][17]=3.3224304063396e-01;
536        q[11][18]=7.1799348690032e-01;  q[11][19]=4.9813847530407e-01;
537
538        q[12][13]=1.7738551688305e+00;  q[12][14]=4.5412362510273e-01;
539        q[12][15]=9.1872341574605e-01;  q[12][16]=1.4885480537218e+00;
540        q[12][17]=8.8810109815193e-01;  q[12][18]=9.5168216224591e-01;
541        q[12][19]=2.5758507553153e+00; 
542       
543        q[13][14]=2.3359790962888e-01;  q[13][15]=5.4002764482413e-01;
544        q[13][16]=4.8820611879305e-01;  q[13][17]=2.0743248934965e+00;
545        q[13][18]=6.7472604308008e+00;  q[13][19]=8.3811961017754e-01;
546
547        q[14][15]=1.1691295777157e+00;  q[14][16]=1.0054516831488e+00;
548        q[14][17]=2.5221483002727e-01;  q[14][18]=3.6940531935451e-01;
549        q[14][19]=4.9690841067567e-01; 
550       
551        q[15][16]=5.1515562922704e+00;  q[15][17]=3.8792562209837e-01;
552        q[15][18]=7.9675152076106e-01;  q[15][19]=5.6192545744165e-01;
553
554        q[16][17]=5.1312812689059e-01;  q[16][18]=8.0101024319939e-01;
555        q[16][19]=2.2530740511763e+00; 
556       
557        q[17][18]=4.0544190065580e+00;  q[17][19]=2.6650873142646e-01;
558
559        q[18][19]=1.0000000000000e+00; 
560
561
562        f[0]=0.074; f[1]=0.052; f[2]=0.045; f[3]=0.054;
563        f[4]=0.025; f[5]=0.034; f[6]=0.054; f[7]=0.074;
564        f[8]=0.026; f[9]=0.068; f[10]=0.099; f[11]=0.058;
565        f[12]=0.025; f[13]=0.047; f[14]=0.039; f[15]=0.057;
566        f[16]=0.051; f[17]=0.013; f[18]=0.032; f[19]=0.073;
567}
568
569
570
571void vtmvdata(dmatrix q, double *f)
572{
573   /*
574   * variable time (VT) model for amino acid evolution
575   * Mueller, T. and Vingron, M. (1999)
576   * "Modeling Amino Acid Replacement"
577   * Journal of Comp. Biology
578   */
579
580/* amino acid frequencies */
581
582f[0]=0.078837 ;
583f[1]=0.051238 ;
584f[2]=0.042313 ;
585f[3]=0.053066 ;
586f[4]=0.015175 ;
587f[5]=0.036713 ;
588f[6]=0.061924 ;
589f[7]=0.070852 ;
590f[8]=0.023082 ;
591f[9]=0.062056 ;
592f[10]=0.096371 ;
593f[11]=0.057324 ;
594f[12]=0.023771 ;
595f[13]=0.043296 ;
596f[14]=0.043911 ;
597f[15]=0.063403 ;
598f[16]=0.055897 ;
599f[17]=0.013272 ;
600f[18]=0.034399 ;
601f[19]=0.073101 ;
602
603
604q[0][1] = 0.233108 ;
605q[0][2] = 0.199097 ;
606q[0][3] = 0.265145 ;
607q[0][4] = 0.227333 ;
608q[0][5] = 0.310084 ;
609q[0][6] = 0.567957 ;
610q[0][7] = 0.876213 ;
611q[0][8] = 0.078692 ;
612q[0][9] = 0.222972 ;
613q[0][10] = 0.424630 ;
614q[0][11] = 0.393245 ;
615q[0][12] = 0.211550 ;
616q[0][13] = 0.116646 ;
617q[0][14] = 0.399143 ;
618q[0][15] = 1.817198 ;
619q[0][16] = 0.877877 ;
620q[0][17] = 0.030309 ;
621q[0][18] = 0.087061 ;
622q[0][19] = 1.230985 ;
623
624q[1][2] = 0.210797 ;
625q[1][3] = 0.105191 ;
626q[1][4] = 0.031726 ;
627q[1][5] = 0.493763 ;
628q[1][6] = 0.255240 ;
629q[1][7] = 0.156945 ;
630q[1][8] = 0.213164 ;
631q[1][9] = 0.081510 ;
632q[1][10] = 0.192364 ;
633q[1][11] = 1.755838 ;
634q[1][12] = 0.087930 ;
635q[1][13] = 0.042569 ;
636q[1][14] = 0.128480 ;
637q[1][15] = 0.292327 ;
638q[1][16] = 0.204109 ;
639q[1][17] = 0.046417 ;
640q[1][18] = 0.097010 ;
641q[1][19] = 0.113146 ;
642
643q[2][3] = 0.883422 ;
644q[2][4] = 0.027495 ;
645q[2][5] = 0.275700 ;
646q[2][6] = 0.270417 ;
647q[2][7] = 0.362028 ;
648q[2][8] = 0.290006 ;
649q[2][9] = 0.087225 ;
650q[2][10] = 0.069245 ;
651q[2][11] = 0.503060 ;
652q[2][12] = 0.057420 ;
653q[2][13] = 0.039769 ;
654q[2][14] = 0.083956 ;
655q[2][15] = 0.847049 ;
656q[2][16] = 0.471268 ;
657q[2][17] = 0.010459 ;
658q[2][18] = 0.093268 ;
659q[2][19] = 0.049824 ;
660
661q[3][4] = 0.010313 ;
662q[3][5] = 0.205842 ;
663q[3][6] = 1.599461 ;
664q[3][7] = 0.311718 ;
665q[3][8] = 0.134252 ;
666q[3][9] = 0.011720 ;
667q[3][10] = 0.060863 ;
668q[3][11] = 0.261101 ;
669q[3][12] = 0.012182 ;
670q[3][13] = 0.016577 ;
671q[3][14] = 0.160063 ;
672q[3][15] = 0.461519 ;
673q[3][16] = 0.178197 ;
674q[3][17] = 0.011393 ;
675q[3][18] = 0.051664 ;
676q[3][19] = 0.048769 ;
677
678q[4][5] = 0.004315 ;
679q[4][6] = 0.005321 ;
680q[4][7] = 0.050876 ;
681q[4][8] = 0.016695 ;
682q[4][9] = 0.046398 ;
683q[4][10] = 0.091709 ;
684q[4][11] = 0.004067 ;
685q[4][12] = 0.023690 ;
686q[4][13] = 0.051127 ;
687q[4][14] = 0.011137 ;
688q[4][15] = 0.175270 ;
689q[4][16] = 0.079511 ;
690q[4][17] = 0.007732 ;
691q[4][18] = 0.042823 ;
692q[4][19] = 0.163831 ;
693
694q[5][6] = 0.960976 ;
695q[5][7] = 0.128660 ;
696q[5][8] = 0.315521 ;
697q[5][9] = 0.054602 ;
698q[5][10] = 0.243530 ;
699q[5][11] = 0.738208 ;
700q[5][12] = 0.120801 ;
701q[5][13] = 0.026235 ;
702q[5][14] = 0.156570 ;
703q[5][15] = 0.358017 ;
704q[5][16] = 0.248992 ;
705q[5][17] = 0.021248 ;
706q[5][18] = 0.062544 ;
707q[5][19] = 0.112027 ;
708
709q[6][7] = 0.250447 ;
710q[6][8] = 0.104458 ;
711q[6][9] = 0.046589 ;
712q[6][10] = 0.151924 ;
713q[6][11] = 0.888630 ;
714q[6][12] = 0.058643 ;
715q[6][13] = 0.028168 ;
716q[6][14] = 0.205134 ;
717q[6][15] = 0.406035 ;
718q[6][16] = 0.321028 ;
719q[6][17] = 0.018844 ;
720q[6][18] = 0.055200 ;
721q[6][19] = 0.205868 ;
722
723q[7][8] = 0.058131 ;
724q[7][9] = 0.051089 ;
725q[7][10] = 0.087056 ;
726q[7][11] = 0.193243 ;
727q[7][12] = 0.046560 ;
728q[7][13] = 0.050143 ;
729q[7][14] = 0.124492 ;
730q[7][15] = 0.612843 ;
731q[7][16] = 0.136266 ;
732q[7][17] = 0.023990 ;
733q[7][18] = 0.037568 ;
734q[7][19] = 0.082579 ;
735
736q[8][9] = 0.020039 ;
737q[8][10] = 0.103552 ;
738q[8][11] = 0.153323 ;
739q[8][12] = 0.021157 ;
740q[8][13] = 0.079807 ;
741q[8][14] = 0.078892 ;
742q[8][15] = 0.167406 ;
743q[8][16] = 0.101117 ;
744q[8][17] = 0.020009 ;
745q[8][18] = 0.286027 ;
746q[8][19] = 0.068575 ;
747
748q[9][10] = 2.089890 ;
749q[9][11] = 0.093181 ;
750q[9][12] = 0.493845 ;
751q[9][13] = 0.321020 ;
752q[9][14] = 0.054797 ;
753q[9][15] = 0.081567 ;
754q[9][16] = 0.376588 ;
755q[9][17] = 0.034954 ;
756q[9][18] = 0.086237 ;
757q[9][19] = 3.654430 ;
758
759q[10][11] = 0.201204 ;
760q[10][12] = 1.105667 ;
761q[10][13] = 0.946499 ;
762q[10][14] = 0.169784 ;
763q[10][15] = 0.214977 ;
764q[10][16] = 0.243227 ;
765q[10][17] = 0.083439 ;
766q[10][18] = 0.189842 ;
767q[10][19] = 1.337571 ;
768
769q[11][12] = 0.096474 ;
770q[11][13] = 0.038261 ;
771q[11][14] = 0.212302 ;
772q[11][15] = 0.400072 ;
773q[11][16] = 0.446646 ;
774q[11][17] = 0.023321 ;
775q[11][18] = 0.068689 ;
776q[11][19] = 0.144587 ;
777
778q[12][13] = 0.173052 ;
779q[12][14] = 0.010363 ;
780q[12][15] = 0.090515 ;
781q[12][16] = 0.184609 ;
782q[12][17] = 0.022019 ;
783q[12][18] = 0.073223 ;
784q[12][19] = 0.307309 ;
785
786q[13][14] = 0.042564 ;
787q[13][15] = 0.138119 ;
788q[13][16] = 0.085870 ;
789q[13][17] = 0.128050 ;
790q[13][18] = 0.898663 ;
791q[13][19] = 0.247329 ;
792
793q[14][15] = 0.430431 ;
794q[14][16] = 0.207143 ;
795q[14][17] = 0.014584 ;
796q[14][18] = 0.032043 ;
797q[14][19] = 0.129315 ;
798
799q[15][16] = 1.767766 ;
800q[15][17] = 0.035933 ;
801q[15][18] = 0.121979 ;
802q[15][19] = 0.127700 ;
803
804q[16][17] = 0.020437 ;
805q[16][18] = 0.094617 ;
806q[16][19] = 0.740372 ;
807
808q[17][18] = 0.124746 ;
809q[17][19] = 0.022134 ;
810
811q[18][19] = 0.125733 ;
812
813}
814
815
816/*
817 * WAG matrix: Simon Whelan and Nick Goldman
818 *
819 */
820
821void wagdata(dmatrix q, double *f)
822{
823                /*
824                 * WAG model of amino acid evolution
825                 *
826                 * S. Whelan and N. Goldman.  2000.  In prep.
827                 *
828                 * presented at the MASAMB-X workshop in Cambridge
829                 *
830                 * Whelan, S., and N. Goldman.  2000. 
831                 * The WAG amino acid rate matrix.
832                 * Manuscript in prep.
833                 */
834
835                /* Q matrix */
836                q[0][1] = 0.610810; q[0][2] = 0.569079; 
837                q[0][3] = 0.821500; q[0][4] = 1.141050; 
838                q[0][5] = 1.011980; q[0][6] = 1.756410; 
839                q[0][7] = 1.572160; q[0][8] = 0.354813; 
840                q[0][9] = 0.219023; q[0][10] = 0.443935; 
841                q[0][11] = 1.005440; q[0][12] = 0.989475; 
842                q[0][13] = 0.233492; q[0][14] = 1.594890; 
843                q[0][15] = 3.733380; q[0][16] = 2.349220; 
844                q[0][17] = 0.125227; q[0][18] = 0.268987; 
845                q[0][19] = 2.221870; 
846
847                q[1][2] = 0.711690; q[1][3] = 0.165074; 
848                q[1][4] = 0.585809; q[1][5] = 3.360330; 
849                q[1][6] = 0.488649; q[1][7] = 0.650469; 
850                q[1][8] = 2.362040; q[1][9] = 0.206722; 
851                q[1][10] = 0.551450; q[1][11] = 5.925170; 
852                q[1][12] = 0.758446; q[1][13] = 0.116821; 
853                q[1][14] = 0.753467; q[1][15] = 1.357640; 
854                q[1][16] = 0.613776; q[1][17] = 1.294610; 
855                q[1][18] = 0.423612; q[1][19] = 0.280336; 
856
857                q[2][3] = 6.013660; q[2][4] = 0.296524; 
858                q[2][5] = 1.716740; q[2][6] = 1.056790; 
859                q[2][7] = 1.253910; q[2][8] = 4.378930; 
860                q[2][9] = 0.615636; q[2][10] = 0.147156; 
861                q[2][11] = 3.334390; q[2][12] = 0.224747; 
862                q[2][13] = 0.110793; q[2][14] = 0.217538; 
863                q[2][15] = 4.394450; q[2][16] = 2.257930; 
864                q[2][17] = 0.078463; q[2][18] = 1.208560; 
865                q[2][19] = 0.221176; 
866
867                q[3][4] = 0.033379; q[3][5] = 0.691268; 
868                q[3][6] = 6.833400; q[3][7] = 0.961142; 
869                q[3][8] = 1.032910; q[3][9] = 0.043523; 
870                q[3][10] = 0.093930; q[3][11] = 0.533362; 
871                q[3][12] = 0.116813; q[3][13] = 0.052004; 
872                q[3][14] = 0.472601; q[3][15] = 1.192810; 
873                q[3][16] = 0.417372; q[3][17] = 0.146348; 
874                q[3][18] = 0.363243; q[3][19] = 0.169417; 
875
876                q[4][5] = 0.109261; q[4][6] = 0.023920; 
877                q[4][7] = 0.341086; q[4][8] = 0.275403; 
878                q[4][9] = 0.189890; q[4][10] = 0.428414; 
879                q[4][11] = 0.083649; q[4][12] = 0.437393; 
880                q[4][13] = 0.441300; q[4][14] = 0.122303; 
881                q[4][15] = 1.560590; q[4][16] = 0.570186; 
882                q[4][17] = 0.795736; q[4][18] = 0.604634; 
883                q[4][19] = 1.114570; 
884
885                q[5][6] = 6.048790; q[5][7] = 0.366510; 
886                q[5][8] = 4.749460; q[5][9] = 0.131046; 
887                q[5][10] = 0.964886; q[5][11] = 4.308310; 
888                q[5][12] = 1.705070; q[5][13] = 0.110744; 
889                q[5][14] = 1.036370; q[5][15] = 1.141210; 
890                q[5][16] = 0.954144; q[5][17] = 0.243615; 
891                q[5][18] = 0.252457; q[5][19] = 0.333890; 
892
893                q[6][7] = 0.630832; q[6][8] = 0.635025; 
894                q[6][9] = 0.141320; q[6][10] = 0.172579; 
895                q[6][11] = 2.867580; q[6][12] = 0.353912; 
896                q[6][13] = 0.092310; q[6][14] = 0.755791; 
897                q[6][15] = 0.782467; q[6][16] = 0.914814; 
898                q[6][17] = 0.172682; q[6][18] = 0.217549; 
899                q[6][19] = 0.655045; 
900
901                q[7][8] = 0.276379; q[7][9] = 0.034151; 
902                q[7][10] = 0.068651; q[7][11] = 0.415992; 
903                q[7][12] = 0.194220; q[7][13] = 0.055288; 
904                q[7][14] = 0.273149; q[7][15] = 1.486700; 
905                q[7][16] = 0.251477; q[7][17] = 0.374321; 
906                q[7][18] = 0.114187; q[7][19] = 0.209108; 
907               
908                q[8][9] = 0.152215; q[8][10] = 0.555096; 
909                q[8][11] = 0.992083; q[8][12] = 0.450867; 
910                q[8][13] = 0.756080; q[8][14] = 0.771387; 
911                q[8][15] = 0.822459; q[8][16] = 0.525511; 
912                q[8][17] = 0.289998; q[8][18] = 4.290350; 
913                q[8][19] = 0.131869; 
914
915                q[9][10] = 3.517820; q[9][11] = 0.360574; 
916                q[9][12] = 4.714220; q[9][13] = 1.177640; 
917                q[9][14] = 0.111502; q[9][15] = 0.353443; 
918                q[9][16] = 1.615050; q[9][17] = 0.234326; 
919                q[9][18] = 0.468951; q[9][19] = 8.659740; 
920               
921                q[10][11] = 0.287583; q[10][12] = 5.375250; 
922                q[10][13] = 2.348200; q[10][14] = 0.462018; 
923                q[10][15] = 0.382421; q[10][16] = 0.364222; 
924                q[10][17] = 0.740259; q[10][18] = 0.443205; 
925                q[10][19] = 1.997370; 
926               
927                q[11][12] = 1.032220; q[11][13] = 0.098843; 
928                q[11][14] = 0.619503; q[11][15] = 1.073780; 
929                q[11][16] = 1.537920; q[11][17] = 0.152232; 
930                q[11][18] = 0.147411; q[11][19] = 0.342012; 
931               
932                q[12][13] = 1.320870; q[12][14] = 0.194864; 
933                q[12][15] = 0.556353; q[12][16] = 1.681970; 
934                q[12][17] = 0.570369; q[12][18] = 0.473810; 
935                q[12][19] = 2.282020; 
936               
937                q[13][14] = 0.179896; q[13][15] = 0.606814; 
938                q[13][16] = 0.191467; q[13][17] = 1.699780; 
939                q[13][18] = 7.154480; q[13][19] = 0.725096; 
940               
941                q[14][15] = 1.786490; q[14][16] = 0.885349; 
942                q[14][17] = 0.156619; q[14][18] = 0.239607; 
943                q[14][19] = 0.351250; 
944               
945                q[15][16] = 4.847130; q[15][17] = 0.578784; 
946                q[15][18] = 0.872519; q[15][19] = 0.258861; 
947               
948                q[16][17] = 0.126678; q[16][18] = 0.325490; 
949                q[16][19] = 1.547670; 
950               
951                q[17][18] = 2.763540; q[17][19] = 0.409817; 
952               
953                q[18][19] = 0.347826; 
954
955                /* original frequencies */
956                f[ 0] = 0.0866;
957                f[ 1] = 0.0440;
958                f[ 2] = 0.0391;
959                f[ 3] = 0.0570;
960                f[ 4] = 0.0193;
961                f[ 5] = 0.0367;
962                f[ 6] = 0.0581;
963                f[ 7] = 0.0833;
964                f[ 8] = 0.0244;
965                f[ 9] = 0.0485;
966                f[10] = 0.0862;
967                f[11] = 0.0620;
968                f[12] = 0.0195;
969                f[13] = 0.0384;
970                f[14] = 0.0458;
971                f[15] = 0.0695;
972                f[16] = 0.0610;
973                f[17] = 0.0144;
974                f[18] = 0.0353;
975                f[19] = 0.0709;
976}
977
978void cprev45data(dmatrix q, double *f)
979{
980        /* cpREV45 model of amino acid evolution
981         * Adachi, J., P.J. Waddell, W. Martin, and M. Hasegawa. 2000.
982         * J. Mol. Evol. 50:348-358
983         * (reconstructed from 45 chloroplast genomes)
984         */
985        q[0][1]  =  105; q[0][2]  =  227; 
986        q[0][3]  =  175; q[0][4]  =  669; 
987        q[0][5]  =  157; q[0][6]  =  499; 
988        q[0][7]  =  665; q[0][8]  =   66; 
989        q[0][9]  =  145; q[0][10] =  197; 
990        q[0][11] =  236; q[0][12] =  185; 
991        q[0][13] =   68; q[0][14] =  490; 
992        q[0][15] = 2440; q[0][16] = 1340; 
993        q[0][17] =   14; q[0][18] =   56; 
994        q[0][19] =  968; 
995       
996        q[1][2]  =  357; q[1][3]  =   43; 
997        q[1][4]  =  823; q[1][5]  = 1745; 
998        q[1][6]  =  152; q[1][7]  =  243; 
999        q[1][8]  =  715; q[1][9]  =  136; 
1000        q[1][10] =  203; q[1][11] = 4482; 
1001        q[1][12] =  125; q[1][13] =   53; 
1002        q[1][14] =   87; q[1][15] =  385; 
1003        q[1][16] =  314; q[1][17] =  230; 
1004        q[1][18] =  323; q[1][19] =   92; 
1005       
1006        q[2][3]  = 4435; q[2][4]  =  538; 
1007        q[2][5]  =  768; q[2][6]  = 1055; 
1008        q[2][7]  =  653; q[2][8]  = 1405; 
1009        q[2][9]  =  168; q[2][10] =  113; 
1010        q[2][11] = 2430; q[2][12] =   61; 
1011        q[2][13] =   97; q[2][14] =  173; 
1012        q[2][15] = 2085; q[2][16] = 1393; 
1013        q[2][17] =   40; q[2][18] =  754; 
1014        q[2][19] =   83; 
1015       
1016        q[3][4]  =   10; q[3][5]  =  400; 
1017        q[3][6]  = 3691; q[3][7]  =  431; 
1018        q[3][8]  =  331; q[3][9]  =   10; 
1019        q[3][10] =   10; q[3][11] =  412; 
1020        q[3][12] =   47; q[3][13] =   22; 
1021        q[3][14] =  170; q[3][15] =  590; 
1022        q[3][16] =  266; q[3][17] =   18; 
1023        q[3][18] =  281; q[3][19] =   75; 
1024       
1025        q[4][5]  =   10; q[4][6]  =   10; 
1026        q[4][7]  =  303; q[4][8]  =  441; 
1027        q[4][9]  =  280; q[4][10] =  396; 
1028        q[4][11] =   48; q[4][12] =  159; 
1029        q[4][13] =  726; q[4][14] =  285; 
1030        q[4][15] = 2331; q[4][16] =  576; 
1031        q[4][17] =  435; q[4][18] = 1466; 
1032        q[4][19] =  592; 
1033       
1034        q[5][6]  = 3122; q[5][7]  =  133; 
1035        q[5][8]  = 1269; q[5][9]  =   92; 
1036        q[5][10] =  286; q[5][11] = 3313; 
1037        q[5][12] =  202; q[5][13] =   10; 
1038        q[5][14] =  323; q[5][15] =  396; 
1039        q[5][16] =  241; q[5][17] =   53; 
1040        q[5][18] =  391; q[5][19] =   54; 
1041       
1042        q[6][7]  =  379; q[6][8]  =  162; 
1043        q[6][9]  =  148; q[6][10] =   82; 
1044        q[6][11] = 2629; q[6][12] =  113; 
1045        q[6][13] =  145; q[6][14] =  185; 
1046        q[6][15] =  568; q[6][16] =  369; 
1047        q[6][17] =   63; q[6][18] =  142; 
1048        q[6][19] =  200; 
1049       
1050        q[7][8]  =   19; q[7][9]  =   40; 
1051        q[7][10] =   20; q[7][11] =  263; 
1052        q[7][12] =   21; q[7][13] =   25; 
1053        q[7][14] =   28; q[7][15] =  691; 
1054        q[7][16] =   92; q[7][17] =   82; 
1055        q[7][18] =   10; q[7][19] =   91; 
1056       
1057        q[8][9]  =   29; q[8][10] =   66; 
1058        q[8][11] =  305; q[8][12] =   10; 
1059        q[8][13] =  127; q[8][14] =  152; 
1060        q[8][15] =  303; q[8][16] =   32; 
1061        q[8][17] =   69; q[8][18] = 1971; 
1062        q[8][19] =   25; 
1063       
1064        q[9][10] = 1745; q[9][11] =  345; 
1065        q[9][12] = 1772; q[9][13] =  454; 
1066        q[9][14] =  117; q[9][15] =  216; 
1067        q[9][16] = 1040; q[9][17] =   42; 
1068        q[9][18] =   89; q[9][19] = 4797; 
1069       
1070        q[10][11] =  218; q[10][12] = 1351; 
1071        q[10][13] = 1268; q[10][14] =  219; 
1072        q[10][15] =  516; q[10][16] =  156; 
1073        q[10][17] =  159; q[10][18] =  189; 
1074        q[10][19] =  865; 
1075       
1076        q[11][12] =  193; q[11][13] =   72; 
1077        q[11][14] =  302; q[11][15] =  868; 
1078        q[11][16] =  918; q[11][17] =   10; 
1079        q[11][18] =  247; q[11][19] =  249; 
1080       
1081        q[12][13] =  327; q[12][14] =  100; 
1082        q[12][15] =   93; q[12][16] =  645; 
1083        q[12][17] =   86; q[12][18] =  215; 
1084        q[12][19] =  475; 
1085       
1086        q[13][14] =   43; q[13][15] =  487; 
1087        q[13][16] =  148; q[13][17] =  468; 
1088        q[13][18] = 2370; q[13][19] =  317; 
1089       
1090        q[14][15] = 1202; q[14][16] =  260; 
1091        q[14][17] =   49; q[14][18] =   97; 
1092        q[14][19] =  122; 
1093       
1094        q[15][16] = 2151; q[15][17] =   73; 
1095        q[15][18] =  522; q[15][19] =  167; 
1096       
1097        q[16][17] =   29; q[16][18] =   71; 
1098        q[16][19] =  760; 
1099       
1100        q[17][18] =  346; q[17][19] =   10; 
1101       
1102        q[18][19] =  119; 
1103
1104        f[0]  = 0.076;
1105        f[1]  = 0.062;
1106        f[2]  = 0.041;
1107        f[3]  = 0.037;
1108        f[4]  = 0.009;
1109        f[5]  = 0.038;
1110        f[6]  = 0.049;
1111        f[7]  = 0.084;
1112        f[8]  = 0.025;
1113        f[9]  = 0.081;
1114        f[10] = 0.101;
1115        f[11] = 0.050;
1116        f[12] = 0.022;
1117        f[13] = 0.051;
1118        f[14] = 0.043;
1119        f[15] = 0.062;
1120        f[16] = 0.054;
1121        f[17] = 0.018;
1122        f[18] = 0.031;
1123        f[19] = 0.066;
1124}
1125
Note: See TracBrowser for help on using the repository browser.