blas-0.7.6: Bindings to the BLAS library

Stability experimental Patrick Perry

Data.Matrix.Herm

Description

Hermitian views of matrices.

Synopsis

# Documentation

data Herm a nn e Source

A hermitian view of an underlying matrix. The view can either be of the upper or lower triangular part of the matrix. The type arguments are as follows:

• `a`: the underlyting matrix type.
• `nn`: a phantom type for the shape of the matrix.
• `e`: the element type of the matrix.

Constructors

 Herm UpLoEnum (a nn e)

Instances

 MatrixShaped a => MatrixShaped (Herm a) BLAS3 e => IMatrix (Herm Matrix) e BLAS3 e => IMatrix (Herm Banded) e BLAS3 e => MMatrix (Herm IOMatrix) e IO BLAS3 e => MMatrix (Herm Matrix) e IO BLAS3 e => MMatrix (Herm IOBanded) e IO BLAS3 e => MMatrix (Herm Banded) e IO BLAS3 e => MMatrix (Herm Matrix) e (ST s) BLAS3 e => MMatrix (Herm (STMatrix s)) e (ST s) BLAS3 e => MMatrix (Herm Banded) e (ST s) BLAS3 e => MMatrix (Herm (STBanded s)) e (ST s) MatrixShaped a => Shaped (Herm a) (Int, Int) Show (a (n, n) e) => Show (Herm a (n, n) e)

hermFromBase :: UpLoEnum -> a (n, n) e -> Herm a (n, n) eSource

Convert from a base matrix type to a Herm matrix type.

hermToBase :: Herm a (n, n) e -> (UpLoEnum, a (n, n) e)Source

Convert from a Herm matrix type to a base matrix type.

mapHerm :: (a nn e -> b nn' e) -> Herm a nn e -> Herm b nn' eSource

Apply a function to the unerlying matrix.

hermL :: MatrixShaped a => a (n, n) e -> Herm a (n, n) eSource

Construct a lower-triangular hermitian view into a matrix. This also checks to see if the base matrix is square.

hermU :: MatrixShaped a => a (n, n) e -> Herm a (n, n) eSource

Construct an upper-triangular hermitian view into a matrix. This also checks to see if the base matrix is square.

coerceHerm :: Herm a mn e -> Herm a mn' eSource

Cast the phantom shape type.