Suboptimal Structures within an Energy Band around the MFE
Typedefs
-
typedef void (*vrna_subopt_result_f)(const char *stucture, float energy, void *data)
- #include <ViennaRNA/subopt.h>
Callback for vrna_subopt_cb()
- Notes on Callback Functions:
This function will be called for each suboptimal secondary structure that is successfully backtraced.
See also
- Param structure
The suboptimal secondary structure in dot-bracket notation
- Param energy
The free energy of the secondary structure in kcal/mol
- Param data
Some arbitrary, auxiliary data address as passed to vrna_subopt_cb()
Functions
-
vrna_subopt_solution_t *vrna_subopt(vrna_fold_compound_t *fc, 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 Wuchty et al. [1999] . 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.
- SWIG Wrapper Notes:
This function is attached as method subopt() to objects of type
fold_compound
. See, e.g.RNA.fold_compound.subopt()
in the Python API.
See also
Note
This function requires all multibranch loop DP matrices for unique multibranch loop backtracing. Therefore, the supplied vrna_fold_compound_t
fc
(argument 1) must be initialized with vrna_md_t.uniq_ML = 1, for instance like this:vrna_md_t md; vrna_md_set_default(&md); md.uniq_ML = 1; vrna_fold_compound_t *fc=vrna_fold_compound("GGGGGGAAAAAACCCCCC", &md, VRNA_OPTION_DEFAULT);
- Parameters
fc –
delta –
sorted – Sort results by energy in ascending order
fp –
- Returns
-
void vrna_subopt_cb(vrna_fold_compound_t *fc, int delta, vrna_subopt_result_f 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] . 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.- SWIG Wrapper Notes:
This function is attached as method subopt_cb() to objects of type
fold_compound
. See, e.g.RNA.fold_compound.subopt_cb()
in the Python API.
See also
Note
This function requires all multibranch loop DP matrices for unique multibranch loop backtracing. Therefore, the supplied vrna_fold_compound_t
fc
(argument 1) must be initialized with vrna_md_t.uniq_ML = 1, for instance like this:vrna_md_t md; vrna_md_set_default(&md); md.uniq_ML = 1; vrna_fold_compound_t *fc=vrna_fold_compound("GGGGGGAAAAAACCCCCC", &md, VRNA_OPTION_DEFAULT);
- Parameters
fc – 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_par(char *seq, char *structure, vrna_param_t *parameters, int delta, int is_constrained, int is_circular, FILE *fp)
- #include <ViennaRNA/subopt.h>
Returns list of subopt structures or writes to fp.
-
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
-
typedef void (*vrna_subopt_result_f)(const char *stucture, float energy, void *data)