RNAlib-2.4.8
eval.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_EVAL_H
2 #define VIENNA_RNA_PACKAGE_EVAL_H
3 
4 #include <stdio.h>
6 #include "ViennaRNA/neighbor.h"
7 #include <ViennaRNA/params/basic.h> /* for deprecated functions */
8 
9 #ifdef VRNA_WARN_DEPRECATED
10 # if defined(__clang__)
11 # define DEPRECATED(func, msg) func __attribute__ ((deprecated("", msg)))
12 # elif defined(__GNUC__)
13 # define DEPRECATED(func, msg) func __attribute__ ((deprecated(msg)))
14 # else
15 # define DEPRECATED(func, msg) func
16 # endif
17 #else
18 # define DEPRECATED(func, msg) func
19 #endif
20 
21 
56 #define VRNA_VERBOSITY_QUIET -1
57 
58 
62 #define VRNA_VERBOSITY_DEFAULT 1
63 
64 
92  const char *structure);
93 
94 
116  const char *structure);
117 
118 
133  const char *structure,
134  FILE *file);
135 
136 
163  const char *structure,
164  int verbosity_level,
165  FILE *file);
166 
167 
168 /* End basic eval interface */
196  const short *pt);
197 
198 
213  const short *pt,
214  FILE *file);
215 
216 
243  const short *pt,
244  int verbosity_level,
245  FILE *file);
246 
247 
248 /* End basic eval interface with pair table */
272 float vrna_eval_structure_simple(const char *string,
273  const char *structure);
274 
275 
286 float vrna_eval_circ_structure(const char *string,
287  const char *structure);
288 
289 
307 float vrna_eval_gquad_structure(const char *string,
308  const char *structure);
309 
310 
329 float vrna_eval_circ_gquad_structure(const char *string,
330  const char *structure);
331 
332 
347 float vrna_eval_structure_simple_verbose(const char *string,
348  const char *structure,
349  FILE *file);
350 
351 
375 float vrna_eval_structure_simple_v(const char *string,
376  const char *structure,
377  int verbosity_level,
378  FILE *file);
379 
380 
396 float vrna_eval_circ_structure_v(const char *string,
397  const char *structure,
398  int verbosity_level,
399  FILE *file);
400 
401 
424 float vrna_eval_gquad_structure_v(const char *string,
425  const char *structure,
426  int verbosity_level,
427  FILE *file);
428 
429 
450 float vrna_eval_circ_gquad_structure_v(const char *string,
451  const char *structure,
452  int verbosity_level,
453  FILE *file);
454 
455 
456 /* End simplified eval interface */
486 float vrna_eval_consensus_structure_simple(const char **alignment,
487  const char *structure);
488 
489 
505 float vrna_eval_circ_consensus_structure(const char **alignment,
506  const char *structure);
507 
508 
531 float vrna_eval_gquad_consensus_structure(const char **alignment,
532  const char *structure);
533 
534 
557 float vrna_eval_circ_gquad_consensus_structure(const char **alignment,
558  const char *structure);
559 
560 
580 float vrna_eval_consensus_structure_simple_verbose(const char **alignment,
581  const char *structure,
582  FILE *file);
583 
584 
609 float vrna_eval_consensus_structure_simple_v(const char **alignment,
610  const char *structure,
611  int verbosity_level,
612  FILE *file);
613 
614 
634 float vrna_eval_circ_consensus_structure_v(const char **alignment,
635  const char *structure,
636  int verbosity_level,
637  FILE *file);
638 
639 
666 float vrna_eval_gquad_consensus_structure_v(const char **alignment,
667  const char *structure,
668  int verbosity_level,
669  FILE *file);
670 
671 
698 float vrna_eval_circ_gquad_consensus_structure_v(const char **alignment,
699  const char *structure,
700  int verbosity_level,
701  FILE *file);
702 
703 
704 /* End simplified comparative eval interface */
727 int vrna_eval_structure_pt_simple(const char *string,
728  const short *pt);
729 
730 
744 int vrna_eval_structure_pt_simple_verbose(const char *string,
745  const short *pt,
746  FILE *file);
747 
748 
773 int vrna_eval_structure_pt_simple_v(const char *string,
774  const short *pt,
775  int verbosity_level,
776  FILE *file);
777 
778 
779 /* End simplified eval interface with pair table */
801 int vrna_eval_consensus_structure_pt_simple(const char **alignment,
802  const short *pt);
803 
804 
805 int vrna_eval_consensus_structure_pt_simple_verbose(const char **alignment,
806  const short *pt,
807  FILE *file);
808 
809 
810 int
811 vrna_eval_consensus_structure_pt_simple_v(const char **alignment,
812  const short *pt,
813  int verbosity_level,
814  FILE *file);
815 
816 
817 /* End simplified eval interface with pair table */
849  int i,
850  const short *pt);
851 
852 
863  int i,
864  const short *pt,
865  int verbosity_level);
866 
867 
903  const char *structure,
904  int m1,
905  int m2);
906 
907 
923  short *pt,
924  int m1,
925  int m2);
926 
927 
928 int vrna_eval_move_pt_simple(const char *string,
929  short *pt,
930  int m1,
931  int m2);
932 
933 
934 int
935 vrna_eval_move_shift_pt(vrna_fold_compound_t *vc,
936  vrna_move_t *m,
937  short *structure);
938 
939 
944 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
945 
959 extern int cut_point;
960 
964 extern int eos_debug;
965 
984 DEPRECATED(float energy_of_structure(const char *string,
985  const char *structure,
986  int verbosity_level),
987  "Use vrna_eval_structure_simple() and vrna_eval_structure() instead");
988 
1004 DEPRECATED(float energy_of_struct_par(const char *string,
1005  const char *structure,
1006  vrna_param_t *parameters,
1007  int verbosity_level),
1008  "Use vrna_eval_structure() instead");
1009 
1028 DEPRECATED(float energy_of_circ_structure(const char *string,
1029  const char *structure,
1030  int verbosity_level),
1031  "Use vrna_eval_circ_structure_simple() and vrna_eval_structure() instead");
1032 
1048 DEPRECATED(float energy_of_circ_struct_par(const char *string,
1049  const char *structure,
1050  vrna_param_t *parameters,
1051  int verbosity_level),
1052  "Use vrna_eval_structure() instead");
1053 
1054 
1055 DEPRECATED(float energy_of_gquad_structure(const char *string,
1056  const char *structure,
1057  int verbosity_level),
1058  "Use vrna_eval_structure_simple() instead");
1059 
1060 DEPRECATED(float energy_of_gquad_struct_par(const char *string,
1061  const char *structure,
1062  vrna_param_t *parameters,
1063  int verbosity_level),
1064  "Use vrna_eval_structure() instead");
1065 
1066 
1087 DEPRECATED(int energy_of_structure_pt(const char *string,
1088  short *ptable,
1089  short *s,
1090  short *s1,
1091  int verbosity_level),
1092  "Use vrna_eval_structure_pt_simple() and vrna_eval_structure_pt() instead");
1093 
1111 DEPRECATED(int energy_of_struct_pt_par(const char *string,
1112  short *ptable,
1113  short *s,
1114  short *s1,
1115  vrna_param_t *parameters,
1116  int verbosity_level),
1117  "Use vrna_eval_structure_pt() instead");
1118 
1119 
1136 DEPRECATED(float energy_of_move(const char *string,
1137  const char *structure,
1138  int m1,
1139  int m2),
1140  "Use vrna_eval_move() instead");
1141 
1142 
1161 DEPRECATED(int energy_of_move_pt(short *pt,
1162  short *s,
1163  short *s1,
1164  int m1,
1165  int m2),
1166  "Use vrna_eval_move_pt_simple() and vrna_eval_move_pt() instead");
1167 
1181 DEPRECATED(int loop_energy(short *ptable,
1182  short *s,
1183  short *s1,
1184  int i),
1185  "Use vrna_eval_loop_pt() instead");
1186 
1201 DEPRECATED(float energy_of_struct(const char *string,
1202  const char *structure),
1203  "Use vrna_eval_structure_simple() instead");
1204 
1221 DEPRECATED(int energy_of_struct_pt(const char *string,
1222  short *ptable,
1223  short *s,
1224  short *s1),
1225  "Use vrna_eval_structure_pt_simple() instead");
1226 
1241 DEPRECATED(float energy_of_circ_struct(const char *string,
1242  const char *structure),
1243  "Use vrna_eval_circ_structure_simple() and vrna_eval_structure() instead");
1244 
1245 #endif
1246 
1251 #endif
float vrna_eval_structure(vrna_fold_compound_t *vc, const char *structure)
Calculate the free energy of an already folded RNA.
float energy_of_circ_struct_par(const char *string, const char *structure, vrna_param_t *parameters, int verbosity_level)
Calculate the free energy of an already folded circular RNA.
int energy_of_struct_pt(const char *string, short *ptable, short *s, short *s1)
float vrna_eval_circ_consensus_structure_v(const char **alignment, const char *structure, int verbosity_level, FILE *file)
Evaluate the free energy of a consensus structure for an alignment of circular RNA sequences and prin...
float vrna_eval_structure_simple_verbose(const char *string, const char *structure, FILE *file)
Calculate the free energy of an already folded RNA and print contributions per loop.
float vrna_eval_circ_gquad_consensus_structure(const char **alignment, const char *structure)
Evaluate the free energy of a multiple sequence alignment/consensus structure pair where the sequence...
int vrna_eval_loop_pt_v(vrna_fold_compound_t *vc, int i, const short *pt, int verbosity_level)
Calculate energy of a loop.
float vrna_eval_circ_gquad_structure_v(const char *string, const char *structure, int verbosity_level, FILE *file)
Evaluate free energy of a sequence/structure pair, assume sequence to be circular, allow for G-Quadruplexes in the structure, and print contributions per loop.
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:132
int vrna_eval_structure_pt_verbose(vrna_fold_compound_t *vc, const short *pt, FILE *file)
Calculate the free energy of an already folded RNA.
int eos_debug
verbose info from energy_of_struct
The datastructure that contains temperature scaled energy parameters.
Definition: basic.h:56
float energy_of_circ_struct(const char *string, const char *structure)
int loop_energy(short *ptable, short *s, short *s1, int i)
Calculate energy of a loop.
float vrna_eval_structure_simple(const char *string, const char *structure)
Calculate the free energy of an already folded RNA.
int energy_of_struct_pt_par(const char *string, short *ptable, short *s, short *s1, vrna_param_t *parameters, int verbosity_level)
Calculate the free energy of an already folded RNA.
Methods to compute the neighbors of an RNA secondary structure.
float vrna_eval_move(vrna_fold_compound_t *vc, const char *structure, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
int cut_point
first pos of second seq for cofolding
float energy_of_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded RNA using global model detail settings.
float vrna_eval_gquad_consensus_structure_v(const char **alignment, const char *structure, int verbosity_level, FILE *file)
Evaluate the free energy of a consensus structure for an RNA sequence alignment, allow for annotated ...
float vrna_eval_circ_structure_v(const char *string, const char *structure, int verbosity_level, FILE *file)
Evaluate free energy of a sequence/structure pair, assume sequence to be circular and print contribut...
int vrna_eval_move_pt(vrna_fold_compound_t *vc, short *pt, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
Various data structures and pre-processor macros.
float vrna_eval_covar_structure(vrna_fold_compound_t *vc, const char *structure)
Calculate the pseudo energy derived by the covariance scores of a set of aligned sequences.
int vrna_eval_loop_pt(vrna_fold_compound_t *vc, int i, const short *pt)
Calculate energy of a loop.
float vrna_eval_consensus_structure_simple_verbose(const char **alignment, const char *structure, FILE *file)
Evaluate the free energy of a consensus structure for an RNA sequence alignment and print contributio...
float vrna_eval_consensus_structure_simple(const char **alignment, const char *structure)
Calculate the free energy of an already folded RNA sequence alignment.
float energy_of_circ_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded circular RNA.
float vrna_eval_circ_structure(const char *string, const char *structure)
Evaluate the free energy of a sequence/structure pair where the sequence is circular.
float energy_of_move(const char *string, const char *structure, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
float vrna_eval_structure_simple_v(const char *string, const char *structure, int verbosity_level, FILE *file)
Calculate the free energy of an already folded RNA and print contributions per loop.
float vrna_eval_gquad_consensus_structure(const char **alignment, const char *structure)
Evaluate the free energy of a multiple sequence alignment/consensus structure pair where the structur...
float vrna_eval_circ_gquad_consensus_structure_v(const char **alignment, const char *structure, int verbosity_level, FILE *file)
Evaluate the free energy of a consensus structure for an alignment of circular RNA sequences...
float energy_of_struct(const char *string, const char *structure)
int energy_of_move_pt(short *pt, short *s, short *s1, int m1, int m2)
Calculate energy of a move (closing or opening of a base pair)
float vrna_eval_circ_gquad_structure(const char *string, const char *structure)
Evaluate the free energy of a sequence/structure pair where the sequence is circular and the structur...
int vrna_eval_structure_pt_simple_verbose(const char *string, const short *pt, FILE *file)
Calculate the free energy of an already folded RNA.
int vrna_eval_structure_pt_simple_v(const char *string, const short *pt, int verbosity_level, FILE *file)
Calculate the free energy of an already folded RNA.
int vrna_eval_structure_pt_v(vrna_fold_compound_t *vc, const short *pt, int verbosity_level, FILE *file)
Calculate the free energy of an already folded RNA.
int vrna_eval_structure_pt_simple(const char *string, const short *pt)
Calculate the free energy of an already folded RNA.
float vrna_eval_structure_verbose(vrna_fold_compound_t *vc, const char *structure, FILE *file)
Calculate the free energy of an already folded RNA and print contributions on a per-loop base...
float vrna_eval_gquad_structure(const char *string, const char *structure)
Evaluate the free energy of a sequence/structure pair where the structure may contain G-Quadruplexes...
Functions to deal with sets of energy parameters.
int energy_of_structure_pt(const char *string, short *ptable, short *s, short *s1, int verbosity_level)
Calculate the free energy of an already folded RNA.
int vrna_eval_structure_pt(vrna_fold_compound_t *vc, const short *pt)
Calculate the free energy of an already folded RNA.
float vrna_eval_circ_consensus_structure(const char **alignment, const char *structure)
Evaluate the free energy of a multiple sequence alignment/consensus structure pair where the sequence...
float vrna_eval_consensus_structure_simple_v(const char **alignment, const char *structure, int verbosity_level, FILE *file)
Evaluate the free energy of a consensus structure for an RNA sequence alignment and print contributio...
float vrna_eval_gquad_structure_v(const char *string, const char *structure, int verbosity_level, FILE *file)
Evaluate free energy of a sequence/structure pair, allow for G-Quadruplexes in the structure and prin...
int vrna_eval_consensus_structure_pt_simple(const char **alignment, const short *pt)
Evaluate the Free Energy of a Consensus Secondary Structure given a Sequence Alignment.
float vrna_eval_structure_v(vrna_fold_compound_t *vc, const char *structure, int verbosity_level, FILE *file)
Calculate the free energy of an already folded RNA and print contributions on a per-loop base...
An atomic representation of the transition / move from one structure to its neighbor.
Definition: neighbor.h:156
float energy_of_struct_par(const char *string, const char *structure, vrna_param_t *parameters, int verbosity_level)
Calculate the free energy of an already folded RNA.