summaryrefslogtreecommitdiff
path: root/packages/tests/src/Numeric
diff options
context:
space:
mode:
authorAlberto Ruiz <aruiz@um.es>2014-05-27 10:41:40 +0200
committerAlberto Ruiz <aruiz@um.es>2014-05-27 10:41:40 +0200
commitcf3c788f0c44577ac1a5365e8154200b53a36409 (patch)
treed667ea10609e74b69b11309bb59b7e000b240a92 /packages/tests/src/Numeric
parent365e2435e71de10ebe849acac5a107b6f43817c4 (diff)
static dimensions, cont.
Diffstat (limited to 'packages/tests/src/Numeric')
-rw-r--r--packages/tests/src/Numeric/LinearAlgebra/Tests.hs17
1 files changed, 13 insertions, 4 deletions
diff --git a/packages/tests/src/Numeric/LinearAlgebra/Tests.hs b/packages/tests/src/Numeric/LinearAlgebra/Tests.hs
index 3803f3b..02beb21 100644
--- a/packages/tests/src/Numeric/LinearAlgebra/Tests.hs
+++ b/packages/tests/src/Numeric/LinearAlgebra/Tests.hs
@@ -1,5 +1,7 @@
1{-# LANGUAGE CPP #-} 1{-# LANGUAGE CPP #-}
2{-# OPTIONS_GHC -fno-warn-unused-imports -fno-warn-incomplete-patterns #-} 2{-# OPTIONS_GHC -fno-warn-unused-imports -fno-warn-incomplete-patterns #-}
3{-# LANGUAGE DataKinds #-}
4
3----------------------------------------------------------------------------- 5-----------------------------------------------------------------------------
4{- | 6{- |
5Module : Numeric.LinearAlgebra.Tests 7Module : Numeric.LinearAlgebra.Tests
@@ -25,7 +27,8 @@ module Numeric.LinearAlgebra.Tests(
25) where 27) where
26 28
27import Numeric.LinearAlgebra 29import Numeric.LinearAlgebra
28import Numeric.HMatrix 30import Numeric.HMatrix hiding ((<>))
31import Numeric.LinearAlgebra.Real(L)
29import Numeric.LinearAlgebra.Util(col,row) 32import Numeric.LinearAlgebra.Util(col,row)
30import Data.Packed 33import Data.Packed
31import Numeric.LinearAlgebra.LAPACK 34import Numeric.LinearAlgebra.LAPACK
@@ -466,18 +469,23 @@ kroneckerTest = utest "kronecker" ok
466 x = (4><2) [3,5..] 469 x = (4><2) [3,5..]
467 b = (2><5) [0,5..] 470 b = (2><5) [0,5..]
468 v1 = vec (a <> x <> b) 471 v1 = vec (a <> x <> b)
469 v2 = (trans b `kronecker` a) <.> vec x 472 v2 = (trans b `kronecker` a) <> vec x
470 s = trans b <> b 473 s = trans b <> b
471 v3 = vec s 474 v3 = vec s
472 v4 = (dup 5 :: Matrix Double) <.> vech s 475 v4 = (dup 5 :: Matrix Double) <> vech s
473 ok = v1 == v2 && v3 == v4 476 ok = v1 == v2 && v3 == v4
474 && vtrans 1 a == trans a 477 && vtrans 1 a == trans a
475 && vtrans (rows a) a == asColumn (vec a) 478 && vtrans (rows a) a == asColumn (vec a)
476 479
477-------------------------------------------------------------------------------- 480--------------------------------------------------------------------------------
478 481
479sparseTest = utest "sparse mul" (fst $ checkT (undefined :: SMatrix)) 482sparseTest = utest "sparse" (fst $ checkT (undefined :: GMatrix))
483
484--------------------------------------------------------------------------------
480 485
486staticTest = utest "static" (fst $ checkT (undefined :: L 3 5))
487
488--------------------------------------------------------------------------------
481 489
482-- | All tests must pass with a maximum dimension of about 20 490-- | All tests must pass with a maximum dimension of about 20
483-- (some tests may fail with bigger sizes due to precision loss). 491-- (some tests may fail with bigger sizes due to precision loss).
@@ -655,6 +663,7 @@ runTests n = do
655 , convolutionTest 663 , convolutionTest
656 , kroneckerTest 664 , kroneckerTest
657 , sparseTest 665 , sparseTest
666 , staticTest
658 ] 667 ]
659 when (errors c + failures c > 0) exitFailure 668 when (errors c + failures c > 0) exitFailure
660 return () 669 return ()