1 #ifndef __VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H__
2 #define __VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H__
13 #define FLT_OR_DBL double
15 #define FLT_OR_DBL float
34 #define VRNA_GQUAD_MAX_STACK_SIZE 7
35 #define VRNA_GQUAD_MIN_STACK_SIZE 2
36 #define VRNA_GQUAD_MAX_LINKER_LENGTH 15
37 #define VRNA_GQUAD_MIN_LINKER_LENGTH 1
38 #define VRNA_GQUAD_MIN_BOX_SIZE ((4*VRNA_GQUAD_MIN_STACK_SIZE)+(3*VRNA_GQUAD_MIN_LINKER_LENGTH))
39 #define VRNA_GQUAD_MAX_BOX_SIZE ((4*VRNA_GQUAD_MAX_STACK_SIZE)+(3*VRNA_GQUAD_MAX_LINKER_LENGTH))
132 int mismatchExt[
NBPAIRS+1][5][5];
133 int mismatchI[
NBPAIRS+1][5][5];
134 int mismatch1nI[
NBPAIRS+1][5][5];
135 int mismatch23I[
NBPAIRS+1][5][5];
136 int mismatchH[
NBPAIRS+1][5][5];
137 int mismatchM[
NBPAIRS+1][5][5];
150 int Tetraloop_E[200];
151 char Tetraloops[1401];
155 char Hexaloops[1801];
159 int gquad [VRNA_GQUAD_MAX_STACK_SIZE + 1]
160 [3*VRNA_GQUAD_MAX_LINKER_LENGTH + 1];
174 double exphairpin[31];
177 double expmismatchExt[
NBPAIRS+1][5][5];
178 double expmismatchI[
NBPAIRS+1][5][5];
179 double expmismatch23I[
NBPAIRS+1][5][5];
180 double expmismatch1nI[
NBPAIRS+1][5][5];
181 double expmismatchH[
NBPAIRS+1][5][5];
182 double expmismatchM[
NBPAIRS+1][5][5];
183 double expdangle5[
NBPAIRS+1][5];
184 double expdangle3[
NBPAIRS+1][5];
194 double expDuplexInit;
198 char Tetraloops[1401];
199 double expTriloop[40];
201 char Hexaloops[1801];
203 double expMultipleCA;
204 double expMultipleCB;
205 double expgquad[VRNA_GQUAD_MAX_STACK_SIZE + 1]
206 [3*VRNA_GQUAD_MAX_LINKER_LENGTH + 1];
328 typedef struct move {
338 typedef struct intermediate {
348 typedef struct path {
421 double energy_backtrack;
422 double opening_backtrack_x;
423 double opening_backtrack_y;
443 typedef struct node {
468 float fullStemEnergy;
560 short *reference_pt1;
561 short *reference_pt2;
564 unsigned int seq_length;
583 int **l_min_values_m;
584 int **l_max_values_m;
588 int **l_min_values_m1;
589 int **l_max_values_m1;
590 int *k_min_values_m1;
591 int *k_max_values_m1;
593 int **l_min_values_f;
594 int **l_max_values_f;
598 int **l_min_values_f3;
599 int **l_max_values_f3;
600 int *k_min_values_f3;
601 int *k_max_values_f3;
603 int **l_min_values_m2;
604 int **l_max_values_m2;
605 int *k_min_values_m2;
606 int *k_max_values_m2;
608 int *l_min_values_fc;
609 int *l_max_values_fc;
613 int *l_min_values_fcH;
614 int *l_max_values_fcH;
615 int k_min_values_fcH;
616 int k_max_values_fcH;
618 int *l_min_values_fcI;
619 int *l_max_values_fcI;
620 int k_min_values_fcI;
621 int k_max_values_fcI;
623 int *l_min_values_fcM;
624 int *l_max_values_fcM;
625 int k_min_values_fcM;
626 int k_max_values_fcM;
642 unsigned long ***N_F5;
643 unsigned long ***N_C;
644 unsigned long ***N_M;
645 unsigned long ***N_M1;
691 short *reference_pt1;
692 short *reference_pt2;
703 unsigned int seq_length;
721 int **l_min_values_b;
722 int **l_max_values_b;
726 int **l_min_values_m;
727 int **l_max_values_m;
731 int **l_min_values_m1;
732 int **l_max_values_m1;
733 int *k_min_values_m1;
734 int *k_max_values_m1;
736 int **l_min_values_m2;
737 int **l_max_values_m2;
738 int *k_min_values_m2;
739 int *k_max_values_m2;
741 int *l_min_values_qc;
742 int *l_max_values_qc;
746 int *l_min_values_qcH;
747 int *l_max_values_qcH;
748 int k_min_values_qcH;
749 int k_max_values_qcH;
751 int *l_min_values_qcI;
752 int *l_max_values_qcI;
753 int k_min_values_qcI;
754 int k_max_values_qcI;
756 int *l_min_values_qcM;
757 int *l_max_values_qcM;
758 int k_min_values_qcM;
759 int k_max_values_qcM;
765 FLT_OR_DBL *Q_M1_rem;
766 FLT_OR_DBL *Q_M2_rem;