Safe Haskell | None |
---|---|
Language | Haskell98 |
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 Hermitian offDiag sh = ArrayMatrix (BandedHermitian offDiag sh) 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 #
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 #
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 #