BiobaseVienna-0.1.0.0: Biobase/Vienna.hs
-- | The Vienna 2004 model is a mirror of the Turner data structure. The
-- difference is that The ViennaRNA package uses an explicit annotation for RNA
-- basepairs.
--
-- Furthermore, all energies are stored in parts of 1/100, using Ints instead
-- of Doubles.
module Biobase.Vienna where
import Data.ByteString (ByteString)
import Data.Map (Map)
import Data.PrimitiveArray
import Biobase.Primary
import Biobase.Secondary.Vienna
data Vienna2004 = Vienna2004
{ stack :: PrimArray (ViennaPair,ViennaPair) Int
, dangle3 :: PrimArray PN Int
, dangle5 :: PrimArray PN Int
, hairpinL :: PrimArray Int Int
, hairpinMM :: PrimArray PNN Int
, hairpinLookup :: Map [Nuc] Int
, hairpinGGG :: Int
, hairpinCslope :: Int
, hairpinCintercept :: Int
, hairpinC3 :: Int
, bulgeL :: PrimArray Int Int
, bulgeSingleC :: Int
, iloop1x1 :: PrimArray (ViennaPair,ViennaPair,(Nuc,Nuc)) Int
, iloop2x1 :: PrimArray (ViennaPair,ViennaPair,(Nuc,Nuc,Nuc)) Int
, iloop2x2 :: PrimArray (ViennaPair,ViennaPair,(Nuc,Nuc,Nuc,Nuc)) Int
, iloopMM :: PrimArray PNN Int
, iloop2x3MM :: PrimArray PNN Int
, iloop1xnMM :: PrimArray PNN Int
, iloopL :: PrimArray Int Int
, multiMM :: PrimArray PNN Int
, ninio :: Int
, maxNinio :: Int
, multiOffset :: Int
, multiNuc :: Int
, multiHelix :: Int
, multiAsym :: Int
, multiStrain :: Int
, extMM :: PrimArray PNN Int
, coaxial :: PrimArray (ViennaPair,ViennaPair) Int -- no intervening unpaired nucleotides
, coaxStack :: PrimArray PNN Int
, tStackCoax :: PrimArray PNN Int
, largeLoop :: Int
, termAU :: Int
, intermolecularInit :: Int
} -- deriving (Read,Show)
type PNN = (ViennaPair,Nuc,Nuc)
type PN = (ViennaPair,Nuc)