RNAlib-2.4.14
|
|
Macros | |
#define | VRNA_BRACKETS_ALPHA 4U |
Bitflag to indicate secondary structure notations using uppercase/lowercase letters from the latin alphabet. More... | |
#define | VRNA_BRACKETS_RND 8U |
Bitflag to indicate secondary structure notations using round brackets (parenthesis), () More... | |
#define | VRNA_BRACKETS_CLY 16U |
Bitflag to indicate secondary structure notations using curly brackets, {} More... | |
#define | VRNA_BRACKETS_ANG 32U |
Bitflag to indicate secondary structure notations using angular brackets, <> More... | |
#define | VRNA_BRACKETS_SQR 64U |
Bitflag to indicate secondary structure notations using square brackets, [] More... | |
#define | VRNA_BRACKETS_DEFAULT |
Default bitmask to indicate secondary structure notation using any pair of brackets. More... | |
#define | VRNA_BRACKETS_ANY |
Bitmask to indicate secondary structure notation using any pair of brackets or uppercase/lowercase alphabet letters. More... | |
Functions | |
char * | vrna_db_pack (const char *struc) |
Pack secondary secondary structure, 5:1 compression using base 3 encoding. More... | |
char * | vrna_db_unpack (const char *packed) |
Unpack secondary structure previously packed with vrna_db_pack() More... | |
void | vrna_db_flatten (char *structure, unsigned int options) |
Substitute pairs of brackets in a string with parenthesis. More... | |
void | vrna_db_flatten_to (char *string, const char target[3], unsigned int options) |
Substitute pairs of brackets in a string with another type of pair characters. More... | |
char * | vrna_db_from_ptable (short *pt) |
Convert a pair table into dot-parenthesis notation. More... | |
char * | vrna_db_from_WUSS (const char *wuss) |
Convert a WUSS annotation string to dot-bracket format. More... | |
char * | vrna_db_from_plist (vrna_ep_t *pairs, unsigned int n) |
Convert a list of base pairs into dot-bracket notation. More... | |
char * | vrna_db_to_element_string (const char *structure) |
Convert a secondary structure in dot-bracket notation to a nucleotide annotation of loop contexts. More... | |
char * | vrna_db_pk_remove (const char *structure, unsigned int options) |
Remove pseudo-knots from an input structure. More... | |
#define VRNA_BRACKETS_ALPHA 4U |
#include <ViennaRNA/utils/structures.h>
Bitflag to indicate secondary structure notations using uppercase/lowercase letters from the latin alphabet.
#define VRNA_BRACKETS_RND 8U |
#include <ViennaRNA/utils/structures.h>
Bitflag to indicate secondary structure notations using round brackets (parenthesis), ()
#define VRNA_BRACKETS_CLY 16U |
#include <ViennaRNA/utils/structures.h>
Bitflag to indicate secondary structure notations using curly brackets, {}
#define VRNA_BRACKETS_ANG 32U |
#include <ViennaRNA/utils/structures.h>
Bitflag to indicate secondary structure notations using angular brackets, <>
#define VRNA_BRACKETS_SQR 64U |
#include <ViennaRNA/utils/structures.h>
Bitflag to indicate secondary structure notations using square brackets, []
#define VRNA_BRACKETS_DEFAULT |
#include <ViennaRNA/utils/structures.h>
Default bitmask to indicate secondary structure notation using any pair of brackets.
This set of matching brackets/parenthesis is always nested, i.e. pseudo-knot free, in WUSS format. However, in general different kinds of brackets are mostly used for annotating pseudo-knots. Thus special care has to be taken to remove pseudo-knots if this bitmask is used in functions that return secondary structures without pseudo-knots!
#define VRNA_BRACKETS_ANY |
#include <ViennaRNA/utils/structures.h>
Bitmask to indicate secondary structure notation using any pair of brackets or uppercase/lowercase alphabet letters.
char* vrna_db_pack | ( | const char * | struc | ) |
#include <ViennaRNA/utils/structures.h>
Pack secondary secondary structure, 5:1 compression using base 3 encoding.
Returns a binary string encoding of the secondary structure using a 5:1 compression scheme. The string is NULL terminated and can therefore be used with standard string functions such as strcmp(). Useful for programs that need to keep many structures in memory.
struc | The secondary structure in dot-bracket notation |
char* vrna_db_unpack | ( | const char * | packed | ) |
#include <ViennaRNA/utils/structures.h>
Unpack secondary structure previously packed with vrna_db_pack()
Translate a compressed binary string produced by vrna_db_pack() back into the familiar dot-bracket notation.
packed | The binary encoded packed secondary structure |
void vrna_db_flatten | ( | char * | structure, |
unsigned int | options | ||
) |
#include <ViennaRNA/utils/structures.h>
Substitute pairs of brackets in a string with parenthesis.
This function can be used to replace brackets of unusual types, such as angular brackets <>
, to dot-bracket format. The options
parameter is used tpo specify which types of brackets will be replaced by round parenthesis () .
structure | The structure string where brackets are flattened in-place |
options | A bitmask to specify which types of brackets should be flattened out |
This function flattens an input structure string in-place! The second parameter is optional and defaults to VRNA_BRACKETS_DEFAULT.
An overloaded version of this function exists, where an additional second parameter can be passed to specify the target brackets, i.e. the type of matching pair characters all brackets will be flattened to. Therefore, in the scripting language interface this function is a replacement for vrna_db_flatten_to().
void vrna_db_flatten_to | ( | char * | string, |
const char | target[3], | ||
unsigned int | options | ||
) |
#include <ViennaRNA/utils/structures.h>
Substitute pairs of brackets in a string with another type of pair characters.
This function can be used to replace brackets in a structure annotation string, such as square brackets [] , to another type of pair characters, e.g. angular brackets
<>
.
The target
array must contain a character for the 'pair open' annotation at position 0, and one for 'pair close' at position 1. Toptions
parameter is used to specify which types of brackets will be replaced by the new pairs.
string | The structure string where brackets are flattened in-place |
target | The new pair characters the string will be flattened to |
options | A bitmask to specify which types of brackets should be flattened out |
char* vrna_db_from_ptable | ( | short * | pt | ) |
#include <ViennaRNA/utils/structures.h>
Convert a pair table into dot-parenthesis notation.
pt | The pair table to be copied |
char* vrna_db_from_WUSS | ( | const char * | wuss | ) |
#include <ViennaRNA/utils/structures.h>
Convert a WUSS annotation string to dot-bracket format.
wuss | The input string in WUSS notation |
char* vrna_db_from_plist | ( | vrna_ep_t * | pairs, |
unsigned int | n | ||
) |
#include <ViennaRNA/utils/structures.h>
Convert a list of base pairs into dot-bracket notation.
pairs | A vrna_ep_t containing the pairs to be included in the dot-bracket string |
n | The length of the structure (number of nucleotides) |
char* vrna_db_to_element_string | ( | const char * | structure | ) |
#include <ViennaRNA/utils/structures.h>
Convert a secondary structure in dot-bracket notation to a nucleotide annotation of loop contexts.
structure | The secondary structure in dot-bracket notation |
char * vrna_db_pk_remove | ( | const char * | structure, |
unsigned int | options | ||
) |
#include <ViennaRNA/utils/structures.h>
Remove pseudo-knots from an input structure.
This function removes pseudo-knots from an input structure by determining the minimum number of base pairs that need to be removed to make the structure pseudo-knot free.
To accomplish that, we use a dynamic programming algorithm similar to the Nussinov maxmimum matching approach.
The input structure must be in a dot-bracket string like form where crossing base pairs are denoted by the use of additional types of matching brackets, e.g. <>
, {}
, [],
{}
. Furthermore, crossing pairs may be annotated by matching uppercase/lowercase letters from the alphabet A-Z
. For the latter, the uppercase letter must be the 5' and the lowercase letter the 3' nucleotide of the base pair. The actual type of brackets to be recognized by this function must be specifed through the options
parameter.
options
bitmask will be silently ignored!structure | Input structure in dot-bracket format that may include pseudo-knots |
options | A bitmask to specify which types of brackets should be processed |
db_pk_remove()
where the optional second parameter options
defaults to #VRNA_BRACKET_ANY.