RNAlib-2.0.0
|
MFE calculations and energy evaluations for single RNA sequences. More...
Go to the source code of this file.
Functions | |
float | fold (const char *sequence, char *structure) |
Compute minimum free energy and an appropriate secondary structure of an RNA sequence. | |
float | energy_of_structure (const char *string, const char *structure, int verbosity_level) |
Calculate the free energy of an already folded RNA. | |
int | energy_of_structure_pt (const char *string, short *ptable, short *s, short *s1, int verbosity_level) |
Calculate the free energy of an already folded RNA. | |
void | free_arrays (void) |
Free arrays for mfe folding. | |
void | parenthesis_structure (char *structure, bondT *bp, int length) |
Create a dot-backet/parenthesis structure from backtracking stack. | |
void | parenthesis_zuker (char *structure, bondT *bp, int length) |
Create a dot-backet/parenthesis structure from backtracking stack obtained by zuker suboptimal calculation in cofold.c. | |
void | update_fold_params (void) |
Recalculate energy parameters. | |
float | circfold (const char *string, char *structure) |
Compute minimum free energy and an appropriate secondary structure of an RNA sequence assuming it to be circular instead of linear. | |
float | energy_of_circ_structure (const char *string, const char *structure, int verbosity_level) |
Calculate the free energy of an already folded circular RNA. | |
void | assign_plist_from_db (plist **pl, const char *struc, float pr) |
Create a plist from a dot-bracket string. | |
int | LoopEnergy (int n1, int n2, int type, int type_2, int si1, int sj1, int sp1, int sq1) |
int | HairpinE (int size, int type, int si1, int sj1, const char *string) |
void | initialize_fold (int length) |
Allocate arrays for folding . | |
float | energy_of_struct (const char *string, const char *structure) |
Calculate the free energy of an already folded RNA. | |
int | energy_of_struct_pt (const char *string, short *ptable, short *s, short *s1) |
Calculate the free energy of an already folded RNA. | |
float | energy_of_circ_struct (const char *string, const char *structure) |
Calculate the free energy of an already folded circular RNA. | |
Variables | |
int | logML |
if nonzero use logarithmic ML energy in energy_of_struct | |
int | uniq_ML |
do ML decomposition uniquely (for subopt) | |
int | cut_point |
brief set to first pos of second seq for cofolding | |
int | eos_debug |
brief verbose info from energy_of_struct |
MFE calculations and energy evaluations for single RNA sequences.
This file includes (almost) all function declarations within the RNAlib that are related to MFE folding...
float fold | ( | const char * | sequence, |
char * | structure | ||
) |
Compute minimum free energy and an appropriate secondary structure of an RNA sequence.
The first parameter given, the RNA sequence, must be uppercase and should only contain an alphabet that is understood by the RNAlib
(e.g. )
The second parameter, structure, must always point to an allocated block of memory with a size of at least Depending on the global variable fold_constrained structure may contain a secondary structure constraint in an enhanced dot-bracket notation. The characters " | x < > " mark bases that are paired, unpaired, paired upstream, or downstream, respectively. Matching brackets " ( ) " denote base pairs, dots "." are used for unconstrained bases. Constrained folding works by assigning bonus energies to all structures that comply with the constraint.
After a successful call of fold(), a backtracked secondary structure (in dot-bracket notation) that exhibits the minimum of free energy will be written to the memory structure is pointing to. The function returns the minimum of free energy for any fold of the sequence given. Of course, the resulting free energy depends strongly on the energy model selected.
sequence | RNA sequence |
structure | A pointer to the character array where the secondary structure in dot-bracket notation will be written to |
float energy_of_structure | ( | const char * | string, |
const char * | structure, | ||
int | verbosity_level | ||
) |
Calculate the free energy of an already folded RNA.
If verbosity level is set to a value >0, energies of structure elements are printed to stdout
string | RNA sequence |
structure | secondary structure in dot-bracket notation |
verbosity_level | a flag to turn verbose output on/off |
int energy_of_structure_pt | ( | const char * | string, |
short * | ptable, | ||
short * | s, | ||
short * | s1, | ||
int | verbosity_level | ||
) |
Calculate the free energy of an already folded RNA.
If verbosity level is set to a value >0, energies of structure elements are printed to stdout
string | RNA sequence |
ptable | the pair table of the secondary structure |
s | encoded RNA sequence |
s1 | encoded RNA sequence |
verbosity_level | a flag to turn verbose output on/off |
void parenthesis_structure | ( | char * | structure, |
bondT * | bp, | ||
int | length | ||
) |
Create a dot-backet/parenthesis structure from backtracking stack.
void parenthesis_zuker | ( | char * | structure, |
bondT * | bp, | ||
int | length | ||
) |
Create a dot-backet/parenthesis structure from backtracking stack obtained by zuker suboptimal calculation in cofold.c.
float circfold | ( | const char * | string, |
char * | structure | ||
) |
Compute minimum free energy and an appropriate secondary structure of an RNA sequence assuming it to be circular instead of linear.
string | RNA sequence |
structure | A pointer to the character array the secondary structure in dot-bracket notation will be written to |
float energy_of_circ_structure | ( | const char * | string, |
const char * | structure, | ||
int | verbosity_level | ||
) |
Calculate the free energy of an already folded circular RNA.
If verbosity level is set to a value >0, energies of structure elements are printed to stdout
string | RNA sequence |
structure | secondary structure in dot-bracket notation |
verbosity_level | a flag to turn verbose output on/off |
void assign_plist_from_db | ( | plist ** | pl, |
const char * | struc, | ||
float | pr | ||
) |
Create a plist 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
This function is threadsafe
pl | A pointer to the plist that is to be created |
struc | The secondary structure in dot-bracket notation |
pr | The probability for each base pair |
int LoopEnergy | ( | int | n1, |
int | n2, | ||
int | type, | ||
int | type_2, | ||
int | si1, | ||
int | sj1, | ||
int | sp1, | ||
int | sq1 | ||
) |
Use E_IntLoop() instead!}
int HairpinE | ( | int | size, |
int | type, | ||
int | si1, | ||
int | sj1, | ||
const char * | string | ||
) |
Use E_Hairpin() instead!}
void initialize_fold | ( | int | length | ) |
Allocate arrays for folding
.
float energy_of_struct | ( | const char * | string, |
const char * | structure | ||
) |
Calculate the free energy of an already folded RNA.
string | RNA sequence |
structure | secondary structure in dot-bracket notation |
int energy_of_struct_pt | ( | const char * | string, |
short * | ptable, | ||
short * | s, | ||
short * | s1 | ||
) |
Calculate the free energy of an already folded RNA.
string | RNA sequence |
ptable | the pair table of the secondary structure |
s | encoded RNA sequence |
s1 | encoded RNA sequence |
float energy_of_circ_struct | ( | const char * | string, |
const char * | structure | ||
) |
Calculate the free energy of an already folded circular RNA.
string | RNA sequence |
structure | secondary structure in dot-bracket notation |