iota-0.1.0.0
Safe HaskellNone
LanguageGHC2021

Math.Matrix

Synopsis

Documentation

data SqMat (n :: Nat) (a :: k) 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 :: forall (n :: Nat) a v. (KnownNat n, Prim a, Vector v a) => SqMat n a -> Int -> v a Source #

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

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

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

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

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

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

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

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

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