Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
Numeric.LAPACK.Matrix.Array
Synopsis
- data family Matrix typ extraLower extraUpper lower upper meas vert horiz height width a
- type ArrayMatrix pack property = Matrix (Array pack property) () ()
- data Array pack property
- type OmniArray pack prop lower upper meas vert horiz height width a = Array (Omni pack prop lower upper meas vert horiz height width) a
- type PlainArray pack prop lower upper meas vert horiz height width = Array (Plain pack prop lower upper meas vert horiz height width)
- type Full meas vert horiz height width = UnpackedMatrix Arbitrary Filled Filled meas vert horiz height width
- type General height width = Full Size Big Big height width
- type Tall height width = Full Size Big Small height width
- type Wide height width = Full Size Small Big height width
- type LiberalSquare height width = SquareMeas Size height width
- type Square sh = SquareMeas Shape sh sh
- type SquareMeas meas height width = Full meas Small Small height width
- type Quadratic pack property lower upper sh = QuadraticMeas pack property lower upper Shape sh sh
- type FullQuadratic pack property sh = Quadratic pack property Filled Filled sh
- type QuadraticMeas pack property lower upper meas height width = ArrayMatrix pack property lower upper meas Small Small height width
- plainShape :: ToPlain pack property lower upper meas vert horiz height width => ArrayMatrix pack property lower upper meas vert horiz height width a -> Plain pack property lower upper meas vert horiz height width
- shape :: ArrayMatrix pack property lower upper meas vert horiz height width a -> Omni pack property lower upper meas vert horiz height width
- extent :: (Measure meas, C vert, C horiz) => ArrayMatrix pack property lower upper meas vert horiz height width a -> Extent meas vert horiz height width
- subBandsSingleton :: Natural sub => ArrayMatrix pack property (Bands sub) upper meas vert horiz height width a -> HeadSingleton sub
- superBandsSingleton :: Natural super => ArrayMatrix pack property lower (Bands super) meas vert horiz height width a -> HeadSingleton super
- packTag :: Packing pack => ArrayMatrix pack diag lower upper meas vert horiz height width a -> PackingSingleton pack
- diagTag :: TriDiag diag => ArrayMatrix pack diag lower upper meas vert horiz height width a -> DiagSingleton diag
- asPacked :: Id (ArrayMatrix Packed property lower upper meas vert horiz height width a)
- asUnpacked :: Id (ArrayMatrix Unpacked property lower upper meas vert horiz height width a)
- requirePacking :: PackingSingleton pack -> Id (ArrayMatrix pack property lower upper meas vert horiz height width a)
- reshape :: (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (C heightA, C widthA) => (C heightB, C widthB) => Omni packB propB lowerB upperB measB vertB horizB heightB widthB -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB a
- mapShape :: (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (C heightA, C widthA) => (C heightB, C widthB) => (Omni packA propA lowerA upperA measA vertA horizA heightA widthA -> Omni packB propB lowerB upperB measB vertB horizB heightB widthB) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB a
- unwrap :: ArrayMatrix pack property lower upper meas vert horiz height width a -> OmniArray pack property lower upper meas vert horiz height width a
- toVector :: ToPlain pack property lower upper meas vert horiz height width => ArrayMatrix pack property lower upper meas vert horiz height width a -> PlainArray pack property lower upper meas vert horiz height width a
- fromVector :: FromPlain pack prop lower upper meas vert horiz height width => Plain pack prop lower upper meas vert horiz height width ~ shape => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Array shape a -> ArrayMatrix pack prop lower upper meas vert horiz height width a
- lift0 :: FromPlain pack prop lower upper meas vert horiz height width => PlainArray pack prop lower upper meas vert horiz height width a -> ArrayMatrix pack prop lower upper meas vert horiz height width a
- lift1 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => FromPlain packB propB lowerB upperB measB vertB horizB heightB widthB => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b
- lift2 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => FromPlain packC propC lowerC upperC measC vertC horizC heightC widthC => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c
- lift3 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => FromPlain packD propD lowerD upperD measD vertD horizD heightD widthD => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c -> PlainArray packD propD lowerD upperD measD vertD horizD heightD widthD d) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c -> ArrayMatrix packD propD lowerD upperD measD vertD horizD heightD widthD d
- lift4 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => ToPlain packD propD lowerD upperD measD vertD horizD heightD widthD => FromPlain packE propE lowerE upperE measE vertE horizE heightE widthE => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c -> PlainArray packD propD lowerD upperD measD vertD horizD heightD widthD d -> PlainArray packE propE lowerE upperE measE vertE horizE heightE widthE e) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c -> ArrayMatrix packD propD lowerD upperD measD vertD horizD heightD widthD d -> ArrayMatrix packE propE lowerE upperE measE vertE horizE heightE widthE e
- unlift1 :: FromPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => (ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b) -> PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b
- unlift2 :: (FromPlain packA propA lowerA upperA measA vertA horizA heightA widthA, FromPlain packB propB lowerB upperB measB vertB horizB heightB widthB) => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => (ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c) -> PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c
- unliftRow :: Order -> (General () height0 a -> General () height1 b) -> Vector height0 a -> Vector height1 b
- unliftColumn :: Order -> (General height0 () a -> General height1 () b) -> Vector height0 a -> Vector height1 b
- unpackedToVector :: (Property property, Strip lower, Strip upper) => UnpackedMatrix property lower upper meas vert horiz height width a -> FullArray meas vert horiz height width a
- liftUnpacked0 :: (Property propertyA, Strip lowerA, Strip upperA) => FullArray measA vertA horizA heightA widthA a -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a
- liftUnpacked1 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b
- liftUnpacked2 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (Property propertyC, Strip lowerC, Strip upperC) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b -> FullArray measC vertC horizC heightC widthC c) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b -> UnpackedMatrix propertyC lowerC upperC measC vertC horizC heightC widthC c
- liftUnpacked3 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (Property propertyC, Strip lowerC, Strip upperC) => (Property propertyD, Strip lowerD, Strip upperD) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b -> FullArray measC vertC horizC heightC widthC c -> FullArray measD vertD horizD heightD widthD d) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b -> UnpackedMatrix propertyC lowerC upperC measC vertC horizC heightC widthC c -> UnpackedMatrix propertyD lowerD upperD measD vertD horizD heightD widthD d
- liftOmni1 :: (OmniArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> OmniArray packB propB lowerB upperB measB vertB horizB heightB widthB b) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b
- liftOmni2 :: (OmniArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> OmniArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> OmniArray packC propC lowerC upperC measC vertC horizC heightC widthC c) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c
- class Property property => Homogeneous property
- class Homogeneous property => Scale property
- zero :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Omni pack property lower upper meas vert horiz height width -> ArrayMatrix pack property lower upper meas vert horiz height width a
- negate :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- scaleReal :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => RealOf a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- scale :: (Measure meas, C vert, C horiz) => (Scale property, C height, C width, Floating a) => a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- scaleRealReal :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Real a) => a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- order :: ArrayMatrix pack property lower upper meas vert horiz height width a -> Order
- forceOrder :: (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Order -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- adaptOrder :: (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- class Property property => Additive property
- add :: (Measure meas, C vert, C horiz) => (Additive property, C height, Eq height, C width, Eq width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- class Additive property => Subtractive property
- sub :: (Measure meas, C vert, C horiz) => (Subtractive property, C height, Eq height, C width, Eq width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a
- class MapExtent pack
- mapExtent :: (MapExtent pack, property ~ Arbitrary) => (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (MapExtentStrip pack lower, MapExtentStrip pack upper) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix pack property lower upper measA vertA horizA height width a -> ArrayMatrix pack property lower upper measB vertB horizB height width a
- identityFromShape :: (C sh, Floating a) => Quadratic pack property lower upper sh -> Quadratic pack property lower upper sh a
- unpack :: (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix Unpacked property lower upper meas vert horiz height width a
Documentation
data family Matrix typ extraLower extraUpper lower upper meas vert horiz height width a Source #
Instances
(MultiplySame typ, StaticIdentity typ, MultiplySameExtra typ xl, MultiplySameExtra typ xu, StaticIdentityExtra typ xl, StaticIdentityStrip typ lower, StaticIdentityExtra typ xu, StaticIdentityStrip typ upper, PowerStrip lower, PowerStrip upper, meas ~ Shape, vert ~ Small, horiz ~ Small, Static height, Eq height, height ~ width, Floating a) => Monoid (Matrix typ xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private Methods mempty :: Matrix typ xl xu lower upper meas vert horiz height width a # mappend :: Matrix typ xl xu lower upper meas vert horiz height width a -> Matrix typ xl xu lower upper meas vert horiz height width a -> Matrix typ xl xu lower upper meas vert horiz height width a # mconcat :: [Matrix typ xl xu lower upper meas vert horiz height width a] -> Matrix typ xl xu lower upper meas vert horiz height width a # | |
(MultiplySame typ, MultiplySameExtra typ xl, MultiplySameExtra typ xu, PowerStrip lower, PowerStrip upper, Measure meas, C vert, C horiz, C height, Eq height, height ~ width, Floating a) => Semigroup (Matrix typ xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private Methods (<>) :: Matrix typ xl xu lower upper meas vert horiz height width a -> Matrix typ xl xu lower upper meas vert horiz height width a -> Matrix typ xl xu lower upper meas vert horiz height width a # sconcat :: NonEmpty (Matrix typ xl xu lower upper meas vert horiz height width a) -> Matrix typ xl xu lower upper meas vert horiz height width a # stimes :: Integral b => b -> Matrix typ xl xu lower upper meas vert horiz height width a -> Matrix typ xl xu lower upper meas vert horiz height width a # | |
(Measure meas, C vert, C horiz, C height, C width, Storable a, Show height, Show width, Show a) => Show (Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Methods showsPrec :: Int -> Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(Show (Matrix typ0 (Append0 xl) (Append0 xu) lower upper meas vert horiz (AppendSelectShape xl height sh0) (AppendSelectShape xu width sh0) a), Show (Matrix typ1 (Append1 xl) (Append1 xu) lower upper meas vert horiz (AppendSelectShape xl height sh1) (AppendSelectShape xu width sh1) a), C height, C width, Show height, Show width, Show a) => Show (Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private Methods showsPrec :: Int -> Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(Show (Quadratic typ0 (Diagonal0 xl) (Diagonal0 xu) lower upper (ShapeHead height) a), Show (Quadratic typ1 (Diagonal1 xl) (Diagonal1 xu) lower upper (ShapeTail height) a), C height, C width, Show height, Show width, Show a) => Show (Matrix (Diagonal typ0 typ1) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private Methods showsPrec :: Int -> Matrix (Diagonal typ0 typ1) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Diagonal typ0 typ1) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Diagonal typ0 typ1) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(Show (Quadratic typ00 (Square00 xl) (Square00 xu) Filled Filled (ShapeHead height) a), Show (Quadratic typ11 (Square11 xl) (Square11 xu) Filled Filled (ShapeTail height) a), Show (Matrix (SquareType xu) (Square01 xu) (Square10 xu) Filled Filled measOff vertOff horizOff (ShapeHead height) (ShapeTail width) a), Show (Matrix (SquareType xl) (Square10 xl) (Square01 xl) Filled Filled measOff horizOff vertOff (ShapeTail height) (ShapeHead width) a), C height, C width, Show height, Show width, Show a) => Show (Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private Methods showsPrec :: Int -> Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(Show (Quadratic typ0 (Symmetric0 xl) (Symmetric0 xu) lower upper (ShapeHead height) a), Show (Quadratic typ1 (Symmetric1 xl) (Symmetric1 xu) lower upper (ShapeTail height) a), Show (Matrix typOff xlOff xuOff Filled Filled Size Big Big (ShapeHead height) (ShapeTail height) a), C height, C width, Show height, Show width, Show a) => Show (Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private Methods showsPrec :: Int -> Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(Show (Quadratic typ0 (Triangular0 xl) (Triangular0 xu) lower upper (ShapeHead height) a), Show (Quadratic typ1 (Triangular1 xl) (Triangular1 xu) lower upper (ShapeTail height) a), Show (Matrix typOff (TriangularOff xl) (TriangularOff xu) Filled Filled Size Big Big (TriangularFstShape xl xu height) (TriangularSndShape xl xu height) a), C height, C width, Show height, Show width, Show a) => Show (Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private Methods showsPrec :: Int -> Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
(C height, Show height) => Show (Matrix Permutation xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private | |
(C height, Show height, Show a) => Show (Matrix Scale xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private | |
(NFData typ, Measure meas, C vert, C horiz, NFData height, NFData width, NFData a) => NFData (Matrix typ xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private | |
(C height, Eq height) => Eq (Matrix Permutation xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private Methods (==) :: Matrix Permutation xl xu lower upper meas vert horiz height width a -> Matrix Permutation xl xu lower upper meas vert horiz height width a -> Bool # (/=) :: Matrix Permutation xl xu lower upper meas vert horiz height width a -> Matrix Permutation xl xu lower upper meas vert horiz height width a -> Bool # | |
(Format typ, FormatExtra typ xl, FormatExtra typ xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Display (Matrix typ xl xu lower upper meas vert horiz height width a) Source # | |
(Format typ, FormatExtra typ xl, FormatExtra typ xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Format (Matrix typ xl xu lower upper meas vert horiz height width a) Source # | |
data Matrix Identity xl xu lower upper meas vert horiz height width a Source # | |
data Matrix Permutation xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private data Matrix Permutation xl xu lower upper meas vert horiz height width a where
| |
data Matrix Scale xl xu lower upper meas vert horiz height width a Source # | |
data Matrix (Inverse typ) extraLower extraUpper lowerf upperf meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Inverse | |
data Matrix (Product fuse) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Type.Private data Matrix (Product fuse) xl xu lower upper meas vert horiz height width a where
| |
data Matrix (FillStrips typ) extraLower extraUpper lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Wrapper data Matrix (FillStrips typ) extraLower extraUpper lower upper meas vert horiz height width a where
| |
data Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
data Matrix (Diagonal typ0 typ1) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private | |
data Matrix (MapExtent typ meas) extraLower extraUpper lower upper meas1 vert1 horiz1 height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Wrapper data Matrix (MapExtent typ meas) extraLower extraUpper lower upper meas1 vert1 horiz1 height width a where
| |
data Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private data Matrix (Triangular typ0 typOff typ1) xl xu lower upper meas vert horiz height width a where
| |
data Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private data Matrix (Append typ0 typ1 sh0 sh1) xl xu lower upper meas vert horiz height width a where
| |
data Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private data Matrix (Square typ00 measOff vertOff horizOff typ11) xl xu lower upper meas vert horiz height width a where
| |
data Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Block.Private data Matrix (Symmetric typ0 typOff xlOff xuOff typ1) xl xu lower upper meas vert horiz height width a where
|
type ArrayMatrix pack property = Matrix (Array pack property) () () Source #
data Array pack property Source #
Instances
(Scale property, xlA ~ (), xuA ~ (), xlB ~ (), xuB ~ ()) => Multiply Scale xlA xuA (Array pack property) xlB xuB lowerC upperC measC Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type Multiplied Scale xlA xuA (Array pack property) xlB xuB lowerC upperC measC type MultipliedExtra Scale xlA xuA (Array pack property) xlB xuB Methods matrixMatrix :: (Box Scale, Strip lowerA, Strip upperA, Box (Array pack property), Strip lowerB, Strip upperB, Box typC, Strip lowerC, Strip upperC, Multiplied Scale xlA xuA (Array pack property) xlB xuB lowerC upperC measC ~ typC, MultipliedExtra Scale xlA xuA (Array pack property) xlB xuB ~ xlC, MultipliedExtra Scale xuA xlA (Array pack property) xuB xlB ~ xuC, MultipliedStrip lowerA lowerB ~ lowerC, MultipliedStrip lowerB lowerA ~ lowerC, MultipliedStrip upperA upperB ~ upperC, MultipliedStrip upperB upperA ~ upperC, MultipliedBands lowerA lowerB ~ lowerC, MultipliedBands lowerB lowerA ~ lowerC, MultipliedBands upperA upperB ~ upperC, MultipliedBands upperB upperA ~ upperC, Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB, MultiplyMeasure measA measB ~ measC, MultiplyMeasure measB measA ~ measC, Multiply vertA vertB ~ vertC, Multiply vertB vertA ~ vertC, Multiply horizA horizB ~ horizC, Multiply horizB horizA ~ horizC, C height, C fuse, Eq fuse, C width, Floating a) => Matrix Scale xlA xuA lowerA upperA measA vertA horizA height fuse a -> Matrix (Array pack property) xlB xuB lowerB upperB measB vertB horizB fuse width a -> Matrix typC xlC xuC lowerC upperC measC vertC horizC height width a | |
Additive property => Additive (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type AdditiveExtra (Array pack property) extra Source # Methods add :: (Measure meas, C vert, C horiz, AdditiveExtra (Array pack property) xl, AdditiveExtra (Array pack property) xu, C height, Eq height, C width, Eq width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # | |
Complex (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Methods conjugate :: (Matrix (Array pack property) xl xu lower upper meas vert horiz height width ~ matrix, Measure meas, C vert, C horiz, C height, C width, Floating a) => matrix a -> matrix a Source # fromReal :: (Matrix (Array pack property) xl xu lower upper meas vert horiz height width ~ matrix, Measure meas, C vert, C horiz, C height, C width, Floating a) => matrix (RealOf a) -> matrix a Source # toComplex :: (Matrix (Array pack property) xl xu lower upper meas vert horiz height width ~ matrix, Measure meas, C vert, C horiz, C height, C width, Floating a) => matrix a -> matrix (ComplexOf a) Source # | |
Homogeneous property => Homogeneous (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type HomogeneousExtra (Array pack property) extra Source # Methods zeroFrom :: (HomogeneousExtra (Array pack property) xl, HomogeneousExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # negate :: (HomogeneousExtra (Array pack property) xl, HomogeneousExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # scaleReal :: (HomogeneousExtra (Array pack property) xl, HomogeneousExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => RealOf a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # | |
MapSize (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Methods mapHeight :: (C vert, C horiz, C heightA, C heightB, C width) => (heightA -> heightB) -> Matrix (Array pack property) extraLower extraUpper lower upper Size vert horiz heightA width a -> Matrix (Array pack property) extraLower extraUpper lower upper Size vert horiz heightB width a Source # mapWidth :: (C vert, C horiz, C height, C widthA, C widthB) => (widthA -> widthB) -> Matrix (Array pack property) extraLower extraUpper lower upper Size vert horiz height widthA a -> Matrix (Array pack property) extraLower extraUpper lower upper Size vert horiz height widthB a Source # | |
MapSquareSize (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
Scale property => Scale (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type ScaleExtra (Array pack property) extra Source # Methods scale :: (ScaleExtra (Array pack property) xl, ScaleExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # | |
SquareShape (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type SquareShapeExtra (Array pack property) extra Source # Methods takeDiagonal :: (SquareShapeExtra (Array pack property) xl, SquareShapeExtra (Array pack property) xu, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Vector sh a Source # identityFrom :: (SquareShapeExtra (Array pack property) xl, SquareShapeExtra (Array pack property) xu, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Quadratic (Array pack property) xl xu lower upper sh a Source # | |
Subtractive property => Subtractive (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type SubtractiveExtra (Array pack property) extra Source # Methods sub :: (Measure meas, C vert, C horiz, SubtractiveExtra (Array pack property) xl, SubtractiveExtra (Array pack property) xu, C height, Eq height, C width, Eq width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a Source # | |
Property prop => Unpack (Array pack prop) Source # | |
Defined in Numeric.LAPACK.Matrix.Class Associated Types type UnpackExtra (Array pack prop) extra Source # Methods unpack :: (UnpackExtra (Array pack prop) xl, UnpackExtra (Array pack prop) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Floating a) => Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a -> ArrayMatrix Unpacked Arbitrary lower upper meas vert horiz height width a Source # | |
(Packing pack, Property property) => Determinant (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Divide Associated Types type DeterminantExtra (Array pack property) extra Source # Methods determinant :: (DeterminantExtra (Array pack property) xl, DeterminantExtra (Array pack property) xu, Strip lower, Strip upper, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> a Source # | |
(Packing pack, Property property) => Inverse (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Divide Associated Types type InverseExtra (Array pack property) extra Source # Methods inverse :: (InverseExtra (Array pack property) xl, InverseExtra (Array pack property) xu, PowerStrip lower, PowerStrip upper, Measure meas, C height, C width, Floating a) => QuadraticMeas (Array pack property) xl xu lower upper meas height width a -> QuadraticMeas (Array pack property) xl xu lower upper meas width height a Source # | |
(Packing pack, Property property) => Solve (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Divide Associated Types type SolveExtra (Array pack property) extra Source # Methods solve :: (SolveExtra (Array pack property) xl, SolveExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq height, Floating a) => Transposition -> Quadratic (Array pack property) xl xu lower upper height a -> Full meas vert horiz height width a -> Full meas vert horiz height width a Source # solveRight :: (SolveExtra (Array pack property) xl, SolveExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq height, Floating a) => Quadratic (Array pack property) xl xu lower upper height a -> Full meas vert horiz height width a -> Full meas vert horiz height width a Source # solveLeft :: (SolveExtra (Array pack property) xl, SolveExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq width, Floating a) => Full meas vert horiz height width a -> Quadratic (Array pack property) xl xu lower upper width a -> Full meas vert horiz height width a Source # | |
Indexed (Array pack property) Source # | |
(Packing pack, Property property) => MultiplySquare (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type MultiplySquareExtra (Array pack property) extra Source # Methods transposableSquare :: (MultiplySquareExtra (Array pack property) xl, MultiplySquareExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, Eq height, C width, Floating a) => Transposition -> Quadratic (Array pack property) xl xu lower upper height a -> Full meas vert horiz height width a -> Full meas vert horiz height width a squareFull :: (MultiplySquareExtra (Array pack property) xl, MultiplySquareExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, Eq height, C width, Floating a) => Quadratic (Array pack property) xl xu lower upper height a -> Full meas vert horiz height width a -> Full meas vert horiz height width a fullSquare :: (MultiplySquareExtra (Array pack property) xl, MultiplySquareExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq width, Floating a) => Full meas vert horiz height width a -> Quadratic (Array pack property) xl xu lower upper width a -> Full meas vert horiz height width a | |
(Packing pack, Property property) => MultiplyVector (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type MultiplyVectorExtra (Array pack property) extra Source # Methods matrixVector :: (MultiplyVectorExtra (Array pack property) xl, MultiplyVectorExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Vector width a -> Vector height a vectorMatrix :: (MultiplyVectorExtra (Array pack property) xl, MultiplyVectorExtra (Array pack property) xu, Strip lower, Strip upper, Measure meas, C vert, C horiz, C height, C width, Eq height, Floating a) => Vector height a -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Vector width a | |
(Packing pack, Property property) => Power (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type PowerExtra (Array pack property) extra Source # Methods square :: (PowerExtra (Array pack property) xl, PowerExtra (Array pack property) xu, PowerStrip lower, PowerStrip upper, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Quadratic (Array pack property) xl xu lower upper sh a Source # power :: (PowerExtra (Array pack property) xl, PowerExtra (Array pack property) xu, PowerStrip lower, PowerStrip upper, C sh, Floating a) => Integer -> Quadratic (Array pack property) xl xu lower upper sh a -> Quadratic (Array pack property) xl xu lower upper sh a Source # powers1 :: (PowerExtra (Array pack property) xl, PowerExtra (Array pack property) xu, PowerStrip lower, PowerStrip upper, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Stream (Quadratic (Array pack property) xl xu lower upper sh a) Source # | |
Box (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Methods extent :: (BoxExtra (Array pack property) xl, BoxExtra (Array pack property) xu, Measure meas, C vert, C horiz) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Extent meas vert horiz height width Source # height :: (BoxExtra (Array pack property) xl, BoxExtra (Array pack property) xu, Measure meas, C vert, C horiz) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> height Source # width :: (BoxExtra (Array pack property) xl, BoxExtra (Array pack property) xu, Measure meas, C vert, C horiz) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> width Source # | |
Format (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type FormatExtra (Array pack property) extra Source # | |
Layout (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type LayoutExtra (Array pack property) extra Source # Methods layout :: (LayoutExtra (Array pack property) xl, LayoutExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Array0 (height, width) (Separator, Maybe (Style, a)) Source # | |
(Packing pack, TriDiag diag) => MultiplySame (Array pack diag) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type MultiplySameExtra (Array pack diag) extra Source # Methods multiplySame :: (matrix ~ Matrix (Array pack diag) xl xu lower upper meas vert horiz sh sh a, MultiplySameExtra (Array pack diag) xl, MultiplySameExtra (Array pack diag) xu, PowerStrip lower, PowerStrip upper, Measure meas, C vert, C horiz, C sh, Eq sh, Floating a) => matrix -> matrix -> matrix Source # | |
ToQuadratic (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Methods heightToQuadratic :: Measure meas => QuadraticMeas (Array pack property) xl xu lower upper meas height width a -> Quadratic (Array pack property) xl xu lower upper height a Source # widthToQuadratic :: Measure meas => QuadraticMeas (Array pack property) xl xu lower upper meas height width a -> Quadratic (Array pack property) xl xu lower upper width a Source # | |
Transpose (Array pack property) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type TransposeExtra (Array pack property) extra Source # Methods transpose :: (TransposeExtra (Array pack property) xl, TransposeExtra (Array pack property) xu, Measure meas, C vert, C horiz, C height, C width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> Matrix (Array pack property) xu xl upper lower meas horiz vert width height a Source # | |
(Scale property, xlA ~ (), xuA ~ (), xlB ~ (), xuB ~ ()) => Multiply (Array pack property) xlA xuA Scale xlB xuB lowerC upperC measC Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type Multiplied (Array pack property) xlA xuA Scale xlB xuB lowerC upperC measC type MultipliedExtra (Array pack property) xlA xuA Scale xlB xuB Methods matrixMatrix :: (Box (Array pack property), Strip lowerA, Strip upperA, Box Scale, Strip lowerB, Strip upperB, Box typC, Strip lowerC, Strip upperC, Multiplied (Array pack property) xlA xuA Scale xlB xuB lowerC upperC measC ~ typC, MultipliedExtra (Array pack property) xlA xuA Scale xlB xuB ~ xlC, MultipliedExtra (Array pack property) xuA xlA Scale xuB xlB ~ xuC, MultipliedStrip lowerA lowerB ~ lowerC, MultipliedStrip lowerB lowerA ~ lowerC, MultipliedStrip upperA upperB ~ upperC, MultipliedStrip upperB upperA ~ upperC, MultipliedBands lowerA lowerB ~ lowerC, MultipliedBands lowerB lowerA ~ lowerC, MultipliedBands upperA upperB ~ upperC, MultipliedBands upperB upperA ~ upperC, Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB, MultiplyMeasure measA measB ~ measC, MultiplyMeasure measB measA ~ measC, Multiply vertA vertB ~ vertC, Multiply vertB vertA ~ vertC, Multiply horizA horizB ~ horizC, Multiply horizB horizA ~ horizC, C height, C fuse, Eq fuse, C width, Floating a) => Matrix (Array pack property) xlA xuA lowerA upperA measA vertA horizA height fuse a -> Matrix Scale xlB xuB lowerB upperB measB vertB horizB fuse width a -> Matrix typC xlC xuC lowerC upperC measC vertC horizC height width a | |
(Packing packA, Property propertyA, xlA ~ (), xuA ~ (), Packing packB, Property propertyB, xlB ~ (), xuB ~ (), Packing packC, Property propertyC, MultipliedPacking packA packB ~ pack, MultipliedPacking packB packA ~ pack, MultipliedProperty propertyA propertyB ~ propertyAB, MultipliedProperty propertyB propertyA ~ propertyAB, UnitIfTriangular lowerC upperC ~ diag, UnitIfTriangular upperC lowerC ~ diag, PackingByStrip lowerC upperC measC pack ~ packC, PackingByStrip upperC lowerC measC pack ~ packC, MergeUnit propertyAB diag ~ propertyC, MergeUnit diag propertyAB ~ propertyC) => Multiply (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB lowerC upperC measC Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply Associated Types type Multiplied (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB lowerC upperC measC type MultipliedExtra (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB Methods matrixMatrix :: (Box (Array packA propertyA), Strip lowerA, Strip upperA, Box (Array packB propertyB), Strip lowerB, Strip upperB, Box typC, Strip lowerC, Strip upperC, Multiplied (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB lowerC upperC measC ~ typC, MultipliedExtra (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB ~ xlC, MultipliedExtra (Array packA propertyA) xuA xlA (Array packB propertyB) xuB xlB ~ xuC, MultipliedStrip lowerA lowerB ~ lowerC, MultipliedStrip lowerB lowerA ~ lowerC, MultipliedStrip upperA upperB ~ upperC, MultipliedStrip upperB upperA ~ upperC, MultipliedBands lowerA lowerB ~ lowerC, MultipliedBands lowerB lowerA ~ lowerC, MultipliedBands upperA upperB ~ upperC, MultipliedBands upperB upperA ~ upperC, Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB, MultiplyMeasure measA measB ~ measC, MultiplyMeasure measB measA ~ measC, Multiply vertA vertB ~ vertC, Multiply vertB vertA ~ vertC, Multiply horizA horizB ~ horizC, Multiply horizB horizA ~ horizC, C height, C fuse, Eq fuse, C width, Floating a) => Matrix (Array packA propertyA) xlA xuA lowerA upperA measA vertA horizA height fuse a -> Matrix (Array packB propertyB) xlB xuB lowerB upperB measB vertB horizB fuse width a -> Matrix typC xlC xuC lowerC upperC measC vertC horizC height width a | |
(Measure meas, C vert, C horiz, C height, C width, Storable a, Show height, Show width, Show a) => Show (Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Methods showsPrec :: Int -> Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a -> ShowS # show :: Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a -> String # showList :: [Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a] -> ShowS # | |
data Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
type AdditiveExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type HomogeneousExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type ScaleExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type SquareShapeExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type SubtractiveExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type UnpackExtra (Array pack prop) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Class | |
type DeterminantExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Divide | |
type InverseExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Divide | |
type SolveExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Divide | |
type MultiplySquareExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply | |
type MultiplyVectorExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply | |
type PowerExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Multiply | |
type BoxExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
type FormatExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
type LayoutExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
type MultiplySameExtra (Array pack diag) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
type TransposeExtra (Array pack property) extra Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private |
type OmniArray pack prop lower upper meas vert horiz height width a = Array (Omni pack prop lower upper meas vert horiz height width) a Source #
type PlainArray pack prop lower upper meas vert horiz height width = Array (Plain pack prop lower upper meas vert horiz height width) Source #
type Full meas vert horiz height width = UnpackedMatrix Arbitrary Filled Filled meas vert horiz height width Source #
type LiberalSquare height width = SquareMeas Size height width Source #
type Square sh = SquareMeas Shape sh sh Source #
type Quadratic pack property lower upper sh = QuadraticMeas pack property lower upper Shape sh sh Source #
type QuadraticMeas pack property lower upper meas height width = ArrayMatrix pack property lower upper meas Small Small height width Source #
plainShape :: ToPlain pack property lower upper meas vert horiz height width => ArrayMatrix pack property lower upper meas vert horiz height width a -> Plain pack property lower upper meas vert horiz height width Source #
shape :: ArrayMatrix pack property lower upper meas vert horiz height width a -> Omni pack property lower upper meas vert horiz height width Source #
extent :: (Measure meas, C vert, C horiz) => ArrayMatrix pack property lower upper meas vert horiz height width a -> Extent meas vert horiz height width Source #
subBandsSingleton :: Natural sub => ArrayMatrix pack property (Bands sub) upper meas vert horiz height width a -> HeadSingleton sub Source #
superBandsSingleton :: Natural super => ArrayMatrix pack property lower (Bands super) meas vert horiz height width a -> HeadSingleton super Source #
packTag :: Packing pack => ArrayMatrix pack diag lower upper meas vert horiz height width a -> PackingSingleton pack Source #
diagTag :: TriDiag diag => ArrayMatrix pack diag lower upper meas vert horiz height width a -> DiagSingleton diag Source #
asUnpacked :: Id (ArrayMatrix Unpacked property lower upper meas vert horiz height width a) Source #
requirePacking :: PackingSingleton pack -> Id (ArrayMatrix pack property lower upper meas vert horiz height width a) Source #
reshape :: (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (C heightA, C widthA) => (C heightB, C widthB) => Omni packB propB lowerB upperB measB vertB horizB heightB widthB -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB a Source #
mapShape :: (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (C heightA, C widthA) => (C heightB, C widthB) => (Omni packA propA lowerA upperA measA vertA horizA heightA widthA -> Omni packB propB lowerB upperB measB vertB horizB heightB widthB) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB a Source #
unwrap :: ArrayMatrix pack property lower upper meas vert horiz height width a -> OmniArray pack property lower upper meas vert horiz height width a Source #
toVector :: ToPlain pack property lower upper meas vert horiz height width => ArrayMatrix pack property lower upper meas vert horiz height width a -> PlainArray pack property lower upper meas vert horiz height width a Source #
fromVector :: FromPlain pack prop lower upper meas vert horiz height width => Plain pack prop lower upper meas vert horiz height width ~ shape => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Array shape a -> ArrayMatrix pack prop lower upper meas vert horiz height width a Source #
lift0 :: FromPlain pack prop lower upper meas vert horiz height width => PlainArray pack prop lower upper meas vert horiz height width a -> ArrayMatrix pack prop lower upper meas vert horiz height width a Source #
lift0
is a synonym for fromVector
but lacks the admissibility check.
You may thus fool the type tags.
This applies to the other lift functions, too.
lift1 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => FromPlain packB propB lowerB upperB measB vertB horizB heightB widthB => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b Source #
lift2 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => FromPlain packC propC lowerC upperC measC vertC horizC heightC widthC => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c Source #
lift3 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => FromPlain packD propD lowerD upperD measD vertD horizD heightD widthD => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c -> PlainArray packD propD lowerD upperD measD vertD horizD heightD widthD d) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c -> ArrayMatrix packD propD lowerD upperD measD vertD horizD heightD widthD d Source #
lift4 :: ToPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => ToPlain packD propD lowerD upperD measD vertD horizD heightD widthD => FromPlain packE propE lowerE upperE measE vertE horizE heightE widthE => (PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c -> PlainArray packD propD lowerD upperD measD vertD horizD heightD widthD d -> PlainArray packE propE lowerE upperE measE vertE horizE heightE widthE e) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c -> ArrayMatrix packD propD lowerD upperD measD vertD horizD heightD widthD d -> ArrayMatrix packE propE lowerE upperE measE vertE horizE heightE widthE e Source #
unlift1 :: FromPlain packA propA lowerA upperA measA vertA horizA heightA widthA => ToPlain packB propB lowerB upperB measB vertB horizB heightB widthB => (ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b) -> PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b Source #
unlift2 :: (FromPlain packA propA lowerA upperA measA vertA horizA heightA widthA, FromPlain packB propB lowerB upperB measB vertB horizB heightB widthB) => ToPlain packC propC lowerC upperC measC vertC horizC heightC widthC => (ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c) -> PlainArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> PlainArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> PlainArray packC propC lowerC upperC measC vertC horizC heightC widthC c Source #
unliftRow :: Order -> (General () height0 a -> General () height1 b) -> Vector height0 a -> Vector height1 b Source #
unliftColumn :: Order -> (General height0 () a -> General height1 () b) -> Vector height0 a -> Vector height1 b Source #
unpackedToVector :: (Property property, Strip lower, Strip upper) => UnpackedMatrix property lower upper meas vert horiz height width a -> FullArray meas vert horiz height width a Source #
liftUnpacked0 :: (Property propertyA, Strip lowerA, Strip upperA) => FullArray measA vertA horizA heightA widthA a -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a Source #
liftUnpacked1 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b Source #
liftUnpacked2 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (Property propertyC, Strip lowerC, Strip upperC) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b -> FullArray measC vertC horizC heightC widthC c) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b -> UnpackedMatrix propertyC lowerC upperC measC vertC horizC heightC widthC c Source #
liftUnpacked3 :: (Property propertyA, Strip lowerA, Strip upperA) => (Property propertyB, Strip lowerB, Strip upperB) => (Property propertyC, Strip lowerC, Strip upperC) => (Property propertyD, Strip lowerD, Strip upperD) => (FullArray measA vertA horizA heightA widthA a -> FullArray measB vertB horizB heightB widthB b -> FullArray measC vertC horizC heightC widthC c -> FullArray measD vertD horizD heightD widthD d) -> UnpackedMatrix propertyA lowerA upperA measA vertA horizA heightA widthA a -> UnpackedMatrix propertyB lowerB upperB measB vertB horizB heightB widthB b -> UnpackedMatrix propertyC lowerC upperC measC vertC horizC heightC widthC c -> UnpackedMatrix propertyD lowerD upperD measD vertD horizD heightD widthD d Source #
liftOmni1 :: (OmniArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> OmniArray packB propB lowerB upperB measB vertB horizB heightB widthB b) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b Source #
liftOmni2 :: (OmniArray packA propA lowerA upperA measA vertA horizA heightA widthA a -> OmniArray packB propB lowerB upperB measB vertB horizB heightB widthB b -> OmniArray packC propC lowerC upperC measC vertC horizC heightC widthC c) -> ArrayMatrix packA propA lowerA upperA measA vertA horizA heightA widthA a -> ArrayMatrix packB propB lowerB upperB measB vertB horizB heightB widthB b -> ArrayMatrix packC propC lowerC upperC measC vertC horizC heightC widthC c Source #
class Property property => Homogeneous property Source #
Instances
Homogeneous Arbitrary Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
Homogeneous Symmetric Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
(zero ~ True, neg ~ pos, C pos) => Homogeneous (Hermitian neg zero pos) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private |
class Homogeneous property => Scale property Source #
Instances
Scale Arbitrary Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
Scale Symmetric Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private |
zero :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Omni pack property lower upper meas vert horiz height width -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
negate :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
scaleReal :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => RealOf a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
scale :: (Measure meas, C vert, C horiz) => (Scale property, C height, C width, Floating a) => a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
scaleRealReal :: Homogeneous property => (Measure meas, C vert, C horiz) => (C height, C width, Real a) => a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
order :: ArrayMatrix pack property lower upper meas vert horiz height width a -> Order Source #
forceOrder :: (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => Order -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
adaptOrder :: (Measure meas, C vert, C horiz) => (C height, C width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a Source #
adaptOrder x y
contains the data of y
with the layout of x
.
add :: (Measure meas, C vert, C horiz) => (Additive property, C height, Eq height, C width, Eq width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a infixl 6 Source #
class Additive property => Subtractive property Source #
Instances
Subtractive Arbitrary Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
Subtractive Symmetric Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private | |
(C neg, C zero, neg ~ pos) => Subtractive (Hermitian neg zero pos) Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private |
sub :: (Measure meas, C vert, C horiz) => (Subtractive property, C height, Eq height, C width, Eq width, Floating a) => ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a -> ArrayMatrix pack property lower upper meas vert horiz height width a infixl 6 Source #
Minimal complete definition
Instances
MapExtent Packed Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type MapExtentStrip Packed strip Methods mapExtent :: (property ~ Arbitrary, Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB, MapExtentStrip Packed lower, MapExtentStrip Packed upper) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix Packed property lower upper measA vertA horizA height width a -> ArrayMatrix Packed property lower upper measB vertB horizB height width a Source # | |
MapExtent Unpacked Source # | |
Defined in Numeric.LAPACK.Matrix.Array.Private Associated Types type MapExtentStrip Unpacked strip Methods mapExtent :: (property ~ Arbitrary, Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB, MapExtentStrip Unpacked lower, MapExtentStrip Unpacked upper) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix Unpacked property lower upper measA vertA horizA height width a -> ArrayMatrix Unpacked property lower upper measB vertB horizB height width a Source # |
mapExtent :: (MapExtent pack, property ~ Arbitrary) => (Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => (MapExtentStrip pack lower, MapExtentStrip pack upper) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix pack property lower upper measA vertA horizA height width a -> ArrayMatrix pack property lower upper measB vertB horizB height width a Source #