|
IntaRNA 3.4.1
RNA-RNA interaction prediction | C++ API
|
#include <PredictorMfe.h>


Classes | |
| class | BestInteraction |
Public Member Functions | |
| 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 () |
| virtual void | predict (const IndexRange &r1=IndexRange(0, RnaSequence::lastPos), const IndexRange &r2=IndexRange(0, RnaSequence::lastPos))=0 |
| Z_type | getZall () const |
Protected Types | |
| 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 | |
Protected Member Functions | |
| 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 | traceBack (Interaction &interaction)=0 |
| 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) |
| virtual void | reportOptima () |
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 | |
| 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) |
Generic Predictor interface for MFE interaction computation to avoid code redundancy
|
protected |
BestInteraction that stores an energy value.
|
protected |
BestInteraction that stores a partition function value.
|
protected |
hash to map index pairs to BestInteractionE entries
|
protected |
list of interactions
| IntaRNA::PredictorMfe::PredictorMfe | ( | const InteractionEnergy & | energy, |
| OutputHandler & | output, | ||
| PredictionTracker * | predTracker | ||
| ) |
Construction call the super constructor
| energy | the interaction energy handler |
| output | the output handler to report optimal interactions to |
| predTracker | the prediction tracker to be used or NULL if no tracking is to be done; if non-NULL, the tracker gets deleted on this->destruction. |
|
virtual |
|
protectedvirtual |
Identifies the next best interaction with an energy equal to or higher than the given interaction. The new interaction will not overlap any index range stored in reportedInteractions.
| curBest | IN/OUT the current best interaction to be replaced with one of equal or higher energy not overlapping with any reported interaction so far; an interaction with energy E_INF is set, if there is no better interaction left |
Reimplemented in IntaRNA::PredictorMfe2dHelixBlockHeuristic, IntaRNA::PredictorMfe2dHelixBlockHeuristicSeed, IntaRNA::PredictorMfe2dHeuristic, IntaRNA::PredictorMfe2dHeuristicSeed, and IntaRNA::PredictorSeedExtensionKinetic.
|
protectedvirtual |
Initializes the global energy minimum storage
Implements IntaRNA::Predictor.
|
protected |
Checks terminal GU and accessibility constraints for a complete site. Recursion cells may be useful extensions without being valid output sites.
| i1 | inclusive start in sequence 1, relative to the energy offset |
| j1 | inclusive end in sequence 1, relative to the energy offset |
| i2 | inclusive start in reversed sequence 2, relative to its offset |
| j2 | inclusive end in reversed sequence 2, relative to its offset |
|
protectedvirtual |
Calls for the stored mfe and suboptimal solutions traceBack(i) and pushes the according interactions to the output handler. For non-overlapping interaction enumeration, getNextBest() is called iteratively.
Implements IntaRNA::Predictor.
Reimplemented in IntaRNA::PredictorMfeEns.
|
protectedpure virtual |
Fills a given interaction (boundaries given) with the according hybridizing base pairs. Note, the
| interaction | IN/OUT the interaction to fill |
Implemented in IntaRNA::PredictorMfe2d, IntaRNA::PredictorMfe2dHelixBlockHeuristic, IntaRNA::PredictorMfe2dHelixBlockHeuristicSeed, IntaRNA::PredictorMfe2dHeuristic, IntaRNA::PredictorMfe2dHeuristicSeed, IntaRNA::PredictorMfe2dSeed, IntaRNA::PredictorMfe2dSeedExtension, IntaRNA::PredictorMfe2dSeedExtensionRIblast, IntaRNA::PredictorMfeEns, IntaRNA::PredictorMfeEns2dSeedExtension, IntaRNA::PredictorMfeEnsSeedOnly, IntaRNA::PredictorMfeSeedOnly, and IntaRNA::PredictorSeedExtensionKinetic.
|
protectedvirtual |
Updates the mfe4leftEnd data container.
Overwrite, if no update is to be done.
| i1 | interaction start in seq1 |
| j1 | interaction end in seq1 |
| i2 | interaction start in seq2 |
| i2 | interaction end in seq2 |
| curInteraction | the interaction information to be used for update |
Reimplemented in IntaRNA::PredictorMfe2dHelixBlockHeuristic, and IntaRNA::PredictorMfe2dHeuristic.
|
protectedvirtual |
updates the global optimum to be the mfe interaction if needed
| i1 | the index of the first sequence interacting with i2 |
| j1 | the index of the first sequence interacting with j2 |
| i2 | the index of the second sequence interacting with i1 |
| j2 | the index of the second sequence interacting with j1 |
| energy | the energy of the interaction |
| isHybridE | whether or not the given energy is only the hybridization energy (init+loops) or the total interaction energy |
| incrementZall | whether or not Zall is to be incremented (if needed) |
Implements IntaRNA::Predictor.
|
protected |
access to the interaction energy handler of the super class
|
protected |
if non-overlapping output is required, this data structure is filled to find non-overlapping interactions
|
protected |
mfe interaction boundaries
|
protected |
access to the output handler of the super class
|
protected |
access to the prediction tracker of the super class
|
protected |
index ranges of reported interactions to identify non-overlapping interactions (first = seq1, second = seq2) NOTE: the indices for seq2 are reversed