lin-alg-0.1.0.3: Low-dimensional matrices and vectors for graphics and physics

Safe HaskellSafe
LanguageHaskell98

Numeric.LinearAlgebra.Matrix.Class

Documentation

class Functor m => Matrix m where Source #

Minimal complete definition

mDim, mElement, mIndexOf, mZip, mFold, det

Methods

mDim :: m a -> Int Source #

mElement :: m a -> Int -> Int -> a Source #

mIndexOf :: Ord a => (a -> a -> Bool) -> m a -> (Int, Int) Source #

mZip :: (a -> b -> c) -> m a -> m b -> m c Source #

mFold :: (a -> a -> a) -> m a -> a Source #

mFold is foldl1'

det :: Num a => m a -> a Source #

Instances

Matrix Mat33 Source # 

Methods

mDim :: Mat33 a -> Int Source #

mElement :: Mat33 a -> Int -> Int -> a Source #

mIndexOf :: Ord a => (a -> a -> Bool) -> Mat33 a -> (Int, Int) Source #

mZip :: (a -> b -> c) -> Mat33 a -> Mat33 b -> Mat33 c Source #

mFold :: (a -> a -> a) -> Mat33 a -> a Source #

det :: Num a => Mat33 a -> a Source #

Matrix Mat44 Source # 

Methods

mDim :: Mat44 a -> Int Source #

mElement :: Mat44 a -> Int -> Int -> a Source #

mIndexOf :: Ord a => (a -> a -> Bool) -> Mat44 a -> (Int, Int) Source #

mZip :: (a -> b -> c) -> Mat44 a -> Mat44 b -> Mat44 c Source #

mFold :: (a -> a -> a) -> Mat44 a -> a Source #

det :: Num a => Mat44 a -> a Source #

mApply :: Functor f => f (a -> b) -> a -> f b Source #

(.+.) :: (Num k, Matrix m) => m k -> m k -> m k Source #

(.-.) :: (Num k, Matrix m) => m k -> m k -> m k Source #