fold.h File Reference

MFE calculations and energy evaluations for single RNA sequences. More...

Include dependency graph for fold.h:

Go to the source code of this file.

## Functions

float | fold_par (const char *sequence, char *structure, paramT *parameters, int is_constrained, int is_circular)
| Compute minimum free energy and an appropriate secondary structure of an RNA sequence. More...
float | fold (const char *sequence, char *structure)
| Compute minimum free energy and an appropriate secondary structure of an RNA sequence. More...
float | circfold (const char *sequence, char *structure)
| Compute minimum free energy and an appropriate secondary structure of a circular RNA sequence. More...
float | energy_of_structure (const char *string, const char *structure, int verbosity_level)
| Calculate the free energy of an already folded RNA using global model detail settings. More...
float | energy_of_struct_par (const char *string, const char *structure, paramT *parameters, int verbosity_level)
| Calculate the free energy of an already folded RNA. More...
float | energy_of_circ_structure (const char *string, const char *structure, int verbosity_level)
| Calculate the free energy of an already folded circular RNA. More...
float | energy_of_circ_struct_par (const char *string, const char *structure, paramT *parameters, int verbosity_level)
| Calculate the free energy of an already folded circular RNA. More...
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. More...
int | energy_of_struct_pt_par (const char *string, short *ptable, short *s, short *s1, paramT *parameters, int verbosity_level)
| Calculate the free energy of an already folded RNA. More...
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. More...
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. More...
void | update_fold_params (void)
| Recalculate energy parameters.
float | energy_of_move (const char *string, const char *structure, int m1, int m2)
| Calculate energy of a move (closing or opening of a base pair) More...
int | energy_of_move_pt (short *pt, short *s, short *s1, int m1, int m2)
| Calculate energy of a move (closing or opening of a base pair) More...
int | loop_energy (short *ptable, short *s, short *s1, int i)
| Calculate energy of a loop. More...
void | assign_plist_from_db (plist **pl, const char *struc, float pr)
| Create a plist from a dot-bracket string. More...
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)
float | energy_of_struct (const char *string, const char *structure)
int | energy_of_struct_pt (const char *string, short *ptable, short *s, short *s1)
float | energy_of_circ_struct (const char *string, const char *structure)

## 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
| set to first pos of second seq for cofolding
int | eos_debug
| verbose info from energy_of_struct

## Detailed Description

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

## Function Documentation

void parenthesis_structure | ( | char * | structure,
|  | bondT * | bp,
|  | int | length
| ) |  |

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

Note
  This function is threadsafe

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.

Note
  This function is threadsafe

float energy_of_move | ( | const char * | string,
|  | const char * | structure,
|  | int | m1,
|  | int | m2
| ) |  |

Calculate energy of a move (closing or opening of a base pair)

If the parameters m1 and m2 are negative, it is deletion (opening) of a base pair, otherwise it is insertion (opening).

See Also
  make_pair_table(), energy_of_move()

Parameters

  string | RNA sequence
  structure | secondary structure in dot-bracket notation
  m1 | first coordinate of base pair
  m2 | second coordinate of base pair

Returns
  energy change of the move in kcal/mol

int energy_of_move_pt | ( | short * | pt,
|  | short * | s,
|  | short * | s1,
|  | int | m1,
|  | int | m2
| ) |  |

Calculate energy of a move (closing or opening of a base pair)

If the parameters m1 and m2 are negative, it is deletion (opening) of a base pair, otherwise it is insertion (opening).

See Also
  make_pair_table(), energy_of_move()

Parameters

  pt | the pair table of the secondary structure
  s | encoded RNA sequence
  s1 | encoded RNA sequence
  m1 | first coordinate of base pair
  m2 | second coordinate of base pair

Returns
  energy change of the move in 10cal/mol

int loop_energy | ( | short * | ptable,
|  | short * | s,
|  | short * | s1,
|  | int | i
| ) |  |

Calculate energy of a loop.

Parameters

  ptable | the pair table of the secondary structure
  s | encoded RNA sequence
  s1 | encoded RNA sequence
  i | position of covering base pair

Returns
  free energy of the loop in 10cal/mol

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

Parameters

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

Deprecated:
  {This function is deprecated and will be removed soon. Use E_IntLoop() instead!}

int HairpinE | ( | int | size,
|  | int | type,
|  | int | si1,
|  | int | sj1,
|  | const char * | string
| ) |  |

Deprecated:
  {This function is deprecated and will be removed soon. Use E_Hairpin() instead!}

void initialize_fold | ( | int | length | ) |

Allocate arrays for folding

Deprecated:
  {This function is deprecated and will be removed soon!}

float energy_of_struct | ( | const char * | string,
|  | const char * | structure
| ) |  |

Calculate the free energy of an already folded RNA

Note
  This function is not entirely threadsafe! Depending on the state of the global variable eos_debug it prints energy information to stdout or not...

Deprecated:
  This function is deprecated and should not be used in future programs! Use energy_of_structure() instead!

See Also
  energy_of_structure, energy_of_circ_struct(), energy_of_struct_pt()

Parameters

  string | RNA sequence
  structure | secondary structure in dot-bracket notation

Returns
  the free energy of the input structure given the input sequence in kcal/mol

int energy_of_struct_pt | ( | const char * | string,
|  | short * | ptable,
|  | short * | s,
|  | short * | s1
| ) |  |

Calculate the free energy of an already folded RNA

Note
  This function is not entirely threadsafe! Depending on the state of the global variable eos_debug it prints energy information to stdout or not...

Deprecated:
  This function is deprecated and should not be used in future programs! Use energy_of_structure_pt() instead!

See Also
  make_pair_table(), energy_of_structure()

Parameters

  string | RNA sequence
  ptable | the pair table of the secondary structure
  s | encoded RNA sequence
  s1 | encoded RNA sequence

Returns
  the free energy of the input structure given the input sequence in 10kcal/mol

float energy_of_circ_struct | ( | const char * | string,
|  | const char * | structure
| ) |  |

Calculate the free energy of an already folded circular RNA

Note
  This function is not entirely threadsafe! Depending on the state of the global variable eos_debug it prints energy information to stdout or not...

Deprecated:
  This function is deprecated and should not be used in future programs Use energy_of_circ_structure() instead!

See Also
  energy_of_circ_structure(), energy_of_struct(), energy_of_struct_pt()

Parameters

  string | RNA sequence
  structure | secondary structure in dot-bracket notation

Returns
  the free energy of the input structure given the input sequence in kcal/mol