Safe Haskell | None |
---|---|
Language | Haskell2010 |
Algorithms operating on matrices.
These functions should give performance comparable with nested loop C implementations.
If you care deeply about runtime performance then you may be better off using a binding to LAPACK, such as hvector.
Synopsis
- row :: DIM2 -> Int
- col :: DIM2 -> Int
- mmultP :: Monad m => Array U DIM2 Double -> Array U DIM2 Double -> m (Array U DIM2 Double)
- mmultS :: Array U DIM2 Double -> Array U DIM2 Double -> Array U DIM2 Double
- transpose2P :: Monad m => Array U DIM2 Double -> m (Array U DIM2 Double)
- transpose2S :: Array U DIM2 Double -> Array U DIM2 Double
- trace2P :: Monad m => Array U DIM2 Double -> m Double
- trace2S :: Array U DIM2 Double -> Double
Documentation
Matrix Multiplication.
mmultP :: Monad m => Array U DIM2 Double -> Array U DIM2 Double -> m (Array U DIM2 Double) Source #
Matrix matrix multiply, in parallel.
mmultS :: Array U DIM2 Double -> Array U DIM2 Double -> Array U DIM2 Double Source #
Matrix matrix multiply, sequentially.
Transposition.
transpose2P :: Monad m => Array U DIM2 Double -> m (Array U DIM2 Double) Source #
Transpose a 2D matrix, in parallel.
transpose2S :: Array U DIM2 Double -> Array U DIM2 Double Source #
Transpose a 2D matrix, sequentially.