Computing Minimum Free Energy (MFE) Structures
RNA Secondary Structure Prediction

This section covers all functions and variables related to the calculation of minimum free energy (MFE) structures. More...

Collaboration diagram for Computing Minimum Free Energy (MFE) Structures:

## Modules

| MFE Structures of single Nucleic Acid Sequences
| This module contains all functions and variables related to the calculation of global minimum free energy structures for single sequences.
| MFE Structures of two hybridized Sequences
| MFE Consensus Structures for Sequence Alignment(s)
| Local MFE structure Prediction and Z-scores
| Calculating 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.

## Functions

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...

## Detailed Description

This section covers all functions and variables related to the calculation of minimum free energy (MFE) structures.

The library provides a fast dynamic programming minimum free energy folding algorithm as described in [19]. All relevant parts that directly implement the "Zuker & Stiegler" algorithm for single sequences are described in this section.

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

Nevertheless, the RNAlib also provides interfaces for the prediction of consensus MFE structures of sequence alignments, MFE structure for two hybridized sequences, local optimal structures and many more. For those more specialized variants of MFE folding routines, please consult the appropriate subsections (Modules) as listed above.

## 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 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_VC_TYPE_SINGLE, and VRNA_VC_TYPE_ALIGNMENT.

See also
  vrna_fold_compound_t, vrna_fold_compound(), vrna_fold(), vrna_circfold(), vrna_fold_compound_comparative(), vrna_alifold(), vrna_circalifold()

Parameters

  vc | fold compound
  structure | A 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