lapack-0.4.1: src/Numeric/LAPACK/Matrix/Array/Banded.hs
module Numeric.LAPACK.Matrix.Array.Banded where
import qualified Numeric.LAPACK.Matrix.Array.Private as ArrMatrix
import qualified Numeric.LAPACK.Matrix.Shape.Omni as Omni
import Numeric.LAPACK.Matrix.Array.Private (ArrayMatrix)
import Numeric.LAPACK.Matrix.Shape.Omni (Unit, Arbitrary)
import Numeric.LAPACK.Matrix.Layout.Private (Bands, Packed)
import Numeric.LAPACK.Matrix.Extent.Private (Size, Big)
import qualified Type.Data.Num.Unary.Literal as TypeNum
type FlexBanded prop sub super meas vert horiz height width =
ArrayMatrix
Packed prop (Bands sub) (Bands super)
meas vert horiz height width
type Banded sub super meas vert horiz height width =
FlexBanded Arbitrary sub super meas vert horiz height width
type General sub super height width =
Banded sub super Size Big Big height width
type Quadratic prop sub super size =
ArrMatrix.Quadratic Packed prop (Bands sub) (Bands super) size
type Square sub super size = Quadratic Arbitrary sub super size
type Lower sub size = Square sub TypeNum.U0 size
type Upper super size = Square TypeNum.U0 super size
type UnitTriangular sub super size = Quadratic Unit sub super size
type UnitLower sub size = UnitTriangular sub TypeNum.U0 size
type UnitUpper super size = UnitTriangular TypeNum.U0 super size
type Diagonal size = FlexDiagonal Arbitrary size
type FlexDiagonal diag size = SymmQuadratic diag TypeNum.U0 size
type RectangularDiagonal meas vert horiz height width =
Banded TypeNum.U0 TypeNum.U0 meas vert horiz height width
type SymmQuadratic prop offDiag sh = Quadratic prop offDiag offDiag sh
type FlexHermitian neg zero pos offDiag sh =
SymmQuadratic (Omni.Hermitian neg zero pos) offDiag sh
type Hermitian offDiag sh =
SymmQuadratic Omni.HermitianUnknownDefiniteness offDiag sh
type HermitianPosSemidef offDiag sh =
SymmQuadratic Omni.HermitianPositiveSemidefinite offDiag sh
type HermitianPosDef offDiag sh =
SymmQuadratic Omni.HermitianPositiveDefinite offDiag sh