Generated on Tue Dec 16 13:34:53 2008 for ell-3.0.0 by doxygen 1.5.1

ell::RNAFreeEnergy_TB Class Reference

#include <RNAFreeEnergy_TB.hh>


Detailed Description

This subclass of RNAStructure implements the free energy as the underlying energy function with the constant alphabet ACGU and the constant valid RNA base pairs AU, CG and GU (and their reverse).

Author:
Martin Mann, Sebastian Will

Salem Dekelbab

Definition at line 19 of file RNAFreeEnergy_TB.hh.

Public Types

typedef std::pair< size_t,
size_t > 
SingleMove

Public Member Functions

void applySingleMoveInPlace (const SingleMove &move)
virtual double getEnergy (void) const
bool isValidSingleMove (const SingleMove &move) const
RNAFreeEnergy_TBoperator= (const RNAFreeEnergy_TB &rnaStruct2)
 RNAFreeEnergy_TB (const RNAFreeEnergy_TB &rnaFreeEnerg)
 RNAFreeEnergy_TB (biu::Sequence *rnaSeq, const biu::Structure *const rnaStructBracketDot, const bool seqIsShared=false, const double energy=ENERGY_INF)
 RNAFreeEnergy_TB (const std::string &rnaSeqStr, const std::string &rnaStructBracketDotStr, const double energy=ENERGY_INF)
virtual void setEnergy (const double energy)
virtual void setStructure (const biu::Structure &str)
virtual ~RNAFreeEnergy_TB ()

Static Public Member Functions

static const biu::Alphabet * getSequenceAlphabet ()

Static Public Attributes

static bool calculateEnergyChanges

Protected Member Functions

virtual void moleculeChanged ()
virtual void updateSeqVienna ()

Static Protected Member Functions

static void setViennaFoldParams (void)

Protected Attributes

double energy
short * pairTable
short * seqVienna

Static Protected Attributes

static const biu::Alphabet COMMON_ALPHABET
static const biu::AllowedBasePairs COMMON_BPAIRS
static const double ENERGY_INF
static bool ViennaFoldParamsSet


Member Typedef Documentation

typedef std::pair<size_t, size_t> ell::RNAFreeEnergy_TB::SingleMove

A single move (open or close one bond) on a RNA structure at positions SingleMove.first and SingleMove.second.

Definition at line 51 of file RNAFreeEnergy_TB.hh.


Constructor & Destructor Documentation

ell::RNAFreeEnergy_TB::RNAFreeEnergy_TB ( const std::string &  rnaSeqStr,
const std::string &  rnaStructBracketDotStr,
const double  energy = ENERGY_INF 
)

Definition at line 42 of file RNAFreeEnergy_TB.cc.

ell::RNAFreeEnergy_TB::RNAFreeEnergy_TB ( biu::Sequence *  rnaSeq,
const biu::Structure *const   rnaStructBracketDot,
const bool  seqIsShared = false,
const double  energy = ENERGY_INF 
)

Definition at line 60 of file RNAFreeEnergy_TB.cc.

ell::RNAFreeEnergy_TB::RNAFreeEnergy_TB ( const RNAFreeEnergy_TB rnaFreeEnerg  ) 

Definition at line 79 of file RNAFreeEnergy_TB.cc.

ell::RNAFreeEnergy_TB::~RNAFreeEnergy_TB (  )  [virtual]

Definition at line 87 of file RNAFreeEnergy_TB.cc.


Member Function Documentation

void ell::RNAFreeEnergy_TB::applySingleMoveInPlace ( const SingleMove move  ) 

Applies inplace a single move at the positions given by move. In case of invalid moves, the behaviour of the program is not specified.

Definition at line 94 of file RNAFreeEnergy_TB.cc.

virtual double ell::RNAFreeEnergy_TB::getEnergy ( void   )  const [virtual]

Returns the free energy of this RNA structure allowing AU, CG and GU base base pairs. The energy is calculated via the Vienna RNA package functions. NOTE : The value UNIT is given ( kcal / mol ) !!!

static const biu::Alphabet* ell::RNAFreeEnergy_TB::getSequenceAlphabet (  )  [inline, static]

Definition at line 80 of file RNAFreeEnergy_TB.hh.

bool ell::RNAFreeEnergy_TB::isValidSingleMove ( const SingleMove move  )  const

Returns whether a move produces a valid RNA structure. A move can only be valid if the first move position move.first is less than the second move position move.second!

virtual void ell::RNAFreeEnergy_TB::moleculeChanged (  )  [protected, virtual]

Informs the molecule that the sequence or structure has been changed to force recalculation of lazy properties (e.g. energy)

RNAFreeEnergy_TB & ell::RNAFreeEnergy_TB::operator= ( const RNAFreeEnergy_TB rnaStruct2  ) 

Definition at line 202 of file RNAFreeEnergy_TB.cc.

virtual void ell::RNAFreeEnergy_TB::setEnergy ( const double  energy  )  [virtual]

Sets the energy of this RNA structure such that it is not calculated via the Vienna RNA package.

NOTE: It has to be the same energy as calculated by the Vienna RNA 'energy_of_struct' function, otherwise assertions will be broken.

NOTE : The value UNIT is given ( kcal / mol ) !!!

Parameters:
energy the energy of this structure

virtual void ell::RNAFreeEnergy_TB::setStructure ( const biu::Structure &  str  )  [virtual]

Sets the RNA structure in bracket notation.

Parameters:
str the structure to set in bracket notation of correct length

void ell::RNAFreeEnergy_TB::setViennaFoldParams ( void   )  [static, protected]

sets the Vienna package fold parameters and sets the variable ViennaFoldParamsSet to TRUE.

Definition at line 272 of file RNAFreeEnergy_TB.cc.

void ell::RNAFreeEnergy_TB::updateSeqVienna (  )  [protected, virtual]

Updates seqVienna to contain the structure encoding in Vienna RNA style.

Definition at line 220 of file RNAFreeEnergy_TB.cc.


Field Documentation

whether or not the structure should calculate the energy difference if the structure is changed via moves or not

Definition at line 46 of file RNAFreeEnergy_TB.hh.

const biu::Alphabet ell::RNAFreeEnergy_TB::COMMON_ALPHABET [static, protected]

The common Alphabet object of all RNAFreeEnergy_TB objects. It contains the elements A, C, G and U.

Definition at line 30 of file RNAFreeEnergy_TB.hh.

const biu::AllowedBasePairs ell::RNAFreeEnergy_TB::COMMON_BPAIRS [static, protected]

The common BasePair object of all RNAFreeEnergy_TB objects. The valid RNA base pairs are AU, CG und GU and their reverse.

Definition at line 25 of file RNAFreeEnergy_TB.hh.

double ell::RNAFreeEnergy_TB::energy [mutable, protected]

free energy of the molecule calculated using the Vienna RNA package

Definition at line 36 of file RNAFreeEnergy_TB.hh.

const double ell::RNAFreeEnergy_TB::ENERGY_INF [static, protected]

dummy value for energy to inform that recalculation is necessary

Definition at line 33 of file RNAFreeEnergy_TB.hh.

Definition at line 39 of file RNAFreeEnergy_TB.hh.

Definition at line 38 of file RNAFreeEnergy_TB.hh.

whether or not the fold parameters of the Vienna package are already set or not

Definition at line 130 of file RNAFreeEnergy_TB.hh.


The documentation for this class was generated from the following files: