lapack-0.4.1: Numerical Linear Algebra using LAPACK

Safe HaskellNone
LanguageHaskell98

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
  • (.*#) :: (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
  • 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
  • (#+#) :: (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
  • (#-#) :: (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 property lower upper
  • mapExtent :: (MapExtent pack property lower upper, Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => 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

Documentation

data family Matrix typ extraLower extraUpper lower upper meas vert horiz height width a Source #

Instances
(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 # 
Instance details

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 #

(MultiplySame typ xl 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 # 
Instance details

Defined in Numeric.LAPACK.Matrix.Type

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 #

(MultiplySame typ xl xu, StaticIdentity typ xl xu lower 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 # 
Instance details

Defined in Numeric.LAPACK.Matrix.Type

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 #

(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 # 
Instance details

Defined in Numeric.LAPACK.Matrix.Type

Methods

rnf :: Matrix typ xl xu lower upper meas vert horiz height width a -> () #

(FormatMatrix typ, Measure meas, C vert, C horiz, C width, C height, Floating a) => Display (Matrix typ xl xu lower upper meas vert horiz height width a) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Type

Methods

display :: Matrix typ xl xu lower upper meas vert horiz height width a -> Graphic #

displayIO :: Matrix typ xl xu lower upper meas vert horiz height width a -> IO Graphic #

(FormatMatrix typ, Measure meas, C vert, C horiz, C width, C height, Floating a) => Format (Matrix typ xl xu lower upper meas vert horiz height width a) Source # 
Instance details

Defined in Numeric.LAPACK.Format

Methods

format :: Output out => String -> Matrix typ xl xu lower upper meas vert horiz height width a -> out Source #

data Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

data Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a where
  • Array :: forall pack prop xl xu lower upper meas vert horiz height width a. OmniArray pack prop lower upper meas vert horiz height width a -> Matrix (Array pack prop) () () lower upper meas vert horiz height width a

type ArrayMatrix pack property = Matrix (Array pack property) () () Source #

data Array pack property Source #

Instances
Transpose (Array pack property) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Methods

transpose :: (Measure meas, C vert, C horiz, C width, C height, 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 #

ToQuadratic (Array pack property) Source # 
Instance details

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

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

Box (Array pack property) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Methods

extent :: (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

height :: (Measure meas, C vert, C horiz) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> height Source #

width :: (Measure meas, C vert, C horiz) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> width Source #

FormatMatrix (Array pack property) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Methods

formatMatrix :: (Measure meas, C vert, C horiz, C width, C height, Floating a, Output out) => String -> Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> out Source #

Indexed (Array pack property) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Indexed

Methods

(#!) :: (Measure meas, C vert, C horiz, Indexed height, Indexed width, Floating a) => Matrix (Array pack property) xl xu lower upper meas vert horiz height width a -> (Index height, Index width) -> a Source #

Property prop => Unpack (Array pack prop) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Class

Methods

unpack :: (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

SquareShape (Array pack property) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Class

Methods

toSquare :: (C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Square sh a Source #

takeDiagonal :: (C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> Vector sh a Source #

mapSquareSize :: (C shA, C shB) => (shA -> shB) -> Quadratic (Array pack property) xl xu lower upper shA a -> Quadratic (Array pack property) xl xu lower upper shB a Source #

identityFrom :: (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 #

Complex (Array pack property) Source # 
Instance details

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 #

(Packing pack, Property property, xl ~ (), xu ~ ()) => Power (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Multiply

Methods

square :: (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 :: (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 :: (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 #

(Packing pack, Property property, xl ~ (), xu ~ ()) => MultiplySquare (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Multiply

Methods

transposableSquare :: (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 :: (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 :: (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, xl ~ (), xu ~ ()) => MultiplyVector (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Multiply

Methods

matrixVector :: (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 :: (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, xl ~ (), xu ~ ()) => Inverse (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Divide

Methods

inverse :: (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, xl ~ (), xu ~ ()) => Solve (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Divide

Methods

solve :: (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 :: (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 :: (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 #

(Packing pack, Property property, xl ~ (), xu ~ ()) => Determinant (Array pack property) xl xu Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Divide

Methods

determinant :: (Strip lower, Strip upper, C sh, Floating a) => Quadratic (Array pack property) xl xu lower upper sh a -> a Source #

(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 # 
Instance details

Defined in Numeric.LAPACK.Matrix.Multiply

Associated Types

type Multiplied (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB lowerC upperC measC :: Type

type MultipliedExtra (Array packA propertyA) xlA xuA (Array packB propertyB) xlB xuB :: Type

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 # 
Instance details

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 # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

data Matrix (Array pack prop) xl xu lower upper meas vert horiz height width a where
  • Array :: forall pack prop xl xu lower upper meas vert horiz height width a. OmniArray pack prop lower upper meas vert horiz height width a -> Matrix (Array pack prop) () () lower upper meas vert horiz height width a

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 General height width = Full Size Big Big height width Source #

type Tall height width = Full Size Big Small height width Source #

type Wide height width = Full Size Small Big height width Source #

type LiberalSquare height width = SquareMeas Size height width Source #

type Square sh = SquareMeas Shape sh sh Source #

type SquareMeas meas height width = Full meas Small Small height width Source #

type Quadratic pack property lower upper sh = QuadraticMeas pack property lower upper Shape sh sh Source #

type FullQuadratic pack property sh = Quadratic pack property Filled Filled 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 #

asPacked :: Id (ArrayMatrix Packed property lower upper meas vert horiz height width a) 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 Symmetric Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Homogeneous Arbitrary Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

(zero ~ True, neg ~ pos, C pos) => Homogeneous (Hermitian neg zero pos) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

class Homogeneous property => Scale property Source #

Instances
Scale Symmetric Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Scale Arbitrary Source # 
Instance details

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 #

(.*#) :: (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 infixl 7 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.

class Property property => Additive property Source #

Instances
Additive Symmetric Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Additive Arbitrary Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

(C neg, C zero, C pos) => Additive (Hermitian neg zero pos) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

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 #

(#+#) :: (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 Symmetric Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Subtractive Arbitrary Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

(C neg, C zero, neg ~ pos) => Subtractive (Hermitian neg zero pos) Source # 
Instance details

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 #

(#-#) :: (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 #

class MapExtent pack property lower upper Source #

Minimal complete definition

mapExtent

Instances
MapExtent Unpacked Arbitrary Filled Filled Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Methods

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 #

(Natural sub, Natural super) => MapExtent Packed Arbitrary (Bands sub) (Bands super) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Array.Private

Methods

mapExtent :: (Measure measA, C vertA, C horizA, Measure measB, C vertB, C horizB) => Map measA vertA horizA measB vertB horizB height width -> ArrayMatrix Packed Arbitrary (Bands sub) (Bands super) measA vertA horizA height width a -> ArrayMatrix Packed Arbitrary (Bands sub) (Bands super) measB vertB horizB height width a Source #

mapExtent :: (MapExtent pack property lower upper, Measure measA, C vertA, C horizA) => (Measure measB, C vertB, C horizB) => 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 #

identityFromShape :: (C sh, Floating a) => Quadratic pack property lower upper sh -> Quadratic pack property lower upper sh a Source #