| 1 | #if 0 |
|---|
| 2 | #include "mltaln.h" |
|---|
| 3 | #endif |
|---|
| 4 | #define DEFAULTGOP_J -1530 |
|---|
| 5 | #define DEFAULTGEP_J -00 |
|---|
| 6 | #define DEFAULTOFS_J -123 /* +10 -- -50 teido ka ? */ |
|---|
| 7 | #define DEFAULTPAMN 200 |
|---|
| 8 | |
|---|
| 9 | void JTTmtx( double **rsr, double *freq, char locamino[26], char locgrp[26], int isTM ) |
|---|
| 10 | { |
|---|
| 11 | int i, j; |
|---|
| 12 | double r[20][20]; |
|---|
| 13 | // char locamino0[] = "ARNDCQEGHILKMFPSTWYVBZX.-U"; |
|---|
| 14 | char locamino0[] = "ARNDCQEGHILKMFPSTWYVBZX.-J"; |
|---|
| 15 | char locgrp0[] = |
|---|
| 16 | { |
|---|
| 17 | 0, 3, 2, 2, 5, 2, 2, 0, 3, 1, 1, 3, 1, 4, 0, 0, 0, 4, 4, 1, 2, 2, |
|---|
| 18 | 6, 6, 6, 1, |
|---|
| 19 | }; |
|---|
| 20 | |
|---|
| 21 | double freq0[20] = |
|---|
| 22 | { |
|---|
| 23 | 0.077, |
|---|
| 24 | 0.051, |
|---|
| 25 | 0.043, |
|---|
| 26 | 0.052, |
|---|
| 27 | 0.020, |
|---|
| 28 | 0.041, |
|---|
| 29 | 0.062, |
|---|
| 30 | 0.074, |
|---|
| 31 | 0.023, |
|---|
| 32 | 0.052, |
|---|
| 33 | 0.091, |
|---|
| 34 | 0.059, |
|---|
| 35 | 0.024, |
|---|
| 36 | 0.040, |
|---|
| 37 | 0.051, |
|---|
| 38 | 0.069, |
|---|
| 39 | 0.059, |
|---|
| 40 | 0.014, |
|---|
| 41 | 0.032, |
|---|
| 42 | 0.066, |
|---|
| 43 | }; |
|---|
| 44 | double freq0_TM[20] = |
|---|
| 45 | { |
|---|
| 46 | 0.1051, |
|---|
| 47 | 0.0157, |
|---|
| 48 | 0.0185, |
|---|
| 49 | 0.0089, |
|---|
| 50 | 0.0219, |
|---|
| 51 | 0.0141, |
|---|
| 52 | 0.0097, |
|---|
| 53 | 0.0758, |
|---|
| 54 | 0.0168, |
|---|
| 55 | 0.1188, |
|---|
| 56 | 0.1635, |
|---|
| 57 | 0.0112, |
|---|
| 58 | 0.0333, |
|---|
| 59 | 0.0777, |
|---|
| 60 | 0.0260, |
|---|
| 61 | 0.0568, |
|---|
| 62 | 0.0523, |
|---|
| 63 | 0.0223, |
|---|
| 64 | 0.0324, |
|---|
| 65 | 0.1195, |
|---|
| 66 | }; |
|---|
| 67 | |
|---|
| 68 | /* Lower triangular is JTT's Accepted point mutations */ |
|---|
| 69 | r[ 1][ 0]= 247; |
|---|
| 70 | |
|---|
| 71 | r[ 2][ 0]= 216; r[ 2][ 1]= 116; |
|---|
| 72 | |
|---|
| 73 | r[ 3][ 0]= 386; r[ 3][ 1]= 48; r[ 3][ 2]= 1433; |
|---|
| 74 | |
|---|
| 75 | r[ 4][ 0]= 106; r[ 4][ 1]= 125; r[ 4][ 2]= 32; r[ 4][ 3]= 13; |
|---|
| 76 | |
|---|
| 77 | r[ 5][ 0]= 208; r[ 5][ 1]= 750; r[ 5][ 2]= 159; r[ 5][ 3]= 130; |
|---|
| 78 | r[ 5][ 4]= 9; |
|---|
| 79 | |
|---|
| 80 | r[ 6][ 0]= 600; r[ 6][ 1]= 119; r[ 6][ 2]= 180; r[ 6][ 3]= 2914; |
|---|
| 81 | r[ 6][ 4]= 8; r[ 6][ 5]= 1027; |
|---|
| 82 | |
|---|
| 83 | r[ 7][ 0]= 1183; r[ 7][ 1]= 614; r[ 7][ 2]= 291; r[ 7][ 3]= 577; |
|---|
| 84 | r[ 7][ 4]= 98; r[ 7][ 5]= 84; r[ 7][ 6]= 610; |
|---|
| 85 | |
|---|
| 86 | r[ 8][ 0]= 46; r[ 8][ 1]= 446; r[ 8][ 2]= 466; r[ 8][ 3]= 144; |
|---|
| 87 | r[ 8][ 4]= 40; r[ 8][ 5]= 635; r[ 8][ 6]= 41; r[ 8][ 7]= 41; |
|---|
| 88 | |
|---|
| 89 | r[ 9][ 0]= 173; r[ 9][ 1]= 76; r[ 9][ 2]= 130; r[ 9][ 3]= 37; |
|---|
| 90 | r[ 9][ 4]= 19; r[ 9][ 5]= 20; r[ 9][ 6]= 43; r[ 9][ 7]= 25; |
|---|
| 91 | r[ 9][ 8]= 26; |
|---|
| 92 | |
|---|
| 93 | r[10][ 0]= 257; r[10][ 1]= 205; r[10][ 2]= 63; r[10][ 3]= 34; |
|---|
| 94 | r[10][ 4]= 36; r[10][ 5]= 314; r[10][ 6]= 65; r[10][ 7]= 56; |
|---|
| 95 | r[10][ 8]= 134; r[10][ 9]= 1324; |
|---|
| 96 | |
|---|
| 97 | r[11][ 0]= 200; r[11][ 1]= 2348; r[11][ 2]= 758; r[11][ 3]= 102; |
|---|
| 98 | r[11][ 4]= 7; r[11][ 5]= 858; r[11][ 6]= 754; r[11][ 7]= 142; |
|---|
| 99 | r[11][ 8]= 85; r[11][ 9]= 75; r[11][10]= 94; |
|---|
| 100 | |
|---|
| 101 | r[12][ 0]= 100; r[12][ 1]= 61; r[12][ 2]= 39; r[12][ 3]= 27; |
|---|
| 102 | r[12][ 4]= 23; r[12][ 5]= 52; r[12][ 6]= 30; r[12][ 7]= 27; |
|---|
| 103 | r[12][ 8]= 21; r[12][ 9]= 704; r[12][10]= 974; r[12][11]= 103; |
|---|
| 104 | |
|---|
| 105 | r[13][ 0]= 51; r[13][ 1]= 16; r[13][ 2]= 15; r[13][ 3]= 8; |
|---|
| 106 | r[13][ 4]= 66; r[13][ 5]= 9; r[13][ 6]= 13; r[13][ 7]= 18; |
|---|
| 107 | r[13][ 8]= 50; r[13][ 9]= 196; r[13][10]= 1093; r[13][11]= 7; |
|---|
| 108 | r[13][12]= 49; |
|---|
| 109 | |
|---|
| 110 | r[14][ 0]= 901; r[14][ 1]= 217; r[14][ 2]= 31; r[14][ 3]= 39; |
|---|
| 111 | r[14][ 4]= 15; r[14][ 5]= 395; r[14][ 6]= 71; r[14][ 7]= 93; |
|---|
| 112 | r[14][ 8]= 157; r[14][ 9]= 31; r[14][10]= 578; r[14][11]= 77; |
|---|
| 113 | r[14][12]= 23; r[14][13]= 36; |
|---|
| 114 | |
|---|
| 115 | r[15][ 0]= 2413; r[15][ 1]= 413; r[15][ 2]= 1738; r[15][ 3]= 244; |
|---|
| 116 | r[15][ 4]= 353; r[15][ 5]= 182; r[15][ 6]= 156; r[15][ 7]= 1131; |
|---|
| 117 | r[15][ 8]= 138; r[15][ 9]= 172; r[15][10]= 436; r[15][11]= 228; |
|---|
| 118 | r[15][12]= 54; r[15][13]= 309; r[15][14]= 1138; |
|---|
| 119 | |
|---|
| 120 | r[16][ 0]= 2440; r[16][ 1]= 230; r[16][ 2]= 693; r[16][ 3]= 151; |
|---|
| 121 | r[16][ 4]= 66; r[16][ 5]= 149; r[16][ 6]= 142; r[16][ 7]= 164; |
|---|
| 122 | r[16][ 8]= 76; r[16][ 9]= 930; r[16][10]= 172; r[16][11]= 398; |
|---|
| 123 | r[16][12]= 343; r[16][13]= 39; r[16][14]= 412; r[16][15]= 2258; |
|---|
| 124 | |
|---|
| 125 | r[17][ 0]= 11; r[17][ 1]= 109; r[17][ 2]= 2; r[17][ 3]= 5; |
|---|
| 126 | r[17][ 4]= 38; r[17][ 5]= 12; r[17][ 6]= 12; r[17][ 7]= 69; |
|---|
| 127 | r[17][ 8]= 5; r[17][ 9]= 12; r[17][10]= 82; r[17][11]= 9; |
|---|
| 128 | r[17][12]= 8; r[17][13]= 37; r[17][14]= 6; r[17][15]= 36; |
|---|
| 129 | r[17][16]= 8; |
|---|
| 130 | |
|---|
| 131 | r[18][ 0]= 41; r[18][ 1]= 46; r[18][ 2]= 114; r[18][ 3]= 89; |
|---|
| 132 | r[18][ 4]= 164; r[18][ 5]= 40; r[18][ 6]= 15; r[18][ 7]= 15; |
|---|
| 133 | r[18][ 8]= 514; r[18][ 9]= 61; r[18][10]= 84; r[18][11]= 20; |
|---|
| 134 | r[18][12]= 17; r[18][13]= 850; r[18][14]= 22; r[18][15]= 164; |
|---|
| 135 | r[18][16]= 45; r[18][17]= 41; |
|---|
| 136 | |
|---|
| 137 | r[19][ 0]= 1766; r[19][ 1]= 69; r[19][ 2]= 55; r[19][ 3]= 127; |
|---|
| 138 | r[19][ 4]= 99; r[19][ 5]= 58; r[19][ 6]= 226; r[19][ 7]= 276; |
|---|
| 139 | r[19][ 8]= 22; r[19][ 9]= 3938; r[19][10]= 1261; r[19][11]= 58; |
|---|
| 140 | r[19][12]= 559; r[19][13]= 189; r[19][14]= 84; r[19][15]= 219; |
|---|
| 141 | r[19][16]= 526; r[19][17]= 27; r[19][18]= 42; |
|---|
| 142 | |
|---|
| 143 | |
|---|
| 144 | /* Upper triangular is JTT's Accepted point mutations for transmembrane */ |
|---|
| 145 | r[ 0][ 1]= 21; r[ 0][ 2]= 2; r[ 0][ 3]= 7; r[ 0][ 4]= 13; |
|---|
| 146 | r[ 0][ 5]= 4; r[ 0][ 6]= 6; r[ 0][ 7]= 160; r[ 0][ 8]= 6; |
|---|
| 147 | r[ 0][ 9]= 44; r[ 0][10]= 43; r[ 0][11]= 5; r[ 0][12]= 10; |
|---|
| 148 | r[ 0][13]= 21; r[ 0][14]= 34; r[ 0][15]= 198; r[ 0][16]= 202; |
|---|
| 149 | r[ 0][17]= 0; r[ 0][18]= 1; r[ 0][19]= 292; |
|---|
| 150 | |
|---|
| 151 | r[ 1][ 2]= 0; r[ 1][ 3]= 1; r[ 1][ 4]= 2; r[ 1][ 5]= 21; |
|---|
| 152 | r[ 1][ 6]= 3; r[ 1][ 7]= 22; r[ 1][ 8]= 21; r[ 1][ 9]= 4; |
|---|
| 153 | r[ 1][10]= 8; r[ 1][11]= 53; r[ 1][12]= 19; r[ 1][13]= 0; |
|---|
| 154 | r[ 1][14]= 1; r[ 1][15]= 5; r[ 1][16]= 5; r[ 1][17]= 28; |
|---|
| 155 | r[ 1][18]= 0; r[ 1][19]= 0; |
|---|
| 156 | |
|---|
| 157 | r[ 2][ 3]= 14; r[ 2][ 4]= 1; r[ 2][ 5]= 7; r[ 2][ 6]= 0; |
|---|
| 158 | r[ 2][ 7]= 0; r[ 2][ 8]= 8; r[ 2][ 9]= 4; r[ 2][10]= 5; |
|---|
| 159 | r[ 2][11]= 11; r[ 2][12]= 3; r[ 2][13]= 1; r[ 2][14]= 2; |
|---|
| 160 | r[ 2][15]= 32; r[ 2][16]= 19; r[ 2][17]= 1; r[ 2][18]= 1; |
|---|
| 161 | r[ 2][19]= 2; |
|---|
| 162 | |
|---|
| 163 | r[ 3][ 4]= 0; r[ 3][ 5]= 0; r[ 3][ 6]= 12; r[ 3][ 7]= 15; |
|---|
| 164 | r[ 3][ 8]= 4; r[ 3][ 9]= 1; r[ 3][10]= 0; r[ 3][11]= 2; |
|---|
| 165 | r[ 3][12]= 1; r[ 3][13]= 0; r[ 3][14]= 1; r[ 3][15]= 0; |
|---|
| 166 | r[ 3][16]= 6; r[ 3][17]= 0; r[ 3][18]= 1; r[ 3][19]= 4; |
|---|
| 167 | |
|---|
| 168 | r[ 4][ 5]= 0; r[ 4][ 6]= 0; r[ 4][ 7]= 13; r[ 4][ 8]= 2; |
|---|
| 169 | r[ 4][ 9]= 4; r[ 4][10]= 11; r[ 4][11]= 0; r[ 4][12]= 1; |
|---|
| 170 | r[ 4][13]= 34; r[ 4][14]= 0; r[ 4][15]= 48; r[ 4][16]= 13; |
|---|
| 171 | r[ 4][17]= 8; r[ 4][18]= 23; r[ 4][19]= 47; |
|---|
| 172 | |
|---|
| 173 | r[ 5][ 6]= 16; r[ 5][ 7]= 1; r[ 5][ 8]= 26; r[ 5][ 9]= 1; |
|---|
| 174 | r[ 5][10]= 16; r[ 5][11]= 6; r[ 5][12]= 3; r[ 5][13]= 0; |
|---|
| 175 | r[ 5][14]= 5; r[ 5][15]= 7; r[ 5][16]= 2; r[ 5][17]= 0; |
|---|
| 176 | r[ 5][18]= 0; r[ 5][19]= 0; |
|---|
| 177 | |
|---|
| 178 | r[ 6][ 7]= 21; r[ 6][ 8]= 0; r[ 6][ 9]= 0; r[ 6][10]= 0; |
|---|
| 179 | r[ 6][11]= 0; r[ 6][12]= 0; r[ 6][13]= 0; r[ 6][14]= 0; |
|---|
| 180 | r[ 6][15]= 4; r[ 6][16]= 2; r[ 6][17]= 0; r[ 6][18]= 0; |
|---|
| 181 | r[ 6][19]= 7; |
|---|
| 182 | |
|---|
| 183 | r[ 7][ 8]= 1; r[ 7][ 9]= 10; r[ 7][10]= 0; r[ 7][11]= 0; |
|---|
| 184 | r[ 7][12]= 3; r[ 7][13]= 4; r[ 7][14]= 7; r[ 7][15]= 64; |
|---|
| 185 | r[ 7][16]= 12; r[ 7][17]= 5; r[ 7][18]= 0; r[ 7][19]= 53; |
|---|
| 186 | |
|---|
| 187 | r[ 8][ 9]= 3; r[ 8][10]= 2; r[ 8][11]= 0; r[ 8][12]= 1; |
|---|
| 188 | r[ 8][13]= 0; r[ 8][14]= 0; r[ 8][15]= 0; r[ 8][16]= 4; |
|---|
| 189 | r[ 8][17]= 0; r[ 8][18]= 29; r[ 8][19]= 2; |
|---|
| 190 | |
|---|
| 191 | r[ 9][10]= 273; r[ 9][11]= 0; r[ 9][12]= 161; r[ 9][13]= 66; |
|---|
| 192 | r[ 9][14]= 4; r[ 9][15]= 22; r[ 9][16]= 150; r[ 9][17]= 1; |
|---|
| 193 | r[ 9][18]= 4; r[ 9][19]= 883; |
|---|
| 194 | |
|---|
| 195 | r[10][11]= 1; r[10][12]= 153; r[10][13]= 251; r[10][14]= 37; |
|---|
| 196 | r[10][15]= 43; r[10][16]= 26; r[10][17]= 20; r[10][18]= 6; |
|---|
| 197 | r[10][19]= 255; |
|---|
| 198 | |
|---|
| 199 | r[11][12]= 4; r[11][13]= 0; r[11][14]= 0; r[11][15]= 1; |
|---|
| 200 | r[11][16]= 2; r[11][17]= 0; r[11][18]= 5; r[11][19]= 1; |
|---|
| 201 | |
|---|
| 202 | r[12][13]= 8; r[12][14]= 0; r[12][15]= 1; r[12][16]= 32; |
|---|
| 203 | r[12][17]= 1; r[12][18]= 5; r[12][19]= 89; |
|---|
| 204 | |
|---|
| 205 | r[13][14]= 0; r[13][15]= 32; r[13][16]= 9; r[13][17]= 2; |
|---|
| 206 | r[13][18]= 54; r[13][19]= 37; |
|---|
| 207 | |
|---|
| 208 | r[14][15]= 9; r[14][16]= 10; r[14][17]= 0; r[14][18]= 1; |
|---|
| 209 | r[14][19]= 1; |
|---|
| 210 | |
|---|
| 211 | r[15][16]= 134; r[15][17]= 1; r[15][18]= 22; r[15][19]= 13; |
|---|
| 212 | |
|---|
| 213 | r[16][17]= 1; r[16][18]= 3; r[16][19]= 48; |
|---|
| 214 | |
|---|
| 215 | r[17][18]= 2; r[17][19]= 18; |
|---|
| 216 | |
|---|
| 217 | r[18][19]= 2; |
|---|
| 218 | |
|---|
| 219 | |
|---|
| 220 | |
|---|
| 221 | for (i = 0; i < 20; i++) r[i][i] = 0.0; |
|---|
| 222 | if( isTM ) |
|---|
| 223 | { |
|---|
| 224 | for (i = 1; i < 20; i++) for (j = 0; j < i; j++) |
|---|
| 225 | { |
|---|
| 226 | r[j][i] /= 400.0 * freq0_TM[i] * freq0_TM[j]; |
|---|
| 227 | r[i][j] = r[j][i]; |
|---|
| 228 | } |
|---|
| 229 | for( i=0; i<20; i++ ) freq[i] = freq0_TM[i]; |
|---|
| 230 | } |
|---|
| 231 | else |
|---|
| 232 | { |
|---|
| 233 | for (i = 1; i < 20; i++) for (j = 0; j < i; j++) |
|---|
| 234 | { |
|---|
| 235 | r[i][j] /= 400.0 * freq0[i] * freq0[j]; |
|---|
| 236 | r[j][i] = r[i][j]; |
|---|
| 237 | } |
|---|
| 238 | for( i=0; i<20; i++ ) freq[i] = freq0[i]; |
|---|
| 239 | } |
|---|
| 240 | |
|---|
| 241 | for( i=0; i<26; i++ ) locamino[i] = locamino0[i]; |
|---|
| 242 | for( i=0; i<26; i++ ) locgrp[(int)locamino[i]] = locgrp0[i]; |
|---|
| 243 | for( i=0; i<20; i++ ) for( j=0; j<20; j++ ) rsr[i][j] = r[i][j]; |
|---|
| 244 | } |
|---|