RNAlib-2.4.14

Variations of the global Minimum Free Energy (MFE) prediction algorithm. More...

Detailed Description

Variations of the global Minimum Free Energy (MFE) prediction algorithm.

We provide implementations of the global MFE prediction algorithm for

+ Collaboration diagram for Global MFE Prediction:

Modules

 Computing MFE representatives of a Distance Based Partitioning
 Compute the minimum free energy (MFE) and secondary structures for a partitioning of the secondary structure space according to the base pair distance to two fixed reference structures basepair distance to two fixed reference structures.
 
 Deprecated Interface for Global MFE Prediction
 

Files

file  mfe.h
 Compute Minimum Free energy (MFE) and backtrace corresponding secondary structures from RNA sequence data.
 

Basic global MFE prediction interface

float vrna_mfe (vrna_fold_compound_t *vc, char *structure)
 Compute minimum free energy and an appropriate secondary structure of an RNA sequence, or RNA sequence alignment. More...
 
float vrna_mfe_dimer (vrna_fold_compound_t *vc, char *structure)
 Compute the minimum free energy of two interacting RNA molecules. More...
 

Simplified global MFE prediction using sequence(s) or multiple sequence alignment(s)

float vrna_fold (const char *sequence, char *structure)
 Compute Minimum Free Energy (MFE), and a corresponding secondary structure for an RNA sequence. More...
 
float vrna_circfold (const char *sequence, char *structure)
 Compute Minimum Free Energy (MFE), and a corresponding secondary structure for a circular RNA sequence. More...
 
float vrna_alifold (const char **sequences, char *structure)
 Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for an RNA sequence alignment using a comparative method. More...
 
float vrna_circalifold (const char **sequences, char *structure)
 Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for a sequence alignment of circular RNAs using a comparative method. More...
 
float vrna_cofold (const char *sequence, char *structure)
 Compute Minimum Free Energy (MFE), and a corresponding secondary structure for two dimerized RNA sequences. More...
 

Function Documentation

float vrna_mfe ( vrna_fold_compound_t vc,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute minimum free energy and an appropriate secondary structure of an RNA sequence, or RNA sequence alignment.

Depending on the type of the provided vrna_fold_compound_t, this function predicts the MFE for a single sequence, or a corresponding averaged MFE for a sequence alignment. If backtracking is activated, it also constructs the corresponding secondary structure, or consensus structure. Therefore, the second parameter, structure, has to point to an allocated block of memory with a size of at least $\mathrm{strlen}(\mathrm{sequence})+1$ to store the backtracked MFE structure. (For consensus structures, this is the length of the alignment + 1. If NULL is passed, no backtracking will be performed.

Note
This function is polymorphic. It accepts vrna_fold_compound_t of type VRNA_FC_TYPE_SINGLE, and VRNA_FC_TYPE_COMPARATIVE.
See also
vrna_fold_compound_t, vrna_fold_compound(), vrna_fold(), vrna_circfold(), vrna_fold_compound_comparative(), vrna_alifold(), vrna_circalifold()
Parameters
vcfold compound
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to (Maybe NULL)
Returns
the minimum free energy (MFE) in kcal/mol
SWIG Wrapper Notes:
This function is attached as method mfe() to objects of type fold_compound
float vrna_mfe_dimer ( vrna_fold_compound_t vc,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute the minimum free energy of two interacting RNA molecules.

The code is analog to the vrna_mfe() function.

Parameters
vcfold compound
structureWill hold the barcket dot structure of the dimer molecule
Returns
minimum free energy of the structure
SWIG Wrapper Notes:
This function is attached as method mfe_dimer() to objects of type fold_compound
float vrna_fold ( const char *  sequence,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute Minimum Free Energy (MFE), and a corresponding secondary structure for an RNA sequence.

This simplified interface to vrna_mfe() computes the MFE and, if required, a secondary structure for an RNA sequence using default options. Memory required for dynamic programming (DP) matrices will be allocated and free'd on-the-fly. Hence, after return of this function, the recursively filled matrices are not available any more for any post-processing, e.g. suboptimal backtracking, etc.

Note
In case you want to use the filled DP matrices for any subsequent post-processing step, or you require other conditions than specified by the default model details, use vrna_mfe(), and the data structure vrna_fold_compound_t instead.
See also
vrna_circfold(), vrna_mfe()
Parameters
sequenceRNA sequence
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to
Returns
the minimum free energy (MFE) in kcal/mol
float vrna_circfold ( const char *  sequence,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute Minimum Free Energy (MFE), and a corresponding secondary structure for a circular RNA sequence.

This simplified interface to vrna_mfe() computes the MFE and, if required, a secondary structure for a circular RNA sequence using default options. Memory required for dynamic programming (DP) matrices will be allocated and free'd on-the-fly. Hence, after return of this function, the recursively filled matrices are not available any more for any post-processing, e.g. suboptimal backtracking, etc.

Folding of circular RNA sequences is handled as a post-processing step of the forward recursions. See [10] for further details.

Note
In case you want to use the filled DP matrices for any subsequent post-processing step, or you require other conditions than specified by the default model details, use vrna_mfe(), and the data structure vrna_fold_compound_t instead.
See also
vrna_fold(), vrna_mfe()
Parameters
sequenceRNA sequence
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to
Returns
the minimum free energy (MFE) in kcal/mol
float vrna_alifold ( const char **  sequences,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for an RNA sequence alignment using a comparative method.

This simplified interface to vrna_mfe() computes the MFE and, if required, a consensus secondary structure for an RNA sequence alignment using default options. Memory required for dynamic programming (DP) matrices will be allocated and free'd on-the-fly. Hence, after return of this function, the recursively filled matrices are not available any more for any post-processing, e.g. suboptimal backtracking, etc.

Note
In case you want to use the filled DP matrices for any subsequent post-processing step, or you require other conditions than specified by the default model details, use vrna_mfe(), and the data structure vrna_fold_compound_t instead.
See also
vrna_circalifold(), vrna_mfe()
Parameters
sequencesRNA sequence alignment
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to
Returns
the minimum free energy (MFE) in kcal/mol
float vrna_circalifold ( const char **  sequences,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute Minimum Free Energy (MFE), and a corresponding consensus secondary structure for a sequence alignment of circular RNAs using a comparative method.

This simplified interface to vrna_mfe() computes the MFE and, if required, a consensus secondary structure for an RNA sequence alignment using default options. Memory required for dynamic programming (DP) matrices will be allocated and free'd on-the-fly. Hence, after return of this function, the recursively filled matrices are not available any more for any post-processing, e.g. suboptimal backtracking, etc.

Folding of circular RNA sequences is handled as a post-processing step of the forward recursions. See [10] for further details.

Note
In case you want to use the filled DP matrices for any subsequent post-processing step, or you require other conditions than specified by the default model details, use vrna_mfe(), and the data structure vrna_fold_compound_t instead.
See also
vrna_alifold(), vrna_mfe()
Parameters
sequencesSequence alignment of circular RNAs
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to
Returns
the minimum free energy (MFE) in kcal/mol
float vrna_cofold ( const char *  sequence,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Compute Minimum Free Energy (MFE), and a corresponding secondary structure for two dimerized RNA sequences.

This simplified interface to vrna_mfe() computes the MFE and, if required, a secondary structure for two RNA sequences upon dimerization using default options. Memory required for dynamic programming (DP) matrices will be allocated and free'd on-the-fly. Hence, after return of this function, the recursively filled matrices are not available any more for any post-processing, e.g. suboptimal backtracking, etc.

Note
In case you want to use the filled DP matrices for any subsequent post-processing step, or you require other conditions than specified by the default model details, use vrna_mfe(), and the data structure vrna_fold_compound_t instead.
See also
vrna_mfe_dimer(), vrna_fold_compound(), vrna_fold_compound_t, vrna_cut_point_insert()
Parameters
sequencetwo RNA sequences separated by the '&' character
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to
Returns
the minimum free energy (MFE) in kcal/mol