RNAlib-2.2.0-RC3
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 
13 #include <ViennaRNA/energy_const.h>
14 #include <ViennaRNA/model.h>
15 #include <ViennaRNA/params.h>
16 
17 /* to use floats instead of doubles in pf_fold() comment next line */
18 #define LARGE_PF
19 
20 #ifdef LARGE_PF
21 #define FLT_OR_DBL double
22 #else
23 #define FLT_OR_DBL float
24 #endif
25 
26 #ifndef NBASES
27 #define NBASES 8
28 #endif
29 
33 #define MAXDOS 1000
34 
35 /*
36 * ############################################################
37 * Here are the type definitions of various datastructures
38 * shared among the Vienna RNA Package
39 * ############################################################
40 */
41 
45 typedef struct plist {
46  int i;
47  int j;
48  float p;
49  int type;
50 } plist;
51 
55 typedef struct cpair {
56  int i,j,mfe;
57  float p, hue, sat;
58 } cpair;
59 
60 
64 typedef struct sect {
65  int i;
66  int j;
67  int ml;
68 } sect;
69 
73 typedef struct bondT {
74  unsigned int i;
75  unsigned int j;
76 } bondT;
77 
81 typedef struct bondTEn {
82  int i;
83  int j;
84  int energy;
85 } bondTEn;
86 
87 
88 /*
89 * ############################################################
90 * SUBOPT data structures
91 * ############################################################
92 */
93 
97 typedef struct {
98  int i;
99  int j;
100 } PAIR;
101 
105 typedef struct {
106  int i;
107  int j;
108  int array_flag;
109 } INTERVAL;
110 
114 typedef struct {
115  float energy;
116  char *structure;
117 } SOLUTION;
118 
119 /*
120 * ############################################################
121 * COFOLD data structures
122 * ############################################################
123 */
124 
128 typedef struct cofoldF {
129  /* free energies for: */
130  double F0AB;
131  double FAB;
132  double FcAB;
133  double FA;
134  double FB;
135 } cofoldF;
136 
140 typedef struct ConcEnt {
141  double A0;
142  double B0;
143  double ABc;
144  double AAc;
145  double BBc;
146  double Ac;
147  double Bc;
148 } ConcEnt;
149 
153 typedef struct pairpro{
154  struct plist *AB;
155  struct plist *AA;
156  struct plist *A;
157  struct plist *B;
158  struct plist *BB;
159 } pairpro;
160 
171 typedef struct {
172  unsigned i;
173  unsigned j;
174  float p;
175  float ent;
176  short bp[8];
177  char comp;
178 } pair_info;
179 
180 
181 /*
182 * ############################################################
183 * FINDPATH data structures
184 * ############################################################
185 */
186 
190 typedef struct move {
191  int i; /* i,j>0 insert; i,j<0 delete */
192  int j;
193  int when; /* 0 if still available, else resulting distance from start */
194  int E;
195 } move_t;
196 
200 typedef struct intermediate {
201  short *pt;
202  int Sen;
203  int curr_en;
206 
210 typedef struct path {
211  double en;
212  char *s;
213 } path_t;
214 
215 /*
216 * ############################################################
217 * RNAup data structures
218 * ############################################################
219 */
220 
224 typedef struct pu_contrib {
225  double **H;
226  double **I;
227  double **M;
228  double **E;
229  int length;
230  int w;
231 } pu_contrib;
232 
236 typedef struct interact {
237  double *Pi;
238  double *Gi;
239  double Gikjl;
241  double Gikjl_wo;
242  int i;
243  int k;
244  int j;
245  int l;
246  int length;
247 } interact;
248 
252 typedef struct pu_out {
253  int len;
254  int u_vals;
255  int contribs;
256  char **header;
257  double **u_values;
258 } pu_out;
259 
263 typedef struct constrain{
264  int *indx;
265  char *ptype;
266 } constrain;
267 
268 /*
269 * ############################################################
270 * RNAduplex data structures
271 * ############################################################
272 */
273 
277 typedef struct {
278  int i;
279  int j;
280  int end;
281  char *structure;
282  double energy;
283  double energy_backtrack;
284  double opening_backtrack_x;
285  double opening_backtrack_y;
286  int offset;
287  double dG1;
288  double dG2;
289  double ddG;
290  int tb;
291  int te;
292  int qb;
293  int qe;
294 } duplexT;
295 
296 /*
297 * ############################################################
298 * RNAsnoop data structures
299 * ############################################################
300 */
301 
305 typedef struct node {
306  int k;
307  int energy;
308  struct node *next;
309 } folden;
310 
314 typedef struct {
315  int i;
316  int j;
317  int u;
318  char *structure;
319  float energy;
320  float Duplex_El;
321  float Duplex_Er;
322  float Loop_E;
323  float Loop_D;
324  float pscd;
325  float psct;
326  float pscg;
327  float Duplex_Ol;
328  float Duplex_Or;
329  float Duplex_Ot;
330  float fullStemEnergy;
331 } snoopT;
332 
333 
334 /*
335 * ############################################################
336 * PKplex data structures
337 * ############################################################
338 */
339 
343 typedef struct dupVar{
344  int i;
345  int j;
346  int end;
347  char *pk_helix;
348  char *structure;
349  double energy;
350  int offset;
351  double dG1;
352  double dG2;
353  double ddG;
354  int tb;
355  int te;
356  int qb;
357  int qe;
358  int inactive;
359  int processed;
360 } dupVar;
361 
367 /*
368 * ############################################################
369 * VRNA fold compound related functions
370 * ############################################################
371 */
372 
391 typedef enum {
399 } vrna_mx_t;
400 
401 
405 typedef struct{
409  vrna_mx_t type;
410  unsigned int length;
415 #if __STDC_VERSION__ >= 201112L
416  /* C11 support for unnamed unions/structs */
417  union {
418  struct {
419 #endif
420 
425  int *c;
426  int *f5;
427  int *f3;
428  int *fc;
429  int *fML;
430  int *fM1;
431  int *fM2;
432  int *ggg;
433  int Fc;
434  int FcH;
435  int FcI;
436  int FcM;
441 #if __STDC_VERSION__ >= 201112L
442  /* C11 support for unnamed unions/structs */
443  };
444  struct {
445 #endif
446 
452  int ***E_F5;
453  int **l_min_F5;
454  int **l_max_F5;
455  int *k_min_F5;
456  int *k_max_F5;
457 
458  int ***E_F3;
459  int **l_min_F3;
460  int **l_max_F3;
461  int *k_min_F3;
462  int *k_max_F3;
463 
464  int ***E_C;
465  int **l_min_C;
466  int **l_max_C;
467  int *k_min_C;
468  int *k_max_C;
469 
470  int ***E_M;
471  int **l_min_M;
472  int **l_max_M;
473  int *k_min_M;
474  int *k_max_M;
475 
476  int ***E_M1;
477  int **l_min_M1;
478  int **l_max_M1;
479  int *k_min_M1;
480  int *k_max_M1;
481 
482  int ***E_M2;
483  int **l_min_M2;
484  int **l_max_M2;
485  int *k_min_M2;
486  int *k_max_M2;
487 
488  int **E_Fc;
489  int *l_min_Fc;
490  int *l_max_Fc;
491  int k_min_Fc;
492  int k_max_Fc;
493 
494  int **E_FcH;
495  int *l_min_FcH;
496  int *l_max_FcH;
497  int k_min_FcH;
498  int k_max_FcH;
499 
500  int **E_FcI;
501  int *l_min_FcI;
502  int *l_max_FcI;
503  int k_min_FcI;
504  int k_max_FcI;
505 
506  int **E_FcM;
507  int *l_min_FcM;
508  int *l_max_FcM;
509  int k_min_FcM;
510  int k_max_FcM;
511 
512  /* auxilary arrays for remaining set of coarse graining (k,l) > (k_max, l_max) */
513  int *E_F5_rem;
514  int *E_F3_rem;
515  int *E_C_rem;
516  int *E_M_rem;
517  int *E_M1_rem;
518  int *E_M2_rem;
519 
520  int E_Fc_rem;
521  int E_FcH_rem;
522  int E_FcI_rem;
523  int E_FcM_rem;
524 
525 #ifdef COUNT_STATES
526  unsigned long ***N_F5;
527  unsigned long ***N_C;
528  unsigned long ***N_M;
529  unsigned long ***N_M1;
530 #endif
531 
536 #if __STDC_VERSION__ >= 201112L
537  /* C11 support for unnamed unions/structs */
538  }
539  };
540 #endif
541 } vrna_mx_mfe_t;
542 
546 typedef struct{
550  vrna_mx_t type;
551  unsigned int length;
552 
557 #if __STDC_VERSION__ >= 201112L
558  /* C11 support for unnamed unions/structs */
559  union {
560  struct {
561 #endif
562 
568  FLT_OR_DBL *q;
569  FLT_OR_DBL *qb;
570  FLT_OR_DBL *qm;
571  FLT_OR_DBL *qm1;
572  FLT_OR_DBL *probs;
573  FLT_OR_DBL *q1k;
574  FLT_OR_DBL *qln;
575  FLT_OR_DBL *G;
576 
577  FLT_OR_DBL qo;
578  FLT_OR_DBL *qm2;
579  FLT_OR_DBL qho;
580  FLT_OR_DBL qio;
581  FLT_OR_DBL qmo;
582 
583  FLT_OR_DBL *scale;
584  FLT_OR_DBL *expMLbase;
589 #if __STDC_VERSION__ >= 201112L
590  /* C11 support for unnamed unions/structs */
591  };
592  struct {
593 #endif
594 
600  FLT_OR_DBL ***Q;
601  int **l_min_Q;
602  int **l_max_Q;
603  int *k_min_Q;
604  int *k_max_Q;
605 
606 
607  FLT_OR_DBL ***Q_B;
608  int **l_min_Q_B;
609  int **l_max_Q_B;
610  int *k_min_Q_B;
611  int *k_max_Q_B;
612 
613  FLT_OR_DBL ***Q_M;
614  int **l_min_Q_M;
615  int **l_max_Q_M;
616  int *k_min_Q_M;
617  int *k_max_Q_M;
618 
619  FLT_OR_DBL ***Q_M1;
620  int **l_min_Q_M1;
621  int **l_max_Q_M1;
622  int *k_min_Q_M1;
623  int *k_max_Q_M1;
624 
625  FLT_OR_DBL ***Q_M2;
626  int **l_min_Q_M2;
627  int **l_max_Q_M2;
628  int *k_min_Q_M2;
629  int *k_max_Q_M2;
630 
631  FLT_OR_DBL **Q_c;
632  int *l_min_Q_c;
633  int *l_max_Q_c;
634  int k_min_Q_c;
635  int k_max_Q_c;
636 
637  FLT_OR_DBL **Q_cH;
638  int *l_min_Q_cH;
639  int *l_max_Q_cH;
640  int k_min_Q_cH;
641  int k_max_Q_cH;
642 
643  FLT_OR_DBL **Q_cI;
644  int *l_min_Q_cI;
645  int *l_max_Q_cI;
646  int k_min_Q_cI;
647  int k_max_Q_cI;
648 
649  FLT_OR_DBL **Q_cM;
650  int *l_min_Q_cM;
651  int *l_max_Q_cM;
652  int k_min_Q_cM;
653  int k_max_Q_cM;
654 
655  /* auxilary arrays for remaining set of coarse graining (k,l) > (k_max, l_max) */
656  FLT_OR_DBL *Q_rem;
657  FLT_OR_DBL *Q_B_rem;
658  FLT_OR_DBL *Q_M_rem;
659  FLT_OR_DBL *Q_M1_rem;
660  FLT_OR_DBL *Q_M2_rem;
661 
662  FLT_OR_DBL Q_c_rem;
663  FLT_OR_DBL Q_cH_rem;
664  FLT_OR_DBL Q_cI_rem;
665  FLT_OR_DBL Q_cM_rem;
670 #if __STDC_VERSION__ >= 201112L
671  /* C11 support for unnamed unions/structs */
672  };
673  };
674 #endif
675 } vrna_mx_pf_t;
676 
680 typedef enum {
683 } vrna_vc_t;
684 
685 
698 typedef struct{
699 
711  unsigned int length;
712  int cutpoint;
716  struct vrna_hc_t *hc;
724  int *iindx;
725  int *jindx;
731 #if __STDC_VERSION__ >= 201112L
732  /* C11 support for unnamed unions/structs */
733  union {
734  struct {
735 #endif
736 
741  char *sequence;
748  short *sequence_encoding2;
749  char *ptype;
763  struct vrna_sc_t *sc;
771 #if __STDC_VERSION__ >= 201112L
772  /* C11 support for unnamed unions/structs */
773  };
774  struct {
775 #endif
776 
781  char **sequences;
785  unsigned int n_seq;
788  char *cons_seq;
791  short *S_cons;
794  short **S;
797  short **S5;
800  short **S3;
803  char **Ss;
804  unsigned short **a2s;
805  int *pscore;
808  struct vrna_sc_t **scs;
811  int oldAliEn;
812 
816 #if __STDC_VERSION__ >= 201112L
817  };
818  };
819 #endif
820 
827  unsigned int maxD1;
828  unsigned int maxD2;
829  short *reference_pt1;
830  short *reference_pt2;
832  unsigned int *referenceBPs1;
833  unsigned int *referenceBPs2;
834  unsigned int *bpdist;
836  unsigned int *mm1;
837  unsigned int *mm2;
844 
845 
846 /* the definitions below should be used for functions that return/receive/destroy fold compound data structures */
847 
854 #define VRNA_OPTION_MFE 1
855 
862 #define VRNA_OPTION_PF 2
863 
864 #define VRNA_OPTION_HYBRID 4
865 
866 #define VRNA_OPTION_DIST_CLASS 16
867 
868 #define VRNA_OPTION_LFOLD 32
869 
879 #define VRNA_OPTION_EVAL_ONLY 8
880 
881 
882 
910 vrna_fold_compound *vrna_get_fold_compound( const char *sequence,
911  vrna_md_t *md_p,
912  unsigned int options);
913 
941 vrna_fold_compound *vrna_get_fold_compound_ali( const char **sequences,
942  vrna_md_t *md_p,
943  unsigned int options);
944 
945 
946 vrna_fold_compound *vrna_get_fold_compound_2D(const char *sequence,
947  const char *s1,
948  const char *s2,
949  vrna_md_t *md_p,
950  unsigned int options);
951 
965 
985 
1025 void vrna_exp_params_rescale(vrna_fold_compound *vc, double *mfe);
1026 
1035 
1044 
1053 
1058 #endif
int Sen
saddle energy so far
Definition: data_structures.h:202
int * f3
Energy of 3' end.
Definition: data_structures.h:427
Definition: data_structures.h:305
unsigned int length
Length of the sequence, therefore an indicator of the size of the DP matrices.
Definition: data_structures.h:410
double FAB
all states with DuplexInit correction
Definition: data_structures.h:131
int * ggg
Energies of g-quadruplexes.
Definition: data_structures.h:432
unsigned int * referenceBPs2
Matrix containing number of basepairs of reference structure2 in interval [i,j].
Definition: data_structures.h:833
int w
longest unpaired region
Definition: data_structures.h:230
int * c
Energy array, given that i-j pair.
Definition: data_structures.h:425
DP matrices suitable for local structure prediction.
Definition: data_structures.h:393
vrna_fold_compound * vrna_get_fold_compound_ali(const char **sequences, vrna_md_t *md_p, unsigned int options)
Retrieve a vrna_fold_compound data structure for sequence alignments.
struct vrna_hc_t * hc
The hard constraints data structure used for structure prediction.
Definition: data_structures.h:716
int * fM1
Second ML array, only for unique multibrnach loop decomposition.
Definition: data_structures.h:430
int cutpoint
The position of the (cofold) cutpoint within the provided sequence. If there is no cutpoint...
Definition: data_structures.h:712
The hard constraints data structure.
Definition: constraints.h:390
short ** S5
S5[s][i] holds next base 5' of i in sequence s.
Definition: data_structures.h:797
unsigned j
nucleotide position j
Definition: data_structures.h:173
char ** header
header line
Definition: data_structures.h:256
int contribs
[-c "SHIME"]
Definition: data_structures.h:255
Base pair with associated energy.
Definition: data_structures.h:81
int oldAliEn
use old alifold energies (with gaps)
Definition: data_structures.h:200
Definition: data_structures.h:128
struct vrna_param_t * params
The precomputed free energy contributions for each type of loop.
Definition: data_structures.h:721
move_t * moves
remaining moves to target
Definition: data_structures.h:204
double FcAB
true hybrid states only
Definition: data_structures.h:132
int * jindx
DP matrix accessor.
Definition: data_structures.h:725
int * fML
Multi-loop auxiliary energy array.
Definition: data_structures.h:429
short * S_cons
Numerical encoding of the consensus sequence.
Definition: data_structures.h:791
The model details data structure and its corresponding modifiers.
Definition: data_structures.h:190
double * Gi
free energies of interaction
Definition: data_structures.h:238
float energy
Free Energy of structure in kcal/mol.
Definition: data_structures.h:115
float p
Probability.
Definition: data_structures.h:174
Definition: data_structures.h:681
Default DP matrices.
Definition: data_structures.h:392
Definition: data_structures.h:314
int * pscore
Precomputed array of pair types expressed as pairing scores.
Definition: data_structures.h:805
double FB
monomer B
Definition: data_structures.h:134
short ** S3
Sl[s][i] holds next base 3' of i in sequence s.
Definition: data_structures.h:800
unsigned int n_seq
The number of sequences in the alignment.
Definition: data_structures.h:785
void vrna_exp_params_update(vrna_fold_compound *vc, vrna_exp_param_t *params)
Update the energy parameters for subsequent partition function computations.
int length
length of longer sequence
Definition: data_structures.h:246
Collection of all free_energy of beeing unpaired values for output.
Definition: data_structures.h:252
vrna_fold_compound * vrna_get_fold_compound(const char *sequence, vrna_md_t *md_p, unsigned int options)
Retrieve a vrna_fold_compound data structure for single sequences and hybridizing sequences...
vrna_mx_pf_t * exp_matrices
The PF DP matrices.
Definition: data_structures.h:719
void vrna_params_update(vrna_fold_compound *vc, vrna_param_t *par)
Update/Reset energy parameters data structure within a vrna_fold_compound.
double Gikjl
full free energy for interaction between [k,i] k
Definition: data_structures.h:239
Definition: data_structures.h:343
double ** I
interior loops
Definition: data_structures.h:226
void vrna_free_mfe_matrices(vrna_fold_compound *vc)
Free memory occupied by the Minimum Free Energy (MFE) Dynamic Programming (DP) matrices.
The most basic data structure required by many functions throughout the RNAlib.
Definition: data_structures.h:698
Solution element from subopt.c.
Definition: data_structures.h:114
unsigned int * mm2
Maximum matching matrix, reference struct 2 disallowed.
Definition: data_structures.h:837
double ** M
multi loops
Definition: data_structures.h:227
constraints for cofolding
Definition: data_structures.h:263
char ** sequences
The aligned sequences.
Definition: data_structures.h:781
Definition: data_structures.h:277
void vrna_exp_params_rescale(vrna_fold_compound *vc, double *mfe)
Rescale Boltzmann factors for partition function computations.
int curr_en
current energy
Definition: data_structures.h:203
unsigned int * referenceBPs1
Matrix containing number of basepairs of reference structure1 in interval [i,j].
Definition: data_structures.h:832
int * fc
Energy from i to cutpoint (and vice versa if i>cut)
Definition: data_structures.h:428
unsigned int maxD2
Maximum allowed base pair distance to second reference.
Definition: data_structures.h:828
A base pair info structure.
Definition: data_structures.h:171
this datastructure is used as input parameter in functions of PS_dot.h and others ...
Definition: data_structures.h:45
void vrna_free_fold_compound(vrna_fold_compound *vc)
Free memory occupied by a vrna_fold_compound.
double ** H
hairpin loops
Definition: data_structures.h:225
void vrna_free_pf_matrices(vrna_fold_compound *vc)
Free memory occupied by the Partition Function (PF) Dynamic Programming (DP) matrices.
Partition function (PF) Dynamic Programming (DP) matrices data structure required within the vrna_fol...
Definition: data_structures.h:546
vrna_mx_mfe_t * matrices
The MFE DP matrices.
Definition: data_structures.h:718
double F0AB
Null model without DuplexInit.
Definition: data_structures.h:130
int * iindx
DP matrix accessor.
Definition: data_structures.h:724
int k
k
Definition: data_structures.h:243
char * cons_seq
The consensus sequence of the aligned sequences.
Definition: data_structures.h:788
double A0
start concentration A
Definition: data_structures.h:141
short ** S
Numerical encoding of the sequences in the alignment.
Definition: data_structures.h:794
short * reference_pt2
A pairtable of the second reference structure.
Definition: data_structures.h:830
short * reference_pt1
A pairtable of the first reference structure.
Definition: data_structures.h:829
unsigned int * mm1
Maximum matching matrix, reference struct 1 disallowed.
Definition: data_structures.h:836
Sequence interval stack element used in subopt.c.
Definition: data_structures.h:105
Definition: data_structures.h:236
short * pt
pair table
Definition: data_structures.h:201
unsigned int length
The length of the sequence (or sequence alignment)
Definition: data_structures.h:711
int l
j
Definition: data_structures.h:245
DP matrices suitable for distance class partitioned structure prediction.
Definition: data_structures.h:396
double ABc
End concentration AB.
Definition: data_structures.h:143
vrna_vc_t type
The type of the vrna_fold_compound.
Definition: data_structures.h:704
char * ptype
Pair type array.
Definition: data_structures.h:749
struct vrna_exp_param_t * exp_params
The precomputed free energy contributions as Boltzmann factors.
Definition: data_structures.h:722
double ** u_values
(the -u values * [-c "SHIME"]) * seq len
Definition: data_structures.h:257
Base pair.
Definition: data_structures.h:73
Stack of partial structures for backtracking.
Definition: data_structures.h:64
double ** E
exterior loop
Definition: data_structures.h:228
int len
sequence length
Definition: data_structures.h:253
The datastructure that contains temperature scaled energy parameters.
Definition: params.h:41
Definition: data_structures.h:682
The soft constraints data structure.
Definition: constraints.h:413
The data structure that contains the complete model details used throughout the calculations.
Definition: model.h:169
this datastructure is used as input parameter in functions of PS_dot.c
Definition: data_structures.h:55
int i
k
Definition: data_structures.h:242
Definition: data_structures.h:210
int length
length of the input sequence
Definition: data_structures.h:229
double Gikjl_wo
Gikjl without contributions for prob_unpaired.
Definition: data_structures.h:241
int j
j
Definition: data_structures.h:244
Base pair data structure used in subopt.c.
Definition: data_structures.h:97
short * sequence_encoding
Numerical encoding of the input sequence.
Definition: data_structures.h:744
double * Pi
probabilities of interaction
Definition: data_structures.h:237
struct vrna_sc_t * sc
The soft constraints for usage in structure prediction and evaluation.
Definition: data_structures.h:763
vrna_vc_t
An enumerator that is used to specify the type of a vrna_fold_compound.
Definition: data_structures.h:680
unsigned i
nucleotide position i
Definition: data_structures.h:172
unsigned int * bpdist
Matrix containing base pair distance of reference structure 1 and 2 on interval [i,j].
Definition: data_structures.h:834
contributions to p_u
Definition: data_structures.h:224
Definition: data_structures.h:153
The datastructure that contains temperature scaled Boltzmann weights of the energy parameters...
Definition: params.h:86
unsigned int maxD1
Maximum allowed base pair distance to first reference.
Definition: data_structures.h:827
float ent
Pseudo entropy for .
Definition: data_structures.h:175
double B0
start concentration B
Definition: data_structures.h:142
int * fM2
Energy for a multibranch loop region with exactly two stems, extending to 3' end. ...
Definition: data_structures.h:431
char * ptype_pf_compat
ptype array indexed via iindx
Definition: data_structures.h:758
char * sequence
The input sequence string.
Definition: data_structures.h:741
int Fc
Minimum Free Energy of entire circular RNA.
Definition: data_structures.h:433
vrna_mx_t
An enumerator that is used to specify the type of a polymorphic Dynamic Programming (DP) matrix data ...
Definition: data_structures.h:391
Definition: data_structures.h:140
Minimum Free Energy (MFE) Dynamic Programming (DP) matrices data structure required within the vrna_f...
Definition: data_structures.h:405
int * f5
Energy of 5' end.
Definition: data_structures.h:426
int u_vals
number of different -u values
Definition: data_structures.h:254
double FA
monomer A
Definition: data_structures.h:133
char * structure
Structure in dot-bracket notation.
Definition: data_structures.h:116
char comp
1 iff pair is in mfe structure
Definition: data_structures.h:177
struct vrna_sc_t ** scs
A set of soft constraints (for each sequence in the alignment)
Definition: data_structures.h:808