lapack 0.5.1 → 0.5.1.1
raw patch · 5 files changed
+42/−18 lines, 5 files
Files
- lapack.cabal +8/−4
- src/Numeric/LAPACK/Singular.hs +13/−0
- test/DocTest/Numeric/LAPACK/Example/DividedDifference.hs +9/−6
- test/DocTest/Numeric/LAPACK/Example/EconomicAllocation.hs +3/−2
- test/DocTest/Numeric/LAPACK/Permutation/Private.hs +9/−6
lapack.cabal view
@@ -1,6 +1,6 @@ Cabal-Version: 2.2 Name: lapack-Version: 0.5.1+Version: 0.5.1.1 License: BSD-3-Clause License-File: LICENSE Author: Henning Thielemann <haskell@henning-thielemann.de>@@ -44,6 +44,10 @@ Support for nice formatting in HyperHaskell. . See also: @hmatrix@.+ .+ For examples see the @Example@ modules+ and the packages @sum-pyramid@, @wuerfelschlange@, @magico@,+ @linear-circuit@, @resistor-cube@. Tested-With: GHC==7.4.2, GHC==7.8.4, GHC==8.6.5 Build-Type: Simple Extra-Source-Files:@@ -53,7 +57,7 @@ test-module.list Source-Repository this- Tag: 0.5.1+ Tag: 0.5.1.1 Type: darcs Location: https://hub.darcs.net/thielema/lapack/ @@ -76,9 +80,9 @@ guarded-allocation >=0.0 && <0.1, hyper >=0.1 && <0.3, blaze-html >=0.7 && <0.10,- text >=1.2 && <2.1,+ text >=1.2 && <2.2, boxes >=0.1.5 && <0.2,- deepseq >=1.3 && <1.5,+ deepseq >=1.3 && <1.6, lazyio >=0.1 && <0.2, transformers >=0.4 && <0.7, tfp >=1.0.2 && <1.1,
src/Numeric/LAPACK/Singular.hs view
@@ -38,6 +38,19 @@ type RealVector sh a = Vector sh (RealOf a) +{- |+The 'RectangularDiagonal' type maintains+the shape information of the original matrix,+but is a bit cumbersome to work with.+You might access its elements using '#!'+or extract the diagonal as vector by:++> Singular.values m #*| Vector.one (Matrix.height m)++> Vector.one (Matrix.width m) -*# Singular.values m++.+-} values :: (Extent.Measure meas, Extent.C vert, Extent.C horiz) => (Shape.C height, Shape.C width, Class.Floating a) =>
test/DocTest/Numeric/LAPACK/Example/DividedDifference.hs view
@@ -38,16 +38,19 @@ test = do DocTest.printPrefix "Numeric.LAPACK.Example.DividedDifference:85: " {-# LINE 85 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 85 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- (QC.forAll genDD $ \(xs, (ys0,ys1)) -> approxArray (dividedDifferencesMatrix xs (ys0|+|ys1)) (dividedDifferencesMatrix xs ys0 #+# dividedDifferencesMatrix xs ys1))+ QC.forAll genDD $ \(xs, (ys0,ys1)) -> approxArray (dividedDifferencesMatrix xs (ys0|+|ys1)) (dividedDifferencesMatrix xs ys0 #+# dividedDifferencesMatrix xs ys1)+ ) DocTest.printPrefix "Numeric.LAPACK.Example.DividedDifference:86: " {-# LINE 86 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 86 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- (QC.forAll genDD $ \(xs, (ys0,ys1)) -> approxArray (dividedDifferencesMatrix xs (Vector.mul ys0 ys1)) (dividedDifferencesMatrix xs ys0 <> dividedDifferencesMatrix xs ys1))+ QC.forAll genDD $ \(xs, (ys0,ys1)) -> approxArray (dividedDifferencesMatrix xs (Vector.mul ys0 ys1)) (dividedDifferencesMatrix xs ys0 <> dividedDifferencesMatrix xs ys1)+ ) DocTest.printPrefix "Numeric.LAPACK.Example.DividedDifference:96: " {-# LINE 96 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 96 "src/Numeric/LAPACK/Example/DividedDifference.hs" #-}- (QC.forAll (QC.choose (0,10)) $ \n -> let sh = shapeInt n in QC.forAll (Util.genDistinct [-10..10] [-10..10] sh) $ \xs -> approxArray (DD.parameterDifferencesMatrix xs) (DD.upperFromPyramid sh (Vector.zero sh : DD.parameterDifferences xs)))+ QC.forAll (QC.choose (0,10)) $ \n -> let sh = shapeInt n in QC.forAll (Util.genDistinct [-10..10] [-10..10] sh) $ \xs -> approxArray (DD.parameterDifferencesMatrix xs) (DD.upperFromPyramid sh (Vector.zero sh : DD.parameterDifferences xs))+ )
test/DocTest/Numeric/LAPACK/Example/EconomicAllocation.hs view
@@ -18,6 +18,7 @@ test = do DocTest.printPrefix "Numeric.LAPACK.Example.EconomicAllocation:92: " {-# LINE 92 "src/Numeric/LAPACK/Example/EconomicAllocation.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 92 "src/Numeric/LAPACK/Example/EconomicAllocation.hs" #-}- (let result = iterated expenses0 balances0 in approxVector result $ compensated expenses0 balances0 +++ Vector.zero (Array.shape $ Vector.takeRight result))+ let result = iterated expenses0 balances0 in approxVector result $ compensated expenses0 balances0 +++ Vector.zero (Array.shape $ Vector.takeRight result)+ )
test/DocTest/Numeric/LAPACK/Permutation/Private.hs view
@@ -27,16 +27,19 @@ test = do DocTest.printPrefix "Numeric.LAPACK.Permutation.Private:110: " {-# LINE 110 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 110 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- (QC.forAll QC.arbitraryBoundedEnum $ \inv -> QC.forAll (QC.arbitrary >>= genPivots) $ \xs -> xs == Perm.toPivots inv (Perm.fromPivots inv xs))+ QC.forAll QC.arbitraryBoundedEnum $ \inv -> QC.forAll (QC.arbitrary >>= genPivots) $ \xs -> xs == Perm.toPivots inv (Perm.fromPivots inv xs)+ ) DocTest.printPrefix "Numeric.LAPACK.Permutation.Private:193: " {-# LINE 193 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 193 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- (QC.forAll genPerm2 $ \(p0,p1) -> determinant (multiply p0 p1) == determinant p0 <> determinant p1)+ QC.forAll genPerm2 $ \(p0,p1) -> determinant (multiply p0 p1) == determinant p0 <> determinant p1+ ) DocTest.printPrefix "Numeric.LAPACK.Permutation.Private:222: " {-# LINE 222 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- DocTest.property+ DocTest.property( {-# LINE 222 "src/Numeric/LAPACK/Permutation/Private.hs" #-}- (QC.forAll genPerm2 $ \(p0,p1) -> transpose (multiply p0 p1) == multiply (transpose p1) (transpose p0))+ QC.forAll genPerm2 $ \(p0,p1) -> transpose (multiply p0 p1) == multiply (transpose p1) (transpose p0)+ )