RNAlib-2.2.7
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 
54 /*
55 ##############################################
56 # MFE VARIANTS OF THE ALIFOLD IMPLEMENTATION #
57 ##############################################
58 */
59 
83 float
84 vrna_alifold( const char **ssequences,
85  char *structure);
86 
113 float
114 vrna_circalifold( const char **ssequences,
115  char *structure);
116 
117 /*
118 #############################################################
119 # PARTITION FUNCTION VARIANTS OF THE ALIFOLD IMPLEMENTATION #
120 #############################################################
121 */
122 
123 
155 float vrna_pf_alifold(const char **strings, char *structure, vrna_plist_t **pl);
156 
183 float vrna_pf_circalifold(const char **sequences, char *structure, vrna_plist_t **pl);
184 
185 #ifdef VRNA_BACKWARD_COMPAT
186 
187 /*
188 #################################################
189 # DEPRECATED FUNCTIONS #
190 #################################################
191 */
192 
193 
214 DEPRECATED(float alifold( const char **strings, char *structure));
215 
229 DEPRECATED(float circalifold( const char **strings, char *structure));
230 
244 DEPRECATED(void free_alifold_arrays(void));
245 
261 DEPRECATED(float energy_of_alistruct(const char **sequences, const char *structure, int n_seq, float *energy));
262 
263 DEPRECATED(float energy_of_ali_gquad_structure(const char **sequences, const char *structure, int n_seq, float *energy));
264 
275 DEPRECATED(extern double cv_fact);
286 DEPRECATED(extern double nc_fact);
287 
304 DEPRECATED(float alipf_fold_par( const char **sequences,
305  char *structure,
306  vrna_plist_t **pl,
307  vrna_exp_param_t *parameters,
308  int calculate_bppm,
309  int is_constrained,
310  int is_circular));
311 
330 DEPRECATED(float alipf_fold( const char **sequences, char *structure, vrna_plist_t **pl));
331 
344 DEPRECATED(float alipf_circ_fold(const char **sequences, char *structure, vrna_plist_t **pl));
345 
346 
365 DEPRECATED(FLT_OR_DBL *export_ali_bppm(void));
366 
379 DEPRECATED(void free_alipf_arrays(void));
380 
391 DEPRECATED(char *alipbacktrack(double *prob));
392 
418 DEPRECATED(int get_alipf_arrays(short ***S_p,
419  short ***S5_p,
420  short ***S3_p,
421  unsigned short ***a2s_p,
422  char ***Ss_p,
423  FLT_OR_DBL **qb_p,
424  FLT_OR_DBL **qm_p,
425  FLT_OR_DBL **q1k_p,
426  FLT_OR_DBL **qln_p,
427  short **pscore));
428 
429 
441 DEPRECATED(void update_alifold_params(void));
442 
443 #endif
444 
445 
446 #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 ...
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'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:39
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...
float vrna_circalifold(const char **ssequences, char *structure)
Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for a sequence a...
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 ...
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.
The datastructure that contains temperature scaled Boltzmann weights of the energy parameters...
Definition: params.h:94
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...
float vrna_pf_alifold(const char **strings, char *structure, vrna_plist_t **pl)
Compute Partition function (and base pair probabilities) for an RNA sequence alignment using a compa...
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:164
Partition function of single RNA sequences.
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.
float vrna_alifold(const char **ssequences, char *structure)
Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for an RNA seque...
Parse RiboSum Scoring Matrices for Covariance Scoring of Alignments.