Interface Summary Interface Description DiagonalMatrix SquareMatrix TridiagonalMatrix Class Summary Class Description AbstractComplexMatrix The AbstractComplexMatrix class provides an object for encapsulating matrices containing complex numbers.AbstractComplexSquareMatrix The AbstractComplexSquareMatrix class provides an object for encapsulating square matrices containing complex numbers.AbstractDoubleMatrix The AbstractDoubleMatrix class provides an object for encapsulating double matrices.AbstractDoubleSquareMatrix The AbstractDoubleSquareMatrix class provides an object for encapsulating double square matrices.AbstractIntegerMatrix The AbstractIntegerMatrix class provides an object for encapsulating integer matrices.AbstractIntegerSquareMatrix The AbstractIntegerSquareMatrix class provides an object for encapsulating integer square matrices.ComplexDiagonalMatrix The ComplexDiagonalMatrix class provides an object for encapsulating diagonal matrices containing complex numbers.ComplexMatrix The ComplexMatrix class provides an object for encapsulating matrices containing complex numbers.ComplexSquareMatrix The ComplexSquareMatrix class provides an object for encapsulating square matrices containing complex numbers.ComplexTridiagonalMatrix The ComplexTridiagonalMatrix class provides an object for encapsulating tridiagonal matrices containing complex numbers.DoubleDiagonalMatrix The DoubleDiagonalMatrix class provides an object for encapsulating double diagonal matrices.DoubleMatrix The DoubleMatrix class provides an object for encapsulating double matrices.DoubleMatrixAlgebra DoubleSparseMatrix The DoubleSparseMatrix class provides an object for encapsulating sparse matrices.DoubleSparseSquareMatrix The DoubleSparseSquareMatrix class provides an object for encapsulating sparse square matrices.DoubleSquareMatrix The DoubleSquareMatrix class provides an object for encapsulating double square matrices.DoubleTridiagonalMatrix The DoubleTridiagonalMatrix class provides an object for encapsulating double tridiagonal matrices.IntegerDiagonalMatrix The IntegerDiagonalMatrix class provides an object for encapsulating integer diagonal matrices.IntegerMatrix The IntegerMatrix class provides an object for encapsulating integer matrices.IntegerMatrixAlgebra IntegerSquareMatrix The IntegerSquareMatrix class provides an object for encapsulating integer square matrices.IntegerTridiagonalMatrix The IntegerTridiagonalMatrix class provides an object for encapsulating integer tridiagonal matrices.Matrix The Matrix superclass provides an abstract encapsulation for matrices.RingMatrix The RingMatrix class provides an object for encapsulating matrices over an arbitrary ring.Exception Summary Exception Description MatrixDimensionException This exception occurs when there is a problem involving a matrix's dimensions.

## Package jsci.maths.matrices Description

The matrix and vector classes support three different numeric types. These are integer (for speed), double (for accuracy) and complex.

The square matrix classes introduce the following methods:

- LU decomposition (
`luDecompose`

)Decomposes a matrix M into a lower triangular matrix L and an upper triangular matrix U, such that M=LU.

- Cholesky decomposition (
`choleskyDecompose`

)Similar to LU decomposition but with the addition property that U=L

^{T}. The matrix must be symmetric and positive definite for this to work correctly. - Singular value decomposition (
`singularValueDecompose`

)Decomposes a matrix M into an orthogonal matrix U, a diagonal matrix S and an orthogonal matrix V, such that M=USV

^{T}. - Inverse (
`inverse`

)Computes the inverse of a matrix using LU decomposition (M

^{-1}=U^{-1}L^{-1}).

Where ever possible, the abstract matrix/vector API should be used in preference to a particular matrix/vector implementation API.That is, use code like `AbstractDoubleVector vec = new DoubleVector(dim);`

.This philosophy is similar to that of the Java Collections Framework.

**SCaVis 2.1 © jWork.ORG**