-- | This module contains a hierarchical data structure for
-- RNAz output
-- For more information on RNAz consult: <http://www.tbi.univie.ac.at/~wash/RNAz/>
module Bio.RNAzData where
--import Biobase.RNA
-- | All elements of RNAz output are contained in this datatype
data RNAz = RNAz
{ version :: String,
sequenceNumber :: Int,
columnNumber :: Int,
readingDirection :: String,
meanPairwiseIdentity :: Double,
shannonEntropy :: Double,
gcContent :: Double,
meanSingleSequenceMinimumFreeEnergy :: Double,
consensusMinimumFreeEnergy :: Double,
energyContribution :: Double,
covarianceContribution :: Double,
combinationsPair :: Double,
meanZScore :: Double,
structureConservationIndex :: Double,
backgroundModel :: String,
decisionModel :: String,
svmDecisionValue :: Double,
svmRNAClassProbability :: Double,
prediction :: String,
rnazResults :: [RNAzResult],
rnazConsensus :: RNAzConsensus
}
deriving (Show, Eq)
-- | Datatype contains all result elements for each member of the input alignment
data RNAzResult = RNAzResult
{ header :: String,
resultSequence :: String,
dotBracket :: String,
minimumFreeEnergy :: Double,
zScore :: Double,
--S = huffling, R = regression
zscoreCalculationApproach :: Char
}
deriving (Show, Eq)
-- | Datatype contains all elements for the consenus result of input alignment
data RNAzConsensus = RNAzConsensus
{ consensusSequence :: String,
consensusDotBracket :: String
}
deriving (Show, Eq)