packages feed

clifford 0.1.0.11 → 0.1.0.12

raw patch · 3 files changed

+8/−3 lines, 3 files

Files

changelog.md view
@@ -1,4 +1,5 @@ -*-change-log-*-+	0.1.0.12 Adding type signatures to top level stuff 	0.1.0.11 More inlining and specialisation 	0.1.0.10 Fixed compile error whoops 	0.1.0.9 Inlined/specialised a bunch of function, hueg speed increase
clifford.cabal view
@@ -10,7 +10,7 @@ -- PVP summary:      +-+------- breaking API changes --                   | | +----- non-breaking API additions --                   | | | +--- code changes with no API change-version:             0.1.0.11+version:             0.1.0.12  -- A short (one-line) description of the package. synopsis:            A Clifford algebra library
src/Numeric/Clifford/Multivector.lhs view
@@ -415,11 +415,15 @@     cosh x = converge $ shanksTransformation . compensatedRunningSum $ takeEvery 2 $ expTerms x     sinh x = converge $ shanksTransformation . compensatedRunningSum $ takeEvery 2 $ tail $ expTerms x +dot :: Multivector p q f -> Multivector p q f -> Multivector p q f dot a@(BladeSum _)  b@(BladeSum _) = mvNormalForm $ BladeSum [x `bDot` y | x <- mvTerms a, y <- mvTerms b]+wedge::Multivector p q f -> Multivector p q f->Multivector p q f wedge a@(BladeSum _)  b@(BladeSum _) = mvNormalForm $ BladeSum [x `bWedge` y | x <- mvTerms a, y <- mvTerms b] -(∧) = wedge :: Multivector p q f -> Multivector p q f -> Multivector p q f-(⋅) = dot :: Multivector p q f -> Multivector p q f -> Multivector p q f+(∧) :: Multivector p q f -> Multivector p q f -> Multivector p q f+(∧) = wedge +(⋅) :: Multivector p q f -> Multivector p q f -> Multivector p q f+(⋅) = dot   {-# INLINE reverseBlade #-} reverseBlade b = bladeNormalForm $ b & indices %~ reverse