IntaRNA 3.4.1
RNA-RNA interaction prediction | C++ API
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
IntaRNA::PredictorMfeEns2dHeuristicSeedExtension Class Reference

#include <PredictorMfeEns2dHeuristicSeedExtension.h>

Inheritance diagram for IntaRNA::PredictorMfeEns2dHeuristicSeedExtension:
Inheritance graph
[legend]
Collaboration diagram for IntaRNA::PredictorMfeEns2dHeuristicSeedExtension:
Collaboration graph
[legend]

Public Member Functions

 PredictorMfeEns2dHeuristicSeedExtension (const InteractionEnergy &energy, OutputHandler &output, PredictionTracker *predTracker, SeedHandler *seedHandler)
 
virtual ~PredictorMfeEns2dHeuristicSeedExtension ()
 
virtual void predict (const IndexRange &r1=IndexRange(0, RnaSequence::lastPos), const IndexRange &r2=IndexRange(0, RnaSequence::lastPos))
 
- Public Member Functions inherited from IntaRNA::PredictorMfeEns2dSeedExtension
 PredictorMfeEns2dSeedExtension (const InteractionEnergy &energy, OutputHandler &output, PredictionTracker *predTracker, SeedHandler *seedHandler)
 
virtual ~PredictorMfeEns2dSeedExtension ()
 
- Public Member Functions inherited from IntaRNA::PredictorMfeEns
 PredictorMfeEns (const InteractionEnergy &energy, OutputHandler &output, PredictionTracker *predTracker)
 
virtual ~PredictorMfeEns ()
 
- Public Member Functions inherited from IntaRNA::PredictorMfe
 PredictorMfe (const InteractionEnergy &energy, OutputHandler &output, PredictionTracker *predTracker)
 
virtual ~PredictorMfe ()
 
- Public Member Functions inherited from IntaRNA::Predictor
 Predictor (const InteractionEnergy &energy, OutputHandler &output, PredictionTracker *predTracker)
 
virtual ~Predictor ()
 
Z_type getZall () const
 

Protected Member Functions

virtual void updateOptRightZ (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const E_type hybridE)
 
virtual void fillHybridZ_right (const size_t i1, const size_t i2, const size_t si1, const size_t si2)
 
virtual void fillHybridZ_left (const size_t j1, const size_t j2)
 
- Protected Member Functions inherited from IntaRNA::PredictorMfeEns2dSeedExtension
virtual void fillHybridZ_right (const size_t i1, const size_t i2)
 
virtual void traceBack (Interaction &interaction)
 
virtual E_type getNonOverlappingEnergy (const size_t si1, const size_t si2, const size_t sj1, const size_t sj2)
 
void printMatrix (const Z2dMatrix &matrix)
 
- Protected Member Functions inherited from IntaRNA::PredictorMfeEns
virtual void initZ ()
 
virtual void updateZ (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const Z_type partFunct, const bool isHybridZ)
 
void updateCompleteZ (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const Z_type partFunct, const bool isHybridZ)
 
virtual void reportOptima ()
 
- Protected Member Functions inherited from IntaRNA::PredictorMfe
virtual void initOptima ()
 
bool isValidOutputSite (const size_t i1, const size_t j1, const size_t i2, const size_t j2) const
 
virtual void updateOptima (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const E_type energy, const bool isHybridE, const bool incrementZall)
 
virtual void getNextBest (Interaction &curBest)
 
virtual void updateMfe4leftEnd (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const Interaction &curInteraction)
 
- Protected Member Functions inherited from IntaRNA::Predictor
virtual void updateZall (const size_t i1, const size_t j1, const size_t i2, const size_t j2, const E_type energy, const bool isHybridE)
 
void incrementZall (const Z_type partZ)
 

Protected Attributes

Z_type E_right_opt = E_INF
 optimal energy of the right extension
 
size_t j1opt
 boundaries of the right extension with the optimal energy
 
size_t j2opt
 
SeedHandlerIdxOffset seedHandler
 the seed handler (with idx offset)
 
Z2dMatrix hybridZ_left
 
Z2dMatrix hybridZ_right
 
- Protected Attributes inherited from IntaRNA::PredictorMfeEns2dSeedExtension
Z2dMatrix hybridZ_left
 partition function of all interaction hybrids that start on the left side of the seed including E_init
 
SeedHandlerIdxOffset seedHandler
 the seed handler (with idx offset)
 
Z2dMatrix hybridZ_right
 partition function of all interaction hybrids that start on the right side of the seed excluding E_init
 
InteractionEnergyIdxOffset energy
 access to the interaction energy handler of the super class
 
OutputHandler & output
 access to the output handler of the super class
 
- Protected Attributes inherited from IntaRNA::PredictorMfeEns
std::unordered_map< Interaction::Boundary, Z_type, Interaction::Boundary::Hash > Z_partition
 map storing the partition of Zall for all considered interaction sites
 
bool updateZisComplete
 whether updateZ() currently receives one complete boundary partition
 
InteractionEnergyIdxOffset energy
 access to the interaction energy handler of the super class
 
OutputHandler & output
 access to the output handler of the super class
 
PredictionTracker * predTracker
 access to the prediction tracker of the super class
 
- Protected Attributes inherited from IntaRNA::PredictorMfe
InteractionList mfeInteractions
 mfe interaction boundaries
 
HashIdx2E mfe4leftEnd
 
std::pair< IndexRangeList, IndexRangeList > reportedInteractions
 
InteractionEnergyIdxOffset energy
 access to the interaction energy handler of the super class
 
OutputHandler & output
 access to the output handler of the super class
 
PredictionTracker * predTracker
 access to the prediction tracker of the super class
 
- Protected Attributes inherited from IntaRNA::Predictor
InteractionEnergyIdxOffset energy
 energy computation handler
 
OutputHandler & output
 interaction output handler
 
PredictionTracker * predTracker
 prediction tracker to be used
 
Z_type Zall
 

Additional Inherited Members

- Static Public Member Functions inherited from IntaRNA::Predictor
static size_t getMaxInteractionWidth (const size_t w, const size_t maxLoopSize)
 
- Protected Types inherited from IntaRNA::PredictorMfeEns2dSeedExtension
typedef Matrix< Z_type > Z2dMatrix
 matrix type to hold the partition functions for interaction site starts
 
- Protected Types inherited from IntaRNA::PredictorMfe
typedef BestInteraction< E_type > BestInteractionE
 BestInteraction that stores an energy value.
 
typedef BestInteraction< Z_type > BestInteractionZ
 BestInteraction that stores a partition function value.
 
typedef std::list< Interaction > InteractionList
 list of interactions
 
typedef boost::unordered_map< Interaction::BasePair, BestInteractionE, Interaction::BasePair::Hash > HashIdx2E
 hash to map index pairs to BestInteractionE entries
 

Detailed Description

Implements heuristic, seed-based, space-efficient interaction prediction based on minimizing ensemble free energy of interaction sites.

Note, for each seed start (i1,i2) only the mfe seed is considered for the overall interaction computation instead of considering all possible seeds starting at (i1,i2).

Author
Frank Gelhausen
Martin Raden

Constructor & Destructor Documentation

◆ PredictorMfeEns2dHeuristicSeedExtension()

IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::PredictorMfeEns2dHeuristicSeedExtension ( const InteractionEnergy &  energy,
OutputHandler &  output,
PredictionTracker *  predTracker,
SeedHandler *  seedHandler 
)

Constructs a predictor and stores the energy and output handler

Parameters
energythe interaction energy handler
outputthe output handler to report mfe interactions to
predTrackerthe prediction tracker to be used or NULL if no tracking is to be done; if non-NULL, the tracker gets deleted on this->destruction.
seedHandlerthe seed handler to be used

◆ ~PredictorMfeEns2dHeuristicSeedExtension()

virtual IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::~PredictorMfeEns2dHeuristicSeedExtension ( )
virtual

data cleanup

Member Function Documentation

◆ fillHybridZ_left()

virtual void IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::fillHybridZ_left ( const size_t  j1,
const size_t  j2 
)
protectedvirtual

Computes all entries of the hybridE matrix for interactions ending in p=j1 and q=j2 and report all valid interactions to updateOptima()

Parameters
j1end of the interaction within seq 1
j2end of the interaction within seq 2

Reimplemented from IntaRNA::PredictorMfeEns2dSeedExtension.

◆ fillHybridZ_right()

virtual void IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::fillHybridZ_right ( const size_t  i1,
const size_t  i2,
const size_t  si1,
const size_t  si2 
)
protectedvirtual

Computes all entries of the hybridE matrix for interactions starting in i1 and i2 and report all valid interactions to updateOptima()

Parameters
i1end of the interaction within seq 1
i2end of the interaction within seq 2

◆ predict()

virtual void IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::predict ( const IndexRange &  r1 = IndexRange(0, RnaSequence::lastPos),
const IndexRange &  r2 = IndexRange(0, RnaSequence::lastPos) 
)
virtual

Computes the mfe for the given sequence ranges (i1-j1) in the first sequence and (i2-j2) in the second sequence and reports it to the output handler.

Each considered interaction contains a seed according to the seed handler constraints.

Parameters
r1the index range of the first sequence interacting with r2
r2the index range of the second sequence interacting with r1

Reimplemented from IntaRNA::PredictorMfeEns2dSeedExtension.

◆ updateOptRightZ()

void IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::updateOptRightZ ( const size_t  i1,
const size_t  j1,
const size_t  i2,
const size_t  j2,
const E_type  hybridE 
)
inlineprotectedvirtual

updates E_right_opt, j1opt, and j2opt if needed

Parameters
i1the index of the first sequence interacting with i2
j1the index of the first sequence interacting with j2
i2the index of the second sequence interacting with i1
j2the index of the second sequence interacting with j1
hybridEensemble energy of the hybridization

Member Data Documentation

◆ E_right_opt

Z_type IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::E_right_opt = E_INF
protected

optimal energy of the right extension

◆ hybridZ_left

Z2dMatrix IntaRNA::PredictorMfeEns2dSeedExtension::hybridZ_left
protected

energy of all interaction hybrids that end in position p (seq1) and q (seq2) and do not necessarily contain a seed interaction

◆ hybridZ_right

Z2dMatrix IntaRNA::PredictorMfeEns2dSeedExtension::hybridZ_right
protected

energy of all interaction hybrids that start in position p (seq1) and q (seq2)

◆ j1opt

size_t IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::j1opt
protected

boundaries of the right extension with the optimal energy

◆ j2opt

size_t IntaRNA::PredictorMfeEns2dHeuristicSeedExtension::j2opt
protected

◆ seedHandler

SeedHandlerIdxOffset IntaRNA::PredictorMfeEns2dSeedExtension::seedHandler
protected

the seed handler (with idx offset)


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