Safe Haskell | None |
---|---|
Language | Haskell98 |
Numeric.LAPACK.Matrix.Superscript
Description
This module provides an infix operator and some data constructors
that shall resemble mathematical notation.
E.g. you can write a#^T
for Matrix.transpose a
.
It is clearly abuse of the type system
because I suspect you will never write algorithms
that are generic in the superscript type.
Synopsis
- class Superscript sup where
- data Exponent sup typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a
- (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent sup typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a
- data None
- data Transpose
- data Adjoint
- data Conjugate
- data Inverse
- data PseudoInverse
- data Power
Documentation
class Superscript sup where Source #
left associative in contrast to ^, ^^ etc.
because there is no law analogous to power law (x^a)^b = x^(a*b)
.
Associated Types
data Exponent sup typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source #
Methods
(#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent sup typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a infixl 8 Source #
Instances
Superscript Adjoint Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Adjoint typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript Conjugate Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Conjugate typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript Inverse Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Inverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript None Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent None typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript Power Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Power typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript PseudoInverse Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent PseudoInverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Superscript Transpose Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Transpose typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # |
Instances
Superscript None Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent None typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent None typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript |
Instances
Superscript Transpose Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Transpose typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent Transpose typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript data Exponent Transpose typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a where
|
Instances
Superscript Adjoint Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Adjoint typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent Adjoint typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript data Exponent Adjoint typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a where
|
Instances
Superscript Conjugate Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Conjugate typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent Conjugate typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript |
Instances
Superscript Inverse Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Inverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent Inverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript data Exponent Inverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a where
|
data PseudoInverse Source #
Instances
Superscript PseudoInverse Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent PseudoInverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent PseudoInverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript data Exponent PseudoInverse typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a where |
Instances
Superscript Power Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript Associated Types
Methods (#^) :: (Measure measA, C vertA, C horizA, C widthA, C heightA, Measure measB, C vertB, C horizB, C widthB, C heightB, Floating a) => Matrix typA xlA xuA lowerA upperA measA vertA horizA heightA widthA a -> Exponent Power typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a -> Matrix typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
data Exponent Power typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a Source # | |||||
Defined in Numeric.LAPACK.Matrix.Superscript data Exponent Power typA xlA xuA lowerA upperA measA vertA horizA heightA widthA typB xlB xuB lowerB upperB measB vertB horizB heightB widthB a where
|