1 /*
2    prototypes for energy_par.c
3 */
4 
5 #ifndef VIENNA_RNA_PACKAGE_PARAMS_DEFAULT_H
6 #define VIENNA_RNA_PACKAGE_PARAMS_DEFAULT_H
7 
8 #include <ViennaRNA/params/constants.h>
9 
10 #define PUBLIC
11 
12 
13 extern double lxc37;   /* parameter for logarithmic loop
14 			  energy extrapolation            */
15 
16 extern int stack37[NBPAIRS+1][NBPAIRS+1];
17 extern int stackdH[NBPAIRS+1][NBPAIRS+1]; /* stack enthalpies */
18 
19 extern int hairpin37[31];
20 extern int hairpindH[31];
21 extern int bulge37[31];
22 extern int bulgedH[31];
23 extern int internal_loop37[31];
24 extern int internal_loopdH[31];
25 extern int mismatchI37[NBPAIRS+1][5][5];  /* interior loop mismatches */
26 extern int mismatchIdH[NBPAIRS+1][5][5];  /* interior loop mismatches */
27 extern int mismatch1nI37[NBPAIRS+1][5][5];  /* interior loop mismatches */
28 extern int mismatch23I37[NBPAIRS+1][5][5];  /* interior loop mismatches */
29 extern int mismatch1nIdH[NBPAIRS+1][5][5];  /* interior loop mismatches */
30 extern int mismatch23IdH[NBPAIRS+1][5][5];  /* interior loop mismatches */
31 extern int mismatchH37[NBPAIRS+1][5][5];  /* same for hairpins */
32 extern int mismatchM37[NBPAIRS+1][5][5];  /* same for multiloops */
33 extern int mismatchHdH[NBPAIRS+1][5][5];  /* same for hairpins */
34 extern int mismatchMdH[NBPAIRS+1][5][5];  /* same for multiloops */
35 extern int mismatchExt37[NBPAIRS+1][5][5];
36 extern int mismatchExtdH[NBPAIRS+1][5][5];
37 
38 extern int dangle5_37[NBPAIRS+1][5];      /* 5' dangle exterior of pair */
39 extern int dangle3_37[NBPAIRS+1][5];      /* 3' dangle */
40 extern int dangle3_dH[NBPAIRS+1][5];       /* corresponding enthalpies */
41 extern int dangle5_dH[NBPAIRS+1][5];
42 
43 extern int int11_37[NBPAIRS+1][NBPAIRS+1][5][5]; /* 1x1 interior loops */
44 extern int int11_dH[NBPAIRS+1][NBPAIRS+1][5][5];
45 
46 extern int int21_37[NBPAIRS+1][NBPAIRS+1][5][5][5]; /* 2x1 interior loops */
47 extern int int21_dH[NBPAIRS+1][NBPAIRS+1][5][5][5];
48 
49 extern int int22_37[NBPAIRS+1][NBPAIRS+1][5][5][5][5]; /* 2x2 interior loops */
50 extern int int22_dH[NBPAIRS+1][NBPAIRS+1][5][5][5][5];
51 
52 /* constants for linearly destabilizing contributions for multi-loops
53    F = ML_closing + ML_intern*(k-1) + ML_BASE*u  */
54 extern int ML_BASE37;
55 extern int ML_BASEdH;
56 extern int ML_closing37;
57 extern int ML_closingdH;
58 extern int ML_intern37;
59 extern int ML_interndH;
60 
61 extern int TripleC37;
62 extern int TripleCdH;
63 extern int MultipleCA37;
64 extern int MultipleCAdH;
65 extern int MultipleCB37;
66 extern int MultipleCBdH;
67 
68 /* Ninio-correction for asymmetric internal loops with branches n1 and n2 */
69 /*    ninio_energy = min{max_ninio, |n1-n2|*F_ninio[min{4.0, n1, n2}] } */
70 extern int  MAX_NINIO;                   /* maximum correction */
71 extern int ninio37;
72 extern int niniodH;
73 /* penalty for helices terminated by AU (actually not GC) */
74 extern int TerminalAU37;
75 extern int TerminalAUdH;
76 /* penalty for forming bi-molecular duplex */
77 extern int DuplexInit37;
78 extern int DuplexInitdH;
79 /* stabilizing contribution due to special hairpins of size 4 (tetraloops) */
80 extern char Tetraloops[281];  /* string containing the special tetraloops */
81 extern int  Tetraloop37[40];  /* Bonus energy for special tetraloops */
82 extern int  TetraloopdH[40];
83 extern char Triloops[241];    /* string containing the special triloops */
84 extern int  Triloop37[40]; /* Bonus energy for special Triloops */
85 extern int  TriloopdH[40]; /* Bonus energy for special Triloops */
86 extern char Hexaloops[361];    /* string containing the special triloops */
87 extern int  Hexaloop37[40]; /* Bonus energy for special Triloops */
88 extern int  HexaloopdH[40]; /* Bonus energy for special Triloops */
89 
90 extern int GQuadAlpha37;
91 extern int GQuadAlphadH;
92 extern int GQuadBeta37;
93 extern int GQuadBetadH;
94 extern int GQuadLayerMismatch37;  /* penalty per incompatible gquad layer in a sub-alignment (applied twice for inner layers) */
95 extern int GQuadLayerMismatchH;
96 extern int GQuadLayerMismatchMax; /* maximum number of mismatching sequences in the alignment when gquad should be formed */
97 
98 extern double Tmeasure;       /* temperature of param measurements */
99 
100 #endif
101