public class IntProperty extends PersistentObject
Note that this implementation is not synchronized.
Here are some example properties
| matrix |  4 x 4  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  | 
 4 x 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1  | 
 4 x 4 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1  | 
  4 x 4 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1  | 
  4 x 4 0 0 0 0 1 1 0 0 1 1 0 0 1 1 1 1  | 
 4 x 4 1 1 0 0 0 1 1 0 0 1 0 1 1 0 1 1  | 
 4 x 4 1 1 1 0 0 1 0 0 1 1 0 1 0 0 1 1  | 
 
| upperBandwidth | 0  | 
 0  | 
 1  | 
 3 | 0 | 1  | 
 2  | 
 
| lowerBandwidth | 0  | 
 0  | 
 1  | 
 0 | 3 | 3  | 
 2  | 
 
| semiBandwidth | 1  | 
 1  | 
 2  | 
 4 | 4 | 4  | 
 3  | 
 
| description | zero  | 
 diagonal  | 
 tridiagonal  | 
 upper triangular | lower triangular | unstructured
   | 
 unstructured
   | 
 
| Modifier and Type | Field and Description | 
|---|---|
static IntProperty | 
DEFAULT
The default Property object;. 
 | 
| Constructor and Description | 
|---|
IntProperty()
Constructs an instance with a tolerance of
 Math.abs(newTolerance). 
 | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
checkRectangular(IntMatrix2D A)
Checks whether the given matrix A is rectangular. 
 | 
void | 
checkSquare(IntMatrix2D A)
Checks whether the given matrix A is square. 
 | 
int | 
density(IntMatrix2D A)
Returns the matrix's fraction of non-zero cells;
 A.cardinality() / A.size(). 
 | 
boolean | 
equals(IntMatrix1D A,
      int value)
Returns whether all cells of the given matrix A are equal to the
 given value. 
 | 
boolean | 
equals(IntMatrix1D A,
      IntMatrix1D B)
Returns whether both given matrices A and B are equal. 
 | 
boolean | 
equals(IntMatrix2D A,
      int value)
Returns whether all cells of the given matrix A are equal to the
 given value. 
 | 
boolean | 
equals(IntMatrix2D A,
      IntMatrix2D B)
Returns whether both given matrices A and B are equal. 
 | 
boolean | 
equals(IntMatrix3D A,
      int value)
Returns whether all cells of the given matrix A are equal to the
 given value. 
 | 
boolean | 
equals(IntMatrix3D A,
      IntMatrix3D B)
Returns whether both given matrices A and B are equal. 
 | 
void | 
generateNonSingular(IntMatrix2D A)
Modifies the given matrix square matrix A such that it is
 diagonally dominant by row and column, hence non-singular, hence
 invertible. 
 | 
boolean | 
isDiagonal(IntMatrix2D A)
A matrix A is diagonal if A[i,j] == 0 whenever
 i != j. 
 | 
boolean | 
isDiagonallyDominantByColumn(IntMatrix2D A)
A matrix A is diagonally dominant by column if the
 absolute value of each diagonal element is larger than the sum of the
 absolute values of the off-diagonal elements in the corresponding column. 
 | 
boolean | 
isDiagonallyDominantByRow(IntMatrix2D A)
A matrix A is diagonally dominant by row if the absolute
 value of each diagonal element is larger than the sum of the absolute
 values of the off-diagonal elements in the corresponding row. 
 | 
boolean | 
isIdentity(IntMatrix2D A)
A matrix A is an identity matrix if A[i,i] == 1
 and all other cells are zero. 
 | 
boolean | 
isLowerBidiagonal(IntMatrix2D A)
A matrix A is lower bidiagonal if A[i,j]==0
 unless i==j || i==j+1. 
 | 
boolean | 
isLowerTriangular(IntMatrix2D A)
A matrix A is lower triangular if A[i,j]==0
 whenever i < j. 
 | 
boolean | 
isNonNegative(IntMatrix2D A)
A matrix A is non-negative if A[i,j] >= 0
 holds for all cells. 
 | 
boolean | 
isOrthogonal(IntMatrix2D A)
A square matrix A is orthogonal if
 A*transpose(A) = I. 
 | 
boolean | 
isPositive(IntMatrix2D A)
A matrix A is positive if A[i,j] > 0 holds
 for all cells. 
 | 
boolean | 
isSkewSymmetric(IntMatrix2D A)
A square matrix A is skew-symmetric if
 A = -transpose(A), that is A[i,j] == -A[j,i]. 
 | 
boolean | 
isSquare(IntMatrix2D A)
A matrix A is square if it has the same number of rows
 and columns. 
 | 
boolean | 
isStrictlyLowerTriangular(IntMatrix2D A)
A matrix A is strictly lower triangular if
 A[i,j]==0 whenever i <= j. 
 | 
boolean | 
isStrictlyTriangular(IntMatrix2D A)
A matrix A is strictly triangular if it is triangular and
 its diagonal elements all equal 0. 
 | 
boolean | 
isStrictlyUpperTriangular(IntMatrix2D A)
A matrix A is strictly upper triangular if
 A[i,j]==0 whenever i >= j. 
 | 
boolean | 
isSymmetric(IntMatrix2D A)
A matrix A is symmetric if A = tranpose(A), that
 is A[i,j] == A[j,i]. 
 | 
boolean | 
isTriangular(IntMatrix2D A)
A matrix A is triangular iff it is either upper or lower
 triangular. 
 | 
boolean | 
isTridiagonal(IntMatrix2D A)
A matrix A is tridiagonal if A[i,j]==0 whenever
 Math.abs(i-j) > 1. 
 | 
boolean | 
isUnitTriangular(IntMatrix2D A)
A matrix A is unit triangular if it is triangular and its
 diagonal elements all equal 1. 
 | 
boolean | 
isUpperBidiagonal(IntMatrix2D A)
A matrix A is upper bidiagonal if A[i,j]==0
 unless i==j || i==j-1. 
 | 
boolean | 
isUpperTriangular(IntMatrix2D A)
A matrix A is upper triangular if A[i,j]==0
 whenever i > j. 
 | 
boolean | 
isZero(IntMatrix2D A)
A matrix A is zero if all its cells are zero. 
 | 
int | 
lowerBandwidth(IntMatrix2D A)
The lower bandwidth of a square matrix A is the maximum
 i-j for which A[i,j] is nonzero and i > j. 
 | 
int | 
semiBandwidth(IntMatrix2D A)
Returns the semi-bandwidth of the given square matrix A. 
 | 
String | 
toString(IntMatrix2D A)
Returns summary information about the given matrix A. 
 | 
int | 
upperBandwidth(IntMatrix2D A)
The upper bandwidth of a square matrix A is the maximum
 j-i for which A[i,j] is nonzero and j > i. 
 | 
clonepublic static final IntProperty DEFAULT
public IntProperty()
public void checkRectangular(IntMatrix2D A)
IllegalArgumentException - if A.rows() < A.columns().public void checkSquare(IntMatrix2D A)
IllegalArgumentException - if A.rows() != A.columns().public int density(IntMatrix2D A)
public boolean equals(IntMatrix1D A, int value)
A - the first matrix to compare.value - the value to compare against.public boolean equals(IntMatrix1D A, IntMatrix1D B)
A - the first matrix to compare.B - the second matrix to compare.public boolean equals(IntMatrix2D A, int value)
A - the first matrix to compare.value - the value to compare against.public boolean equals(IntMatrix2D A, IntMatrix2D B)
A - the first matrix to compare.B - the second matrix to compare.public boolean equals(IntMatrix3D A, int value)
A - the first matrix to compare.value - the value to compare against.public boolean equals(IntMatrix3D A, IntMatrix3D B)
A - the first matrix to compare.B - the second matrix to compare.public void generateNonSingular(IntMatrix2D A)
A - the square matrix to modify.IllegalArgumentException - if !isSquare(A).public boolean isDiagonal(IntMatrix2D A)
public boolean isDiagonallyDominantByColumn(IntMatrix2D A)
Note: Ignores tolerance.
public boolean isDiagonallyDominantByRow(IntMatrix2D A)
Note: Ignores tolerance.
public boolean isIdentity(IntMatrix2D A)
public boolean isLowerBidiagonal(IntMatrix2D A)
public boolean isLowerTriangular(IntMatrix2D A)
public boolean isNonNegative(IntMatrix2D A)
Note: Ignores tolerance.
public boolean isOrthogonal(IntMatrix2D A)
IllegalArgumentException - if !isSquare(A).public boolean isPositive(IntMatrix2D A)
Note: Ignores tolerance.
public boolean isSkewSymmetric(IntMatrix2D A)
IllegalArgumentException - if !isSquare(A).public boolean isSquare(IntMatrix2D A)
public boolean isStrictlyLowerTriangular(IntMatrix2D A)
public boolean isStrictlyTriangular(IntMatrix2D A)
public boolean isStrictlyUpperTriangular(IntMatrix2D A)
public boolean isSymmetric(IntMatrix2D A)
IllegalArgumentException - if !isSquare(A).public boolean isTriangular(IntMatrix2D A)
public boolean isTridiagonal(IntMatrix2D A)
public boolean isUnitTriangular(IntMatrix2D A)
public boolean isUpperBidiagonal(IntMatrix2D A)
public boolean isUpperTriangular(IntMatrix2D A)
public boolean isZero(IntMatrix2D A)
public int lowerBandwidth(IntMatrix2D A)
A - the square matrix to analyze.IllegalArgumentException - if !isSquare(A).semiBandwidth(IntMatrix2D), 
upperBandwidth(IntMatrix2D)public int semiBandwidth(IntMatrix2D A)
The upper bandwidth is the maximum j-i for which A[i,j] is nonzero and j > i. The lower bandwidth is the maximum i-j for which A[i,j] is nonzero and i > j. Diagonal, tridiagonal and triangular matrices are special cases.
Examples:
| matrix |  4 x 4  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  | 
 4 x 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1  | 
 4 x 4 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1  | 
  4 x 4 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1  | 
  4 x 4 0 0 0 0 1 1 0 0 1 1 0 0 1 1 1 1  | 
 4 x 4 1 1 0 0 0 1 1 0 0 1 0 1 1 0 1 1  | 
 4 x 4 1 1 1 0 0 1 0 0 1 1 0 1 0 0 1 1  | 
 
| upperBandwidth | 0  | 
 0  | 
 1  | 
 3 | 0 | 1  | 
 2  | 
 
| lowerBandwidth | 0  | 
 0  | 
 1  | 
 0 | 3 | 3  | 
 2  | 
 
| semiBandwidth | 1  | 
 1  | 
 2  | 
 4 | 4 | 4  | 
 3  | 
 
| description | zero  | 
 diagonal  | 
 tridiagonal  | 
 upper triangular | lower triangular | 
 unstructured  | 
 
 unstructured  | 
 
A - the square matrix to analyze.IllegalArgumentException - if !isSquare(A).lowerBandwidth(IntMatrix2D), 
upperBandwidth(IntMatrix2D)public String toString(IntMatrix2D A)
density : 0.9 isDiagonal : false isDiagonallyDominantByRow : false isDiagonallyDominantByColumn : false isIdentity : false isLowerBidiagonal : false isLowerTriangular : false isNonNegative : true isOrthogonal : Illegal operation or error: Matrix must be square. isPositive : true isSingular : Illegal operation or error: Matrix must be square. isSkewSymmetric : Illegal operation or error: Matrix must be square. isSquare : false isStrictlyLowerTriangular : false isStrictlyTriangular : false isStrictlyUpperTriangular : false isSymmetric : Illegal operation or error: Matrix must be square. isTriangular : false isTridiagonal : false isUnitTriangular : false isUpperBidiagonal : false isUpperTriangular : false isZero : false lowerBandwidth : Illegal operation or error: Matrix must be square. semiBandwidth : Illegal operation or error: Matrix must be square. upperBandwidth : Illegal operation or error: Matrix must be square.
public int upperBandwidth(IntMatrix2D A)
A - the square matrix to analyze.IllegalArgumentException - if !isSquare(A).semiBandwidth(IntMatrix2D), 
lowerBandwidth(IntMatrix2D)Jump to the Parallel Colt Homepage