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