source: trunk/GDE/MUSCLE/src/mpam200.cpp

Last change on this file was 10390, checked in by aboeckma, 11 years ago

added muscle sourcles amd makefile

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