RNAlib-2.4.14
Tree Representation of Secondary Structures

Detailed Description

Secondary structures can be readily represented as trees, where internal nodes represent base pairs, and leaves represent unpaired nucleotides. The dot-bracket structure string already is a tree represented by a string of parenthesis (base pairs) and dots for the leaf nodes (unpaired nucleotides).

See Tree Representations of Secondary Structures for a detailed description on tree representation of secondary structures.

+ Collaboration diagram for Tree Representation of Secondary Structures:

Macros

#define VRNA_STRUCTURE_TREE_HIT   1U
 Homeomorphically Irreducible Tree (HIT) representation of a secondary structure. More...
 
#define VRNA_STRUCTURE_TREE_SHAPIRO_SHORT   2U
 (short) Coarse Grained representation of a secondary structure More...
 
#define VRNA_STRUCTURE_TREE_SHAPIRO   3U
 (full) Coarse Grained representation of a secondary structure More...
 
#define VRNA_STRUCTURE_TREE_SHAPIRO_EXT   4U
 (extended) Coarse Grained representation of a secondary structure More...
 
#define VRNA_STRUCTURE_TREE_SHAPIRO_WEIGHT   5U
 (weighted) Coarse Grained representation of a secondary structure More...
 
#define VRNA_STRUCTURE_TREE_EXPANDED   6U
 Expanded Tree representation of a secondary structure. More...
 

Functions

char * vrna_db_to_tree_string (const char *structure, unsigned int type)
 Convert a Dot-Bracket structure string into tree string representation. More...
 
char * vrna_tree_string_unweight (const char *structure)
 Remove weights from a linear string tree representation of a secondary structure. More...
 
char * vrna_tree_string_to_db (const char *tree)
 Convert a linear tree string representation of a secondary structure back to Dot-Bracket notation. More...
 

Macro Definition Documentation

#define VRNA_STRUCTURE_TREE_HIT   1U

#include <ViennaRNA/utils/structures.h>

Homeomorphically Irreducible Tree (HIT) representation of a secondary structure.

See also
vrna_db_to_tree_string()
#define VRNA_STRUCTURE_TREE_SHAPIRO_SHORT   2U

#include <ViennaRNA/utils/structures.h>

(short) Coarse Grained representation of a secondary structure

See also
vrna_db_to_tree_string()
#define VRNA_STRUCTURE_TREE_SHAPIRO   3U

#include <ViennaRNA/utils/structures.h>

(full) Coarse Grained representation of a secondary structure

See also
vrna_db_to_tree_string()
#define VRNA_STRUCTURE_TREE_SHAPIRO_EXT   4U

#include <ViennaRNA/utils/structures.h>

(extended) Coarse Grained representation of a secondary structure

See also
vrna_db_to_tree_string()
#define VRNA_STRUCTURE_TREE_SHAPIRO_WEIGHT   5U

#include <ViennaRNA/utils/structures.h>

(weighted) Coarse Grained representation of a secondary structure

See also
vrna_db_to_tree_string()
#define VRNA_STRUCTURE_TREE_EXPANDED   6U

#include <ViennaRNA/utils/structures.h>

Expanded Tree representation of a secondary structure.

See also
vrna_db_to_tree_string()

Function Documentation

char* vrna_db_to_tree_string ( const char *  structure,
unsigned int  type 
)

#include <ViennaRNA/utils/structures.h>

Convert a Dot-Bracket structure string into tree string representation.

This function allows one to convert a secondary structure in dot-bracket notation into one of the various tree representations for secondary structures. The resulting tree is then represented as a string of parenthesis and node symbols, similar to to the Newick format.

Currently we support conversion into the following formats, denoted by the value of parameter type:

See also
Tree Representations of Secondary Structures
Parameters
structureThe null-terminated dot-bracket structure string
typeA switch to determine the type of tree string representation
Returns
A tree representation of the input structure
char* vrna_tree_string_unweight ( const char *  structure)

#include <ViennaRNA/utils/structures.h>

Remove weights from a linear string tree representation of a secondary structure.

This function strips the weights of a linear string tree representation such as HIT, or Coarse Grained Tree sensu Shapiro [21]

See also
vrna_db_to_tree_string()
Parameters
structureA linear string tree representation of a secondary structure with weights
Returns
A linear string tree representation of a secondary structure without weights
char* vrna_tree_string_to_db ( const char *  tree)

#include <ViennaRNA/utils/structures.h>

Convert a linear tree string representation of a secondary structure back to Dot-Bracket notation.

Warning
This function only accepts Expanded and HIT tree representations!
See also
vrna_db_to_tree_string(), VRNA_STRUCTURE_TREE_EXPANDED, VRNA_STRUCTURE_TREE_HIT, Tree Representations of Secondary Structures
Parameters
treeA linear tree string representation of a secondary structure
Returns
A dot-bracket notation of the secondary structure provided in tree