blas-0.7.5: Bindings to the BLAS library

Stabilityexperimental
MaintainerPatrick Perry <patperry@stanford.edu>

Data.Matrix.Class.ISolve

Contents

Description

An overloaded interface for solving immutable matrix systems. The matrices can operate via inverse multiplication on immutable dense vectors and matrices.

Synopsis

The ISolve type class

class (MatrixShaped a, BLAS3 e) => ISolve a e Source

A type class for immutable matrices with inverses. The member functions of the type class do not perform any checks on the validity of shapes or indices, so in general their safe counterparts should be preferred.

Instances

BLAS3 e => ISolve (Tri Matrix) e 
BLAS3 e => ISolve (Tri Banded) e 

Solving linear systems

(<\>) :: ISolve a e => a (m, n) e -> Vector m e -> Vector n eSource

Solve for a vector.

(<\\>) :: ISolve a e => a (m, n) e -> Matrix (m, k) e -> Matrix (n, k) eSource

Solve for a matrix.

ssolve :: ISolve a e => e -> a (m, n) e -> Vector m e -> Vector n eSource

Solve for a vector and scale. ssolve k a y is equal to a <\> (k *> y) but is often faster.

ssolveMat :: ISolve a e => e -> a (m, n) e -> Matrix (m, k) e -> Matrix (n, k) eSource

Solve for a matrix and scale. ssolveMat k a c is equal to a <\\> (k *> c) but is often faster.