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


Protected Types | |
| 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 | |
Protected Member Functions | |
| void | addSeedPartition (Interaction::BasePair seed, Interaction::BasePair left, Interaction::BasePair right, Z_type hybridZ) |
| virtual Z_type | exactBoundaryWeight (size_t i1, size_t j1, size_t i2, size_t j2) const |
| void | predictStackSeeds (const IndexRange &r1, const IndexRange &r2) |
| virtual void | prepareStackSeedExtensions (size_t n, size_t m, const StackSeedDomain &seeds) |
| virtual std::function< Interaction::BasePair(Interaction::BasePair, Interaction::BasePair)> | stackSeedRightSelector () const |
| void | initExtensionProbabilities (size_t n, size_t m) |
| void | beginExtensionProbabilitySeed (size_t i1, size_t i2) |
| void | addExtensionProbabilityRoot (size_t i1, size_t j1, size_t i2, size_t j2, Z_type partZ, bool left, bool right) |
| void | finishExtensionProbabilitySeed () |
| void | commitExtensionProbabilities () |
| std::vector< Interaction::BasePair > | extensionSeedPrefix (size_t i1, size_t i2, size_t before) const |
| virtual void | fillHybridZ_left (const size_t j1, const size_t j2) |
| virtual void | fillHybridZ_right (const size_t i1, const size_t i2) |
| virtual void | traceBack (Interaction &interaction) override |
| 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 | |
| void | updateExactCompleteZ (size_t i1, size_t j1, size_t i2, size_t j2, Z_type hybrid, Z_type coefficient) |
| 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 () override |
Protected Member Functions inherited from IntaRNA::PredictorMfe | |
| virtual bool | predictPerSeed (const IndexRange &r1, const IndexRange &r2, SeedHandlerIdxOffset &seeds, const std::function< Predictor *(OutputHandler &, PredictionTracker *, SeedHandler *)> &factory) |
| void | initSeedCandidates () |
| virtual void | initOptima () override |
| 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) override |
| 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 | |
| std::unique_ptr< ExtensionProbabilityTrace > | extensionProbabilityTrace |
| BasePairProbabilities * | pairProbabilities |
| optional sequence-pair owner, never deleted or finalized by the predictor | |
| 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 | |
| const std::pair< Z_type, Z_type > * | exactContribution = nullptr |
| scoped coefficient and hybrid expected by the checked complete update | |
| 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 | |
| OutputHandlerSeedCandidates * | seedCandidates = nullptr |
| Active collector; null on the unchanged default path. | |
| std::unique_ptr< OutputHandlerSeedCandidates > | ownedSeedCandidates |
| Local collector for API callers that do not provide a regional collector. | |
| bool | perSeedPass = false |
| Enforce complete-site spans before ranking a seed-constrained child pass. | |
| 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) |
Implements 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). Stack-only seeds use a seed-avoiding left extension and an unconstrained right extension at the first completed seed, counting each interaction once. Gapped seeds retain the legacy extension implementation.
|
protected |
matrix type to hold the partition functions for interaction site starts
| IntaRNA::PredictorMfeEns2dSeedExtension::PredictorMfeEns2dSeedExtension | ( | const InteractionEnergy & | energy, |
| OutputHandler & | output, | ||
| PredictionTracker * | predTracker, | ||
| SeedHandler * | seedHandler, | ||
| BasePairProbabilities * | pairProbabilities = nullptr |
||
| ) |
Constructs a predictor and stores the energy and output handler
| energy | the interaction energy handler |
| output | the output handler to report mfe 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. |
| pairProbabilities | optional non-owning sink; must outlive predictions and remain pending until all disjoint regions have succeeded |
| seedHandler | the seed handler to be used |
|
overridevirtual |
data cleanup
|
protected |
Add one accepted left/seed/right objective to the optional reverse trace. All coordinates are local, with seed boundaries in increasing DP order.
| left | whether the left matrix is a factor (otherwise use initiation) |
| right | whether the right matrix is a factor |
|
protected |
Retain an anchor-specific site ensemble before full-site aggregation.
| seed | local anchor start, sequence 2 reversed |
| left | local left site boundary |
| right | local right site boundary |
| hybridZ | partition assigned to this left-most seed, including initiation |
|
protected |
Store the current anchor seed's actual pairs, including its endpoints.
|
protected |
Validate and atomically commit this region in original sequence order.
|
protectedvirtual |
Shared forward/outside objective coefficient. Override here for supported reweighting; return zero for forbidden boundaries. Coordinates are local.
|
protected |
Actual seed pairs strictly before the given local target coordinate.
|
protectedvirtual |
Computes all entries of the hybridE matrix for interactions ending in p=j1 and q=j2 and report all valid interactions to updateOptima()
| j1 | end of the interaction within seq 1 |
| j2 | end of the interaction within seq 2 |
Reimplemented in IntaRNA::PredictorMfeEns2dHeuristicSeedExtension.
|
protectedvirtual |
Computes all entries of the hybridE matrix for interactions starting in i1 and i2 and report all valid interactions to updateOptima()
Note: (i1,i2) have to be complementary (right-most base pair of seed)
| i1 | end of the interaction within seq 1 |
| i2 | end of the interaction within seq 2 |
|
protected |
Reverse both extension traces and accumulate actual pair numerators.
|
protectedvirtual |
Returns the hybridization energy of the non overlapping part of seeds starting at si and sj
| si1 | the index of seed1 in the first sequence |
| si2 | the index of seed1 in the second sequence |
| sj1 | the index of seed2 in the first sequence |
| sj2 | the index of seed2 in the second sequence |
|
protected |
Begin a regional trace; no allocation if no probability sink was requested.
|
overridevirtual |
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.
| r1 | the index range of the first sequence interacting with r2 |
| r2 | the index range of the second sequence interacting with r1 |
Implements IntaRNA::Predictor.
Reimplemented in IntaRNA::PredictorMfeEns2dHeuristicSeedExtension.
|
protected |
Run the selected disjoint stack-seed partition backend.
|
protectedvirtual |
Prepare optional heuristic right endpoints for the admitted stack seeds.
| n | first active range length |
| m | second active range length |
| seeds | contained seeds used by the partition recurrence |
Reimplemented in IntaRNA::PredictorMfeEns2dHeuristicSeedExtension.
|
protected |
|
protectedvirtual |
Select one right endpoint per anchor for the heuristic retained ensemble. An empty function requests the full exact ensemble. Nonempty selectors use local increasing coordinates and receive the anchor's first and last pair.
Reimplemented in IntaRNA::PredictorMfeEns2dHeuristicSeedExtension.
|
overrideprotectedvirtual |
adds seed information and calls traceBack() of super class
| interaction | IN/OUT the interaction to fill |
Reimplemented from IntaRNA::PredictorMfeEns.
|
protected |
access to the interaction energy handler of the super class
|
protected |
|
protected |
partition function of all interaction hybrids that start on the left side of the seed including E_init
|
protected |
partition function of all interaction hybrids that start on the right side of the seed excluding E_init
|
protected |
access to the output handler of the super class
|
protected |
optional sequence-pair owner, never deleted or finalized by the predictor
|
protected |
the seed handler (with idx offset)