Numeric.LinearAlgebra.Sparse

Additive ring

class Additive f

negated

(^-^)

Vector space

class VectorSpace f

lerp

Hilbert space (inner product)

class Hilbert f

Normed vector space

class Normed f

Norms and related results

normSq

norm1

norm2

normP

normInfty

normalize

dotLp

reciprocal

scale

FiniteDim : finite-dimensional objects

class FiniteDim f

withDim

withDim2

HasData : accessing inner data (do not export)

class HasData f a

Sparse : sparse datastructures

class Sparse f a

Set : things that behave as sets

class Set f

Sparse Vector

data SpVector a

spySV

Creation

zeroSV

singletonSV

mkSpVector

mkSpVectorD

mkSpVector1

fromListDenseSV

onesSV

zerosSV

Element insertion

insertSpVector

fromList

fromListSV

toList

toListSV

toDenseListSV

Lookup

lookupDenseSV

Sub-vectors

tailSV

headSV

concatSV

svToSM

Outer vector product

outerProdSV

(><)

Sparse Matrix

data SpMatrix a

maxTup

minTup

emptySpMatrix

Creation

zeroSM

Diagonal matrix

mkDiagonal

Identity matrix

eye

Super- or sub- diagonal matrix

mkSubDiagonal

Element insertion

insertSpMatrix

fromList

fromListSM'

fromListSM

fromListDenseSM

toList

toDenseListSM

Lookup

lookupSM

lookupWD_SM

(@@)

lookupWD_IM

type Rows

type Cols

type IxRow

type IxCol

Predicates

validIxSM

isSquareSM

isDiagonalSM

isOrthogonalSM

Matrix data and metadata

immSM

dimSM

nelSM

nrows

ncols

data SMInfo

infoSM

nzSM

spySM

Non-zero elements in a row

nzRow

Bandwidth bounds (min, max)

bwMinSM

bwMaxSM

bwBoundsSM

Sub-matrices

extractSubmatrixSM

toSV

Extract j'th column

extractColSM

extractCol

Extract i'th row

extractRowSM

extractRow

Matrix stacking

vertStackSM

(-=-)

horizStackSM

(-||-)

Misc. SpMatrix operations

foldlSM

ifoldlSM

countSubdiagonalNZSM

extractDiagonalDSM

subdiagIndicesSM

Sparsify : remove almost-0 elements (i.e. if |x| < eps)

sparsifyIM2

sparsifySM

Value rounding

roundZeroOneSM

Primitive algebra operations

Matrix transpose

transposeSM

(#^)

Multiply matrix by a scalar

matScale

Frobenius norm

normFrobenius

Matrix action on a vector

matVec

(#>)

vecMat

(<#)

Matrix-matrix product

matMat

(##)

Matrix-matrix product, sparsified

matMatSparsified

(#~#)

Sparsified matrix products of two matrices

(#^#)

(##^)

Matrix condition number

conditionNumberSM

Householder transformation

hhMat

hhRefl

Givens rotation matrix

hypot

sign

givensCoef

givens

firstNonZeroColumn

candidateRows

QR decomposition

qr

gmats

Eigenvalue algorithms

All eigenvalues (QR algorithm)

eigsQR

One eigenvalue and eigenvector (Rayleigh iteration)

rayleighStep

eigRayleigh

Householder vector (G & VL Alg. 5.1.1, function house)

hhV

SVD

Iterative linear solvers

eps

residual

converged

CGS

cgsStep

data CGS

cgs

BiCSSTAB

bicgstabStep

data BICGSTAB

bicgstab

Linear solver interface

data LinSolveMethod

linSolveM

linSolve

(<\>)

Control primitives for bounded iteration with convergence check

modifyUntil

loopUntilAcc

modifyInspectN

meanl

norm2l

diffSqL

untilConverged

normDiffConverged

runAppendN

runAppendN'

Rounding operations

almostZero

almostOne

withDefault

roundZero

roundOne

with2Defaults

roundZeroOne

Random matrices and vectors

randMat

randVec

randSpMat

randSpVec

Pretty printing

sizeStr

showNonZero

toDenseRow

toDenseRowClip

newline

printDenseSM

toDenseListClip

printDenseSV

Pretty printer typeclass

class PrintDense a

Misc. utilities

denseIxArray

denseIxArray2

foldrMap

foldlStrict

ifoldr

Bounds checking

type LB

type UB

inBounds

inBounds2

inBounds0

inBounds02