Partition Function for two hybridized Sequences
RNA Secondary Structure Prediction » Calculate Secondary Structures of two RNAs upon Dimerization RNA Secondary Structure Prediction » | Computing Partition Functions and Pair Probabilities

Partition Function Cofolding. More...

Collaboration diagram for Partition Function for two hybridized Sequences:

## Files

file | part_func_co.h
| Partition function for two RNA sequences.

## Data Structures

struct | vrna_dimer_pf_s
struct | vrna_dimer_conc_s

## Typedefs

typedef struct vrna_dimer_pf_s | vrna_dimer_pf_t
| Typename for the data structure that stores the dimer partition functions, vrna_dimer_pf_s, as returned by vrna_pf_dimer()
typedef struct vrna_dimer_conc_s | vrna_dimer_conc_t
| Typename for the data structure that stores the dimer concentrations, vrna_dimer_conc_s, as required by vrna_pf_dimer_concentration()

## Functions

vrna_dimer_pf_t | vrna_pf_dimer (vrna_fold_compound_t *vc, char *structure)
| Calculate partition function and base pair probabilities of nucleic acid/nucleic acid dimers. More...
void | vrna_pf_dimer_probs (double FAB, double FA, double FB, vrna_plist_t *prAB, const vrna_plist_t *prA, const vrna_plist_t *prB, int Alength, const vrna_exp_param_t *exp_params)
| Compute Boltzmann probabilities of dimerization without homodimers. More...
vrna_dimer_conc_t * | vrna_pf_dimer_concentrations (double FcAB, double FcAA, double FcBB, double FEA, double FEB, const double *startconc, const vrna_exp_param_t *exp_params)
| Given two start monomer concentrations a and b, compute the concentrations in thermodynamic equilibrium of all dimers and the monomers. More...

## Variables

int | mirnatog
| Toggles no intrabp in 2nd mol.
double | F_monomer [2]
| Free energies of the two monomers.

## Detailed Description

Partition Function Cofolding.

To simplify the implementation the partition function computation is done internally in a null model that does not include the duplex initiation energy, i.e. the entropic penalty for producing a dimer from two monomers). The resulting free energies and pair probabilities are initially relative to that null model. In a second step the free energies can be corrected to include the dimerization penalty, and the pair probabilities can be divided into the conditional pair probabilities given that a re dimer is formed or not formed. See [1] for further details.

## Data Structure Documentation

struct vrna_dimer_pf_s

### Data Fields

double | F0AB
| Null model without DuplexInit.
double | FAB
| all states with DuplexInit correction
double | FcAB
| true hybrid states only
double | FA
| monomer A
double | FB
| monomer B

struct vrna_dimer_conc_s

### Data Fields

double | A0
| start concentration A
double | B0
| start concentration B
double | ABc
| End concentration AB.

## Function Documentation

vrna_dimer_pf_t vrna_pf_dimer | ( | vrna_fold_compound_t * | vc,
|  | char * | structure
| ) |  |

`#include <ViennaRNA/part_func_co.h>`

Calculate partition function and base pair probabilities of nucleic acid/nucleic acid dimers.

This is the cofold partition function folding.

See also
  vrna_fold_compound() for how to retrieve the necessary data structure

Parameters

  vc | the fold compound data structure
  structure | Will hold the structure or constraints

Returns
  vrna_dimer_pf_t structure containing a set of energies needed for concentration computations.

void vrna_pf_dimer_probs | ( | double | FAB,
|  | double | FA,
|  | double | FB,
|  | vrna_plist_t * | prAB,
|  | const vrna_plist_t * | prA,
|  | const vrna_plist_t * | prB,
|  | int | Alength,
|  | const vrna_exp_param_t * | exp_params
| ) |  |

`#include <ViennaRNA/part_func_co.h>`

Compute Boltzmann probabilities of dimerization without homodimers.

Given the pair probabilities and free energies (in the null model) for a dimer AB and the two constituent monomers A and B, compute the conditional pair probabilities given that a dimer AB actually forms. Null model pair probabilities are given as a list as produced by vrna_plist_from_probs(), the dimer probabilities 'prAB' are modified in place.

Parameters

  FAB | free energy of dimer AB
  FEA | free energy of monomer A
  FEB | free energy of monomer B
  prAB | pair probabilities for dimer
  prA | pair probabilities monomer
  prB | pair probabilities monomer
  Alength | Length of molecule A
  exp_params | The precomputed Boltzmann factors

vrna_dimer_conc_t* vrna_pf_dimer_concentrations | ( | double | FcAB,
|  | double | FcAA,
|  | double | FcBB,
|  | double | FEA,
|  | double | FEB,
|  | const double * | startconc,
|  | const vrna_exp_param_t * | exp_params
| ) |  |

`#include <ViennaRNA/part_func_co.h>`

Given two start monomer concentrations a and b, compute the concentrations in thermodynamic equilibrium of all dimers and the monomers.

This function takes an array 'startconc' of input concentrations with alternating entries for the initial concentrations of molecules A and B (terminated by two zeroes), then computes the resulting equilibrium concentrations from the free energies for the dimers. Dimer free energies should be the dimer-only free energies, i.e. the FcAB entries from the vrna_dimer_pf_t struct.

Parameters

  FEAB | Free energy of AB dimer (FcAB entry)
  FEAA | Free energy of AA dimer (FcAB entry)
  FEBB | Free energy of BB dimer (FcAB entry)
  FEA | Free energy of monomer A
  FEB | Free energy of monomer B
  startconc | List of start concentrations [a0],[b0],[a1],[b1],...,[an][bn],[0],[0]
  exp_params | The precomputed Boltzmann factors

Returns
  vrna_dimer_conc_t array containing the equilibrium energies and start concentrations