public final class IntegerDiagonalMatrix extends IntegerTridiagonalMatrix
Modifier and Type | Field and Description |
---|---|
protected static int |
DIAGONAL
Storage format identifier.
|
diag, ldiag, TRIDIAGONAL, udiag
LU, LUpivot
ARRAY_2D, matrix
CLASS_SPECIFIC, numCols, numRows, storageFormat
Modifier | Constructor and Description |
---|---|
|
IntegerDiagonalMatrix(int size)
Constructs an empty matrix.
|
|
IntegerDiagonalMatrix(int[] array)
Constructs a matrix by wrapping an array containing the diagonal elements.
|
|
IntegerDiagonalMatrix(int[][] array)
Constructs a matrix from an array.
|
protected |
IntegerDiagonalMatrix(int size,
int storeID)
Constructs a matrix.
|
Modifier and Type | Method and Description |
---|---|
IntegerDiagonalMatrix |
add(IntegerDiagonalMatrix m)
Returns the addition of this matrix and another.
|
IntegerMatrix |
add(IntegerMatrix m)
Returns the addition of this matrix and another.
|
IntegerSquareMatrix |
add(IntegerSquareMatrix m)
Returns the addition of this matrix and another.
|
IntegerTridiagonalMatrix |
add(IntegerTridiagonalMatrix m)
Returns the addition of this matrix and another.
|
DoubleSquareMatrix[] |
choleskyDecompose()
Returns the Cholesky decomposition of this matrix.
|
int |
det()
Returns the determinant.
|
boolean |
equals(java.lang.Object m)
Compares two integer diagonal matrices for equality.
|
double |
frobeniusNorm()
Returns the Frobenius (l2) norm.
|
int |
getElement(int i,
int j)
Returns an element of the matrix.
|
static IntegerDiagonalMatrix |
identity(int size)
Creates an identity matrix.
|
int |
infNorm()
Returns the l
![]() |
boolean |
isSymmetric()
Returns true if this matrix is symmetric.
|
boolean |
isUnitary()
Returns true if this matrix is unitary.
|
DoubleSquareMatrix[] |
luDecompose(int[] pivot)
Returns the LU decomposition of this matrix.
|
IntegerDiagonalMatrix |
multiply(IntegerDiagonalMatrix m)
Returns the multiplication of this matrix and another.
|
IntegerMatrix |
multiply(IntegerMatrix m)
Returns the multiplication of this matrix and another.
|
IntegerSquareMatrix |
multiply(IntegerSquareMatrix m)
Returns the multiplication of this matrix and another.
|
IntegerSquareMatrix |
multiply(IntegerTridiagonalMatrix m)
Returns the multiplication of this matrix and another.
|
IntegerVector |
multiply(IntegerVector v)
Returns the multiplication of a vector by this matrix.
|
IntegerMatrix |
scalarMultiply(int x)
Returns the multiplication of this matrix by a scalar.
|
void |
setElement(int i,
int j,
int x)
Sets the value of an element of the matrix.
|
IntegerDiagonalMatrix |
subtract(IntegerDiagonalMatrix m)
Returns the subtraction of this matrix by another.
|
IntegerMatrix |
subtract(IntegerMatrix m)
Returns the subtraction of this matrix and another.
|
IntegerSquareMatrix |
subtract(IntegerSquareMatrix m)
Returns the subtraction of this matrix and another.
|
IntegerTridiagonalMatrix |
subtract(IntegerTridiagonalMatrix m)
Returns the subtraction of this matrix and another.
|
ComplexMatrix |
toComplexMatrix()
Converts this matrix to a complex matrix.
|
DoubleMatrix |
toDoubleMatrix()
Converts this matrix to a double matrix.
|
int |
trace()
Returns the trace.
|
Matrix |
transpose()
Returns the transpose of this matrix.
|
toString
choleskyDecomposition
add, finalize, hashCode, multiply, negate, scalarDivide, scalarMultiply, subtract
columns, getInvalidElementMsg, rows
protected static final int DIAGONAL
protected IntegerDiagonalMatrix(int size, int storeID)
public IntegerDiagonalMatrix(int size)
size
- the number of rows/columnspublic IntegerDiagonalMatrix(int[][] array)
array
- an assigned valueMatrixDimensionException
- If the array is not square.public IntegerDiagonalMatrix(int[] array)
array
- an assigned valuepublic static IntegerDiagonalMatrix identity(int size)
size
- the number of rows/columnspublic boolean equals(java.lang.Object m)
equals
in class IntegerTridiagonalMatrix
m
- a integer diagonal matrixpublic DoubleMatrix toDoubleMatrix()
toDoubleMatrix
in class IntegerTridiagonalMatrix
public ComplexMatrix toComplexMatrix()
toComplexMatrix
in class IntegerTridiagonalMatrix
public int getElement(int i, int j)
getElement
in class IntegerTridiagonalMatrix
i
- row index of the elementj
- column index of the elementMatrixDimensionException
- If attempting to access an invalid element.public void setElement(int i, int j, int x)
setElement
in class IntegerTridiagonalMatrix
i
- row index of the elementj
- column index of the elementx
- an integerMatrixDimensionException
- If attempting to access an invalid element.public boolean isSymmetric()
isSymmetric
in class IntegerTridiagonalMatrix
public boolean isUnitary()
isUnitary
in class IntegerSquareMatrix
public int det()
det
in class IntegerSquareMatrix
public int trace()
trace
in class IntegerTridiagonalMatrix
public int infNorm()
infNorm
in class IntegerTridiagonalMatrix
public double frobeniusNorm()
frobeniusNorm
in class IntegerTridiagonalMatrix
public IntegerMatrix add(IntegerMatrix m)
add
in class IntegerTridiagonalMatrix
m
- an integer matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerSquareMatrix add(IntegerSquareMatrix m)
add
in class IntegerTridiagonalMatrix
m
- an integer square matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerTridiagonalMatrix add(IntegerTridiagonalMatrix m)
add
in class IntegerTridiagonalMatrix
m
- an integer tridiagonal matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerDiagonalMatrix add(IntegerDiagonalMatrix m)
m
- an integer diagonal matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerMatrix subtract(IntegerMatrix m)
subtract
in class IntegerTridiagonalMatrix
m
- an integer matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerSquareMatrix subtract(IntegerSquareMatrix m)
subtract
in class IntegerTridiagonalMatrix
m
- an integer square matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerTridiagonalMatrix subtract(IntegerTridiagonalMatrix m)
subtract
in class IntegerTridiagonalMatrix
m
- an integer tridiagonal matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerDiagonalMatrix subtract(IntegerDiagonalMatrix m)
m
- an integer diagonal matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerMatrix scalarMultiply(int x)
scalarMultiply
in class IntegerTridiagonalMatrix
x
- an integerpublic IntegerVector multiply(IntegerVector v)
multiply
in class IntegerTridiagonalMatrix
v
- an integer vectorDimensionException
- If the matrix and vector are incompatible.public IntegerMatrix multiply(IntegerMatrix m)
multiply
in class IntegerTridiagonalMatrix
m
- an integer matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerSquareMatrix multiply(IntegerSquareMatrix m)
multiply
in class IntegerTridiagonalMatrix
m
- an integer square matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerSquareMatrix multiply(IntegerTridiagonalMatrix m)
multiply
in class IntegerTridiagonalMatrix
m
- an integer tridiagonal matrixMatrixDimensionException
- If the matrices are different sizes.public IntegerDiagonalMatrix multiply(IntegerDiagonalMatrix m)
m
- an integer diagonal matrixMatrixDimensionException
- If the matrices are different sizes.public Matrix transpose()
transpose
in class IntegerTridiagonalMatrix
public DoubleSquareMatrix[] luDecompose(int[] pivot)
luDecompose
in class IntegerTridiagonalMatrix
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 DoubleSquareMatrix[] choleskyDecompose()
choleskyDecompose
in class IntegerTridiagonalMatrix