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

Numeric.LAPACK.Matrix.Extent

Documentation

class C tag where Source #

Methods

switchTag :: f Small -> f Big -> f tag Source #

Instances

Instances details
C Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTag :: f Small -> f Big -> f Small Source #

C Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTag :: f Small -> f Big -> f Big Source #

data family Extent vertical horizontal :: * -> * -> * Source #

Instances

Instances details
(C vert, C horiz, Eq height, Eq width) => Eq (Extent vert horiz height width) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

(==) :: Extent vert horiz height width -> Extent vert horiz height width -> Bool #

(/=) :: Extent vert horiz height width -> Extent vert horiz height width -> Bool #

(C vert, C horiz, Show height, Show width) => Show (Extent vert horiz height width) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

showsPrec :: Int -> Extent vert horiz height width -> ShowS #

show :: Extent vert horiz height width -> String #

showList :: [Extent vert horiz height width] -> ShowS #

(C vertical, C horizontal, NFData height, NFData width) => NFData (Extent vertical horizontal height width) Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

rnf :: Extent vertical horizontal height width -> () #

data Extent Small Small height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Small Small height width = height ~ width => Square {}
data Extent Small Big height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Small Big height width = Wide {}
data Extent Big Small height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Big Small height width = Tall {}
data Extent Big Big height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Big Big height width = General {}

data Map vertA horizA vertB horizB height width Source #

data Small Source #

Instances

Instances details
Eq Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

(==) :: Small -> Small -> Bool #

(/=) :: Small -> Small -> Bool #

Show Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

showsPrec :: Int -> Small -> ShowS #

show :: Small -> String #

showList :: [Small] -> ShowS #

NFData Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

rnf :: Small -> () #

C Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTag :: f Small -> f Big -> f Small Source #

GeneralTallWide Small Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Small Big

GeneralTallWide Big Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Big Small

type Append Small b Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

type Append Small b = Small
data Extent Small Small height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Small Small height width = height ~ width => Square {}
data Extent Small Big height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Small Big height width = Wide {}
data Extent Big Small height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Big Small height width = Tall {}

data Big Source #

Instances

Instances details
Eq Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

(==) :: Big -> Big -> Bool #

(/=) :: Big -> Big -> Bool #

Show Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

showsPrec :: Int -> Big -> ShowS #

show :: Big -> String #

showList :: [Big] -> ShowS #

NFData Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

rnf :: Big -> () #

C Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTag :: f Small -> f Big -> f Big Source #

GeneralTallWide Small Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Small Big

GeneralTallWide Big Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Big Small

GeneralTallWide Big Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Big Big

type Append Big b Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

type Append Big b = b
data Extent Small Big height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Small Big height width = Wide {}
data Extent Big Small height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Big Small height width = Tall {}
data Extent Big Big height width Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

data Extent Big Big height width = General {}

height :: (C vert, C horiz) => Extent vert horiz height width -> height Source #

width :: (C vert, C horiz) => Extent vert horiz height width -> width Source #

squareSize :: Extent Small Small height width -> height Source #

dimensions :: (C vert, C horiz) => Extent vert horiz height width -> (height, width) Source #

transpose :: (C vert, C horiz) => Extent vert horiz height width -> Extent horiz vert width height Source #

fuse :: (C vert, C horiz, Eq fuse) => Extent vert horiz height fuse -> Extent vert horiz fuse width -> Maybe (Extent vert horiz height width) Source #

square :: sh -> Square sh Source #

toGeneral :: (C vert, C horiz) => Map vert horiz Big Big height width Source #

fromSquare :: (C vert, C horiz) => Map Small Small vert horiz size size Source #

fromSquareLiberal :: (C vert, C horiz) => Map Small Small vert horiz height width Source #

generalizeTall :: (C vert, C horiz) => Map vert Small vert horiz height width Source #

generalizeWide :: (C vert, C horiz) => Map Small horiz vert horiz height width Source #

class (C vert, C horiz) => GeneralTallWide vert horiz Source #

Minimal complete definition

switchTagGTW

Instances

Instances details
GeneralTallWide Small Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Small Big

GeneralTallWide Big Small Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Big Small

GeneralTallWide Big Big Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

Methods

switchTagGTW :: f Small Big -> f Big Small -> f Big Big -> f Big Big

data AppendMode vertA vertB vertC height widthA widthB Source #

appendSame :: C vert => AppendMode vert vert vert height widthA widthB Source #

appendLeft :: C vert => AppendMode vert Big vert height widthA widthB Source #

appendRight :: C vert => AppendMode Big vert vert height widthA widthB Source #

type family Append a b Source #

Instances

Instances details
type Append Small b Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

type Append Small b = Small
type Append Big b Source # 
Instance details

Defined in Numeric.LAPACK.Matrix.Extent.Private

type Append Big b = b

appendAny :: (C vertA, C vertB) => AppendMode vertA vertB (Append vertA vertB) height widthA widthB Source #