module Main (
main
) where
import Control.Monad.Trans.Maybe
import qualified Multilinear.Generic.MultiCore as MultiCore
import qualified Multilinear.Generic.Sequential as Sequential
import qualified Multilinear.Matrix as Matrix
import System.Directory
import Test.MultiCore
import Test.Sequential
fileName1 :: String
fileName1 = "test/m1"
m1MC :: MultiCore.Tensor Double
m1MC = Matrix.fromIndices "ij" 50 50 $ \i j -> cos (fromIntegral i) + sin (fromIntegral j)
m1Seq :: Sequential.Tensor Double
m1Seq = Matrix.fromIndices "ij" 50 50 $ \i j -> cos (fromIntegral i) + sin (fromIntegral j)
-- ENTRY POINT
main :: IO ()
main = do
putStrLn "Testing MultiCore..."
Test.MultiCore.writeMatrixJSON m1MC fileName1
runMaybeT $ Test.MultiCore.readMatrixJSON m1MC fileName1
removeFile $ fileName1 ++ ".json"
putStrLn "Testing Sequential..."
Test.Sequential.writeMatrixJSON m1Seq fileName1
runMaybeT $ Test.Sequential.readMatrixJSON m1Seq fileName1
removeFile $ fileName1 ++ ".json"
return ()