Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- type UpperQuasitriangular size = Quadratic Unpacked Arbitrary (Bands U1) Filled size
- type PositiveDiagonal size = Quadratic Packed HermitianPositiveDefinite Empty Empty size
- type RealDiagonal size = BandedHermitian U0 size
- type BandedHermitian offDiag size = Quadratic Packed HermitianUnknownDefiniteness (Bands offDiag) (Bands offDiag) size
- type BandedUnitUpper super size = BandedUnitTriangular U0 super size
- type BandedUnitLower sub size = BandedUnitTriangular sub U0 size
- type BandedUnitTriangular sub super size = Quadratic Packed Unit (Bands sub) (Bands super) size
- type BandedUpper super size = BandedTriangular U0 super size
- type BandedLower sub size = BandedTriangular sub U0 size
- type BandedTriangular sub super size = Quadratic Packed Arbitrary (Bands sub) (Bands super) size
- type BandedGeneral sub super = Omni Packed Arbitrary (Bands sub) (Bands super) Size Big Big
- type Banded sub super meas vert horiz = Omni Packed Arbitrary (Bands sub) (Bands super) meas vert horiz
- type Symmetric size = Quadratic Packed Symmetric Filled Filled size
- type UpperTriangular size = Quadratic Packed Arbitrary Empty Filled size
- type LowerTriangular size = Quadratic Packed Arbitrary Filled Empty size
- newtype GenTriangularLoUp diag size a lo up = GenTriangularLoUp {
- runGenTriangularLoUp :: Triangular lo diag up size
- newtype GenTriangularDiag lo up size a diag = GenTriangularDiag {
- runGenTriangularDiag :: Triangular lo diag up size
- type Triangular lo diag up size = Quadratic Packed diag lo up size
- data UpLoSingleton lo up where
- class (PowerStrip lo, PowerStrip up) => DiagUpLoC lo up where
- type DiagUpLo lo up = (DiagUpLoC lo up, DiagUpLoC up lo)
- class DiagUpLoC lo up => UpLoC lo up where
- switchUpLo :: f Empty Filled -> f Filled Empty -> f lo up
- type UpLo lo up = (UpLoC lo up, UpLoC up lo)
- type Identity size = Quadratic Packed Unit Empty Empty size
- type Diagonal size = Quadratic Packed Arbitrary Empty Empty size
- type Hermitian size = Quadratic Packed HermitianUnknownDefiniteness Filled Filled size
- type QuadraticMeas pack property lower upper meas height width = Omni pack property lower upper meas Small Small height width
- type Quadratic pack property lower upper size = QuadraticMeas pack property lower upper Shape size size
- type Square sh = Full Shape Small Small sh sh
- type LiberalSquare = Full Size Small Small
- type Wide = Full Size Small Big
- type Tall = Full Size Big Small
- type General = Full Size Big Big
- type Full = Omni Unpacked Arbitrary Filled Filled
- general :: Order -> height -> width -> General height width
- tall :: (C height, C width) => Order -> height -> width -> Tall height width
- wide :: (C height, C width) => Order -> height -> width -> Wide height width
- liberalSquare :: (C height, C width) => Order -> height -> width -> LiberalSquare height width
- square :: C sh => Order -> sh -> Square sh
- hermitian :: Order -> sh -> Hermitian sh
- diagonal :: Order -> size -> Diagonal size
- identity :: Order -> size -> Identity size
- autoUplo :: UpLo lo up => UpLoSingleton lo up
- triangular :: (DiagUpLo lo up, TriDiag diag) => Order -> size -> Triangular lo diag up size
- unitTriangular :: DiagUpLo lo up => Order -> size -> Triangular lo Unit up size
- arbitraryTriangular :: DiagUpLo lo up => Order -> size -> Triangular lo Arbitrary up size
- lowerTriangular :: Order -> size -> LowerTriangular size
- upperTriangular :: Order -> size -> UpperTriangular size
- symmetric :: Order -> size -> Symmetric size
- bandedOffDiagonals :: Omni Packed property (Bands sub) (Bands super) meas vert horiz height width -> (UnaryProxy sub, UnaryProxy super)
- bandedGeneral :: (Natural sub, Natural super, C height, C width) => (UnaryProxy sub, UnaryProxy super) -> Order -> height -> width -> BandedGeneral sub super height width
- bandedHermitian :: Natural offDiag => UnaryProxy offDiag -> Order -> size -> BandedHermitian offDiag size
- data Order
- flipOrder :: Order -> Order
- height :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> height
- width :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> width
- extent :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> Extent meas vert horiz height width
- squareSize :: Omni pack property lower upper Shape Small Small sh sh -> sh
- order :: Omni pack property lower upper meas vert horiz height width -> Order
- class Property diag => TriDiag diag
- data DiagSingleton diag where
- class Property property
- class Strip c => PowerStrip c
- data PowerStripSingleton c where
- powerStripSingleton :: PowerStrip c => PowerStripSingleton c
- class (MultipliedBands c Filled ~ Filled, MultipliedBands c Empty ~ c) => Strip c
- data StripSingleton c where
- StripBands :: Natural offDiag => HeadSingleton offDiag -> StripSingleton (Bands offDiag)
- StripFilled :: StripSingleton Filled
- stripSingleton :: Strip c => StripSingleton c
- data Arbitrary
- data Unit
- data Filled
- type Empty = Bands U0
- data Bands offDiag
- addOffDiagonals :: (Natural subA, Natural superA, Natural subB, Natural superB, (subA :+: subB) ~ subC, (superA :+: superB) ~ superC) => (UnaryProxy subA, UnaryProxy superA) -> (UnaryProxy subB, UnaryProxy superB) -> ((Nat subC, Nat superC), (UnaryProxy subC, UnaryProxy superC))
- class Packing pack
- data Packed
- data Unpacked
Documentation
type PositiveDiagonal size = Quadratic Packed HermitianPositiveDefinite Empty Empty size Source #
For singular values
However, diagonal matrices produced by singular value decomposition may be non-square and Hermitian must be square.
type RealDiagonal size = BandedHermitian U0 size Source #
For Hermitian eigenvalues
type BandedHermitian offDiag size = Quadratic Packed HermitianUnknownDefiniteness (Bands offDiag) (Bands offDiag) size Source #
type BandedUnitUpper super size = BandedUnitTriangular U0 super size Source #
type BandedUnitLower sub size = BandedUnitTriangular sub U0 size Source #
type BandedUnitTriangular sub super size = Quadratic Packed Unit (Bands sub) (Bands super) size Source #
type BandedUpper super size = BandedTriangular U0 super size Source #
type BandedLower sub size = BandedTriangular sub U0 size Source #
type BandedTriangular sub super size = Quadratic Packed Arbitrary (Bands sub) (Bands super) size Source #
type BandedGeneral sub super = Omni Packed Arbitrary (Bands sub) (Bands super) Size Big Big Source #
type Banded sub super meas vert horiz = Omni Packed Arbitrary (Bands sub) (Bands super) meas vert horiz Source #
newtype GenTriangularLoUp diag size a lo up Source #
GenTriangularLoUp | |
|
newtype GenTriangularDiag lo up size a diag Source #
GenTriangularDiag | |
|
type Triangular lo diag up size = Quadratic Packed diag lo up size Source #
data UpLoSingleton lo up where Source #
class (PowerStrip lo, PowerStrip up) => DiagUpLoC lo up where Source #
type QuadraticMeas pack property lower upper meas height width = Omni pack property lower upper meas Small Small height width Source #
type Quadratic pack property lower upper size = QuadraticMeas pack property lower upper Shape size size Source #
liberalSquare :: (C height, C width) => Order -> height -> width -> LiberalSquare height width Source #
autoUplo :: UpLo lo up => UpLoSingleton lo up Source #
triangular :: (DiagUpLo lo up, TriDiag diag) => Order -> size -> Triangular lo diag up size Source #
unitTriangular :: DiagUpLo lo up => Order -> size -> Triangular lo Unit up size Source #
arbitraryTriangular :: DiagUpLo lo up => Order -> size -> Triangular lo Arbitrary up size Source #
lowerTriangular :: Order -> size -> LowerTriangular size Source #
upperTriangular :: Order -> size -> UpperTriangular size Source #
bandedOffDiagonals :: Omni Packed property (Bands sub) (Bands super) meas vert horiz height width -> (UnaryProxy sub, UnaryProxy super) Source #
bandedGeneral :: (Natural sub, Natural super, C height, C width) => (UnaryProxy sub, UnaryProxy super) -> Order -> height -> width -> BandedGeneral sub super height width Source #
bandedHermitian :: Natural offDiag => UnaryProxy offDiag -> Order -> size -> BandedHermitian offDiag size Source #
height :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> height Source #
width :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> width Source #
extent :: (Measure meas, C vert, C horiz) => Omni pack property lower upper meas vert horiz height width -> Extent meas vert horiz height width Source #
data DiagSingleton diag where Source #
Instances
Eq (DiagSingleton diag) Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni (==) :: DiagSingleton diag -> DiagSingleton diag -> Bool # (/=) :: DiagSingleton diag -> DiagSingleton diag -> Bool # | |
Show (DiagSingleton diag) Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni showsPrec :: Int -> DiagSingleton diag -> ShowS # show :: DiagSingleton diag -> String # showList :: [DiagSingleton diag] -> ShowS # | |
NFData (DiagSingleton diag) Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni rnf :: DiagSingleton diag -> () # |
class Property property Source #
switchProperty
Instances
Property Symmetric Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni | |
Property Arbitrary Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni | |
Property Unit Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni | |
(C neg, C zero, C pos) => Property (Hermitian neg zero pos) Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni |
class Strip c => PowerStrip c Source #
PowerStrip
is either Empty
or Filled
.
These are the Strip
s that are preserved in matrix powers.
Pun intended.
Instances
PowerStrip Filled Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni | |
offDiag ~ U0 => PowerStrip (Bands offDiag) Source # | |
Defined in Numeric.LAPACK.Matrix.Shape.Omni |
data PowerStripSingleton c where Source #
powerStripSingleton :: PowerStrip c => PowerStripSingleton c Source #
class (MultipliedBands c Filled ~ Filled, MultipliedBands c Empty ~ c) => Strip c Source #
data StripSingleton c where Source #
StripBands :: Natural offDiag => HeadSingleton offDiag -> StripSingleton (Bands offDiag) | |
StripFilled :: StripSingleton Filled |
stripSingleton :: Strip c => StripSingleton c Source #
Instances
Instances
Instances
Instances
addOffDiagonals :: (Natural subA, Natural superA, Natural subB, Natural superB, (subA :+: subB) ~ subC, (superA :+: superB) ~ superC) => (UnaryProxy subA, UnaryProxy superA) -> (UnaryProxy subB, UnaryProxy superB) -> ((Nat subC, Nat superC), (UnaryProxy subC, UnaryProxy superC)) Source #
Instances
Instances
Instances
Packing Unpacked Source # | |
(Strip lower, Strip upper) => Quadratic Unpacked Arbitrary lower upper Source # | |
MapExtent Unpacked Arbitrary Filled Filled Source # | |
Defined in Numeric.LAPACK.Matrix.Array mapExtent :: (Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix Unpacked Arbitrary Filled Filled measA vertA horizA height width a -> ArrayMatrix Unpacked Arbitrary Filled Filled measB vertB horizB height width a Source # | |
ToPlain Unpacked Arbitrary Filled Filled meas vert horiz height width Source # | |
FromPlain Unpacked Arbitrary Filled Filled meas vert horiz height width Source # | |
type Plain Unpacked Arbitrary Filled Filled meas vert horiz height width Source # | |