RNAlib-2.4.5
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.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 
22 #define VRNA_VERBOSITY_QUIET -1 /* verbosity level for quiet operations */
23 #define VRNA_VERBOSITY_DEFAULT 1 /* verbosity level for quiet operations */
24 
25 
41 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
42 
43 extern int cut_point;
44 
48 extern int eos_debug;
49 #endif
50 
78  const char *structure);
79 
80 
102  const char *structure);
103 
104 
119  const char *structure,
120  FILE *file);
121 
122 
149  const char *structure,
150  int verbosity_level,
151  FILE *file);
152 
153 
154 /* End basic eval interface */
182  const short *pt);
183 
184 
199  const short *pt,
200  FILE *file);
201 
202 
229  const short *pt,
230  int verbosity_level,
231  FILE *file);
232 
233 
234 /* End basic eval interface with pair table */
258 float vrna_eval_structure_simple(const char *string,
259  const char *structure);
260 
261 
272 float vrna_eval_circ_structure(const char *string,
273  const char *structure);
274 
275 
293 float vrna_eval_gquad_structure(const char *string,
294  const char *structure);
295 
296 
315 float vrna_eval_circ_gquad_structure(const char *string,
316  const char *structure);
317 
318 
333 float vrna_eval_structure_simple_verbose(const char *string,
334  const char *structure,
335  FILE *file);
336 
337 
361 float vrna_eval_structure_simple_v(const char *string,
362  const char *structure,
363  int verbosity_level,
364  FILE *file);
365 
366 
382 float vrna_eval_circ_structure_v(const char *string,
383  const char *structure,
384  int verbosity_level,
385  FILE *file);
386 
387 
410 float vrna_eval_gquad_structure_v(const char *string,
411  const char *structure,
412  int verbosity_level,
413  FILE *file);
414 
415 
436 float vrna_eval_circ_gquad_structure_v(const char *string,
437  const char *structure,
438  int verbosity_level,
439  FILE *file);
440 
441 
442 /* End simplified eval interface */
472 float vrna_eval_consensus_structure_simple(const char **alignment,
473  const char *structure);
474 
475 
491 float vrna_eval_circ_consensus_structure(const char **alignment,
492  const char *structure);
493 
494 
517 float vrna_eval_gquad_consensus_structure(const char **alignment,
518  const char *structure);
519 
520 
543 float vrna_eval_circ_gquad_consensus_structure(const char **alignment,
544  const char *structure);
545 
546 
566 float vrna_eval_consensus_structure_simple_verbose(const char **alignment,
567  const char *structure,
568  FILE *file);
569 
570 
595 float vrna_eval_consensus_structure_simple_v(const char **alignment,
596  const char *structure,
597  int verbosity_level,
598  FILE *file);
599 
600 
620 float vrna_eval_circ_consensus_structure_v(const char **alignment,
621  const char *structure,
622  int verbosity_level,
623  FILE *file);
624 
625 
652 float vrna_eval_gquad_consensus_structure_v(const char **alignment,
653  const char *structure,
654  int verbosity_level,
655  FILE *file);
656 
657 
684 float vrna_eval_circ_gquad_consensus_structure_v(const char **alignment,
685  const char *structure,
686  int verbosity_level,
687  FILE *file);
688 
689 
690 /* End simplified comparative eval interface */
713 int vrna_eval_structure_pt_simple(const char *string,
714  const short *pt);
715 
716 
730 int vrna_eval_structure_pt_simple_verbose(const char *string,
731  const short *pt,
732  FILE *file);
733 
734 
759 int vrna_eval_structure_pt_simple_v(const char *string,
760  const short *pt,
761  int verbosity_level,
762  FILE *file);
763 
764 
765 /* End simplified eval interface with pair table */
787 int vrna_eval_consensus_structure_pt_simple(const char **alignment,
788  const short *pt);
789 
790 
791 int vrna_eval_consensus_structure_pt_simple_verbose(const char **alignment,
792  const short *pt,
793  FILE *file);
794 
795 
796 int
797 vrna_eval_consensus_structure_pt_simple_v(const char **alignment,
798  const short *pt,
799  int verbosity_level,
800  FILE *file);
801 
802 
803 /* End simplified eval interface with pair table */
821  int i,
822  const short *pt);
823 
824 
835  int i,
836  const short *pt,
837  int verbosity_level);
838 
839 
840 /* End basic loop eval interface with pair table */
865  const char *structure,
866  int m1,
867  int m2);
868 
869 
885  short *pt,
886  int m1,
887  int m2);
888 
889 
890 int vrna_eval_move_pt_simple(const char *string,
891  short *pt,
892  int m1,
893  int m2);
894 
895 
896 int
897 vrna_eval_move_shift_pt(vrna_fold_compound_t *vc,
898  vrna_move_t *m,
899  short *structure);
900 
901 
902 /* End eval move interface */
905 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
906 
933 DEPRECATED(float energy_of_structure(const char *string,
934  const char *structure,
935  int verbosity_level),
936  "Use vrna_eval_structure_simple() and vrna_eval_structure() instead");
937 
953 DEPRECATED(float energy_of_struct_par(const char *string,
954  const char *structure,
955  vrna_param_t *parameters,
956  int verbosity_level),
957  "Use vrna_eval_structure() instead");
958 
977 DEPRECATED(float energy_of_circ_structure(const char *string,
978  const char *structure,
979  int verbosity_level),
980  "Use vrna_eval_circ_structure_simple() and vrna_eval_structure() instead");
981 
997 DEPRECATED(float energy_of_circ_struct_par(const char *string,
998  const char *structure,
999  vrna_param_t *parameters,
1000  int verbosity_level),
1001  "Use vrna_eval_structure() instead");
1002 
1003 
1004 DEPRECATED(float energy_of_gquad_structure(const char *string,
1005  const char *structure,
1006  int verbosity_level),
1007  "Use vrna_eval_structure_simple() instead");
1008 
1009 DEPRECATED(float energy_of_gquad_struct_par(const char *string,
1010  const char *structure,
1011  vrna_param_t *parameters,
1012  int verbosity_level),
1013  "Use vrna_eval_structure() instead");
1014 
1015 
1036 DEPRECATED(int energy_of_structure_pt(const char *string,
1037  short *ptable,
1038  short *s,
1039  short *s1,
1040  int verbosity_level),
1041  "Use vrna_eval_structure_pt_simple() and vrna_eval_structure_pt() instead");
1042 
1060 DEPRECATED(int energy_of_struct_pt_par(const char *string,
1061  short *ptable,
1062  short *s,
1063  short *s1,
1064  vrna_param_t *parameters,
1065  int verbosity_level),
1066  "Use vrna_eval_structure_pt() instead");
1067 
1068 
1085 DEPRECATED(float energy_of_move(const char *string,
1086  const char *structure,
1087  int m1,
1088  int m2),
1089  "Use vrna_eval_move() instead");
1090 
1091 
1110 DEPRECATED(int energy_of_move_pt(short *pt,
1111  short *s,
1112  short *s1,
1113  int m1,
1114  int m2),
1115  "Use vrna_eval_move_pt_simple() and vrna_eval_move_pt() instead");
1116 
1130 DEPRECATED(int loop_energy(short *ptable,
1131  short *s,
1132  short *s1,
1133  int i),
1134  "Use vrna_eval_loop_pt() instead");
1135 
1150 DEPRECATED(float energy_of_struct(const char *string,
1151  const char *structure),
1152  "Use vrna_eval_structure_simple() instead");
1153 
1170 DEPRECATED(int energy_of_struct_pt(const char *string,
1171  short *ptable,
1172  short *s,
1173  short *s1),
1174  "Use vrna_eval_structure_pt_simple() instead");
1175 
1190 DEPRECATED(float energy_of_circ_struct(const char *string,
1191  const char *structure),
1192  "Use vrna_eval_circ_structure_simple() and vrna_eval_structure() instead");
1193 
1194 /* End deprecated eval interface */
1197 #endif
1198 
1203 #endif
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.
float vrna_eval_structure(vrna_fold_compound_t *vc, const char *structure)
Calculate the free energy of an already folded RNA.
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 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.
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...
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.
float energy_of_struct(const char *string, const char *structure)
The most basic data structure required by many functions throughout the RNAlib.
Definition: fold_compound.h:131
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.
The datastructure that contains temperature scaled energy parameters.
Definition: params.h:56
float vrna_eval_structure_simple(const char *string, const char *structure)
Calculate the free energy of an already folded RNA.
int cut_point
set to first pos of second seq for cofolding
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)
float energy_of_circ_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded circular RNA.
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)
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...
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 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_loop_pt_v(vrna_fold_compound_t *vc, int i, const short *pt, int verbosity_level)
Calculate energy of a loop.
Various data structures and pre-processor macros.
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_structure(const char *string, const char *structure, int verbosity_level)
Calculate the free energy of an already folded RNA using global model detail settings.
Functions to deal with sets of energy parameters.
float energy_of_circ_struct(const char *string, const char *structure)
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.
int vrna_eval_loop_pt(vrna_fold_compound_t *vc, int i, const short *pt)
Calculate energy of a loop.
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...
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...
int eos_debug
verbose info from energy_of_struct
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)
int loop_energy(short *ptable, short *s, short *s1, int i)
Calculate energy of a loop.
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 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.
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.
int energy_of_struct_pt(const char *string, short *ptable, short *s, short *s1)
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