Copyright | (c) Alexey Kuleshevich 2018-2019 |
---|---|
License | BSD3 |
Maintainer | Alexey Kuleshevich <lehins@yandex.ru> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- (.+) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- (.-) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- (.*) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- (.^) :: (Source r ix e, Num e, Integral b) => Array r ix e -> b -> Array D ix e
- (|*|) :: (Mutable r Ix2 e, Source r' Ix2 e, OuterSlice r Ix2 e, Source (EltRepr r Ix2) Ix1 e, Num e) => Array r Ix2 e -> Array r' Ix2 e -> Array r Ix2 e
- multiplyTransposed :: (Manifest r Ix2 e, OuterSlice r Ix2 e, Source (EltRepr r Ix2) Ix1 e, Num e) => Array r Ix2 e -> Array r Ix2 e -> Array D Ix2 e
- negateA :: (Source r ix e, Num e) => Array r ix e -> Array D ix e
- absA :: (Source r ix e, Num e) => Array r ix e -> Array D ix e
- signumA :: (Source r ix e, Num e) => Array r ix e -> Array D ix e
- fromIntegerA :: (Index ix, Num e) => Integer -> Array D ix e
- quotA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- remA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- divA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- modA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- quotRemA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> (Array D ix e, Array D ix e)
- divModA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> (Array D ix e, Array D ix e)
- (./) :: (Source r1 ix e, Source r2 ix e, Fractional e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- (.^^) :: (Source r ix e, Fractional e, Integral b) => Array r ix e -> b -> Array D ix e
- recipA :: (Source r ix e, Fractional e) => Array r ix e -> Array D ix e
- fromRationalA :: (Index ix, Fractional e) => Rational -> Array D ix e
- piA :: (Index ix, Floating e) => Array D ix e
- expA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- logA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- sqrtA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- (.**) :: (Source r1 ix e, Source r2 ix e, Floating e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- logBaseA :: (Source r1 ix e, Source r2 ix e, Floating e) => Array r1 ix e -> Array r2 ix e -> Array D ix e
- sinA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- cosA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- tanA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- asinA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- acosA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- atanA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- sinhA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- coshA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- tanhA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- asinhA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- acoshA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- atanhA :: (Source r ix e, Floating e) => Array r ix e -> Array D ix e
- truncateA :: (Source r ix a, RealFrac a, Integral b) => Array r ix a -> Array D ix b
- roundA :: (Source r ix a, RealFrac a, Integral b) => Array r ix a -> Array D ix b
- ceilingA :: (Source r ix a, RealFrac a, Integral b) => Array r ix a -> Array D ix b
- floorA :: (Source r ix a, RealFrac a, Integral b) => Array r ix a -> Array D ix b
- atan2A :: (Source r ix e, RealFloat e) => Array r ix e -> Array r ix e -> Array D ix e
Num
(.+) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 6 Source #
(.-) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 6 Source #
(.*) :: (Source r1 ix e, Source r2 ix e, Num e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
(|*|) :: (Mutable r Ix2 e, Source r' Ix2 e, OuterSlice r Ix2 e, Source (EltRepr r Ix2) Ix1 e, Num e) => Array r Ix2 e -> Array r' Ix2 e -> Array r Ix2 e Source #
Perform matrix multiplication. Inner dimensions must agree, otherwise SizeMismatchException
.
multiplyTransposed :: (Manifest r Ix2 e, OuterSlice r Ix2 e, Source (EltRepr r Ix2) Ix1 e, Num e) => Array r Ix2 e -> Array r Ix2 e -> Array D Ix2 e Source #
It is quite often that second matrix gets transposed before multiplication (eg. A * A'), but due to layout of data in memory it is more efficient to transpose the second array again.
Integral
quotA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
remA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
divA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
modA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
quotRemA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> (Array D ix e, Array D ix e) Source #
divModA :: (Source r1 ix e, Source r2 ix e, Integral e) => Array r1 ix e -> Array r2 ix e -> (Array D ix e, Array D ix e) Source #
Fractional
(./) :: (Source r1 ix e, Source r2 ix e, Fractional e) => Array r1 ix e -> Array r2 ix e -> Array D ix e infixl 7 Source #
(.^^) :: (Source r ix e, Fractional e, Integral b) => Array r ix e -> b -> Array D ix e infixr 8 Source #
fromRationalA :: (Index ix, Fractional e) => Rational -> Array D ix e Source #
Floating
(.**) :: (Source r1 ix e, Source r2 ix e, Floating e) => Array r1 ix e -> Array r2 ix e -> Array D ix e Source #
logBaseA :: (Source r1 ix e, Source r2 ix e, Floating e) => Array r1 ix e -> Array r2 ix e -> Array D ix e Source #