RNAlib-2.4.14
Backtracking MFE structures

Backtracking related interfaces. More...

Detailed Description

Backtracking related interfaces.

+ Collaboration diagram for Backtracking MFE structures:

Functions

float vrna_backtrack5 (vrna_fold_compound_t *fc, unsigned int length, char *structure)
 Backtrack an MFE (sub)structure. More...
 
int vrna_BT_hp_loop (vrna_fold_compound_t *fc, int i, int j, int en, vrna_bp_stack_t *bp_stack, int *stack_count)
 Backtrack a hairpin loop closed by $ (i,j) $. More...
 
int vrna_BT_stack (vrna_fold_compound_t *fc, int *i, int *j, int *en, vrna_bp_stack_t *bp_stack, int *stack_count)
 Backtrack a stacked pair closed by $ (i,j) $.
 
int vrna_BT_int_loop (vrna_fold_compound_t *fc, int *i, int *j, int en, vrna_bp_stack_t *bp_stack, int *stack_count)
 Backtrack an interior loop closed by $ (i,j) $.
 
int vrna_BT_mb_loop (vrna_fold_compound_t *fc, int *i, int *j, int *k, int en, int *component1, int *component2)
 Backtrack the decomposition of a multi branch loop closed by $ (i,j) $. More...
 

Function Documentation

float vrna_backtrack5 ( vrna_fold_compound_t vc,
unsigned int  length,
char *  structure 
)

#include <ViennaRNA/mfe.h>

Backtrack an MFE (sub)structure.

This function allows one to backtrack the MFE structure for a (sub)sequence

Note
On error, the function returns INF / 100. and stores the empty string in structure.
Precondition
Requires pre-filled MFE dynamic programming matrices, i.e. one has to call vrna_mfe() prior to calling this function
See also
vrna_mfe(), vrna_pbacktrack5()
Parameters
fcfold compound
lengthThe length of the subsequence, starting from the 5' end
structureA pointer to the character array where the secondary structure in dot-bracket notation will be written to. (Must have size of at least $p length + 1)
Returns
The minimum free energy (MFE) for the specified length in kcal/mol and a corresponding secondary structure in dot-bracket notation (stored in structure)
SWIG Wrapper Notes:
This function is attached as overloaded method backtrack() to objects of type fold_compound with default parameter length equal to the total length of the RNA.
int vrna_BT_hp_loop ( vrna_fold_compound_t fc,
int  i,
int  j,
int  en,
vrna_bp_stack_t bp_stack,
int *  stack_count 
)

#include <ViennaRNA/loops/hairpin.h>

Backtrack a hairpin loop closed by $ (i,j) $.

Note
This function is polymorphic! The provided vrna_fold_compound_t may be of type VRNA_FC_TYPE_SINGLE or VRNA_FC_TYPE_COMPARATIVE
int vrna_BT_mb_loop ( vrna_fold_compound_t fc,
int *  i,
int *  j,
int *  k,
int  en,
int *  component1,
int *  component2 
)

#include <ViennaRNA/loops/multibranch.h>

Backtrack the decomposition of a multi branch loop closed by $ (i,j) $.

Parameters
fcThe vrna_fold_compound_t filled with all relevant data for backtracking
i5' position of base pair closing the loop (will be set to 5' position of leftmost decomposed block upon successful backtracking)
j3' position of base pair closing the loop (will be set to 3' position of rightmost decomposed block upon successful backtracking)
kSplit position that delimits leftmost from rightmost block, [i,k] and [k+1, j], respectively. (Will be set upon successful backtracking)
enThe energy contribution of the substructure enclosed by $ (i,j) $
component1Type of leftmost block (1 = ML, 2 = C)
component2Type of rightmost block (1 = ML, 2 = C)
Returns
1, if backtracking succeeded, 0 otherwise.