Suboptimal Structures within an Energy Band around the MFE — ViennaRNA Package

# Suboptimal Structures within an Energy Band around the MFE

  Typedefs

  typedef void (*vrna_subopt_result_f)(const char *stucture, float energy, void *data)

    Callback for vrna_subopt_cb().

        #include <ViennaRNA/subopt/basic.h>

    Notes on Callback Functions:

      This function will be called for each suboptimal secondary structure that is successfully backtraced.

    See also

    vrna_subopt_cb()

    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)

    Returns list of subopt structures or writes to fp.

        #include <ViennaRNA/subopt/wuchty.h>

    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

    vrna_subopt_cb(), vrna_subopt_zuker()

    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)

    Generate suboptimal structures within an energy band arround the MFE.

        #include <ViennaRNA/subopt/wuchty.h>

    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

    vrna_subopt_result_f, vrna_subopt(), vrna_subopt_zuker()

    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)

    Returns list of subopt structures or writes to fp.

        #include <ViennaRNA/subopt/wuchty.h>

    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)

    Returns list of subopt structures or writes to fp.

        #include <ViennaRNA/subopt/wuchty.h>

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

    Returns list of circular subopt structures or writes to fp.

        #include <ViennaRNA/subopt/wuchty.h>

    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:

  Variables

  double print_energy

    printing threshold for use with logML

        #include <ViennaRNA/subopt/wuchty.h>

  int subopt_sorted

    Sort output by energy.

        #include <ViennaRNA/subopt/wuchty.h>