H/2Dpfold.h File Reference

Compute the partition function and stochastically sample secondary structures for a partitioning of the secondary structure space according to the base pair distance to two fixed reference structures. More...

Include dependency graph for 2Dpfold.h:

Go to the source code of this file.

Functions

TwoDpfold_varsget_TwoDpfold_variables (const char *seq, const char *structure1, char *structure2, int circ)
 Get a datastructure containing all necessary attributes and global folding switches.
TwoDpfold_varsget_TwoDpfold_variables_from_MFE (TwoDfold_vars *mfe_vars)
 Get the datastructure containing all necessary attributes and global folding switches from a pre-filled mfe-datastructure.
void destroy_TwoDpfold_variables (TwoDpfold_vars *vars)
 Free all memory occupied by a TwoDpfold_vars datastructure.
TwoDpfold_solutionTwoDpfoldList (TwoDpfold_vars *vars, int maxDistance1, int maxDistance2)
 Compute the partition function for all distance classes.
char * TwoDpfold_pbacktrack (TwoDpfold_vars *vars, int d1, int d2)
 Sample secondary structure representatives from a set of distance classes according to their Boltzmann probability.
char * TwoDpfold_pbacktrack5 (TwoDpfold_vars *vars, int d1, int d2, unsigned int length)
 Sample secondary structure representatives with a specified length from a set of distance classes according to their Boltzmann probability.

Detailed Description

Compute the partition function and stochastically sample secondary structures for a partitioning of the secondary structure space according to the base pair distance to two fixed reference structures.


Function Documentation

TwoDpfold_vars* get_TwoDpfold_variables ( const char *  seq,
const char *  structure1,
char *  structure2,
int  circ 
)

Get a datastructure containing all necessary attributes and global folding switches.

This function prepares all necessary attributes and matrices etc which are needed for a call of TwoDpfoldList. A snapshot of all current global model switches (dangles, temperature and so on) is done and stored in the returned datastructure. Additionally, all matrices that will hold the partition function values are prepared.

Parameters:
seq the RNA sequence in uppercase format with letters from the alphabet {AUCG}
structure1 the first reference structure in dot-bracket notation
structure2 the second reference structure in dot-bracket notation
circ a switch indicating if the sequence is linear (0) or circular (1)
Returns:
the datastructure containing all necessary partition function attributes
TwoDpfold_vars* get_TwoDpfold_variables_from_MFE ( TwoDfold_vars mfe_vars  ) 

Get the datastructure containing all necessary attributes and global folding switches from a pre-filled mfe-datastructure.

This function actually does the same as get_TwoDpfold_variables but takes its switches and settings from a pre-filled MFE equivalent datastructure

See also:
get_TwoDfold_variables(), get_TwoDpfold_variables()
Parameters:
mfe_vars the pre-filled mfe datastructure
Returns:
the datastructure containing all necessary partition function attributes
void destroy_TwoDpfold_variables ( TwoDpfold_vars vars  ) 

Free all memory occupied by a TwoDpfold_vars datastructure.

This function free's all memory occupied by a datastructure obtained from from get_TwoDpfold_variables() or get_TwoDpfold_variables_from_MFE()

See also:
get_TwoDpfold_variables(), get_TwoDpfold_variables_from_MFE()
Parameters:
vars the datastructure to be free'd
TwoDpfold_solution* TwoDpfoldList ( TwoDpfold_vars vars,
int  maxDistance1,
int  maxDistance2 
)

Compute the partition function for all distance classes.

This function computes the partition functions for all distance classes according the two reference structures specified in the datastructure 'vars'. Similar to TwoDfoldList() the arguments maxDistance1 and maxDistance2 specify the maximum distance to both reference structures. A value of '-1' in either of them makes the appropriate distance restrictionless, i.e. all basepair distancies to the reference are taken into account during computation. In case there is a restriction, the returned solution contains an entry where the attribute k=l=-1 contains the partition function for all structures exceeding the restriction. A values of INF in the attribute 'k' of the returned list denotes the end of the list

See also:
get_TwoDpfold_variables(), destroy_TwoDpfold_variables(), TwoDpfold_solution
Parameters:
vars the datastructure containing all necessary folding attributes and matrices
maxDistance1 the maximum basepair distance to reference1 (may be -1)
maxDistance2 the maximum basepair distance to reference2 (may be -1)
Returns:
a list of partition funtions for the appropriate distance classes
char* TwoDpfold_pbacktrack ( TwoDpfold_vars vars,
int  d1,
int  d2 
)

Sample secondary structure representatives from a set of distance classes according to their Boltzmann probability.

If the argument 'd1' is set to '-1', the structure will be backtracked in the distance class where all structures exceeding the maximum basepair distance to either of the references reside.

Note:
The argument 'vars' must contain precalculated partition function matrices, i.e. a call to TwoDpfoldList() preceding this function is mandatory!
See also:
TwoDpfoldList()
Parameters:
vars the datastructure containing all necessary folding attributes and matrices
d1 the distance to reference1 (may be -1)
d2 the distance to reference2
Returns:
a sampled secondary structure in dot-bracket notation
char* TwoDpfold_pbacktrack5 ( TwoDpfold_vars vars,
int  d1,
int  d2,
unsigned int  length 
)

Sample secondary structure representatives with a specified length from a set of distance classes according to their Boltzmann probability.

This function does essentially the same as TwoDpfold_pbacktrack with the only difference that partial structures, i.e. structures beginning from the 5' end with a specified length of the sequence, are backtracked

Note:
The argument 'vars' must contain precalculated partition function matrices, i.e. a call to TwoDpfoldList() preceding this function is mandatory!
This function does not work (since it makes no sense) for circular RNA sequences!
See also:
TwoDpfold_pbacktrack(), TwoDpfoldList()
Parameters:
vars the datastructure containing all necessary folding attributes and matrices
d1 the distance to reference1 (may be -1)
d2 the distance to reference2
length the length of the structure beginning from the 5' end
Returns:
a sampled secondary structure in dot-bracket notation

Generated on 9 Jan 2014 for RNAlib-2.0.7 by  doxygen 1.6.1