cobot 0.1.1.1 → 0.1.1.2
raw patch · 5 files changed
+142/−136 lines, 5 filesdep ~arraydep ~bytestringdep ~clocknew-uploader
Dependency ranges changed: array, bytestring, clock, containers, criterion, deepseq, hspec, lens, linear, megaparsec, mtl, parallel, random, split, template-haskell, text
Files
- ChangeLog.md +5/−0
- README.md +2/−2
- cobot.cabal +126/−118
- src/Bio/Protein/AminoAcid/Type.hs +3/−4
- src/Bio/Protein/Chain/Builder.hs +6/−12
ChangeLog.md view
@@ -2,6 +2,11 @@ ## Unreleased changes +## [0.1.1.2] - 2020-04-15+### Changed+- Resolver version up.+- Move from `less-wrong` to `biocad`.+ ## [0.1.1.1] - 2020-03-24 ### Fixed - Affine alignment matrix construction and traceback.
README.md view
@@ -1,4 +1,4 @@ # cobot -[](https://travis-ci.org/less-wrong/cobot)-[]()+[](https://travis-ci.org/less-wrong/cobot)+[]()
cobot.cabal view
@@ -1,130 +1,138 @@ cabal-version: 1.12---- This file has been generated from package.yaml by hpack version 0.31.2.------ see: https://github.com/sol/hpack------ hash: 19558d31d73118631f947a34b8de243404cf58e8942adbd414bf445b21381b86--name: cobot-version: 0.1.1.1-synopsis: Computational biology toolkit to collaborate with researchers in constructive protein engineering-description: Please see the README on GitHub at <https://github.com/less-wrong/cobot#readme>-category: Bio-homepage: https://github.com/less-wrong/cobot#readme-bug-reports: https://github.com/less-wrong/cobot/issues-author: Pavel Yakovlev, Bogdan Neterebskii, Alexander Sadovnikov-maintainer: pavel@yakovlev.me-copyright: 2018—2019, Less Wrong Bio-license: BSD3-license-file: LICENSE-build-type: Simple+name: cobot+version: 0.1.1.2+license: BSD3+license-file: LICENSE+copyright: 2018—2019, Less Wrong Bio+maintainer: pavel@yakovlev.me+author: Pavel Yakovlev, Bogdan Neterebskii, Alexander Sadovnikov+homepage: https://github.com/biocad/cobot#readme+bug-reports: https://github.com/biocad/cobot/issues+synopsis: Computational biology toolkit to collaborate with researchers in constructive protein engineering+description:+ Please see the README on GitHub at <https://github.com/biocad/cobot#readme>+category: Bio+build-type: Simple extra-source-files: README.md ChangeLog.md source-repository head- type: git- location: https://github.com/less-wrong/cobot+ type: git+ location: https://github.com/biocad/cobot library- exposed-modules:- Bio.Chain- Bio.Chain.Alignment- Bio.Chain.Alignment.Algorithms- Bio.Chain.Alignment.Scoring- Bio.Chain.Alignment.Scoring.Loader- Bio.Chain.Alignment.Scoring.TH- Bio.Chain.Alignment.Type- Bio.Molecule- Bio.NucleicAcid.Chain- Bio.NucleicAcid.Nucleotide- Bio.NucleicAcid.Nucleotide.Instances- Bio.NucleicAcid.Nucleotide.Type- Bio.Protein.Algebra- Bio.Protein.AminoAcid- Bio.Protein.AminoAcid.Instances- Bio.Protein.AminoAcid.Type- Bio.Protein.Chain- Bio.Protein.Chain.Builder- Bio.Protein.Metric- Bio.Utils.Geometry- Bio.Utils.IUPAC- Bio.Utils.Matrix- Bio.Utils.Monomer- other-modules:- Paths_cobot- hs-source-dirs:- src- default-extensions: AllowAmbiguousTypes ConstraintKinds DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables TypeApplications TypeFamilies TypeSynonymInstances UndecidableInstances- build-depends:- array- , base >=4.7 && <5- , bytestring- , containers- , deepseq- , lens- , linear- , megaparsec- , mtl- , split- , template-haskell- , text- default-language: Haskell2010+ exposed-modules:+ Bio.Chain+ Bio.Chain.Alignment+ Bio.Chain.Alignment.Algorithms+ Bio.Chain.Alignment.Scoring+ Bio.Chain.Alignment.Scoring.Loader+ Bio.Chain.Alignment.Scoring.TH+ Bio.Chain.Alignment.Type+ Bio.Molecule+ Bio.NucleicAcid.Chain+ Bio.NucleicAcid.Nucleotide+ Bio.NucleicAcid.Nucleotide.Instances+ Bio.NucleicAcid.Nucleotide.Type+ Bio.Protein.Algebra+ Bio.Protein.AminoAcid+ Bio.Protein.AminoAcid.Instances+ Bio.Protein.AminoAcid.Type+ Bio.Protein.Chain+ Bio.Protein.Chain.Builder+ Bio.Protein.Metric+ Bio.Utils.Geometry+ Bio.Utils.IUPAC+ Bio.Utils.Matrix+ Bio.Utils.Monomer+ hs-source-dirs: src+ other-modules:+ Paths_cobot+ default-language: Haskell2010+ default-extensions: AllowAmbiguousTypes ConstraintKinds+ DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable+ FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving+ MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables+ TypeApplications TypeFamilies TypeSynonymInstances+ UndecidableInstances+ build-depends:+ array >=0.5.4.0 && <0.6,+ base >=4.7 && <5,+ bytestring >=0.10.10.0 && <0.11,+ containers >=0.6.2.1 && <0.7,+ deepseq >=1.4.4.0 && <1.5,+ lens >=4.18.1 && <4.19,+ linear >=1.20.9 && <1.21,+ megaparsec >=8.0.0 && <8.1,+ mtl >=2.2.2 && <2.3,+ split >=0.2.3.4 && <0.3,+ template-haskell >=2.15.0.0 && <2.16,+ text >=1.2.4.0 && <1.3 test-suite cobot-test- type: exitcode-stdio-1.0- main-is: Spec.hs- other-modules:- HandcraftedSpec- JuliaSpec- Paths_cobot- hs-source-dirs:- test- default-extensions: AllowAmbiguousTypes ConstraintKinds DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables TypeApplications TypeFamilies TypeSynonymInstances UndecidableInstances- ghc-options: -threaded -rtsopts "-with-rtsopts=-A64m -qb0 -I0 -N -qn4"- build-depends:- array- , base >=4.7 && <5- , bytestring- , cobot- , containers- , deepseq- , hspec- , lens- , linear- , megaparsec- , mtl- , split- , template-haskell- , text- default-language: Haskell2010+ type: exitcode-stdio-1.0+ main-is: Spec.hs+ hs-source-dirs: test+ other-modules:+ HandcraftedSpec+ JuliaSpec+ Paths_cobot+ default-language: Haskell2010+ default-extensions: AllowAmbiguousTypes ConstraintKinds+ DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable+ FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving+ MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables+ TypeApplications TypeFamilies TypeSynonymInstances+ UndecidableInstances+ ghc-options: -threaded -rtsopts+ "-with-rtsopts=-A64m -qb0 -I0 -N -qn4"+ build-depends:+ array >=0.5.4.0 && <0.6,+ base >=4.7 && <5,+ bytestring >=0.10.10.0 && <0.11,+ cobot -any,+ containers >=0.6.2.1 && <0.7,+ deepseq >=1.4.4.0 && <1.5,+ hspec >=2.7.1 && <2.8,+ lens >=4.18.1 && <4.19,+ linear >=1.20.9 && <1.21,+ megaparsec >=8.0.0 && <8.1,+ mtl >=2.2.2 && <2.3,+ split >=0.2.3.4 && <0.3,+ template-haskell >=2.15.0.0 && <2.16,+ text >=1.2.4.0 && <1.3 benchmark cobot-bench- type: exitcode-stdio-1.0- main-is: Main.hs- other-modules:- Paths_cobot- hs-source-dirs:- bench- default-extensions: AllowAmbiguousTypes ConstraintKinds DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables TypeApplications TypeFamilies TypeSynonymInstances UndecidableInstances OverloadedStrings- ghc-options: -threaded -rtsopts "-with-rtsopts=-A64m -qb0 -I0 -N -qn4"- build-depends:- array- , base >=4.7 && <5- , bytestring- , clock- , cobot- , containers- , criterion- , deepseq- , lens- , linear- , megaparsec- , mtl- , parallel- , random- , split- , template-haskell- , text- default-language: Haskell2010+ type: exitcode-stdio-1.0+ main-is: Main.hs+ hs-source-dirs: bench+ other-modules:+ Paths_cobot+ default-language: Haskell2010+ default-extensions: AllowAmbiguousTypes ConstraintKinds+ DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable+ FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving+ MultiWayIf RankNTypes RecordWildCards ScopedTypeVariables+ TypeApplications TypeFamilies TypeSynonymInstances+ UndecidableInstances OverloadedStrings+ ghc-options: -threaded -rtsopts+ "-with-rtsopts=-A64m -qb0 -I0 -N -qn4"+ build-depends:+ array >=0.5.4.0 && <0.6,+ base >=4.7 && <5,+ bytestring >=0.10.10.0 && <0.11,+ clock ==0.8.*,+ cobot -any,+ containers >=0.6.2.1 && <0.7,+ criterion >=1.5.6.2 && <1.6,+ deepseq >=1.4.4.0 && <1.5,+ lens >=4.18.1 && <4.19,+ linear >=1.20.9 && <1.21,+ megaparsec >=8.0.0 && <8.1,+ mtl >=2.2.2 && <2.3,+ parallel >=3.2.2.0 && <3.3,+ random ==1.1.*,+ split >=0.2.3.4 && <0.3,+ template-haskell >=2.15.0.0 && <2.16,+ text >=1.2.4.0 && <1.3
src/Bio/Protein/AminoAcid/Type.hs view
@@ -1,13 +1,12 @@+{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE DeriveAnyClass #-} module Bio.Protein.AminoAcid.Type where -import Control.DeepSeq (NFData (..))+import Control.DeepSeq (NFData (..)) import Control.Lens-import Control.Monad.Identity (Identity)-import GHC.Generics (Generic (..))+import GHC.Generics (Generic (..)) -- | Proteinogenic amino acids --
src/Bio/Protein/Chain/Builder.hs view
@@ -5,20 +5,14 @@ , build ) where -import Data.Ix ( Ix ) import Control.Lens-import Linear.V3 ( V3 (..)- , cross- , _z- )-import Linear.Vector ( negated- , unit- , (*^)- )+import Data.Ix (Ix)+import Linear.V3 (V3 (..), _z)+import Linear.Vector (negated, unit, (*^)) -import Bio.Utils.Geometry hiding ( angle ) import Bio.Protein.AminoAcid import Bio.Protein.Chain+import Bio.Utils.Geometry hiding (angle) class Buildable a where type Monomer a :: *@@ -62,7 +56,7 @@ -- First: -- Ca_i N_i+1 C_i+1 -- * * *- -- + -- -- * * * -- N_i C_i Ca_i+1 -- Second:@@ -74,7 +68,7 @@ -- -- Let us enumerate atoms: 1 for N_i, 2 for Ca_i, 3 for C_i, 4 for N_i+1, 5 for Ca_i+1, 6 for C_i+1. -- We have to find points 4, 5, 6 using 1, 2, 3. To find this points let us introduce vectors named- -- like 'vij' from i to j, e.g. v12 is a vector from N_i to Ca_i. Our main idea will be to get a + -- like 'vij' from i to j, e.g. v12 is a vector from N_i to Ca_i. Our main idea will be to get a -- direction vector from i+1 to i, rotate it and then upscale by specified bond length. One thing to -- look at is the direction of rotations. If we have the first case, then the first rotation should be -- conterclock-wise, otherwise — clock-wise. To detect it we have to understand whether 3 is on the left