RNAlib-2.2.0RC0
model.h File Reference

The model details data structure and its corresponding modifiers. More...

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  model_detailsT
 The data structure that contains the complete model details used throughout the calculations. More...
 

Macros

#define MAXALPHA   20
 Maximal length of alphabet.
 

Functions

void vrna_md_set_default (model_detailsT *md)
 Set default model details. More...
 
void vrna_md_update (model_detailsT *md)
 Update the model details.
 
void set_model_details (model_detailsT *md)
 Set default model details. More...
 

Variables

double temperature
 Rescale energy parameters to a temperature in degC. More...
 
double pf_scale
 A scaling factor used by pf_fold() to avoid overflows. More...
 
int dangles
 Switch the energy model for dangling end contributions (0, 1, 2, 3) More...
 
int tetra_loop
 Include special stabilizing energies for some tri-, tetra- and hexa-loops;. More...
 
int noLonelyPairs
 Global switch to avoid/allow helices of length 1. More...
 
int noGU
 Global switch to forbid/allow GU base pairs at all.
 
int no_closingGU
 GU allowed only inside stacks if set to 1.
 
int circ
 backward compatibility variable.. this does not effect anything
 
int gquad
 Allow G-quadruplex formation.
 
int canonicalBPonly
 
int uniq_ML
 do ML decomposition uniquely (for subopt)
 
int energy_set
 0 = BP; 1=any mit GC; 2=any mit AU-parameter More...
 
int do_backtrack
 do backtracking, i.e. compute secondary structures or base pair probabilities More...
 
char backtrack_type
 A backtrack array marker for inverse_fold() More...
 
char * nonstandards
 contains allowed non standard base pairs More...
 
int max_bp_span
 Maximum allowed base pair span. More...
 
int oldAliEn
 use old alifold energies (with gaps)
 
int ribo
 use ribosum matrices
 
int logML
 if nonzero use logarithmic ML energy in energy_of_struct
 

Detailed Description

The model details data structure and its corresponding modifiers.

Function Documentation

void vrna_md_set_default ( model_detailsT md)

Set default model details.

Use this function if you wish to initialize a model_detailsT data structure with its default values, i.e. the global model settings

See also
Parameters
mdA pointer to the data structure that shall be initialized
void set_model_details ( model_detailsT md)

Set default model details.

Use this function if you wish to initialize a model_detailsT data structure with its default values, i.e. the global model settings

Deprecated:
Use vrna_md_set_default instead
Parameters
mdA pointer to the data structure that shall be initialized

Variable Documentation

double temperature

Rescale energy parameters to a temperature in degC.

Default is 37C. You have to call the update_..._params() functions after changing this parameter.

double pf_scale

A scaling factor used by pf_fold() to avoid overflows.

Should be set to approximately $exp{((-F/kT)/length)}$, where $F$ is an estimate for the ensemble free energy, for example the minimum free energy. You must call update_pf_params() after changing this parameter.
If pf_scale is -1 (the default) , an estimate will be provided automatically when computing partition functions, e.g. pf_fold() The automatic estimate is usually insufficient for sequences more than a few hundred bases long.

int dangles

Switch the energy model for dangling end contributions (0, 1, 2, 3)

If set to 0 no stabilizing energies are assigned to bases adjacent to helices in free ends and multiloops (so called dangling ends). Normally (dangles = 1) dangling end energies are assigned only to unpaired bases and a base cannot participate simultaneously in two dangling ends. In the partition function algorithm pf_fold() these checks are neglected. If dangles is set to 2, all folding routines will follow this convention. This treatment of dangling ends gives more favorable energies to helices directly adjacent to one another, which can be beneficial since such helices often do engage in stabilizing interactions through co-axial stacking.
If dangles = 3 co-axial stacking is explicitly included for adjacent helices in mutli-loops. The option affects only mfe folding and energy evaluation (fold() and energy_of_structure()), as well as suboptimal folding (subopt()) via re-evaluation of energies. Co-axial stacking with one intervening mismatch is not considered so far.

Default is 2 in most algorithms, partition function algorithms can only handle 0 and 2

int tetra_loop

Include special stabilizing energies for some tri-, tetra- and hexa-loops;.

default is 1.

int noLonelyPairs

Global switch to avoid/allow helices of length 1.

Disallow all pairs which can only occur as lonely pairs (i.e. as helix of length 1). This avoids lonely base pairs in the predicted structures in most cases.

int canonicalBPonly

Do not use this variable, it will eventually be removed in one of the next versions

int energy_set

0 = BP; 1=any mit GC; 2=any mit AU-parameter

If set to 1 or 2: fold sequences from an artificial alphabet ABCD..., where A pairs B, C pairs D, etc. using either GC (1) or AU parameters (2); default is 0, you probably don't want to change it.

int do_backtrack

do backtracking, i.e. compute secondary structures or base pair probabilities

If 0, do not calculate pair probabilities in pf_fold(); this is about twice as fast. Default is 1.

char backtrack_type

A backtrack array marker for inverse_fold()

If set to 'C': force (1,N) to be paired, 'M' fold as if the sequence were inside a multi-loop. Otherwise ('F') the usual mfe structure is computed.

char* nonstandards

contains allowed non standard base pairs

Lists additional base pairs that will be allowed to form in addition to GC, CG, AU, UA, GU and UG. Nonstandard base pairs are given a stacking energy of 0.

int max_bp_span

Maximum allowed base pair span.

A value of -1 indicates no restriction for distant base pairs.