RNAwolf-0.4.0.0: RNA folding with non-canonical basepairs and base-triplets.

BioInf.RNAwolf.Multibranched

Contents

Description

Functions for handling non-triplet multibranched loops.

TODO We can do the loop-splitting thing again to speed up multibranched closing by x10.

Synopsis

An unpaired nucleotide to the right of an NMbr structure.

fUnpairedRight :: BaseF (NMbr -> Features (Vector (PairIdx, Double)))Source

Energy for having the rightmost nucleotide (at j) unpaired in NMBr.

btUnpairedRight :: Params -> Primary -> NMbr -> NBT -> NBTSource

Backtrack in NMbr if the nucleotide at j is unpaired.

An unpaired nucleotide to the right of an NMbr1 structure.

fUnpairedRight1 :: BaseF (NMbr1 -> Features (Vector (PairIdx, Double)))Source

Energy for having the rightmost nucleotide (at j) unpaired in NMBr1.

btUnpairedRight1 :: Params -> Primary -> NMbr1 -> NBT -> NBTSource

Backtrack NMbr1 if the nucleotide at j is unpaired.

EStem to Helix start

fMlHelix :: BaseF (EStem -> Features (Vector (ExtPairIdx, Double)))Source

A multibranched helix (except the closing one). (i,j) are closed by a basepair. Backtracking into the EStem reveals the type of pairing.

btMlHelix :: Params -> Primary -> NMult -> EStem -> ExtBT -> NBTSource

Backtracks from (i,j) in NMult into the extended-pairing EStem.

Closes a multibranched loop and produces an extended structure at

fMlClose :: BaseF (NMultLoop -> ExtFeatures (Vector (PairIdx, Double)))Source

Closes a multibranch loop.

TODO make completely triplet compliant

btMlClose :: Params -> Primary -> EStem -> NMultLoop -> NBT -> ExtBTSource

Backtrack from and extended annotation (ij,ext) into the helper table NMultLoop.

Multibranched loop helper table

fMlLoop :: BaseF (NMbr -> NMbr1 -> Features (Vector (Int, Double)))Source

Multibranched loop helper function that combines at least one stem with exactly one stem but does not add the closing energy from (i,j).

btMlLoop :: Params -> Primary -> NMultLoop -> NMbr -> NMbr1 -> NBT -> NBT -> NBTSource

Backtracking the multibranched loop.

Backtracking of a multibranched stem with unpaired nucleotides to the

fMlStem :: BaseF (NMult -> Features (Vector (Int, Double)))Source

Backtrack a single stem in NMbr, where the stem has zero or more unpaired nucleotides to the left.

btMlStem :: Params -> Primary -> NMbr -> NMult -> NBT -> NBTSource

Backtrack by trying to find a multilooped helix.

Backtracking of at least two stems by finding one or more stems to the

fMlStems :: BaseF (NMbr -> NMult -> Features (Vector (Int, Double)))Source

Add a stem to a multibranch table containing already at least one stem.

btMlStems :: Params -> Primary -> NMbr -> NMult -> NBT -> NBT -> NBTSource

Backtrack by finding the splitting index between an NMbr composite structure and a single multibranched stem NMult (which can contain unpaired nucleotides to the left).

Backtrack a single stem in NMbr1. This stem is closed at (i,j).

fMl1Stem :: BaseF (NMult -> Features (Vector ((Int, Int), Double)))Source

Add a single stem to a multibranch table containing zero stems already.

TODO this would be equal to mlHelix, unify!

btMl1Stem :: Params -> Primary -> NMbr1 -> NMult -> NBT -> NBTSource

Backtrack a single stem closed at (i,j) for NMbr1. Takes the route through NMult which solves for the exact pairtype.