RNAlib-2.3.1
alifold.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_ALIFOLD_H
2 #define VIENNA_RNA_PACKAGE_ALIFOLD_H
3 
4 /* make this interface backward compatible with RNAlib < 2.2.0 */
5 #define VRNA_BACKWARD_COMPAT
6 
8 #include <ViennaRNA/params.h>
9 #include <ViennaRNA/ribo.h>
10 #include <ViennaRNA/mfe.h>
11 #include <ViennaRNA/part_func.h>
12 #include <ViennaRNA/aln_util.h>
14 
15 #ifdef DEPRECATION_WARNINGS
16 # ifdef __GNUC__
17 # define DEPRECATED(func) func __attribute__ ((deprecated))
18 # else
19 # define DEPRECATED(func) func
20 # endif
21 #else
22 # define DEPRECATED(func) func
23 #endif
24 
32 /*
33 ##############################################
34 # MFE VARIANTS OF THE ALIFOLD IMPLEMENTATION #
35 ##############################################
36 */
37 
61 float
62 vrna_alifold( const char **sequences,
63  char *structure);
64 
91 float
92 vrna_circalifold( const char **sequences,
93  char *structure);
94 
95 /*
96 #############################################################
97 # PARTITION FUNCTION VARIANTS OF THE ALIFOLD IMPLEMENTATION #
98 #############################################################
99 */
100 
124 float vrna_pf_alifold(const char **sequences, char *structure, vrna_plist_t **pl);
125 
152 float vrna_pf_circalifold(const char **sequences, char *structure, vrna_plist_t **pl);
153 
154 #ifdef VRNA_BACKWARD_COMPAT
155 
156 /*
157 #################################################
158 # DEPRECATED FUNCTIONS #
159 #################################################
160 */
161 
162 
183 DEPRECATED(float alifold( const char **strings, char *structure));
184 
198 DEPRECATED(float circalifold( const char **strings, char *structure));
199 
213 DEPRECATED(void free_alifold_arrays(void));
214 
230 DEPRECATED(float energy_of_alistruct(const char **sequences, const char *structure, int n_seq, float *energy));
231 
232 DEPRECATED(float energy_of_ali_gquad_structure(const char **sequences, const char *structure, int n_seq, float *energy));
233 
244 DEPRECATED(extern double cv_fact);
255 DEPRECATED(extern double nc_fact);
256 
273 DEPRECATED(float alipf_fold_par( const char **sequences,
274  char *structure,
275  vrna_plist_t **pl,
276  vrna_exp_param_t *parameters,
277  int calculate_bppm,
278  int is_constrained,
279  int is_circular));
280 
299 DEPRECATED(float alipf_fold( const char **sequences, char *structure, vrna_plist_t **pl));
300 
313 DEPRECATED(float alipf_circ_fold(const char **sequences, char *structure, vrna_plist_t **pl));
314 
315 
334 DEPRECATED(FLT_OR_DBL *export_ali_bppm(void));
335 
348 DEPRECATED(void free_alipf_arrays(void));
349 
360 DEPRECATED(char *alipbacktrack(double *prob));
361 
388 DEPRECATED(int get_alipf_arrays(short ***S_p,
389  short ***S5_p,
390  short ***S3_p,
391  unsigned short ***a2s_p,
392  char ***Ss_p,
393  FLT_OR_DBL **qb_p,
394  FLT_OR_DBL **qm_p,
395  FLT_OR_DBL **q1k_p,
396  FLT_OR_DBL **qln_p,
397  short **pscore));
398 
399 
411 DEPRECATED(void update_alifold_params(void));
412 
413 #endif
414 
415 
416 #endif
float vrna_pf_circalifold(const char **sequences, char *structure, vrna_plist_t **pl)
Compute Partition function (and base pair probabilities) for an alignment of circular RNA sequences ...
float vrna_pf_alifold(const char **sequences, char *structure, vrna_plist_t **pl)
Compute Partition function (and base pair probabilities) for an RNA sequence alignment using a compa...
int get_alipf_arrays(short ***S_p, short ***S5_p, short ***S3_p, unsigned short ***a2s_p, char ***Ss_p, FLT_OR_DBL **qb_p, FLT_OR_DBL **qm_p, FLT_OR_DBL **q1k_p, FLT_OR_DBL **qln_p, short **pscore)
Get pointers to (almost) all relavant arrays used in alifold&#39;s partition function computation...
float alifold(const char **strings, char *structure)
Compute MFE and according consensus structure of an alignment of sequences.
FLT_OR_DBL * export_ali_bppm(void)
Get a pointer to the base pair probability array.
double cv_fact
This variable controls the weight of the covariance term in the energy function of alignment folding ...
double FLT_OR_DBL
Typename for floating point number in partition function computations.
Definition: data_structures.h:48
void update_alifold_params(void)
Update the energy parameters for alifold function.
double nc_fact
This variable controls the magnitude of the penalty for non-compatible sequences in the covariance te...
void free_alifold_arrays(void)
Free the memory occupied by MFE alifold functions.
float circalifold(const char **strings, char *structure)
Compute MFE and according structure of an alignment of sequences assuming the sequences are circular ...
Various data structures and pre-processor macros.
char * alipbacktrack(double *prob)
Sample a consensus secondary structure from the Boltzmann ensemble according its probability.
void free_alipf_arrays(void)
Free the memory occupied by folding matrices allocated by alipf_fold, alipf_circ_fold, etc.
Functions to deal with sets of energy parameters.
float vrna_alifold(const char **sequences, char *structure)
Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for an RNA seque...
The data structure that contains temperature scaled Boltzmann weights of the energy parameters...
Definition: params.h:99
float vrna_circalifold(const char **sequences, char *structure)
Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for a sequence a...
float alipf_fold_par(const char **sequences, char *structure, vrna_plist_t **pl, vrna_exp_param_t *parameters, int calculate_bppm, int is_constrained, int is_circular)
Boltzmann Sampling of secondary structures from the ensemble.
float alipf_fold(const char **sequences, char *structure, vrna_plist_t **pl)
The partition function version of alifold() works in analogy to pf_fold(). Pair probabilities and inf...
Various utility- and helper-functions for sequence alignments and comparative structure prediction...
this datastructure is used as input parameter in functions of PS_dot.h and others ...
Definition: data_structures.h:182
Partition function implementations.
float alipf_circ_fold(const char **sequences, char *structure, vrna_plist_t **pl)
MFE calculations for single RNA sequences.
float energy_of_alistruct(const char **sequences, const char *structure, int n_seq, float *energy)
Calculate the free energy of a consensus structure given a set of aligned sequences.
Parse RiboSum Scoring Matrices for Covariance Scoring of Alignments.