RNAlib-2.4.0
model.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_MODEL_H
2 #define VIENNA_RNA_PACKAGE_MODEL_H
3 
4 #ifdef VRNA_WARN_DEPRECATED
5 # ifdef __GNUC__
6 # define DEPRECATED(func) func __attribute__ ((deprecated))
7 # else
8 # define DEPRECATED(func) func
9 # endif
10 #else
11 # define DEPRECATED(func) func
12 #endif
13 
14 
15 /* make this interface backward compatible with RNAlib < 2.2.0 */
16 #define VRNA_BACKWARD_COMPAT
17 
29 #ifndef NBASES
30 #define NBASES 8
31 #endif
32 
34 typedef struct vrna_md_s vrna_md_t;
35 
42 #define VRNA_MODEL_DEFAULT_TEMPERATURE 37.0
43 
48 #define VRNA_MODEL_DEFAULT_PF_SCALE -1
49 
54 #define VRNA_MODEL_DEFAULT_BETA_SCALE 1.
55 
59 #define VRNA_MODEL_DEFAULT_DANGLES 2
60 
65 #define VRNA_MODEL_DEFAULT_SPECIAL_HP 1
66 
71 #define VRNA_MODEL_DEFAULT_NO_LP 0
72 
77 #define VRNA_MODEL_DEFAULT_NO_GU 0
78 
83 #define VRNA_MODEL_DEFAULT_NO_GU_CLOSURE 0
84 
89 #define VRNA_MODEL_DEFAULT_CIRC 0
90 
95 #define VRNA_MODEL_DEFAULT_GQUAD 0
96 
101 #define VRNA_MODEL_DEFAULT_UNIQ_ML 0
102 
107 #define VRNA_MODEL_DEFAULT_ENERGY_SET 0
108 
113 #define VRNA_MODEL_DEFAULT_BACKTRACK 1
114 
119 #define VRNA_MODEL_DEFAULT_BACKTRACK_TYPE 'F'
120 
125 #define VRNA_MODEL_DEFAULT_COMPUTE_BPP 1
126 
131 #define VRNA_MODEL_DEFAULT_MAX_BP_SPAN -1
132 
137 #define VRNA_MODEL_DEFAULT_WINDOW_SIZE -1
138 
143 #define VRNA_MODEL_DEFAULT_LOG_ML 0
144 
149 #define VRNA_MODEL_DEFAULT_ALI_OLD_EN 0
150 
155 #define VRNA_MODEL_DEFAULT_ALI_RIBO 0
156 
161 #define VRNA_MODEL_DEFAULT_ALI_CV_FACT 1.
162 
166 #define VRNA_MODEL_DEFAULT_ALI_NC_FACT 1.
167 
168 
169 #ifdef VRNA_BACKWARD_COMPAT
170 
171 #ifndef MAXALPHA
172 
175 #define MAXALPHA 20
176 #endif
177 
178 #endif
179 
189 struct vrna_md_s {
190  double temperature;
191  double betaScale;
192  int dangles;
217  int noLP;
218  int noGU;
220  int logML;
221  int circ;
222  int gquad;
223  int uniq_ML;
225  int backtrack;
228  char nonstandards[64];
236  int oldAliEn;
237  int ribo;
238  double cv_fact;
239  double nc_fact;
240  double sfact;
241  int rtype[8];
242  short alias[MAXALPHA + 1];
243  int pair[MAXALPHA + 1][MAXALPHA + 1];
244 };
245 
246 
255 void
257 
258 
271 void
273 
274 
285 vrna_md_t *
286 vrna_md_copy(vrna_md_t *md_to,
287  const vrna_md_t *md_from);
288 
289 
295 char *
297 
298 
299 void
300 vrna_md_set_nonstandards(vrna_md_t *md,
301  const char *ns_bases);
302 
303 
321 void
323 
324 
330 void
332 
333 
339 double
341 
342 
350 void
352 
353 
360 double
362 
363 
369 void
371 
372 
378 int
380 
381 
387 void
389 
390 
396 int
398 
399 
405 void
406 vrna_md_defaults_noLP(int flag);
407 
408 
414 int
416 
417 
423 void
424 vrna_md_defaults_noGU(int flag);
425 
426 
432 int
434 
435 
441 void
443 
444 
450 int
452 
453 
459 void
460 vrna_md_defaults_logML(int flag);
461 
462 
468 int
470 
471 
477 void
478 vrna_md_defaults_circ(int flag);
479 
480 
486 int
488 
489 
495 void
496 vrna_md_defaults_gquad(int flag);
497 
498 
504 int
506 
507 
514 void
515 vrna_md_defaults_uniq_ML(int flag);
516 
517 
523 int
525 
526 
532 void
534 
535 
541 int
543 
544 
550 void
552 
553 
559 int
561 
562 
568 void
570 
571 
577 char
579 
580 
586 void
588 
589 
595 int
597 
598 
604 void
606 
607 
613 int
615 
616 
622 void
624 
625 
631 int
633 
634 
640 void
642 
643 
649 int
651 
652 
660 void
661 vrna_md_defaults_oldAliEn(int flag);
662 
663 
669 int
671 
672 
678 void
679 vrna_md_defaults_ribo(int flag);
680 
681 
687 int
689 
690 
696 void
697 vrna_md_defaults_cv_fact(double factor);
698 
699 
705 double
707 
708 
714 void
715 vrna_md_defaults_nc_fact(double factor);
716 
717 
723 double
725 
726 
732 void
733 vrna_md_defaults_sfact(double factor);
734 
735 
741 double
743 
744 
745 #ifdef VRNA_BACKWARD_COMPAT
746 
747 #define model_detailsT vrna_md_t /* restore compatibility of struct rename */
748 
749 /* BEGIN deprecated global variables: */
750 
760 extern double temperature;
761 
773 extern double pf_scale;
774 
796 extern int dangles;
797 
803 extern int tetra_loop;
804 
812 extern int noLonelyPairs;
813 
817 extern int noGU;
818 
822 extern int no_closingGU;
823 
827 extern int circ;
828 
832 extern int gquad;
833 
837 extern int uniq_ML;
838 
846 extern int energy_set;
847 
854 extern int do_backtrack;
855 
863 extern char backtrack_type;
864 
872 extern char *nonstandards;
873 
879 extern int max_bp_span;
880 
884 extern int oldAliEn;
885 
889 extern int ribo;
890 
891 extern double cv_fact;
892 
893 extern double nc_fact;
894 
896 extern int logML;
897 
898 /* END deprecated global variables: */
899 
913 void
915 
916 
917 char *
918 option_string(void);
919 
920 
921 #endif
922 
926 #endif
char nonstandards[64]
contains allowed non standard bases
Definition: model.h:228
void vrna_md_defaults_sfact(double factor)
Set the default scaling factor used to avoid under-/overflows in partition function computation...
void vrna_md_update(vrna_md_t *md)
Update the model details data structure.
int vrna_md_defaults_noLP_get(void)
Get default behavior for prediction of canonical secondary structures.
int vrna_md_defaults_min_loop_size_get(void)
Get default minimal loop size.
void vrna_md_set_default(vrna_md_t *md)
Apply default model details to a provided vrna_md_t data structure.
int window_size
Size of the sliding window for locally optimal structure prediction.
Definition: model.h:235
double vrna_md_defaults_sfact_get(void)
Get the default scaling factor used to avoid under-/overflows in partition function computation...
short alias[MAXALPHA+1]
alias of an integer nucleotide representation
Definition: model.h:242
int vrna_md_defaults_max_bp_span_get(void)
Get default maximal base pair span.
char vrna_md_defaults_backtrack_type_get(void)
Get default backtrack type, i.e. which DP matrix is used.
int tetra_loop
Include special stabilizing energies for some tri-, tetra- and hexa-loops;.
int vrna_md_defaults_backtrack_get(void)
Get default behavior for whether to backtrack secondary structures.
int dangles
Specifies the dangle model used in any energy evaluation (0,1,2 or 3)
Definition: model.h:192
void vrna_md_defaults_circ(int flag)
Set default behavior whether input sequences are circularized.
int backtrack
Specifies whether or not secondary structures should be backtraced.
Definition: model.h:225
double vrna_md_defaults_temperature_get(void)
Get default temperature for energy evaluation of loops.
int vrna_md_defaults_window_size_get(void)
Get default window size for sliding window structure prediction approaches.
void vrna_md_defaults_noGU(int flag)
Set default behavior for treatment of G-U wobble pairs.
void vrna_md_defaults_betaScale(double b)
Set default scaling factor of thermodynamic temperature in Boltzmann factors.
int max_bp_span
maximum allowed base pair span
Definition: model.h:229
int noGUclosure
Do not allow loops to be closed by GU pair.
Definition: model.h:219
int do_backtrack
do backtracking, i.e. compute secondary structures or base pair probabilities
vrna_md_t * vrna_md_copy(vrna_md_t *md_to, const vrna_md_t *md_from)
Copy/Clone a vrna_md_t model.
int energy_set
Specifies the energy set that defines set of compatible base pairs.
Definition: model.h:224
void vrna_md_defaults_max_bp_span(int span)
Set default maximal base pair span.
void vrna_md_defaults_dangles(int d)
Set default dangle model for structure prediction.
int vrna_md_defaults_oldAliEn_get(void)
Get default behavior for whether to use old energy model for comparative structure prediction...
void vrna_md_defaults_temperature(double T)
Set default temperature for energy evaluation of loops.
double vrna_md_defaults_nc_fact_get(void)
void vrna_md_defaults_special_hp(int flag)
Set default behavior for lookup of tabulated free energies for special hairpin loops, such as Tri-, Tetra-, or Hexa-loops.
int vrna_md_defaults_energy_set_get(void)
Get default energy set.
int vrna_md_defaults_ribo_get(void)
Get default behavior for whether to use Ribosum Scoring in comparative structure prediction.
double betaScale
A scaling factor for the thermodynamic temperature of the Boltzmann factors.
Definition: model.h:191
char backtrack_type
Specifies in which matrix to backtrack.
Definition: model.h:226
int noLP
Only consider canonical structures, i.e. no &#39;lonely&#39; base pairs.
Definition: model.h:217
int ribo
Use ribosum scoring table in alifold energy model.
Definition: model.h:237
int pair[MAXALPHA+1][MAXALPHA+1]
Integer representation of a base pair.
Definition: model.h:243
void vrna_md_defaults_uniq_ML(int flag)
Set default behavior for creating additional matrix for unique multi-branch loop prediction.
int gquad
Include G-quadruplexes in structure prediction.
Definition: model.h:222
char * vrna_md_option_string(vrna_md_t *md)
Get a corresponding commandline parameter string of the options in a vrna_md_t.
int vrna_md_defaults_special_hp_get(void)
Get default behavior for lookup of tabulated free energies for special hairpin loops, such as Tri-, Tetra-, or Hexa-loops.
int vrna_md_defaults_circ_get(void)
Get default behavior whether input sequences are circularized.
void vrna_md_defaults_reset(vrna_md_t *md_p)
Reset the global default model details to a specific set of parameters, or their initial values...
double nc_fact
Scaling factor to weight co-variance contributions of non-canonical pairs.
Definition: model.h:239
void set_model_details(vrna_md_t *md)
Set default model details.
void vrna_md_defaults_min_loop_size(int size)
Set default minimal loop size.
void vrna_md_defaults_energy_set(int e)
Set default energy set.
void vrna_md_defaults_cv_fact(double factor)
Set the default co-variance scaling factor used in comparative structure prediction.
double pf_scale
A scaling factor used by pf_fold() to avoid overflows.
The data structure that contains the complete model details used throughout the calculations.
Definition: model.h:189
void vrna_md_defaults_logML(int flag)
Set default behavior recomputing free energies of multi-branch loops using a logarithmic model...
void vrna_md_defaults_noLP(int flag)
Set default behavior for prediction of canonical secondary structures.
int special_hp
Include special hairpin contributions for tri, tetra and hexaloops.
Definition: model.h:216
#define MAXALPHA
Maximal length of alphabet.
Definition: model.h:175
void vrna_md_defaults_window_size(int size)
Set default window size for sliding window structure prediction approaches.
int uniq_ML
Flag to ensure unique multi-branch loop decomposition during folding.
Definition: model.h:223
void vrna_md_defaults_gquad(int flag)
Set default behavior for treatment of G-Quadruplexes.
void vrna_md_defaults_backtrack_type(char t)
Set default backtrack type, i.e. which DP matrix is used.
int oldAliEn
Use old alifold energy model.
Definition: model.h:236
double temperature
The temperature used to scale the thermodynamic parameters.
Definition: model.h:190
int min_loop_size
Minimum size of hairpin loops.
Definition: model.h:231
void vrna_md_defaults_backtrack(int flag)
Set default behavior for whether to backtrack secondary structures.
int vrna_md_defaults_noGU_get(void)
Get default behavior for treatment of G-U wobble pairs.
int logML
Use logarithmic scaling for multiloops.
Definition: model.h:220
void vrna_md_defaults_oldAliEn(int flag)
Set default behavior for whether to use old energy model for comparative structure prediction...
int vrna_md_defaults_uniq_ML_get(void)
Get default behavior for creating additional matrix for unique multi-branch loop prediction.
void vrna_md_defaults_ribo(int flag)
Set default behavior for whether to use Ribosum Scoring in comparative structure prediction.
int vrna_md_defaults_compute_bpp_get(void)
Get the default behavior for whether to compute base pair probabilities after partition function comp...
double vrna_md_defaults_cv_fact_get(void)
Get the default co-variance scaling factor used in comparative structure prediction.
int noLonelyPairs
Global switch to avoid/allow helices of length 1.
double vrna_md_defaults_betaScale_get(void)
Get default scaling factor of thermodynamic temperature in Boltzmann factors.
int vrna_md_defaults_gquad_get(void)
Get default behavior for treatment of G-Quadruplexes.
void vrna_md_defaults_compute_bpp(int flag)
Set the default behavior for whether to compute base pair probabilities after partition function comp...
void vrna_md_defaults_nc_fact(double factor)
int circ
Assume RNA to be circular instead of linear.
Definition: model.h:221
int compute_bpp
Specifies whether or not backward recursions for base pair probability (bpp) computation will be perf...
Definition: model.h:227
void vrna_md_defaults_noGUclosure(int flag)
Set default behavior for G-U pairs as closing pair for loops.
int no_closingGU
GU allowed only inside stacks if set to 1.
int rtype[8]
Reverse base pair type array.
Definition: model.h:241
double cv_fact
Co-variance scaling factor for consensus structure prediction.
Definition: model.h:238
int vrna_md_defaults_logML_get(void)
Get default behavior recomputing free energies of multi-branch loops using a logarithmic model...
int noGU
Do not allow GU pairs.
Definition: model.h:218
double sfact
Scaling factor for partition function scaling.
Definition: model.h:240
int vrna_md_defaults_dangles_get(void)
Get default dangle model for structure prediction.
int vrna_md_defaults_noGUclosure_get(void)
Get default behavior for G-U pairs as closing pair for loops.