RNAlib-2.4.4
Parsing, converting, comparing secondary structures

Detailed Description

+ Collaboration diagram for Parsing, converting, comparing secondary structures:

Files

file  RNAstruct.h
 Parsing and Coarse Graining of Structures.
 

Data Structures

struct  vrna_hx_s
 Data structure representing an entry of a helix list. More...
 
struct  vrna_elem_prob_s
 Data structure representing a single entry of an element probability list (e.g. list of pair probabilities) More...
 

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...
 

Typedefs

typedef struct vrna_hx_s vrna_hx_t
 Convenience typedef for data structure vrna_hx_s.
 
typedef struct vrna_elem_prob_s vrna_ep_t
 Convenience typedef for data structure #vrna_pp_s.
 

Functions

char * b2HIT (const char *structure)
 Converts the full structure from bracket notation to the HIT notation including root. More...
 
char * b2C (const char *structure)
 Converts the full structure from bracket notation to the a coarse grained notation using the 'H' 'B' 'I' 'M' and 'R' identifiers. More...
 
char * b2Shapiro (const char *structure)
 Converts the full structure from bracket notation to the weighted coarse grained notation using the 'H' 'B' 'I' 'M' 'S' 'E' and 'R' identifiers. More...
 
char * add_root (const char *structure)
 Adds a root to an un-rooted tree in any except bracket notation. More...
 
char * expand_Shapiro (const char *coarse)
 Inserts missing 'S' identifiers in unweighted coarse grained structures as obtained from b2C(). More...
 
char * expand_Full (const char *structure)
 Convert the full structure from bracket notation to the expanded notation including root. More...
 
char * unexpand_Full (const char *ffull)
 Restores the bracket notation from an expanded full or HIT tree, that is any tree using only identifiers 'U' 'P' and 'R'. More...
 
char * unweight (const char *wcoarse)
 Strip weights from any weighted tree. More...
 
void unexpand_aligned_F (char *align[2])
 Converts two aligned structures in expanded notation. More...
 
void parse_structure (const char *structure)
 Collects a statistic of structure elements of the full structure in bracket notation. More...
 
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...
 
short * vrna_ptable (const char *structure)
 Create a pair table of a secondary structure. More...
 
short * vrna_ptable_from_string (const char *string, unsigned int options)
 Create a pair table for a secondary structure string. More...
 
short * vrna_pt_pk_get (const char *structure)
 Create a pair table of a secondary structure (pseudo-knot version) More...
 
short * vrna_ptable_copy (const short *pt)
 Get an exact copy of a pair table. More...
 
short * vrna_pt_ali_get (const char *structure)
 Create a pair table of a secondary structure (snoop align version)
 
short * vrna_pt_snoop_get (const char *structure)
 Create a pair table of a secondary structure (snoop version) More...
 
int * vrna_loopidx_from_ptable (const short *pt)
 Get a loop index representation of a structure.
 
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...
 
int vrna_bp_distance (const char *str1, const char *str2)
 Compute the "base pair" distance between two secondary structures s1 and s2. More...
 
unsigned int * vrna_refBPcnt_matrix (const short *reference_pt, unsigned int turn)
 Make a reference base pair count matrix. More...
 
unsigned int * vrna_refBPdist_matrix (const short *pt1, const short *pt2, unsigned int turn)
 Make a reference base pair distance matrix. More...
 
char * vrna_db_from_probs (const FLT_OR_DBL *pr, unsigned int length)
 Create a dot-bracket like structure string from base pair probability matrix.
 
char vrna_bpp_symbol (const float *x)
 Get a pseudo dot bracket notation for a given probability information.
 
char * vrna_db_from_bp_stack (vrna_bp_stack_t *bp, unsigned int length)
 Create a dot-backet/parenthesis structure from backtracking stack. More...
 
vrna_ep_tvrna_plist (const char *struc, float pr)
 Create a vrna_ep_t from a dot-bracket string. More...
 
char * vrna_db_from_plist (vrna_ep_t *pairs, unsigned int n)
 Convert a list of base pairs into dot-bracket notation. More...
 
void assign_plist_from_db (vrna_ep_t **pl, const char *struc, float pr)
 Create a vrna_ep_t from a dot-bracket string. More...
 
char * pack_structure (const char *struc)
 Pack secondary secondary structure, 5:1 compression using base 3 encoding. More...
 
char * unpack_structure (const char *packed)
 Unpack secondary structure previously packed with pack_structure() More...
 
short * make_pair_table (const char *structure)
 Create a pair table of a secondary structure. More...
 
short * copy_pair_table (const short *pt)
 Get an exact copy of a pair table. More...
 
short * alimake_pair_table (const char *structure)
 
short * make_pair_table_snoop (const char *structure)
 
int bp_distance (const char *str1, const char *str2)
 Compute the "base pair" distance between two secondary structures s1 and s2. More...
 
unsigned int * make_referenceBP_array (short *reference_pt, unsigned int turn)
 Make a reference base pair count matrix. More...
 
unsigned int * compute_BPdifferences (short *pt1, short *pt2, unsigned int turn)
 Make a reference base pair distance matrix. More...
 
void parenthesis_structure (char *structure, vrna_bp_stack_t *bp, int length)
 Create a dot-backet/parenthesis structure from backtracking stack. More...
 
void parenthesis_zuker (char *structure, vrna_bp_stack_t *bp, int length)
 Create a dot-backet/parenthesis structure from backtracking stack obtained by zuker suboptimal calculation in cofold.c. More...
 
void bppm_to_structure (char *structure, FLT_OR_DBL *pr, unsigned int length)
 Create a dot-bracket like structure string from base pair probability matrix. More...
 
char bppm_symbol (const float *x)
 Get a pseudo dot bracket notation for a given probability information. More...
 

Variables

int loop_size [STRUC]
 contains a list of all loop sizes. loop_size[0] contains the number of external bases.
 
int helix_size [STRUC]
 contains a list of all stack sizes.
 
int loop_degree [STRUC]
 contains the corresponding list of loop degrees.
 
int loops
 contains the number of loops ( and therefore of stacks ).
 
int unpaired
 contains the number of unpaired bases.
 
int pairs
 contains the number of base pairs in the last parsed structure.
 

Data Structure Documentation

◆ vrna_hx_s

struct vrna_hx_s

Data structure representing an entry of a helix list.

◆ vrna_elem_prob_s

struct vrna_elem_prob_s

Data structure representing a single entry of an element probability list (e.g. list of pair probabilities)

See also
vrna_plist(), vrna_plist_from_probs(), vrna_db_from_plist(), #VRNA_PLIST_TYPE_BASEPAIR, #VRNA_PLIST_TYPE_GQUAD, #VRNA_PLIST_TYPE_H_MOTIF, #VRNA_PLIST_TYPE_I_MOTIF, #VRNA_PLIST_TYPE_UD_MOTIF, #VRNA_PLIST_TYPE_STACK

Macro Definition Documentation

◆ VRNA_BRACKETS_ALPHA

#define VRNA_BRACKETS_ALPHA   4U

#include <ViennaRNA/structure_utils.h>

Bitflag to indicate secondary structure notations using uppercase/lowercase letters from the latin alphabet.

See also
vrna_ptable_from_string()

◆ VRNA_BRACKETS_RND

#define VRNA_BRACKETS_RND   8U

#include <ViennaRNA/structure_utils.h>

Bitflag to indicate secondary structure notations using round brackets (parenthesis), ()

See also
vrna_ptable_from_string(), vrna_db_flatten(), vrna_db_flatten_to()

◆ VRNA_BRACKETS_CLY

#define VRNA_BRACKETS_CLY   16U

#include <ViennaRNA/structure_utils.h>

Bitflag to indicate secondary structure notations using curly brackets, {}

See also
vrna_ptable_from_string(), vrna_db_flatten(), vrna_db_flatten_to()

◆ VRNA_BRACKETS_ANG

#define VRNA_BRACKETS_ANG   32U

#include <ViennaRNA/structure_utils.h>

Bitflag to indicate secondary structure notations using angular brackets, <>

See also
vrna_ptable_from_string(), vrna_db_flatten(), vrna_db_flatten_to()

◆ VRNA_BRACKETS_SQR

#define VRNA_BRACKETS_SQR   64U

#include <ViennaRNA/structure_utils.h>

Bitflag to indicate secondary structure notations using square brackets, []

See also
vrna_ptable_from_string(), vrna_db_flatten(), vrna_db_flatten_to()

◆ VRNA_BRACKETS_DEFAULT

#define VRNA_BRACKETS_DEFAULT

#include <ViennaRNA/structure_utils.h>

Value:
VRNA_BRACKETS_CLY | \
VRNA_BRACKETS_ANG | \
VRNA_BRACKETS_SQR)
#define VRNA_BRACKETS_RND
Bitflag to indicate secondary structure notations using round brackets (parenthesis), ()
Definition: structure_utils.h:46

Default bitmask to indicate secondary structure notation using any pair of brackets.

See also
vrna_ptable_from_string(), vrna_db_flatten(), vrna_db_flatten_to()

Function Documentation

◆ b2HIT()

char* b2HIT ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Converts the full structure from bracket notation to the HIT notation including root.

Parameters
structure
Returns

◆ b2C()

char* b2C ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Converts the full structure from bracket notation to the a coarse grained notation using the 'H' 'B' 'I' 'M' and 'R' identifiers.

Parameters
structure
Returns

◆ b2Shapiro()

char* b2Shapiro ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Converts the full structure from bracket notation to the weighted coarse grained notation using the 'H' 'B' 'I' 'M' 'S' 'E' and 'R' identifiers.

Parameters
structure
Returns

◆ add_root()

char* add_root ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Adds a root to an un-rooted tree in any except bracket notation.

Parameters
structure
Returns

◆ expand_Shapiro()

char* expand_Shapiro ( const char *  coarse)

#include <ViennaRNA/RNAstruct.h>

Inserts missing 'S' identifiers in unweighted coarse grained structures as obtained from b2C().

Parameters
coarse
Returns

◆ expand_Full()

char* expand_Full ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Convert the full structure from bracket notation to the expanded notation including root.

Parameters
structure
Returns

◆ unexpand_Full()

char* unexpand_Full ( const char *  ffull)

#include <ViennaRNA/RNAstruct.h>

Restores the bracket notation from an expanded full or HIT tree, that is any tree using only identifiers 'U' 'P' and 'R'.

Parameters
ffull
Returns

◆ unweight()

char* unweight ( const char *  wcoarse)

#include <ViennaRNA/RNAstruct.h>

Strip weights from any weighted tree.

Parameters
wcoarse
Returns

◆ unexpand_aligned_F()

void unexpand_aligned_F ( char *  align[2])

#include <ViennaRNA/RNAstruct.h>

Converts two aligned structures in expanded notation.

Takes two aligned structures as produced by tree_edit_distance() function back to bracket notation with '_' as the gap character. The result overwrites the input.

Parameters
align

◆ parse_structure()

void parse_structure ( const char *  structure)

#include <ViennaRNA/RNAstruct.h>

Collects a statistic of structure elements of the full structure in bracket notation.

The function writes to the following global variables: loop_size, loop_degree, helix_size, loops, pairs, unpaired

Parameters
structure
Returns

◆ vrna_db_pack()

char* vrna_db_pack ( const char *  struc)

#include <ViennaRNA/structure_utils.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.

See also
vrna_db_unpack()
Parameters
strucThe secondary structure in dot-bracket notation
Returns
The binary encoded structure

◆ vrna_db_unpack()

char* vrna_db_unpack ( const char *  packed)

#include <ViennaRNA/structure_utils.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.

See also
vrna_db_pack()
Parameters
packedThe binary encoded packed secondary structure
Returns
The unpacked secondary structure in dot-bracket notation

◆ vrna_ptable()

short* vrna_ptable ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

Create a pair table of a secondary structure.

Returns a newly allocated table, such that table[i]=j if (i.j) pair or 0 if i is unpaired, table[0] contains the length of the structure.

See also
vrna_ptable_from_string(), vrna_db_from_ptable()
Parameters
structureThe secondary structure in dot-bracket notation
Returns
A pointer to the created pair_table

◆ vrna_ptable_from_string()

short* vrna_ptable_from_string ( const char *  string,
unsigned int  options 
)

#include <ViennaRNA/structure_utils.h>

Create a pair table for a secondary structure string.

This function takes an input string of a secondary structure annotation in Dot-Bracket Notation (a.k.a. Dot-Parenthesis Notation) or Extended Dot-Bracket Notation, and converts it into a pair table representation.

See also
vrna_ptable(), vrna_db_from_ptable(), vrna_db_flatten_to(), VRNA_BRACKETS_RND, VRNA_BRACKETS_ANG, VRNA_BRACKETS_CLY, VRNA_BRACKETS_SQR, VRNA_BRACKETS_DEFAULT
Parameters
stringSecondary structure in Extended Dot-Bracket Notation
optionsA bitmask to specify which brackets are recognized during conversion to pair table
Returns
A pointer to a new pair table of the provided secondary structure

◆ vrna_pt_pk_get()

short* vrna_pt_pk_get ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

Create a pair table of a secondary structure (pseudo-knot version)

Returns a newly allocated table, such that table[i]=j if (i.j) pair or 0 if i is unpaired, table[0] contains the length of the structure.

In contrast to vrna_ptable() this function also recognizes the base pairs denoted by '[' and ']' brackets.

Parameters
structureThe secondary structure in (extended) dot-bracket notation
Returns
A pointer to the created pair_table

◆ vrna_ptable_copy()

short* vrna_ptable_copy ( const short *  pt)

#include <ViennaRNA/structure_utils.h>

Get an exact copy of a pair table.

Parameters
ptThe pair table to be copied
Returns
A pointer to the copy of 'pt'

◆ vrna_pt_snoop_get()

short* vrna_pt_snoop_get ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

Create a pair table of a secondary structure (snoop version)

returns a newly allocated table, such that: table[i]=j if (i.j) pair or 0 if i is unpaired, table[0] contains the length of the structure. The special pseudoknotted H/ACA-mRNA structure is taken into account.

◆ vrna_db_flatten()

vrna_db_flatten ( char *  string,
unsigned int  options 
)

#include <ViennaRNA/structure_utils.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 () .

See also
vrna_db_flatten_to(), VRNA_BRACKETS_RND, VRNA_BRACKETS_ANG, VRNA_BRACKETS_CLY, VRNA_BRACKETS_SQR, VRNA_BRACKETS_DEFAULT
Parameters
structureThe structure string where brackets are flattened in-place
optionsA bitmask to specify which types of brackets should be flattened out
SWIG Wrapper Notes:

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().

◆ vrna_db_flatten_to()

void vrna_db_flatten_to ( char *  string,
const char  target[3],
unsigned int  options 
)

#include <ViennaRNA/structure_utils.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.

See also
vrna_db_flatten(), VRNA_BRACKETS_RND, VRNA_BRACKETS_ANG, VRNA_BRACKETS_CLY, VRNA_BRACKETS_SQR, VRNA_BRACKETS_DEFAULT
Parameters
structureThe structure string where brackets are flattened in-place
targetThe new pair characters the string will be flattened to
optionsA bitmask to specify which types of brackets should be flattened out
SWIG Wrapper Notes:
This function is available as an overloaded version of vrna_db_flatten()

◆ vrna_db_from_ptable()

char* vrna_db_from_ptable ( short *  pt)

#include <ViennaRNA/structure_utils.h>

Convert a pair table into dot-parenthesis notation.

Parameters
ptThe pair table to be copied
Returns
A char pointer to the dot-bracket string

◆ vrna_db_from_WUSS()

char* vrna_db_from_WUSS ( const char *  wuss)

#include <ViennaRNA/structure_utils.h>

Convert a WUSS annotation string to dot-bracket format.

Note
This function flattens all brackets, and treats pseudo-knots annotated by matching pairs of upper/lowercase letters as unpaired nucleotides
See also
Washington University Secondary Structure (WUSS) notation
Parameters
wussThe input string in WUSS notation
Returns
A dot-bracket notation of the input secondary structure

◆ vrna_bp_distance()

int vrna_bp_distance ( const char *  str1,
const char *  str2 
)

#include <ViennaRNA/structure_utils.h>

Compute the "base pair" distance between two secondary structures s1 and s2.

The sequences should have the same length. dist = number of base pairs in one structure but not in the other same as edit distance with open-pair close-pair as move-set

Parameters
str1First structure in dot-bracket notation
str2Second structure in dot-bracket notation
Returns
The base pair distance between str1 and str2

◆ vrna_refBPcnt_matrix()

unsigned int* vrna_refBPcnt_matrix ( const short *  reference_pt,
unsigned int  turn 
)

#include <ViennaRNA/structure_utils.h>

Make a reference base pair count matrix.

Get an upper triangular matrix containing the number of basepairs of a reference structure for each interval [i,j] with i<j. Access it via iindx!!!

◆ vrna_refBPdist_matrix()

unsigned int* vrna_refBPdist_matrix ( const short *  pt1,
const short *  pt2,
unsigned int  turn 
)

#include <ViennaRNA/structure_utils.h>

Make a reference base pair distance matrix.

Get an upper triangular matrix containing the base pair distance of two reference structures for each interval [i,j] with i<j. Access it via iindx!!!

◆ vrna_db_from_bp_stack()

char* vrna_db_from_bp_stack ( vrna_bp_stack_t bp,
unsigned int  length 
)

#include <ViennaRNA/structure_utils.h>

Create a dot-backet/parenthesis structure from backtracking stack.

This function is capable to create dot-bracket structures from suboptimal structure prediction sensu M. Zuker

Parameters
bpBase pair stack containing the traced base pairs
lengthThe length of the structure
Returns
The secondary structure in dot-bracket notation as provided in the input

◆ vrna_plist()

vrna_ep_t* vrna_plist ( const char *  struc,
float  pr 
)

#include <ViennaRNA/structure_utils.h>

Create a vrna_ep_t from a dot-bracket string.

The dot-bracket string is parsed and for each base pair an entry in the plist is created. The probability of each pair in the list is set by a function parameter.

The end of the plist is marked by sequence positions i as well as j equal to 0. This condition should be used to stop looping over its entries

Parameters
strucThe secondary structure in dot-bracket notation
prThe probability for each base pair used in the plist
Returns
The plist array

◆ vrna_db_from_plist()

char* vrna_db_from_plist ( vrna_ep_t pairs,
unsigned int  n 
)

#include <ViennaRNA/structure_utils.h>

Convert a list of base pairs into dot-bracket notation.

See also
vrna_plist()
Parameters
pairsA vrna_ep_t containing the pairs to be included in the dot-bracket string
nThe length of the structure (number of nucleotides)
Returns
The dot-bracket string containing the provided base pairs

◆ assign_plist_from_db()

void assign_plist_from_db ( vrna_ep_t **  pl,
const char *  struc,
float  pr 
)

#include <ViennaRNA/structure_utils.h>

Create a vrna_ep_t from a dot-bracket string.

The dot-bracket string is parsed and for each base pair an entry in the plist is created. The probability of each pair in the list is set by a function parameter.

The end of the plist is marked by sequence positions i as well as j equal to 0. This condition should be used to stop looping over its entries

Deprecated:
Use vrna_plist() instead
Parameters
plA pointer to the vrna_ep_t that is to be created
strucThe secondary structure in dot-bracket notation
prThe probability for each base pair

◆ pack_structure()

char* pack_structure ( const char *  struc)

#include <ViennaRNA/structure_utils.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.

Deprecated:
Use vrna_db_pack() as a replacement
Parameters
strucThe secondary structure in dot-bracket notation
Returns
The binary encoded structure

◆ unpack_structure()

char* unpack_structure ( const char *  packed)

#include <ViennaRNA/structure_utils.h>

Unpack secondary structure previously packed with pack_structure()

Translate a compressed binary string produced by pack_structure() back into the familiar dot-bracket notation.

Deprecated:
Use vrna_db_unpack() as a replacement
Parameters
packedThe binary encoded packed secondary structure
Returns
The unpacked secondary structure in dot-bracket notation

◆ make_pair_table()

short* make_pair_table ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

Create a pair table of a secondary structure.

Returns a newly allocated table, such that table[i]=j if (i.j) pair or 0 if i is unpaired, table[0] contains the length of the structure.

Deprecated:
Use vrna_ptable() instead
Parameters
structureThe secondary structure in dot-bracket notation
Returns
A pointer to the created pair_table

◆ copy_pair_table()

short* copy_pair_table ( const short *  pt)

#include <ViennaRNA/structure_utils.h>

Get an exact copy of a pair table.

Deprecated:
Use vrna_ptable_copy() instead
Parameters
ptThe pair table to be copied
Returns
A pointer to the copy of 'pt'

◆ alimake_pair_table()

short* alimake_pair_table ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

Pair table for snoop align

Deprecated:
Use vrna_pt_ali_get() instead!

◆ make_pair_table_snoop()

short* make_pair_table_snoop ( const char *  structure)

#include <ViennaRNA/structure_utils.h>

returns a newly allocated table, such that: table[i]=j if (i.j) pair or 0 if i is unpaired, table[0] contains the length of the structure. The special pseudoknotted H/ACA-mRNA structure is taken into account.

Deprecated:
Use vrna_pt_snoop_get() instead!

◆ bp_distance()

int bp_distance ( const char *  str1,
const char *  str2 
)

#include <ViennaRNA/structure_utils.h>

Compute the "base pair" distance between two secondary structures s1 and s2.

The sequences should have the same length. dist = number of base pairs in one structure but not in the other same as edit distance with open-pair close-pair as move-set

Deprecated:
Use vrna_bp_distance instead
Parameters
str1First structure in dot-bracket notation
str2Second structure in dot-bracket notation
Returns
The base pair distance between str1 and str2

◆ make_referenceBP_array()

unsigned int* make_referenceBP_array ( short *  reference_pt,
unsigned int  turn 
)

#include <ViennaRNA/structure_utils.h>

Make a reference base pair count matrix.

Get an upper triangular matrix containing the number of basepairs of a reference structure for each interval [i,j] with i<j. Access it via iindx!!!

Deprecated:
Use vrna_refBPcnt_matrix() instead

◆ compute_BPdifferences()

unsigned int* compute_BPdifferences ( short *  pt1,
short *  pt2,
unsigned int  turn 
)

#include <ViennaRNA/structure_utils.h>

Make a reference base pair distance matrix.

Get an upper triangular matrix containing the base pair distance of two reference structures for each interval [i,j] with i<j. Access it via iindx!!!

Deprecated:
Use vrna_refBPdist_matrix() instead

◆ parenthesis_structure()

void parenthesis_structure ( char *  structure,
vrna_bp_stack_t bp,
int  length 
)

#include <ViennaRNA/structure_utils.h>

Create a dot-backet/parenthesis structure from backtracking stack.

Deprecated:
use vrna_parenthesis_structure() instead
Note
This function is threadsafe

◆ parenthesis_zuker()

void parenthesis_zuker ( char *  structure,
vrna_bp_stack_t bp,
int  length 
)

#include <ViennaRNA/structure_utils.h>

Create a dot-backet/parenthesis structure from backtracking stack obtained by zuker suboptimal calculation in cofold.c.

Deprecated:
use vrna_parenthesis_zuker instead
Note
This function is threadsafe

◆ bppm_to_structure()

void bppm_to_structure ( char *  structure,
FLT_OR_DBL pr,
unsigned int  length 
)

#include <ViennaRNA/structure_utils.h>

Create a dot-bracket like structure string from base pair probability matrix.

Deprecated:
Use vrna_db_from_probs() instead!

◆ bppm_symbol()

char bppm_symbol ( const float *  x)

#include <ViennaRNA/structure_utils.h>

Get a pseudo dot bracket notation for a given probability information.

Deprecated:
Use vrna_bpp_symbol() instead!