matrix-sized-0.0.2: Haskell matrix library with interface to C++ linear algebra libraries.

Safe HaskellNone
LanguageHaskell2010

Data.Matrix.Static.LinearAlgebra

Documentation

class Arithmetic (mat1 :: MatrixKind) (mat2 :: MatrixKind) (mat3 :: MatrixKind) | mat1 mat2 -> mat3 where Source #

Methods

(%*%) :: (Numeric a, SingI n, SingI m) => mat1 n p Vector a -> mat2 p m Vector a -> mat3 n m Vector a infixr 8 Source #

Instances
Arithmetic Matrix Matrix Matrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

(%*%) :: (Numeric a, SingI n, SingI m) => Matrix n p Vector a -> Matrix p m Vector a -> Matrix n m Vector a Source #

Arithmetic Matrix SparseMatrix Matrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

(%*%) :: (Numeric a, SingI n, SingI m) => Matrix n p Vector a -> SparseMatrix p m Vector a -> Matrix n m Vector a Source #

Arithmetic SparseMatrix Matrix Matrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

(%*%) :: (Numeric a, SingI n, SingI m) => SparseMatrix n p Vector a -> Matrix p m Vector a -> Matrix n m Vector a Source #

Arithmetic SparseMatrix SparseMatrix SparseMatrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

(%*%) :: (Numeric a, SingI n, SingI m) => SparseMatrix n p Vector a -> SparseMatrix p m Vector a -> SparseMatrix n m Vector a Source #

class Factorization mat where Source #

Methods

eigs :: (SingI k, SingI n, k <= (n - 2)) => Sing k -> mat n n Vector Double -> (Matrix k 1 (Complex Double), Matrix n k (Complex Double)) Source #

Eigenvalues (not ordered) and eigenvectors (as columns) of a general square matrix.

cholesky :: (Numeric a, SingI n) => mat n n Vector a -> mat n n Vector a Source #

Cholesky decomposition

Instances
Factorization Matrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

eigs :: (SingI k, SingI n, k <= (n - 2)) => Sing k -> Matrix n n Vector Double -> (Matrix0 k 1 (Complex Double), Matrix0 n k (Complex Double)) Source #

cholesky :: (Numeric a, SingI n) => Matrix n n Vector a -> Matrix n n Vector a Source #

Factorization SparseMatrix Source # 
Instance details

Defined in Data.Matrix.Static.LinearAlgebra

Methods

eigs :: (SingI k, SingI n, k <= (n - 2)) => Sing k -> SparseMatrix n n Vector Double -> (Matrix k 1 (Complex Double), Matrix n k (Complex Double)) Source #

cholesky :: (Numeric a, SingI n) => SparseMatrix n n Vector a -> SparseMatrix n n Vector a Source #

inverse :: (SingI n, Numeric a) => Matrix n n a -> Matrix n n a Source #