Package org.ejml.sparse.csc
Class RandomMatrices_DSCC
java.lang.Object
org.ejml.sparse.csc.RandomMatrices_DSCC
Functions for creating randomly generated sparse matrices.
-
Method Summary
Modifier and TypeMethodDescriptionstatic voidensureNotSingular(DMatrixSparseCSC A, Random rand) Modies the matrix to make sure that at least one element in each column has a valuestatic DMatrixSparseCSCgenerateUniform(int numRows, int numCols, int nzEntriesPerColumn, double min, double max, Random rand) Creates a random matrix where each column has exactly `nzEntriesPerColumn` non-zero entries.static intstatic DMatrixSparseCSCRandomly generates matrix with the specified number of non-zero elements filled with values from min to max.static DMatrixSparseCSCstatic DMatrixSparseCSCCreates a random symmetric matrix.static DMatrixSparseCSCsymmetricPosDef(int width, double probabilityZero, Random rand) Creates a random symmetric positive definite matrix with zero values.static DMatrixSparseCSCCreates a triangular matrix where the amount of fill is randomly selected too.static DMatrixSparseCSCtriangleLower(int dimen, int hessenberg, int nz_total, double min, double max, Random rand) Randomly generates lower triangular (or hessenberg) matrix with the specified number of of non-zero elements.static DMatrixSparseCSCtriangleUpper(int dimen, int hessenberg, int nz_total, double min, double max, Random rand)
-
Method Details
-
rectangle
public static DMatrixSparseCSC rectangle(int numRows, int numCols, int nz_total, double min, double max, Random rand) Randomly generates matrix with the specified number of non-zero elements filled with values from min to max.- Parameters:
numRows- Number of rowsnumCols- Number of columnsnz_total- Total number of non-zero elements in the matrixmin- Minimum element value, inclusivemax- Maximum element value, inclusiverand- Random number generator- Returns:
- Randomly generated matrix
-
rectangle
-
symmetric
Creates a random symmetric matrix. The entire matrix will be filled in, not just a triangular portion.- Parameters:
N- Number of rows and columnsnz_total- Number of nonzero elements in the triangular portion of the matrixmin- Minimum element value, inclusivemax- Maximum element value, inclusiverand- Random number generator- Returns:
- Randomly generated matrix
-
triangleLower
public static DMatrixSparseCSC triangleLower(int dimen, int hessenberg, int nz_total, double min, double max, Random rand) Randomly generates lower triangular (or hessenberg) matrix with the specified number of of non-zero elements. The diagonal elements must be non-zero.- Parameters:
dimen- Number of rows and columnshessenberg- Hessenberg degree. 0 is triangular and 1 or more is Hessenberg.nz_total- Total number of non-zero elements in the matrix. Adjust to meet matrix size constraints.min- Minimum element value, inclusivemax- Maximum element value, inclusiverand- Random number generator- Returns:
- Randomly generated matrix
-
triangleUpper
public static DMatrixSparseCSC triangleUpper(int dimen, int hessenberg, int nz_total, double min, double max, Random rand) -
nonzero
-
triangle
public static DMatrixSparseCSC triangle(boolean upper, int N, double minFill, double maxFill, Random rand) Creates a triangular matrix where the amount of fill is randomly selected too.- Parameters:
upper- true for upper triangular and false for lowerN- number of rows and columnsminFill- minimum fill fractionmaxFill- maximum fill fractionrand- random number generator- Returns:
- Random matrix
-
symmetricPosDef
Creates a random symmetric positive definite matrix with zero values.- Parameters:
width- number of columns and rowsprobabilityZero- How likely a value is of being zero. 0 = no zeros. 1.0 = all zerosrand- random number generator- Returns:
- Random matrix
-
generateUniform
public static DMatrixSparseCSC generateUniform(int numRows, int numCols, int nzEntriesPerColumn, double min, double max, Random rand) Creates a random matrix where each column has exactly `nzEntriesPerColumn` non-zero entries. Compared torectangle(int, int, int, double, double, java.util.Random)this method can generate larger sparse matrices.- Parameters:
numRows- Number of rowsnumCols- Number of columnsnzEntriesPerColumn- Amount of nz-entries per columnmin- Minimum element value, inclusivemax- Maximum element value, inclusiverand- Random number generator- Returns:
- Randomly generated matrix
-
ensureNotSingular
Modies the matrix to make sure that at least one element in each column has a value
-