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

Numeric.LAPACK.Matrix.Banded

Documentation

type Banded sub super meas vert horiz height width = FlexBanded Arbitrary sub super meas vert horiz height width Source #

type FlexBanded prop sub super meas vert horiz height width = ArrayMatrix Packed prop (Bands sub) (Bands super) meas vert horiz height width Source #

type General sub super height width = Banded sub super Size Big Big height width Source #

type Square sub super size = Quadratic Arbitrary sub super size Source #

type Upper super size = Square U0 super size Source #

type UnitUpper super size = UnitTriangular U0 super size Source #

type Lower sub size = Square sub U0 size Source #

type UnitLower sub size = UnitTriangular sub U0 size Source #

type FlexDiagonal diag size = SymmQuadratic diag U0 size Source #

type RectangularDiagonal meas vert horiz height width = Banded U0 U0 meas vert horiz height width Source #

type Hermitian offDiag sh = SymmQuadratic HermitianUnknownDefiniteness offDiag sh Source #

type HermitianPosSemidef offDiag sh = SymmQuadratic HermitianPositiveSemidefinite offDiag sh Source #

type HermitianPosDef offDiag sh = SymmQuadratic HermitianPositiveDefinite offDiag sh Source #

type FlexHermitian neg zero pos offDiag sh = SymmQuadratic (Hermitian neg zero pos) offDiag sh Source #

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

width :: (Measure meas, C vert, C horiz) => Banded sub super meas 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) => (Natural sub, Natural super) => Map measA vertA horizA measB vertB horizB height width -> Banded sub super measA vertA horizA height width a -> Banded sub super measB 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 #

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

noUnit :: UnitTriangular sub super sh a -> Square sub super sh a Source #

toFull :: (Natural sub, Natural super, Measure meas, C vert, C horiz, C height, C width, Floating a) => Banded sub super meas vert horiz height width a -> Full meas 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 #

takeTopLeftSquare :: (Natural sub, Natural super, C sh0, C sh1, Floating a) => Square sub super (sh0 ::+ sh1) a -> Square sub super sh0 a Source #

takeBottomRightSquare :: (Natural sub, Natural super, C sh0, C sh1, Floating a) => Square sub super (sh0 ::+ sh1) a -> Square sub super sh1 a Source #

transpose :: (TriDiag diag, Natural sub, Natural super, Measure meas, C vert, C horiz) => FlexBanded diag sub super meas vert horiz height width a -> FlexBanded diag super sub meas horiz vert width height a Source #

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

multiplyVector :: (Natural sub, Natural super, Measure meas, C vert, C horiz, C height, C width, Eq width, Floating a) => Banded sub super meas 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, Measure meas, C vert, C horiz, C height, C width, C fuse, Eq fuse, Floating a) => Banded subA superA meas vert horiz height fuse a -> Banded subB superB meas vert horiz fuse width a -> Banded subC superC meas vert horiz height width a Source #

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

solve :: (TriDiag diag, Natural sub, Natural super, Measure meas, C vert, C horiz, C sh, Eq sh, C nrhs, Floating a) => Quadratic diag sub super sh a -> Full meas vert horiz sh nrhs a -> Full meas vert horiz sh nrhs a Source #

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