dsp-0.2.4: Haskell Digital Signal Processing

Copyright(c) Matthew Donadio 2003
LicenseGPL
Maintainerm.p.donadio@ieee.org
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Matrix.Matrix

Description

Basic matrix routines

Synopsis

Documentation

mm_mult Source #

Arguments

:: (Ix i, Ix j, Ix k, Num a) 
=> Array (i, j) a

A

-> Array (j, k) a

B

-> Array (i, k) a

C

Matrix-matrix multiplication: A x B = C

mv_mult Source #

Arguments

:: (Ix i, Ix j, Num a) 
=> Array (i, j) a

A

-> Array j a

b

-> Array i a

c

Matrix-vector multiplication: A x b = c

m_trans Source #

Arguments

:: (Ix i, Ix j, Num a) 
=> Array (i, j) a

A

-> Array (j, i) a

A^T

Transpose of a matrix

m_hermit Source #

Arguments

:: (Ix i, Ix j, RealFloat a) 
=> Array (i, j) (Complex a)

A

-> Array (j, i) (Complex a)

A^H

Hermitian transpose (conjugate transpose) of a matrix

columnBounds :: (Ix i, Ix j) => Array (i, j) a -> (i, i) Source #

rowBounds :: (Ix i, Ix j) => Array (i, j) a -> (j, j) Source #

getColumn :: (Ix i, Ix j) => j -> Array (i, j) e -> Array i e Source #

getRow :: (Ix i, Ix j) => i -> Array (i, j) e -> Array j e Source #

toColumns :: (Ix i, Ix j) => Array (i, j) a -> [Array i a] Source #

toRows :: (Ix i, Ix j) => Array (i, j) a -> [Array j a] Source #

fromColumns :: Ix i => (i, i) -> [Array i a] -> Array (i, Int) a Source #

We need the bounds of the row indices for empty input lists.

fromRows :: Ix j => (j, j) -> [Array j a] -> Array (Int, j) a Source #

outer :: (Ix i, Ix j, Num a) => Array i a -> Array j a -> Array (i, j) a Source #

inner :: (Ix i, Num a) => Array i a -> Array i a -> a Source #