RNAlib-2.1.9h
1.8.4_epars.h
Go to the documentation of this file.
1#ifndef __VIENNA_RNA_PACKAGE_OLD_EPARS__
2#define __VIENNA_RNA_PACKAGE_OLD_EPARS__
38#define K0 273.15
39#ifdef INF
40#undef INF
41#endif
42#define INF 1000000
43#define NBPAIRS 7
44#define NST 0 /* Energy for nonstandard stacked pairs */
45#define DEF -50 /* Default terminal mismatch, used for I */
46 /* and any non_pairing bases */
47#define NSM 0 /* terminal mismatch for non standard pairs */
48
49PRIVATE double Tmeasure_184 = 37 + K0; /* temperature of param measurements */
50PRIVATE double lxc37_184 = 107.856; /* parameter for logarithmic loop
51 energy extrapolation */
52
53PRIVATE int stack37_184[NBPAIRS+1][NBPAIRS+1] =
54/* CG GC GU UG AU UA */
55{ { INF, INF, INF, INF, INF, INF, INF, INF},
56 { INF, -240, -330, -210, -140, -210, -210, NST},
57 { INF, -330, -340, -250, -150, -220, -240, NST},
58 { INF, -210, -250, 130, -50, -140, -130, NST},
59 { INF, -140, -150, -50, 30, -60, -100, NST},
60 { INF, -210, -220, -140, -60, -110, -90, NST},
61 { INF, -210, -240, -130, -100, -90, -130, NST},
62 { INF, NST, NST, NST, NST, NST, NST, NST}};
63
64/* enthalpies (0.01*kcal/mol at 37 C) for stacked pairs */
65/* different from mfold-2.3, which uses values from mfold-2.2 */
66PRIVATE int enthalpies_184[NBPAIRS+1][NBPAIRS+1] =
67/* CG GC GU UG AU UA */
68{ { INF, INF, INF, INF, INF, INF, INF, INF},
69 { INF, -1060, -1340, -1210, -560, -1050, -1040, NST},
70 { INF, -1340, -1490, -1260, -830, -1140, -1240, NST},
71 { INF, -1210, -1260, -1460, -1350, -880, -1280, NST},
72 { INF, -560, -830, -1350, -930, -320, -700, NST},
73 { INF, -1050, -1140, -880, -320, -940, -680, NST},
74 { INF, -1040, -1240, -1280, -700, -680, -770, NST},
75 { INF, NST, NST, NST, NST, NST, NST, NST}};
76
77
78/* old values are here just for comparison */
79PRIVATE int oldhairpin37_184[31] = { /* from ViennaRNA 1.3 */
80 INF, INF, INF, 410, 490, 440, 470, 500, 510, 520, 531,
81 542, 551, 560, 568, 575, 582, 589, 595, 601, 606,
82 611, 616, 621, 626, 630, 634, 638, 642, 646, 650};
83
84PRIVATE int hairpin37_184[31] = {
85 INF, INF, INF, 570, 560, 560, 540, 590, 560, 640, 650,
86 660, 670, 678, 686, 694, 701, 707, 713, 719, 725,
87 730, 735, 740, 744, 749, 753, 757, 761, 765, 769};
88
89PRIVATE int oldbulge37_184[31] = {
90 INF, 390, 310, 350, 420, 480, 500, 516, 531, 543, 555,
91 565, 574, 583, 591, 598, 605, 612, 618, 624, 630,
92 635, 640, 645, 649, 654, 658, 662, 666, 670, 673};
93
94PRIVATE int bulge37_184[31] = {
95 INF, 380, 280, 320, 360, 400, 440, 459, 470, 480, 490,
96 500, 510, 519, 527, 534, 541, 548, 554, 560, 565,
97 571, 576, 580, 585, 589, 594, 598, 602, 605, 609};
98
99PRIVATE int oldinternal_loop37_184[31] = {
100 INF, INF, 410, 510, 490, 530, 570, 587, 601, 614, 625,
101 635, 645, 653, 661, 669, 676, 682, 688, 694, 700,
102 705, 710, 715, 720, 724, 728, 732, 736, 740, 744};
103
104PRIVATE int internal_loop37_184[31] = {
105 INF, INF, 410, 510, 170, 180, 200, 220, 230, 240, 250,
106 260, 270, 278, 286, 294, 301, 307, 313, 319, 325,
107 330, 335, 340, 345, 349, 353, 357, 361, 365, 369};
108
109/* terminal mismatches */
110/* mismatch free energies for interior loops at 37C */
111PRIVATE int mismatchI37_184[NBPAIRS+1][5][5] =
112{ /* @@ */
113 {{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0}},
114 { /* CG */
115 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
116 { 0, 0, 0, -110, 0}, /* A@ AA AC AG AU */
117 { 0, 0, 0, 0, 0}, /* C@ CA CC CG CU */
118 { 0, -110, 0, 0, 0}, /* G@ GA GC GG GU */
119 { 0, 0, 0, 0, -70}},/* U@ UA UC UG UU */
120 { /* GC */
121 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
122 { 0, 0, 0, -110, 0}, /* A@ AA AC AG AU */
123 { 0, 0, 0, 0, 0}, /* C@ CA CC CG CU */
124 { 0, -110, 0, 0, 0}, /* G@ GA GC GG GU */
125 { 0, 0, 0, 0, -70}},/* U@ UA UC UG UU */
126 { /* GU */
127 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
128 { 0, 70, 70, -40, 70}, /* A@ AA AC AG AU */
129 { 0, 70, 70, 70, 70}, /* C@ CA CC CG CU */
130 { 0, -40, 70, 70, 70}, /* G@ GA GC GG GU */
131 { 0, 70, 70, 70, 0}},/* U@ UA UC UG UU */
132 { /* UG */
133 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
134 { 0, 70, 70, -40, 70}, /* A@ AA AC AG AU */
135 { 0, 70, 70, 70, 70}, /* C@ CA CC CG CU */
136 { 0, -40, 70, 70, 70}, /* G@ GA GC GG GU */
137 { 0, 70, 70, 70, 0}},/* U@ UA UC UG UU */
138 { /* AU */
139 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
140 { 0, 70, 70, -40, 70}, /* A@ AA AC AG AU */
141 { 0, 70, 70, 70, 70}, /* C@ CA CC CG CU */
142 { 0, -40, 70, 70, 70}, /* G@ GA GC GG GU */
143 { 0, 70, 70, 70, 0}},/* U@ UA UC UG UU */
144 { /* UA */
145 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
146 { 0, 70, 70, -40, 70}, /* A@ AA AC AG AU */
147 { 0, 70, 70, 70, 70}, /* C@ CA CC CG CU */
148 { 0, -40, 70, 70, 70}, /* G@ GA GC GG GU */
149 { 0, 70, 70, 70, 0}},/* U@ UA UC UG UU */
150 { /* @@ */
151 { 90, 90, 90, 90, 90},{ 90, 90, 90, 90,-20},{ 90, 90, 90, 90, 90},
152 { 90,-20, 90, 90, 90},{ 90, 90, 90, 90, 20}}
153};
154
155/* mismatch free energies for hairpins at 37C */
156PRIVATE int mismatchH37_184[NBPAIRS+1][5][5] =
157{ /* @@ */
158 {{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0}},
159 { /* CG */
160 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
161 { -90, -150, -150, -140, -180}, /* A@ AA AC AG AU */
162 { -90, -100, -90, -290, -80}, /* C@ CA CC CG CU */
163 { -90, -220, -200, -160, -110}, /* G@ GA GC GG GU */
164 { -90, -170, -140, -180, -200}},/* U@ UA UC UG UU */
165 { /* GC */
166 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
167 { -70, -110, -150, -130, -210}, /* A@ AA AC AG AU */
168 { -70, -110, -70, -240, -50}, /* C@ CA CC CG CU */
169 { -70, -240, -290, -140, -120}, /* G@ GA GC GG GU */
170 { -70, -190, -100, -220, -150}},/* U@ UA UC UG UU */
171 { /* GU */
172 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
173 { 0, 20, -50, -30, -30}, /* A@ AA AC AG AU */
174 { 0, -10, -20, -150, -20}, /* C@ CA CC CG CU */
175 { 0, -90, -110, -30, 0}, /* G@ GA GC GG GU */
176 { 0, -30, -30, -40, -110}},/* U@ UA UC UG UU */
177 { /* UG */
178 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
179 { 0, -50, -30, -60, -50}, /* A@ AA AC AG AU */
180 { 0, -20, -10, -170, 0}, /* C@ CA CC CG CU */
181 { 0, -80, -120, -30, -70}, /* G@ GA GC GG GU */
182 { 0, -60, -10, -60, -80}},/* U@ UA UC UG UU */
183 { /* AU */
184 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
185 { 0, -30, -50, -30, -30}, /* A@ AA AC AG AU */
186 { 0, -10, -20, -150, -20}, /* C@ CA CC CG CU */
187 { 0, -110, -120, -20, 20}, /* G@ GA GC GG GU */
188 { 0, -30, -30, -60, -110}},/* U@ UA UC UG UU */
189 { /* UA */
190 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
191 { 0, -50, -30, -60, -50}, /* A@ AA AC AG AU */
192 { 0, -20, -10, -120, -0}, /* C@ CA CC CG CU */
193 { 0, -140, -120, -70, -20}, /* G@ GA GC GG GU */
194 { 0, -30, -10, -50, -80}},/* U@ UA UC UG UU */
195 { /* @@ */
196 { 0, 0, 0, 0, 0},{ 0, 0, 0, 0, 0},{ 0, 0, 0, 0, 0},
197 { 0, 0, 0, 0, 0},{ 0, 0, 0, 0, 0}}
198};
199
200/* mismatch energies in multiloops */
201PRIVATE int mismatchM37_184[NBPAIRS+1][5][5];
202
203/* these are probably junk */
204/* mismatch enthalpies for temperature scaling */
205PRIVATE int mism_H_184[NBPAIRS+1][5][5] =
206{ /* no pair */
207 {{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0}},
208 { /* CG */
209 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
210 { DEF,-1030, -950,-1030,-1030}, /* A@ AA AC AG AU */
211 { DEF, -520, -450, -520, -670}, /* C@ CA CC CG CU */
212 { DEF, -940, -940, -940, -940}, /* G@ GA GC GG GU */
213 { DEF, -810, -740, -810, -860}},/* U@ UA UC UG UU */
214 { /* GC */
215 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
216 { DEF, -520, -880, -560, -880}, /* A@ AA AC AG AU */
217 { DEF, -720, -310, -310, -390}, /* C@ CA CC CG CU */
218 { DEF, -710, -740, -620, -740}, /* G@ GA GC GG GU */
219 { DEF, -500, -500, -500, -570}},/* U@ UA UC UG UU */
220 { /* GU */
221 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
222 { DEF, -430, -600, -600, -600}, /* A@ AA AC AG AU */
223 { DEF, -260, -240, -240, -240}, /* C@ CA CC CG CU */
224 { DEF, -340, -690, -690, -690}, /* G@ GA GC GG GU */
225 { DEF, -330, -330, -330, -330}},/* U@ UA UC UG UU */
226 { /* UG */
227 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
228 { DEF, -720, -790, -960, -810}, /* A@ AA AC AG AU */
229 { DEF, -480, -480, -360, -480}, /* C@ CA CC CG CU */
230 { DEF, -660, -810, -920, -810}, /* G@ GA GC GG GU */
231 { DEF, -550, -440, -550, -360}},/* U@ UA UC UG UU */
232 { /* AU */
233 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
234 { DEF, -430, -600, -600, -600}, /* A@ AA AC AG AU */
235 { DEF, -260, -240, -240, -240}, /* C@ CA CC CG CU */
236 { DEF, -340, -690, -690, -690}, /* G@ GA GC GG GU */
237 { DEF, -330, -330, -330, -330}},/* U@ UA UC UG UU */
238 { /* UA */
239 { 0, 0, 0, 0, 0}, /* @@ @A @C @G @U */
240 { DEF, -400, -630, -890, -590}, /* A@ AA AC AG AU */
241 { DEF, -430, -510, -200, -180}, /* C@ CA CC CG CU */
242 { DEF, -380, -680, -890, -680}, /* G@ GA GC GG GU */
243 { DEF, -280, -140, -280, -140}},/* U@ UA UC UG UU */
244 { /* nonstandard pair */
245 {DEF,DEF,DEF,DEF,DEF},{DEF,DEF,DEF,DEF,DEF},{DEF,DEF,DEF,DEF,DEF},
246 {DEF,DEF,DEF,DEF,DEF},{DEF,DEF,DEF,DEF,DEF}}
247};
248
249/* 5' dangling ends (unpaird base stacks on first paired base) */
250PRIVATE int dangle5_37_184[NBPAIRS+1][5]=
251{/* @ A C G U */
252 { INF, INF, INF, INF, INF}, /* no pair */
253 { INF, -50, -30, -20, -10}, /* CG (stacks on C) */
254 { INF, -20, -30, -0, -0}, /* GC (stacks on G) */
255 { INF, -30, -30, -40, -20}, /* GU */
256 { INF, -30, -10, -20, -20}, /* UG */
257 { INF, -30, -30, -40, -20}, /* AU */
258 { INF, -30, -10, -20, -20}, /* UA */
259 { 0, 0, 0, 0, 0} /* @ */
260};
261
262/* 3' dangling ends (unpaired base stacks on second paired base */
263PRIVATE int dangle3_37_184[NBPAIRS+1][5]=
264{/* @ A C G U */
265 { INF, INF, INF, INF, INF}, /* no pair */
266 { INF, -110, -40, -130, -60}, /* CG (stacks on G) */
267 { INF, -170, -80, -170, -120}, /* GC */
268 { INF, -70, -10, -70, -10}, /* GU */
269 { INF, -80, -50, -80, -60}, /* UG */
270 { INF, -70, -10, -70, -10}, /* AU */
271 { INF, -80, -50, -80, -60}, /* UA */
272 { 0, 0, 0, 0, 0} /* @ */
273};
274
275/* enthalpies for temperature scaling */
276PRIVATE int dangle3_H_184[NBPAIRS+1][5] =
277{/* @ A C G U */
278 { INF, INF, INF, INF, INF}, /* no pair */
279 { 0, -740, -280, -640, -360},
280 { 0, -900, -410, -860, -750},
281 { 0, -740, -240, -720, -490},
282 { 0, -490, -90, -550, -230},
283 { 0, -570, -70, -580, -220},
284 { 0, -490, -90, -550, -230},
285 { 0, 0, 0, 0, 0}
286};
287
288PRIVATE int dangle5_H_184[NBPAIRS+1][5] =
289{/* @ A C G U */
290 { INF, INF, INF, INF, INF}, /* no pair */
291 { 0, -240, 330, 80, -140},
292 { 0, -160, 70, -460, -40},
293 { 0, 160, 220, 70, 310},
294 { 0, -150, 510, 10, 100},
295 { 0, 160, 220, 70, 310},
296 { 0, -50, 690, -60, -60},
297 { 0, 0, 0, 0, 0}
298};
299
300
301/* constants for linearly destabilizing contributions for multi-loops
302 F = ML_closing + ML_intern*k + ML_BASE*u */
303/* old versions erroneously used ML_intern*(k-1) */
304PRIVATE int ML_BASE37_184 = 0;
305PRIVATE int ML_closing37_184 = 340;
306PRIVATE int ML_intern37_184 = 40;
307
308/* Ninio-correction for asymmetric internal loops with branches n1 and n2 */
309/* ninio_energy = min{max_ninio, |n1-n2|*F_ninio[min{4.0, n1, n2}] } */
310PRIVATE int MAX_NINIO_184 = 300; /* maximum correction */
311PRIVATE int F_ninio37_184[5] = { 0, 40, 50, 20, 10 }; /* only F[2] used */
312
313/* stabilizing contribution due to special hairpins of size 4 (tetraloops) */
314
315PRIVATE char Tetraloops_184[1400] = /* place for up to 200 tetra loops */
316 "GGGGAC "
317 "GGUGAC "
318 "CGAAAG "
319 "GGAGAC "
320 "CGCAAG "
321 "GGAAAC "
322 "CGGAAG "
323 "CUUCGG "
324 "CGUGAG "
325 "CGAAGG "
326 "CUACGG "
327 "GGCAAC "
328 "CGCGAG "
329 "UGAGAG "
330 "CGAGAG "
331 "AGAAAU "
332 "CGUAAG "
333 "CUAACG "
334 "UGAAAG "
335 "GGAAGC "
336 "GGGAAC "
337 "UGAAAA "
338 "AGCAAU "
339 "AGUAAU "
340 "CGGGAG "
341 "AGUGAU "
342 "GGCGAC "
343 "GGGAGC "
344 "GUGAAC "
345 "UGGAAA "
346;
347
348PRIVATE int TETRA_ENERGY37_184[200] = {
349 -300, -300, -300, -300, -300, -300, -300, -300, -300, -250, -250, -250,
350 -250, -250, -200, -200, -200, -200, -200, -150, -150, -150, -150, -150,
351 -150, -150, -150, -150, -150, -150};
352
353PRIVATE int TETRA_ENTH37_184 = -400;
354
355PRIVATE char Triloops_184[241] = "";
356
357PRIVATE int Triloop_E37_184[40];
358
359/* penalty for AU (or GU) terminating helix) */
360/* mismatches already contain these */
361PRIVATE int TerminalAU_184 = 50;
362
363/* penalty for forming a bi-molecular duplex */
364PRIVATE int DuplexInit_184 = 410;
365
366#endif
#define K0
Definition energy_const.h:14
#define NBPAIRS
Definition energy_const.h:24