RNAlib-2.1.9h
data_structures.h
Go to the documentation of this file.
1#ifndef __VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H__
2#define __VIENNA_RNA_PACKAGE_DATA_STRUCTURES_H__
3
4#include "energy_const.h"
10/* to use floats instead of doubles in pf_fold() comment next line */
11#define LARGE_PF
12#ifdef LARGE_PF
13#define FLT_OR_DBL double
14#else
15#define FLT_OR_DBL float
16#endif
17
18#ifndef MAXALPHA
22#define MAXALPHA 20
23#endif
24
28#define MAXDOS 1000
29
30#define VRNA_GQUAD_MAX_STACK_SIZE 7
31#define VRNA_GQUAD_MIN_STACK_SIZE 2
32#define VRNA_GQUAD_MAX_LINKER_LENGTH 15
33#define VRNA_GQUAD_MIN_LINKER_LENGTH 1
34#define VRNA_GQUAD_MIN_BOX_SIZE ((4*VRNA_GQUAD_MIN_STACK_SIZE)+(3*VRNA_GQUAD_MIN_LINKER_LENGTH))
35#define VRNA_GQUAD_MAX_BOX_SIZE ((4*VRNA_GQUAD_MAX_STACK_SIZE)+(3*VRNA_GQUAD_MAX_LINKER_LENGTH))
36
37
38/*
39* ############################################################
40* Here are the type definitions of various datastructures
41* shared among the Vienna RNA Package
42* ############################################################
43*/
44
48typedef struct plist {
49 int i;
50 int j;
51 float p;
52 int type;
53} plist;
54
58typedef struct cpair {
59 int i,j,mfe;
60 float p, hue, sat;
61} cpair;
62
67typedef struct {
68 float X; /* X coords */
69 float Y; /* Y coords */
71
75typedef struct sect {
76 int i;
77 int j;
78 int ml;
79} sect;
80
84typedef struct bondT {
85 unsigned int i;
86 unsigned int j;
87} bondT;
88
92typedef struct bondTEn {
93 int i;
94 int j;
95 int energy;
96} bondTEn;
97
102typedef struct{
110 int noLP;
111 int noGU;
113 int logML;
114 int circ;
115 int gquad;
118
122typedef struct{
123 int id;
124 double temperature;
125
126 /* RNA, RNA-DNA, DNA params merged */
127 int stack[NBPAIRS_HYBRID+1][NBPAIRS_HYBRID+1];
134 int dangle5[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID];
135 int dangle3[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID];
139 int MLintern[NBPAIRS_HYBRID+1];
140 int TerminalAU_t[NBPAIRS_HYBRID+1];
141
142 int gquad [VRNA_GQUAD_MAX_STACK_SIZE + 1]
143 [3*VRNA_GQUAD_MAX_LINKER_LENGTH + 1];
144
145 int TripleC;
146 int MultipleCA;
147 int MultipleCB;
148 int TerminalAU;
149 int DuplexInit;
150
151 /* RNA params */
152 int hairpin[31];
153 int bulge[MAXLOOP+1];
154 int internal_loop[MAXLOOP+1];
155 int ninio[NNUCLEOTIDES_HYBRID];
156 double lxc;
157 int MLbase;
158 int MLclosing;
159 int Tetraloop_E[200];
160 char Tetraloops[1401];
161 int Triloop_E[40];
162 char Triloops[241];
163 int Hexaloop_E[40];
164 char Hexaloops[1801];
165
166 /* hybrid params */
167 int hairpin_RD[31];
168 int bulge_RD[MAXLOOP+1];
169 int internal_loop_RD[MAXLOOP+1];
170 int ninio_RD[5];
171 double lxc_RD;
172 int MLbase_RD;
173 int MLclosing_RD;
174 int Tetraloop_E_RD[200];
175 char Tetraloops_RD[1401];
176 int Triloop_E_RD[40];
177 char Triloops_RD[241];
178 int Hexaloop_E_RD[40];
179 char Hexaloops_RD[1801];
180
181 /* DNA params */
182 int hairpin_D[31];
183 int bulge_D[MAXLOOP+1];
184 int internal_loop_D[MAXLOOP+1];
185 int ninio_D[5];
186 double lxc_D;
187 int MLbase_D;
188 int MLclosing_D;
189 int Tetraloop_E_D[200];
190 char Tetraloops_D[1401];
191 int Triloop_E_D[40];
192 char Triloops_D[241];
193 int Hexaloop_E_D[40];
194 char Hexaloops_D[1801];
195
198} paramT;
199
203typedef struct{
204 int id;
205 /* RNA, RNA-DNA, DNA params merged */
206 double expstack[NBPAIRS_HYBRID+1][NBPAIRS_HYBRID+1];
207 double expmismatchExt[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID][NNUCLEOTIDES_HYBRID];
209 double expmismatch23I[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID][NNUCLEOTIDES_HYBRID];
210 double expmismatch1nI[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID][NNUCLEOTIDES_HYBRID];
213 double expdangle5[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID];
214 double expdangle3[NBPAIRS_HYBRID+1][NNUCLEOTIDES_HYBRID];
218 double expMLintern[NBPAIRS_HYBRID+1];
219 double expTermAU_t[NBPAIRS_HYBRID+1];
220
221 double expDuplexInit;
222 double expTermAU;
223
224 /* RNA params */
225 double exphairpin[31];
226 double expbulge[MAXLOOP+1];
227 double expinternal[MAXLOOP+1];
228 double expninio[5][MAXLOOP+1];
229 double lxc;
230 double expMLbase;
231 double expMLclosing;
232 double exptetra[40];
233 double exptri[40];
234 double exphex[40];
235 char Tetraloops[1401];
236 char Triloops[241];
237 char Hexaloops[1801];
238
239 /* hybrid params */
240 double exphairpin_RD[31];
241 double expbulge_RD[MAXLOOP+1];
242 double expinternal_RD[MAXLOOP+1];
243 double expninio_RD[5][MAXLOOP+1];
244 double lxc_RD;
245 double expMLbase_RD;
246 double expMLclosing_RD;
247 double exptetra_RD[40];
248 double exptri_RD[40];
249 double exphex_RD[40];
250 char Tetraloops_RD[1401];
251 char Triloops_RD[241];
252 char Hexaloops_RD[1801];
253
254 /* DNA params */
255 double exphairpin_D[31];
256 double expbulge_D[MAXLOOP+1];
257 double expinternal_D[MAXLOOP+1];
258 double expninio_D[5][MAXLOOP+1];
259 double lxc_D;
260 double expMLbase_D;
261 double expMLclosing_D;
262 double exptetra_D[40];
263 double exptri_D[40];
264 double exphex_D[40];
265 char Tetraloops_D[1401];
266 char Triloops_D[241];
267 char Hexaloops_D[1801];
268
269 double expTripleC;
270 double expMultipleCA;
271 double expMultipleCB;
272 double expgquad[VRNA_GQUAD_MAX_STACK_SIZE + 1]
273 [3*VRNA_GQUAD_MAX_LINKER_LENGTH + 1];
274
275 double kT;
276 double pf_scale;
278 double temperature;
279 double alpha;
287} pf_paramT;
288
289
290
291/*
292* ############################################################
293* SUBOPT data structures
294* ############################################################
295*/
296
297
301typedef struct {
302 int i;
303 int j;
304} PAIR;
305
309typedef struct {
310 int i;
311 int j;
312 int array_flag;
313} INTERVAL;
314
318typedef struct {
319 float energy;
320 char *structure;
321} SOLUTION;
322
323/*
324* ############################################################
325* COFOLD data structures
326* ############################################################
327*/
328
332typedef struct cofoldF {
333 /* free energies for: */
334 double F0AB;
335 double FAB;
336 double FcAB;
337 double FA;
338 double FB;
339} cofoldF;
340
344typedef struct ConcEnt {
345 double A0;
346 double B0;
347 double ABc;
348 double AAc;
349 double BBc;
350 double Ac;
351 double Bc;
352} ConcEnt;
353
357typedef struct pairpro{
358 struct plist *AB;
359 struct plist *AA;
360 struct plist *A;
361 struct plist *B;
362 struct plist *BB;
363}pairpro;
364
375typedef struct {
376 unsigned i;
377 unsigned j;
378 float p;
379 float ent;
380 short bp[8];
381 char comp;
382} pair_info;
383
384
385/*
386* ############################################################
387* FINDPATH data structures
388* ############################################################
389*/
390
394typedef struct move {
395 int i; /* i,j>0 insert; i,j<0 delete */
396 int j;
397 int when; /* 0 if still available, else resulting distance from start */
398 int E;
399} move_t;
400
404typedef struct intermediate {
405 short *pt;
406 int Sen;
410
414typedef struct path {
415 double en;
416 char *s;
417} path_t;
418
419/*
420* ############################################################
421* RNAup data structures
422* ############################################################
423*/
424
428typedef struct pu_contrib {
429 double **H;
430 double **I;
431 double **M;
432 double **E;
433 int length;
434 int w;
435} pu_contrib;
436
440typedef struct interact {
441 double *Pi;
442 double *Gi;
443 double Gikjl;
445 double Gikjl_wo;
446 int i;
447 int k;
448 int j;
449 int l;
450 int length;
451} interact;
452
456typedef struct pu_out {
457 int len;
458 int u_vals;
460 char **header;
461 double **u_values;
462} pu_out;
463
467typedef struct constrain{
468 int *indx;
469 char *ptype;
470} constrain;
471
472/*
473* ############################################################
474* RNAduplex data structures
475* ############################################################
476*/
477
481typedef struct {
482 int i;
483 int j;
484 int end;
485 char *structure;
486 double energy;
487 double energy_backtrack;
488 double opening_backtrack_x;
489 double opening_backtrack_y;
490 int offset;
491 double dG1;
492 double dG2;
493 double ddG;
494 int tb;
495 int te;
496 int qb;
497 int qe;
498} duplexT;
499
500/*
501* ############################################################
502* RNAsnoop data structures
503* ############################################################
504*/
505
509typedef struct node {
510 int k;
511 int energy;
512 struct node *next;
513} folden;
514
518typedef struct {
519 int i;
520 int j;
521 int u;
522 char *structure;
523 float energy;
524 float Duplex_El;
525 float Duplex_Er;
526 float Loop_E;
527 float Loop_D;
528 float pscd;
529 float psct;
530 float pscg;
531 float Duplex_Ol;
532 float Duplex_Or;
533 float Duplex_Ot;
534 float fullStemEnergy;
535} snoopT;
536
537
538
539
540
541
542
543/*
544* ############################################################
545* PKplex data structures
546* ############################################################
547*/
548
552typedef struct dupVar{
553 int i;
554 int j;
555 int end;
556 char *pk_helix;
557 char *structure;
558 double energy;
559 int offset;
560 double dG1;
561 double dG2;
562 double ddG;
563 int tb;
564 int te;
565 int qb;
566 int qe;
567 int inactive;
568 int processed;
569} dupVar;
570
571
572
573/*
574* ############################################################
575* 2Dfold data structures
576* ############################################################
577*/
578
593typedef struct{
594 int k;
595 int l;
596 float en;
597 char *s;
599
605typedef struct{
608 char *ptype;
609 char *sequence;
610 short *S, *S1;
611 unsigned int maxD1;
612 unsigned int maxD2;
615 unsigned int *mm1;
616 unsigned int *mm2;
618 int *my_iindx;
620 double temperature;
621
622 unsigned int *referenceBPs1;
623 unsigned int *referenceBPs2;
624 unsigned int *bpdist;
626 short *reference_pt1;
627 short *reference_pt2;
628 int circ;
629 int dangles;
630 unsigned int seq_length;
631
632 int ***E_F5;
633 int ***E_F3;
634 int ***E_C;
635 int ***E_M;
636 int ***E_M1;
637 int ***E_M2;
638
639 int **E_Fc;
640 int **E_FcH;
641 int **E_FcI;
642 int **E_FcM;
643
644 int **l_min_values;
645 int **l_max_values;
646 int *k_min_values;
647 int *k_max_values;
648
649 int **l_min_values_m;
650 int **l_max_values_m;
651 int *k_min_values_m;
652 int *k_max_values_m;
653
654 int **l_min_values_m1;
655 int **l_max_values_m1;
656 int *k_min_values_m1;
657 int *k_max_values_m1;
658
659 int **l_min_values_f;
660 int **l_max_values_f;
661 int *k_min_values_f;
662 int *k_max_values_f;
663
664 int **l_min_values_f3;
665 int **l_max_values_f3;
666 int *k_min_values_f3;
667 int *k_max_values_f3;
668
669 int **l_min_values_m2;
670 int **l_max_values_m2;
671 int *k_min_values_m2;
672 int *k_max_values_m2;
673
674 int *l_min_values_fc;
675 int *l_max_values_fc;
676 int k_min_values_fc;
677 int k_max_values_fc;
678
679 int *l_min_values_fcH;
680 int *l_max_values_fcH;
681 int k_min_values_fcH;
682 int k_max_values_fcH;
683
684 int *l_min_values_fcI;
685 int *l_max_values_fcI;
686 int k_min_values_fcI;
687 int k_max_values_fcI;
688
689 int *l_min_values_fcM;
690 int *l_max_values_fcM;
691 int k_min_values_fcM;
692 int k_max_values_fcM;
693
694 /* auxilary arrays for remaining set of coarse graining (k,l) > (k_max, l_max) */
695 int *E_F5_rem;
696 int *E_F3_rem;
697 int *E_C_rem;
698 int *E_M_rem;
699 int *E_M1_rem;
700 int *E_M2_rem;
701
702 int E_Fc_rem;
703 int E_FcH_rem;
704 int E_FcI_rem;
705 int E_FcM_rem;
706
707#ifdef COUNT_STATES
708 unsigned long ***N_F5;
709 unsigned long ***N_C;
710 unsigned long ***N_M;
711 unsigned long ***N_M1;
712#endif
714
727typedef struct{
728 int k;
729 int l;
730 FLT_OR_DBL q;
732
739typedef struct{
740
741 unsigned int alloc;
742 char *ptype;
743 char *sequence;
744 short *S, *S1;
745 unsigned int maxD1;
746 unsigned int maxD2;
748 double temperature; /* temperature in last call to scale_pf_params */
749 double init_temp; /* temperature in last call to scale_pf_params */
750 FLT_OR_DBL *scale;
751 FLT_OR_DBL pf_scale;
752 pf_paramT *pf_params; /* holds all [unscaled] pf parameters */
753
754 int *my_iindx;
755 int *jindx;
757 short *reference_pt1;
758 short *reference_pt2;
759
760 unsigned int *referenceBPs1;
761 unsigned int *referenceBPs2;
762 unsigned int *bpdist;
764 unsigned int *mm1;
765 unsigned int *mm2;
767 int circ;
768 int dangles;
769 unsigned int seq_length;
770
771 FLT_OR_DBL ***Q;
772 FLT_OR_DBL ***Q_B;
773 FLT_OR_DBL ***Q_M;
774 FLT_OR_DBL ***Q_M1;
775 FLT_OR_DBL ***Q_M2;
776
777 FLT_OR_DBL **Q_c;
778 FLT_OR_DBL **Q_cH;
779 FLT_OR_DBL **Q_cI;
780 FLT_OR_DBL **Q_cM;
781
782 int **l_min_values;
783 int **l_max_values;
784 int *k_min_values;
785 int *k_max_values;
786
787 int **l_min_values_b;
788 int **l_max_values_b;
789 int *k_min_values_b;
790 int *k_max_values_b;
791
792 int **l_min_values_m;
793 int **l_max_values_m;
794 int *k_min_values_m;
795 int *k_max_values_m;
796
797 int **l_min_values_m1;
798 int **l_max_values_m1;
799 int *k_min_values_m1;
800 int *k_max_values_m1;
801
802 int **l_min_values_m2;
803 int **l_max_values_m2;
804 int *k_min_values_m2;
805 int *k_max_values_m2;
806
807 int *l_min_values_qc;
808 int *l_max_values_qc;
809 int k_min_values_qc;
810 int k_max_values_qc;
811
812 int *l_min_values_qcH;
813 int *l_max_values_qcH;
814 int k_min_values_qcH;
815 int k_max_values_qcH;
816
817 int *l_min_values_qcI;
818 int *l_max_values_qcI;
819 int k_min_values_qcI;
820 int k_max_values_qcI;
821
822 int *l_min_values_qcM;
823 int *l_max_values_qcM;
824 int k_min_values_qcM;
825 int k_max_values_qcM;
826
827 /* auxilary arrays for remaining set of coarse graining (k,l) > (k_max, l_max) */
828 FLT_OR_DBL *Q_rem;
829 FLT_OR_DBL *Q_B_rem;
830 FLT_OR_DBL *Q_M_rem;
831 FLT_OR_DBL *Q_M1_rem;
832 FLT_OR_DBL *Q_M2_rem;
833
834 FLT_OR_DBL Q_c_rem;
835 FLT_OR_DBL Q_cH_rem;
836 FLT_OR_DBL Q_cI_rem;
837 FLT_OR_DBL Q_cM_rem;
838
840
841#endif
#define NBPAIRS_HYBRID
Definition energy_const.h:34
#define NNUCLEOTIDES_HYBRID
Definition energy_const.h:36
#define MAXLOOP
Definition energy_const.h:28
int gquad
Allow G-quadruplex formation.
int dangles
Switch the energy model for dangling end contributions (0, 1, 2, 3)
double temperature
Rescale energy parameters to a temperature in degC.
double pf_scale
A scaling factor used by pf_fold() to avoid overflows.
int circ
backward compatibility variable.. this does not effect anything
this is a workarround for the SWIG Perl Wrapper RNA plot function that returns an array of type COORD...
Definition data_structures.h:67
Definition data_structures.h:344
double ABc
End concentration AB.
Definition data_structures.h:347
double A0
start concentration A
Definition data_structures.h:345
double B0
start concentration B
Definition data_structures.h:346
Sequence interval stack element used in subopt.c.
Definition data_structures.h:309
Base pair data structure used in subopt.c.
Definition data_structures.h:301
Solution element from subopt.c.
Definition data_structures.h:318
float energy
Free Energy of structure in kcal/mol.
Definition data_structures.h:319
char * structure
Structure in dot-bracket notation.
Definition data_structures.h:320
Solution element returned from TwoDfoldList.
Definition data_structures.h:593
int k
Distance to first reference.
Definition data_structures.h:594
float en
Free energy in kcal/mol.
Definition data_structures.h:596
int l
Distance to second reference.
Definition data_structures.h:595
char * s
MFE representative structure in dot-bracket notation.
Definition data_structures.h:597
Variables compound for 2Dfold MFE folding.
Definition data_structures.h:605
unsigned int maxD2
Maximum allowed base pair distance to second reference.
Definition data_structures.h:612
int * my_iindx
Index for moving in quadratic distancy dimensions.
Definition data_structures.h:618
unsigned int * mm2
Maximum matching matrix, reference struct 2 disallowed.
Definition data_structures.h:616
char * sequence
The input sequence
Definition data_structures.h:609
unsigned int * referenceBPs1
Matrix containing number of basepairs of reference structure1 in interval [i,j].
Definition data_structures.h:622
unsigned int maxD1
Maximum allowed base pair distance to first reference.
Definition data_structures.h:611
unsigned int * mm1
Maximum matching matrix, reference struct 1 disallowed.
Definition data_structures.h:615
unsigned int * referenceBPs2
Matrix containing number of basepairs of reference structure2 in interval [i,j].
Definition data_structures.h:623
short * S1
The input sequences in numeric form.
Definition data_structures.h:610
paramT * P
Precomputed energy parameters and model details.
Definition data_structures.h:606
int do_backtrack
Flag whether to do backtracing of the structure(s) or not.
Definition data_structures.h:607
char * ptype
Precomputed array of pair types.
Definition data_structures.h:608
unsigned int * bpdist
Matrix containing base pair distance of reference structure 1 and 2 on interval [i,...
Definition data_structures.h:624
Solution element returned from TwoDpfoldList.
Definition data_structures.h:727
int k
Distance to first reference.
Definition data_structures.h:728
int l
Distance to second reference.
Definition data_structures.h:729
double q
partition function
Definition data_structures.h:730
Variables compound for 2Dfold partition function folding.
Definition data_structures.h:739
int * jindx
Index for moving in the triangular matrix qm1.
Definition data_structures.h:755
unsigned int * referenceBPs2
Matrix containing number of basepairs of reference structure2 in interval [i,j].
Definition data_structures.h:761
short * S1
The input sequences in numeric form.
Definition data_structures.h:744
char * sequence
The input sequence
Definition data_structures.h:743
char * ptype
Precomputed array of pair types.
Definition data_structures.h:742
unsigned int maxD1
Maximum allowed base pair distance to first reference.
Definition data_structures.h:745
unsigned int * mm1
Maximum matching matrix, reference struct 1 disallowed.
Definition data_structures.h:764
unsigned int maxD2
Maximum allowed base pair distance to second reference.
Definition data_structures.h:746
int * my_iindx
Index for moving in quadratic distancy dimensions.
Definition data_structures.h:754
unsigned int * bpdist
Matrix containing base pair distance of reference structure 1 and 2 on interval [i,...
Definition data_structures.h:762
unsigned int * referenceBPs1
Matrix containing number of basepairs of reference structure1 in interval [i,j].
Definition data_structures.h:760
unsigned int * mm2
Maximum matching matrix, reference struct 2 disallowed.
Definition data_structures.h:765
Base pair with associated energy.
Definition data_structures.h:92
Base pair.
Definition data_structures.h:84
Definition data_structures.h:332
double FAB
all states with DuplexInit correction
Definition data_structures.h:335
double FA
monomer A
Definition data_structures.h:337
double FcAB
true hybrid states only
Definition data_structures.h:336
double FB
monomer B
Definition data_structures.h:338
double F0AB
Null model without DuplexInit.
Definition data_structures.h:334
constraints for cofolding
Definition data_structures.h:467
this datastructure is used as input parameter in functions of PS_dot.c
Definition data_structures.h:58
Definition data_structures.h:552
Definition data_structures.h:481
Definition data_structures.h:509
Definition data_structures.h:440
int l
j<l in shorter seq
Definition data_structures.h:449
double * Pi
probabilities of interaction
Definition data_structures.h:441
double Gikjl_wo
Gikjl without contributions for prob_unpaired.
Definition data_structures.h:445
double * Gi
free energies of interaction
Definition data_structures.h:442
int k
k<i in longer seq
Definition data_structures.h:447
int j
j<l in shorter seq
Definition data_structures.h:448
int i
k<i in longer seq
Definition data_structures.h:446
int length
length of longer sequence
Definition data_structures.h:450
double Gikjl
full free energy for interaction between [k,i] k<i in longer seq and [j,l] j<l in shorter seq
Definition data_structures.h:443
Definition data_structures.h:404
move_t * moves
remaining moves to target
Definition data_structures.h:408
short * pt
pair table
Definition data_structures.h:405
int Sen
saddle energy so far
Definition data_structures.h:406
int curr_en
current energy
Definition data_structures.h:407
The data structure that contains the complete model details used throughout the calculations.
Definition data_structures.h:102
int noGU
Do not allow GU pairs.
Definition data_structures.h:111
int canonicalBPonly
remove non-canonical bp's from constraint structures
Definition data_structures.h:116
int logML
Use logarithmic scaling for multi loops.
Definition data_structures.h:113
int circ
Assume molecule to be circular.
Definition data_structures.h:114
int noLP
Only consider canonical structures, i.e. no 'lonely' base pairs.
Definition data_structures.h:110
int dangles
Specifies the dangle model used in any energy evaluation (0,1,2 or 3)
Definition data_structures.h:103
int special_hp
Include special hairpin contributions for tri, tetra and hexaloops.
Definition data_structures.h:109
int gquad
Include G-quadruplexes in structure prediction.
Definition data_structures.h:115
int noGUclosure
Do not allow loops to be closed by GU pair.
Definition data_structures.h:112
Definition data_structures.h:394
A base pair info structure.
Definition data_structures.h:375
unsigned j
nucleotide position j
Definition data_structures.h:377
char comp
1 iff pair is in mfe structure
Definition data_structures.h:381
unsigned i
nucleotide position i
Definition data_structures.h:376
float ent
Pseudo entropy for .
Definition data_structures.h:379
float p
Probability.
Definition data_structures.h:378
Definition data_structures.h:357
The datastructure that contains temperature scaled energy parameters.
Definition data_structures.h:122
model_detailsT model_details
Model details to be used in the recursions.
Definition data_structures.h:196
Definition data_structures.h:414
The datastructure that contains temperature scaled Boltzmann weights of the energy parameters.
Definition data_structures.h:203
double alpha
Scaling factor for the thermodynamic temperature.
Definition data_structures.h:279
model_detailsT model_details
Model details to be used in the recursions.
Definition data_structures.h:286
double temperature
Temperature used for loop contribution scaling.
Definition data_structures.h:278
double pf_scale
Scaling factor to avoid over-/underflows.
Definition data_structures.h:276
this datastructure is used as input parameter in functions of PS_dot.h and others
Definition data_structures.h:48
contributions to p_u
Definition data_structures.h:428
double ** M
multi loops
Definition data_structures.h:431
int length
length of the input sequence
Definition data_structures.h:433
int w
longest unpaired region
Definition data_structures.h:434
double ** I
interior loops
Definition data_structures.h:430
double ** H
hairpin loops
Definition data_structures.h:429
double ** E
exterior loop
Definition data_structures.h:432
Collection of all free_energy of beeing unpaired values for output.
Definition data_structures.h:456
int len
sequence length
Definition data_structures.h:457
double ** u_values
(the -u values * [-c "SHIME"]) * seq len
Definition data_structures.h:461
int contribs
[-c "SHIME"]
Definition data_structures.h:459
int u_vals
number of different -u values
Definition data_structures.h:458
char ** header
header line
Definition data_structures.h:460
Stack of partial structures for backtracking.
Definition data_structures.h:75
Definition data_structures.h:518