|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object JSci.maths.matrices.Matrix JSci.maths.matrices.AbstractDoubleMatrix JSci.maths.matrices.AbstractDoubleSquareMatrix JSci.maths.matrices.DoubleDiagonalMatrix
public class DoubleDiagonalMatrix
The DoubleDiagonalMatrix class provides an object for encapsulating double diagonal matrices.
Field Summary | |
---|---|
protected double[] |
diag
Diagonal data. |
Fields inherited from class JSci.maths.matrices.AbstractDoubleSquareMatrix |
---|
luCache |
Fields inherited from class JSci.maths.matrices.Matrix |
---|
numCols, numRows |
Constructor Summary | |
---|---|
DoubleDiagonalMatrix(double[] array)
Constructs a matrix by wrapping an array containing the diagonal elements. |
|
DoubleDiagonalMatrix(double[][] array)
Constructs a matrix from an array. |
|
DoubleDiagonalMatrix(int size)
Constructs an empty matrix. |
Method Summary | |
---|---|
AbstractDoubleSquareMatrix |
add(AbstractDoubleSquareMatrix m)
Returns the addition of this matrix and another. |
DoubleDiagonalMatrix |
add(DoubleDiagonalMatrix m)
Returns the addition of this matrix and another. |
DoubleSquareMatrix |
add(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
add(DoubleTridiagonalMatrix m)
Returns the addition of this matrix and another. |
AbstractDoubleSquareMatrix[] |
choleskyDecompose()
Returns the Cholesky decomposition of this matrix. |
double |
det()
Returns the determinant. |
boolean |
equals(AbstractDoubleMatrix m,
double tol)
Compares two ${nativeTyp} matrices for equality. |
double |
frobeniusNorm()
Returns the Frobenius (l2) norm. |
double |
getElement(int i,
int j)
Returns an element of the matrix. |
static DoubleDiagonalMatrix |
identity(int size)
Creates an identity matrix. |
double |
infNorm()
Returns the l-norm. |
AbstractDoubleSquareMatrix |
inverse()
Returns the inverse of this matrix. |
boolean |
isSymmetric()
Returns true if this matrix is symmetric. |
AbstractDoubleSquareMatrix[] |
luDecompose()
Returns the LU decomposition of this matrix. |
AbstractDoubleSquareMatrix[] |
luDecompose(int[] pivot)
Returns the LU decomposition of this matrix. |
AbstractDoubleMatrix |
mapElements(Mapping f)
Applies a function on all the matrix elements. |
AbstractDoubleSquareMatrix |
multiply(AbstractDoubleSquareMatrix m)
Returns the multiplication of this matrix and another. |
AbstractDoubleVector |
multiply(AbstractDoubleVector v)
Returns the multiplication of a vector by this matrix. |
DoubleDiagonalMatrix |
multiply(DoubleDiagonalMatrix m)
|
DoubleSquareMatrix |
multiply(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
multiply(DoubleTridiagonalMatrix m)
|
double |
operatorNorm()
Returns the operator norm. |
AbstractDoubleSquareMatrix[] |
qrDecompose()
Returns the QR decomposition of this matrix. |
AbstractDoubleMatrix |
scalarDivide(double x)
Returns the division of this matrix by a scalar. |
AbstractDoubleMatrix |
scalarMultiply(double x)
Returns the multiplication of this matrix by a scalar. |
double |
scalarProduct(AbstractDoubleSquareMatrix m)
Returns the scalar product of this matrix and another. |
double |
scalarProduct(DoubleDiagonalMatrix m)
|
double |
scalarProduct(DoubleSquareMatrix m)
|
double |
scalarProduct(DoubleTridiagonalMatrix m)
|
void |
setElement(int i,
int j,
double x)
Sets the value of an element of the matrix. |
AbstractDoubleSquareMatrix[] |
singularValueDecompose()
Returns the singular value decomposition of this matrix. |
AbstractDoubleSquareMatrix |
subtract(AbstractDoubleSquareMatrix m)
Returns the subtraction of this matrix by another. |
DoubleDiagonalMatrix |
subtract(DoubleDiagonalMatrix m)
Returns the subtraction of this matrix and another. |
DoubleSquareMatrix |
subtract(DoubleSquareMatrix m)
|
DoubleTridiagonalMatrix |
subtract(DoubleTridiagonalMatrix m)
Returns the subtraction of this matrix and another. |
AbstractComplexMatrix |
toComplexMatrix()
Converts this matrix to a complex matrix. |
AbstractIntegerMatrix |
toIntegerMatrix()
Converts this matrix to an integer matrix. |
java.lang.String |
toString()
Returns a string representing this matrix. |
double |
trace()
Returns the trace. |
Matrix |
transpose()
Returns the transpose of this matrix. |
Methods inherited from class JSci.maths.matrices.AbstractDoubleSquareMatrix |
---|
add, directSum, isUnitary, luDecompose_cache, negate, polarDecompose, scalarProduct, subtract, tensor |
Methods inherited from class JSci.maths.matrices.AbstractDoubleMatrix |
---|
add, directSum, equals, equals, getSet, hashCode, multiply, multiply, scalarDivide, scalarMultiply, subtract, tensor |
Methods inherited from class JSci.maths.matrices.Matrix |
---|
columns, getInvalidElementMsg, rows |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected final double[] diag
Constructor Detail |
---|
public DoubleDiagonalMatrix(int size)
size
- the number of rows/columnspublic DoubleDiagonalMatrix(double[][] array)
array
- an assigned value
MatrixDimensionException
- If the array is not square.public DoubleDiagonalMatrix(double[] array)
array
- an assigned valueMethod Detail |
---|
public static DoubleDiagonalMatrix identity(int size)
size
- the number of rows/columnspublic boolean equals(AbstractDoubleMatrix m, double tol)
equals
in class AbstractDoubleMatrix
m
- a double matrixpublic java.lang.String toString()
toString
in class AbstractDoubleMatrix
public AbstractIntegerMatrix toIntegerMatrix()
toIntegerMatrix
in class AbstractDoubleSquareMatrix
public AbstractComplexMatrix toComplexMatrix()
toComplexMatrix
in class AbstractDoubleSquareMatrix
public double getElement(int i, int j)
getElement
in class AbstractDoubleMatrix
i
- row index of the elementj
- column index of the element
MatrixDimensionException
- If attempting to access an invalid element.public void setElement(int i, int j, double x)
setElement
in class AbstractDoubleMatrix
i
- row index of the elementj
- column index of the elementx
- a number
MatrixDimensionException
- If attempting to access an invalid element.public boolean isSymmetric()
isSymmetric
in class AbstractDoubleSquareMatrix
public double det()
det
in class AbstractDoubleSquareMatrix
public double trace()
trace
in class AbstractDoubleSquareMatrix
public double infNorm()
infNorm
in class AbstractDoubleMatrix
public double frobeniusNorm()
frobeniusNorm
in class AbstractDoubleMatrix
public double operatorNorm() throws MaximumIterationsExceededException
operatorNorm
in class AbstractDoubleSquareMatrix
MaximumIterationsExceededException
- If it takes more than 50 iterations to determine an eigenvalue.public AbstractDoubleSquareMatrix add(AbstractDoubleSquareMatrix m)
add
in class AbstractDoubleSquareMatrix
m
- a double matrix
MatrixDimensionException
- If the matrices are different sizes.public DoubleSquareMatrix add(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix add(DoubleTridiagonalMatrix m)
m
- a double tridiagonal matrix
MatrixDimensionException
- If the matrices are different sizes.public DoubleDiagonalMatrix add(DoubleDiagonalMatrix m)
m
- a double diagonal matrix
MatrixDimensionException
- If the matrices are different sizes.public AbstractDoubleSquareMatrix subtract(AbstractDoubleSquareMatrix m)
subtract
in class AbstractDoubleSquareMatrix
m
- a double matrix
MatrixDimensionException
- If the matrices are different sizes.public DoubleSquareMatrix subtract(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix subtract(DoubleTridiagonalMatrix m)
m
- a double tridiagonal matrix
MatrixDimensionException
- If the matrices are different sizes.public DoubleDiagonalMatrix subtract(DoubleDiagonalMatrix m)
m
- a double diagonal matrix
MatrixDimensionException
- If the matrices are different sizes.public AbstractDoubleMatrix scalarMultiply(double x)
scalarMultiply
in class AbstractDoubleSquareMatrix
x
- a double.
public AbstractDoubleMatrix scalarDivide(double x)
scalarDivide
in class AbstractDoubleSquareMatrix
x
- a double.
public double scalarProduct(AbstractDoubleSquareMatrix m)
scalarProduct
in class AbstractDoubleSquareMatrix
m
- a double matrix.
MatrixDimensionException
- If the matrices are different sizes.public double scalarProduct(DoubleSquareMatrix m)
public double scalarProduct(DoubleTridiagonalMatrix m)
public double scalarProduct(DoubleDiagonalMatrix m)
public AbstractDoubleVector multiply(AbstractDoubleVector v)
multiply
in class AbstractDoubleMatrix
v
- a double vector.
DimensionException
- If the matrix and vector are incompatible.public AbstractDoubleSquareMatrix multiply(AbstractDoubleSquareMatrix m)
multiply
in class AbstractDoubleSquareMatrix
m
- a double matrix
MatrixDimensionException
- If the matrices are incompatible.public DoubleSquareMatrix multiply(DoubleSquareMatrix m)
public DoubleTridiagonalMatrix multiply(DoubleTridiagonalMatrix m)
public DoubleDiagonalMatrix multiply(DoubleDiagonalMatrix m)
public Matrix transpose()
transpose
in class AbstractDoubleSquareMatrix
public AbstractDoubleSquareMatrix inverse()
inverse
in class AbstractDoubleSquareMatrix
public AbstractDoubleSquareMatrix[] luDecompose(int[] pivot)
luDecompose
in class AbstractDoubleSquareMatrix
pivot
- an empty array of length rows()+1
to hold the pivot information (null if not interested).
The last array element will contain the parity.
public AbstractDoubleSquareMatrix[] luDecompose()
luDecompose
in class AbstractDoubleSquareMatrix
public AbstractDoubleSquareMatrix[] choleskyDecompose()
choleskyDecompose
in class AbstractDoubleSquareMatrix
public AbstractDoubleSquareMatrix[] qrDecompose()
qrDecompose
in class AbstractDoubleSquareMatrix
public AbstractDoubleSquareMatrix[] singularValueDecompose()
singularValueDecompose
in class AbstractDoubleSquareMatrix
public AbstractDoubleMatrix mapElements(Mapping f)
mapElements
in class AbstractDoubleSquareMatrix
f
- a user-defined function
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |