Suboptimal structures within an energy band arround the MFE
RNA Secondary Structure Prediction » Enumerating Suboptimal Structures
Collaboration diagram for Suboptimal structures within an energy band arround the MFE:

## Typedefs

typedef void( | vrna_subopt_callback) (const char *stucture, float energy, void *data)
| Callback for vrna_subopt_cb()

## Functions

vrna_subopt_solution_t * | vrna_subopt (vrna_fold_compound_t *vc, int delta, int sorted, FILE *fp)
| Returns list of subopt structures or writes to fp. More...
void | vrna_subopt_cb (vrna_fold_compound_t *vc, int delta, vrna_subopt_callback *cb, void *data)
| Generate suboptimal structures within an energy band arround the MFE. More...
SOLUTION * | subopt (char *seq, char *structure, int delta, FILE *fp)
| Returns list of subopt structures or writes to fp. More...
SOLUTION * | subopt_par (char *seq, char *structure, vrna_param_t *parameters, int delta, int is_constrained, int is_circular, FILE *fp)
| Returns list of subopt structures or writes to fp.
SOLUTION * | subopt_circ (char *seq, char *sequence, int delta, FILE *fp)
| Returns list of circular subopt structures or writes to fp. More...

## Variables

double | print_energy
| printing threshold for use with logML
int | subopt_sorted
| Sort output by energy.

## Detailed Description

## Function Documentation

vrna_subopt_solution_t* vrna_subopt | ( | vrna_fold_compound_t * | vc,
|  | int | delta,
|  | int | sorted,
|  | FILE * | fp
| ) |  |

`#include <ViennaRNA/subopt.h>`

Returns list of subopt structures or writes to fp.

This function produces all suboptimal secondary structures within 'delta' * 0.01 kcal/mol of the optimum, see [18]. The results are either directly written to a 'fp' (if 'fp' is not NULL), or (fp==NULL) returned in a vrna_subopt_solution_t * list terminated by an entry were the 'structure' member is NULL.

See also
  vrna_subopt_cb(), vrna_subopt_zuker()

Parameters

  vc |
  delta |
  sorted | Sort results by energy in ascending order
  fp |

Returns

void vrna_subopt_cb | ( | vrna_fold_compound_t * | vc,
|  | int | delta,
|  | vrna_subopt_callback * | cb,
|  | void * | data
| ) |  |

`#include <ViennaRNA/subopt.h>`

Generate suboptimal structures within an energy band arround the MFE.

This is the most generic implementation of the suboptimal structure generator according to Wuchty et al. 1999 [18]. Identical to vrna_subopt(), it computes all secondary structures within an energy band `delta` arround the MFE. However, this function does not print the resulting structures and their corresponding free energies to a file pointer, or returns them as a list. Instead, it calls a user-provided callback function which it passes the structure in dot-bracket format, the corresponding free energy in kcal/mol, and a user-provided data structure each time a structure was backtracked successfully. This function indicates the final output, i.e. the end of the backtracking procedure by passing NULL instead of an actual dot-bracket string to the callback.

See also
  vrna_subopt_callback, vrna_subopt(), vrna_subopt_zuker()

Parameters

  vc | fold compount with the sequence data
  delta | Energy band arround the MFE in 10cal/mol, i.e. deka-calories
  cb | Pointer to a callback function that handles the backtracked structure and its free energy in kcal/mol
  data | Pointer to some data structure that is passed along to the callback

SOLUTION* subopt | ( | char * | seq,
|  | char * | structure,
|  | int | delta,
|  | FILE * | fp
| ) |  |

`#include <ViennaRNA/subopt.h>`

Returns list of subopt structures or writes to fp.

This function produces all suboptimal secondary structures within 'delta' * 0.01 kcal/mol of the optimum. The results are either directly written to a 'fp' (if 'fp' is not NULL), or (fp==NULL) returned in a SOLUTION * list terminated by an entry were the 'structure' pointer is NULL.

Parameters

  seq |
  structure |
  delta |
  fp |

Returns

SOLUTION* subopt_circ | ( | char * | seq,
|  | char * | sequence,
|  | int | delta,
|  | FILE * | fp
| ) |  |

`#include <ViennaRNA/subopt.h>`

Returns list of circular subopt structures or writes to fp.

This function is similar to subopt() but calculates secondary structures assuming the RNA sequence to be circular instead of linear

Parameters

  seq |
  sequence |
  delta |
  fp |

Returns