Mac binaries
[jabaws.git] / website / archive / binaries / mac / src / muscle / mpam200.cpp
1 #include "muscle.h"\r
2 \r
3 const float PAM_200_CENTER = (float) 20.0;\r
4 \r
5 #define v(x)    ((float) x + PAM_200_CENTER)\r
6 #define ROW(A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y) \\r
7         { v(A), v(C), v(D), v(E), v(F), v(G), v(H), v(I), v(K), v(L), \\r
8           v(M), v(N), v(P), v(Q), v(R), v(S), v(T), v(V), v(W), v(Y) },\r
9 \r
10 float PAM200[32][32] =\r
11         {\r
12 //       A       C       D       E       F       G       H       I       K       L\r
13 //       M       N       P       Q       R       S       T       V       W       Y\r
14 ROW(   388,     -0,     34,     32,   -202,    159,    -88,     89,    -55,    -67, \r
15         19,     86,    186,    -34,    -32,    237,    273,    171,   -326,   -239)  // A\r
16 ROW(    -0,   1170,   -248,   -315,     74,    -14,     43,   -151,   -204,   -196, \r
17       -132,    -49,   -142,   -215,     29,    165,     -7,    -69,    179,    313)  // C\r
18 ROW(    34,   -248,    625,    496,   -419,    148,     78,   -245,     55,   -361, \r
19       -255,    332,   -169,    122,    -64,     45,    -13,   -167,   -438,   -148)  // D\r
20 ROW(    32,   -315,    496,    610,   -480,    125,     25,   -245,    175,   -327, \r
21       -242,    166,   -141,    279,     34,    -30,    -56,   -150,   -386,   -305)  // E\r
22 ROW(  -202,     74,   -419,   -480,    888,   -407,     62,     80,   -443,    320, \r
23         67,   -236,   -180,   -294,   -327,    -51,   -173,     31,     -1,    584)  // F\r
24 ROW(   159,    -14,    148,    125,   -407,    662,   -114,   -216,    -34,   -324, \r
25       -246,     79,    -77,    -68,     97,    155,     21,    -93,    -58,   -349)  // G\r
26 ROW(   -88,     43,     78,     25,     62,   -114,    766,   -205,    144,    -92, \r
27       -152,    238,     66,    368,    257,     35,    -35,   -217,   -201,    468)  // H\r
28 ROW(    89,   -151,   -245,   -245,     80,   -216,   -205,    554,   -224,    288, \r
29        391,   -114,   -115,   -222,   -208,    -19,    162,    469,   -274,   -153)  // I\r
30 ROW(   -55,   -204,     55,    175,   -443,    -34,    144,   -224,    632,   -249, \r
31       -118,    186,    -86,    315,    466,      2,     19,   -227,   -216,   -264)  // K\r
32 ROW(   -67,   -196,   -361,   -327,    320,   -324,    -92,    288,   -249,    591, \r
33        369,   -223,     53,    -86,   -170,    -69,    -41,    239,    -66,    -29)  // L\r
34 ROW(    19,   -132,   -255,   -242,     67,   -246,   -152,    391,   -118,    369, \r
35        756,   -131,    -98,   -124,   -129,    -49,    129,    331,   -229,   -182)  // M\r
36 ROW(    86,    -49,    332,    166,   -236,     79,    238,   -114,    186,   -223, \r
37       -131,    516,    -21,     88,     73,    240,    168,   -118,   -379,     -8)  // N\r
38 ROW(   186,   -142,   -169,   -141,   -180,    -77,     66,   -115,    -86,     53, \r
39        -98,    -21,    736,    122,      5,    221,    139,    -75,   -373,   -226)  // P\r
40 ROW(   -34,   -215,    122,    279,   -294,    -68,    368,   -222,    315,    -86, \r
41       -124,     88,    122,    635,    301,    -13,    -35,   -195,   -243,    -73)  // Q\r
42 ROW(   -32,     29,    -64,     34,   -327,     97,    257,   -208,    466,   -170, \r
43       -129,     73,      5,    301,    606,     28,     -4,   -201,    104,   -133)  // R\r
44 ROW(   237,    165,     45,    -30,    -51,    155,     35,    -19,      2,    -69, \r
45        -49,    240,    221,    -13,     28,    353,    259,      8,   -213,    -55)  // S\r
46 ROW(   273,     -7,    -13,    -56,   -173,     21,    -35,    162,     19,    -41, \r
47        129,    168,    139,    -35,     -4,    259,    422,    143,   -343,   -190)  // T\r
48 ROW(   171,    -69,   -167,   -150,     31,    -93,   -217,    469,   -227,    239, \r
49        331,   -118,    -75,   -195,   -201,      8,    143,    505,   -245,   -197)  // V\r
50 ROW(  -326,    179,   -438,   -386,     -1,    -58,   -201,   -274,   -216,    -66, \r
51       -229,   -379,   -373,   -243,    104,   -213,   -343,   -245,   1475,     63)  // W\r
52 ROW(  -239,    313,   -148,   -305,    584,   -349,    468,   -153,   -264,    -29, \r
53       -182,     -8,   -226,    -73,   -133,    -55,   -190,   -197,     63,    979)  // Y\r
54         };\r
55 \r
56 #undef v\r
57 #define v(x)    ((float) x)\r
58 #define RNC(A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y) \\r
59         { v(A), v(C), v(D), v(E), v(F), v(G), v(H), v(I), v(K), v(L), \\r
60           v(M), v(N), v(P), v(Q), v(R), v(S), v(T), v(V), v(W), v(Y) },\r
61 \r
62 float PAM200NoCenter[32][32] =\r
63 \r
64         {\r
65 //       A       C       D       E       F       G       H       I       K       L\r
66 //       M       N       P       Q       R       S       T       V       W       Y\r
67 RNC(   388,     -0,     34,     32,   -202,    159,    -88,     89,    -55,    -67, \r
68         19,     86,    186,    -34,    -32,    237,    273,    171,   -326,   -239)  // A\r
69 RNC(    -0,   1170,   -248,   -315,     74,    -14,     43,   -151,   -204,   -196, \r
70       -132,    -49,   -142,   -215,     29,    165,     -7,    -69,    179,    313)  // C\r
71 RNC(    34,   -248,    625,    496,   -419,    148,     78,   -245,     55,   -361, \r
72       -255,    332,   -169,    122,    -64,     45,    -13,   -167,   -438,   -148)  // D\r
73 RNC(    32,   -315,    496,    610,   -480,    125,     25,   -245,    175,   -327, \r
74       -242,    166,   -141,    279,     34,    -30,    -56,   -150,   -386,   -305)  // E\r
75 RNC(  -202,     74,   -419,   -480,    888,   -407,     62,     80,   -443,    320, \r
76         67,   -236,   -180,   -294,   -327,    -51,   -173,     31,     -1,    584)  // F\r
77 RNC(   159,    -14,    148,    125,   -407,    662,   -114,   -216,    -34,   -324, \r
78       -246,     79,    -77,    -68,     97,    155,     21,    -93,    -58,   -349)  // G\r
79 RNC(   -88,     43,     78,     25,     62,   -114,    766,   -205,    144,    -92, \r
80       -152,    238,     66,    368,    257,     35,    -35,   -217,   -201,    468)  // H\r
81 RNC(    89,   -151,   -245,   -245,     80,   -216,   -205,    554,   -224,    288, \r
82        391,   -114,   -115,   -222,   -208,    -19,    162,    469,   -274,   -153)  // I\r
83 RNC(   -55,   -204,     55,    175,   -443,    -34,    144,   -224,    632,   -249, \r
84       -118,    186,    -86,    315,    466,      2,     19,   -227,   -216,   -264)  // K\r
85 RNC(   -67,   -196,   -361,   -327,    320,   -324,    -92,    288,   -249,    591, \r
86        369,   -223,     53,    -86,   -170,    -69,    -41,    239,    -66,    -29)  // L\r
87 RNC(    19,   -132,   -255,   -242,     67,   -246,   -152,    391,   -118,    369, \r
88        756,   -131,    -98,   -124,   -129,    -49,    129,    331,   -229,   -182)  // M\r
89 RNC(    86,    -49,    332,    166,   -236,     79,    238,   -114,    186,   -223, \r
90       -131,    516,    -21,     88,     73,    240,    168,   -118,   -379,     -8)  // N\r
91 RNC(   186,   -142,   -169,   -141,   -180,    -77,     66,   -115,    -86,     53, \r
92        -98,    -21,    736,    122,      5,    221,    139,    -75,   -373,   -226)  // P\r
93 RNC(   -34,   -215,    122,    279,   -294,    -68,    368,   -222,    315,    -86, \r
94       -124,     88,    122,    635,    301,    -13,    -35,   -195,   -243,    -73)  // Q\r
95 RNC(   -32,     29,    -64,     34,   -327,     97,    257,   -208,    466,   -170, \r
96       -129,     73,      5,    301,    606,     28,     -4,   -201,    104,   -133)  // R\r
97 RNC(   237,    165,     45,    -30,    -51,    155,     35,    -19,      2,    -69, \r
98        -49,    240,    221,    -13,     28,    353,    259,      8,   -213,    -55)  // S\r
99 RNC(   273,     -7,    -13,    -56,   -173,     21,    -35,    162,     19,    -41, \r
100        129,    168,    139,    -35,     -4,    259,    422,    143,   -343,   -190)  // T\r
101 RNC(   171,    -69,   -167,   -150,     31,    -93,   -217,    469,   -227,    239, \r
102        331,   -118,    -75,   -195,   -201,      8,    143,    505,   -245,   -197)  // V\r
103 RNC(  -326,    179,   -438,   -386,     -1,    -58,   -201,   -274,   -216,    -66, \r
104       -229,   -379,   -373,   -243,    104,   -213,   -343,   -245,   1475,     63)  // W\r
105 RNC(  -239,    313,   -148,   -305,    584,   -349,    468,   -153,   -264,    -29, \r
106       -182,     -8,   -226,    -73,   -133,    -55,   -190,   -197,     63,    979)  // Y\r
107         };\r