iota-0.1.0.0
Safe HaskellSafe-Inferred
LanguageGHC2021

Math.Matrix

Synopsis

Documentation

data SqMat (n :: Nat) a Source #

n x n square matrix

Constructors

SqMat !Int !ByteArray 

Instances

Instances details
(KnownNat n, Num a, Prim a) => Num (SqMat n a) Source # 
Instance details

Defined in Math.Matrix

Methods

(+) :: SqMat n a -> SqMat n a -> SqMat n a #

(-) :: SqMat n a -> SqMat n a -> SqMat n a #

(*) :: SqMat n a -> SqMat n a -> SqMat n a #

negate :: SqMat n a -> SqMat n a #

abs :: SqMat n a -> SqMat n a #

signum :: SqMat n a -> SqMat n a #

fromInteger :: Integer -> SqMat n a #

viewRowSqMat :: (KnownNat n, Prim a, Vector v a) => SqMat n a -> Int -> v a Source #

viewColSqMat :: (KnownNat n, Prim a, Vector v a) => SqMat n a -> Int -> v a Source #

createSqMat :: forall n a. (KnownNat n, Prim a) => Proxy n -> (forall s. Int -> MutableByteArray s -> ST s ()) -> SqMat n a Source #

reifyMatDim :: Integral i => i -> (forall n. KnownNat n => Proxy n -> a) -> a Source #

streamSqMat :: (Prim a, Monad m) => SqMat n a -> Stream m a Source #

unstreamSqMat :: forall n a. (KnownNat n, Prim a) => Stream Id a -> SqMat n a Source #

liftSqMat0 :: forall n a. (KnownNat n, Num a, Prim a) => a -> SqMat n a Source #

liftSqMat1 :: (KnownNat n, Prim a) => (a -> a) -> SqMat n a -> SqMat n a Source #

liftSqMat2 :: (KnownNat n, Prim a) => (a -> a -> a) -> SqMat n a -> SqMat n a -> SqMat n a Source #

mulSqMat :: forall n a. (KnownNat n, Num a, Prim a) => SqMat n a -> SqMat n a -> SqMat n a Source #