cobot-0.1.1.8: Computational biology toolkit to collaborate with researchers in constructive protein engineering
Safe HaskellSafe-Inferred
LanguageHaskell2010

Bio.Chain.Alignment.Algorithms

Synopsis

Documentation

newtype EditDistance e1 e2 Source #

Constructors

EditDistance (e1 -> e2 -> Bool) 

data GlobalAlignment a e1 e2 Source #

Constructors

GlobalAlignment (Scoring e1 e2) a 

Instances

Instances details
IsGap g => SequenceAlignment (GlobalAlignment g) Source # 
Instance details

Defined in Bio.Chain.Alignment.Algorithms

Methods

semi :: GlobalAlignment g e1 e2 -> Bool Source #

cond :: (Alignable m, Alignable m') => GlobalAlignment g (IxValue m) (IxValue m') -> Conditions m m' Source #

traceStart :: (Alignable m, Alignable m') => GlobalAlignment g (IxValue m) (IxValue m') -> Matrix m m' -> m -> m' -> (Index m, Index m') Source #

scoreMatrix :: (Alignable m, Alignable m') => GlobalAlignment g (IxValue m) (IxValue m') -> m -> m' -> Matrix m m' Source #

data LocalAlignment a e1 e2 Source #

Constructors

LocalAlignment (Scoring e1 e2) a 

Instances

Instances details
IsGap g => SequenceAlignment (LocalAlignment g) Source # 
Instance details

Defined in Bio.Chain.Alignment.Algorithms

Methods

semi :: LocalAlignment g e1 e2 -> Bool Source #

cond :: (Alignable m, Alignable m') => LocalAlignment g (IxValue m) (IxValue m') -> Conditions m m' Source #

traceStart :: (Alignable m, Alignable m') => LocalAlignment g (IxValue m) (IxValue m') -> Matrix m m' -> m -> m' -> (Index m, Index m') Source #

scoreMatrix :: (Alignable m, Alignable m') => LocalAlignment g (IxValue m) (IxValue m') -> m -> m' -> Matrix m m' Source #

data SemiglobalAlignment a e1 e2 Source #

Constructors

SemiglobalAlignment (Scoring e1 e2) a 

Instances

Instances details
IsGap g => SequenceAlignment (SemiglobalAlignment g) Source # 
Instance details

Defined in Bio.Chain.Alignment.Algorithms

Methods

semi :: SemiglobalAlignment g e1 e2 -> Bool Source #

cond :: (Alignable m, Alignable m') => SemiglobalAlignment g (IxValue m) (IxValue m') -> Conditions m m' Source #

traceStart :: (Alignable m, Alignable m') => SemiglobalAlignment g (IxValue m) (IxValue m') -> Matrix m m' -> m -> m' -> (Index m, Index m') Source #

scoreMatrix :: (Alignable m, Alignable m') => SemiglobalAlignment g (IxValue m) (IxValue m') -> m -> m' -> Matrix m m' Source #

substitute :: (Alignable m, Alignable m') => (IxValue m -> IxValue m' -> Int) -> m -> m' -> Index m -> Index m' -> Int Source #

Lift simple substitution function to a ChainLike collection

substituteED :: EditDistance e1 e2 -> e1 -> e2 -> Int Source #

Simple substitution function for edit distance

defStop :: (Alignable m, Alignable m') => Matrix m m' -> m -> m' -> Index m -> Index m' -> Bool Source #

Default traceback stop condition.

localStop :: (Alignable m, Alignable m') => Matrix m m' -> m -> m' -> Index m -> Index m' -> Bool Source #

Traceback stop condition for the local alignment.

move :: (Alignable m, Alignable m', IsGap g) => g -> Move m m' Source #

moveSimple :: (Alignable m, Alignable m', IsGap g) => g -> Move m m' Source #

moveAffine :: (Alignable m, Alignable m', IsGap g) => g -> Move m m' Source #

Move function for affine alignment traceback. Implements a "Manhattan grid".

See here: http://www.csbio.unc.edu/mcmillan/Comp555S16/Lecture14.html or file doc/Affine_Alignment.pdf in the repository.

defDiag :: (Alignable m, Alignable m') => (IxValue m -> IxValue m' -> Int) -> Matrix m m' -> m -> m' -> Index m -> Index m' -> Bool Source #

Default condition of moving diagonally in traceback.

defStart :: (Alignable m, Alignable m') => Matrix m m' -> m -> m' -> (Index m, Index m') Source #

Default start condition for traceback.

localStart :: (Alignable m, Alignable m') => Matrix m m' -> m -> m' -> (Index m, Index m') Source #

Default start condition for traceback in local alignment.

semiStart :: (Alignable m, Alignable m') => Matrix m m' -> m -> m' -> (Index m, Index m') Source #

Default start condition for traceback in semiglobal alignment.

fillInnerMatrix Source #

Arguments

:: (IsGap g, Ix ix, Ix ix', Enum ix, Enum ix') 
=> g 
-> STUArray s (ix, ix', EditOp) Int 
-> Bool

Is this local alignment?

-> (ix -> ix' -> Int)

Substitution function

-> ix 
-> ix' 
-> ST s ()