lapack-0.3.2: Numerical Linear Algebra using LAPACK
Safe HaskellNone
LanguageHaskell98

Numeric.LAPACK.Matrix.Banded

Documentation

type Banded sub super vert horiz height width = ArrayMatrix (Banded sub super vert horiz height width) Source #

type General sub super height width = ArrayMatrix (BandedGeneral sub super height width) Source #

type Square sub super size = ArrayMatrix (BandedSquare sub super size) Source #

type Upper super size = Square U0 super size Source #

type Lower sub size = Square sub U0 size Source #

type Diagonal size = Square U0 U0 size Source #

type Hermitian offDiag sh = ArrayMatrix (BandedHermitian offDiag sh) Source #

height :: (C vert, C horiz) => Banded sub super vert horiz height width a -> height Source #

width :: (C vert, C horiz) => Banded sub super vert horiz height width a -> width Source #

fromList :: (Natural sub, Natural super, C height, C width, Storable a) => (UnaryProxy sub, UnaryProxy super) -> Order -> height -> width -> [a] -> General sub super height width a Source #

squareFromList :: (Natural sub, Natural super, C size, Storable a) => (UnaryProxy sub, UnaryProxy super) -> Order -> size -> [a] -> Square sub super size a Source #

lowerFromList :: (Natural sub, C size, Storable a) => UnaryProxy sub -> Order -> size -> [a] -> Lower sub size a Source #

upperFromList :: (Natural super, C size, Storable a) => UnaryProxy super -> Order -> size -> [a] -> Upper super size a Source #

mapExtent :: (C vertA, C horizA) => (C vertB, C horizB) => Map vertA horizA vertB horizB height width -> Banded super sub vertA horizA height width a -> Banded super sub vertB horizB height width a Source #

diagonal :: (C sh, Floating a) => Order -> Vector sh a -> Diagonal sh a Source #

takeDiagonal :: (Natural sub, Natural super, C sh, Floating a) => Square sub super sh a -> Vector sh a Source #

toFull :: (Natural sub, Natural super, C vert, C horiz, C height, C width, Floating a) => Banded sub super vert horiz height width a -> Full vert horiz height width a Source #

toLowerTriangular :: (Natural sub, C sh, Floating a) => Lower sub sh a -> Lower sh a Source #

toUpperTriangular :: (Natural super, C sh, Floating a) => Upper super sh a -> Upper sh a Source #

transpose :: (C vert, C horiz) => Banded sub super vert horiz height width a -> Banded super sub horiz vert width height a Source #

adjoint :: (Natural sub, Natural super, C vert, C horiz, C height, C width, Floating a) => Banded sub super vert horiz height width a -> Banded super sub horiz vert width height a Source #

multiplyVector :: (Natural sub, Natural super, C vert, C horiz, C height, C width, Eq width, Floating a) => Banded sub super vert horiz height width a -> Vector width a -> Vector height a Source #

multiply :: (Natural subA, Natural superA, Natural subB, Natural superB, (subA :+: subB) ~ subC, (superA :+: superB) ~ superC, C vert, C horiz, C height, C width, C fuse, Eq fuse, Floating a) => Banded subA superA vert horiz height fuse a -> Banded subB superB vert horiz fuse width a -> Banded subC superC vert horiz height width a Source #

multiplyFull :: (Natural sub, Natural super, C vert, C horiz, C height, C width, C fuse, Eq fuse, Floating a) => Banded sub super vert horiz height fuse a -> Full vert horiz fuse width a -> Full vert horiz height width a Source #

solve :: (Natural sub, Natural super, C vert, C horiz, C sh, Eq sh, C nrhs, Floating a) => Square sub super sh a -> Full vert horiz sh nrhs a -> Full vert horiz sh nrhs a Source #

determinant :: (Natural sub, Natural super, C sh, Floating a) => Square sub super sh a -> a Source #