Class RandomMatrices_FSCC

java.lang.Object
org.ejml.sparse.csc.RandomMatrices_FSCC

@Generated("org.ejml.sparse.csc.RandomMatrices_DSCC") public class RandomMatrices_FSCC extends Object
Functions for creating randomly generated sparse matrices.
  • Method Details

    • rectangle

      public static FMatrixSparseCSC rectangle(int numRows, int numCols, int nz_total, float min, float 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 rows
      numCols - Number of columns
      nz_total - Total number of non-zero elements in the matrix
      min - Minimum element value, inclusive
      max - Maximum element value, inclusive
      rand - Random number generator
      Returns:
      Randomly generated matrix
    • rectangle

      public static FMatrixSparseCSC rectangle(int numRows, int numCols, int nz_total, Random rand)
    • symmetric

      public static FMatrixSparseCSC symmetric(int N, int nz_total, float min, float max, Random rand)
      Creates a random symmetric matrix. The entire matrix will be filled in, not just a triangular portion.
      Parameters:
      N - Number of rows and columns
      nz_total - Number of nonzero elements in the triangular portion of the matrix
      min - Minimum element value, inclusive
      max - Maximum element value, inclusive
      rand - Random number generator
      Returns:
      Randomly generated matrix
    • triangleLower

      public static FMatrixSparseCSC triangleLower(int dimen, int hessenberg, int nz_total, float min, float 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 columns
      hessenberg - 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, inclusive
      max - Maximum element value, inclusive
      rand - Random number generator
      Returns:
      Randomly generated matrix
    • triangleUpper

      public static FMatrixSparseCSC triangleUpper(int dimen, int hessenberg, int nz_total, float min, float max, Random rand)
    • nonzero

      public static int nonzero(int numRows, int numCols, float minFill, float maxFill, Random rand)
    • triangle

      public static FMatrixSparseCSC triangle(boolean upper, int N, float minFill, float 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 lower
      N - number of rows and columns
      minFill - minimum fill fraction
      maxFill - maximum fill fraction
      rand - random number generator
      Returns:
      Random matrix
    • symmetricPosDef

      public static FMatrixSparseCSC symmetricPosDef(int width, float probabilityZero, Random rand)
      Creates a random symmetric positive definite matrix with zero values.
      Parameters:
      width - number of columns and rows
      probabilityZero - How likely a value is of being zero. 0 = no zeros. 1.0f = all zeros
      rand - random number generator
      Returns:
      Random matrix
    • generateUniform

      public static FMatrixSparseCSC generateUniform(int numRows, int numCols, int nzEntriesPerColumn, float min, float max, Random rand)
      Creates a random matrix where each column has exactly `nzEntriesPerColumn` non-zero entries. Compared to rectangle(int, int, int, float, float, java.util.Random) this method can generate larger sparse matrices.
      Parameters:
      numRows - Number of rows
      numCols - Number of columns
      nzEntriesPerColumn - Amount of nz-entries per column
      min - Minimum element value, inclusive
      max - Maximum element value, inclusive
      rand - Random number generator
      Returns:
      Randomly generated matrix
    • ensureNotSingular

      public static void ensureNotSingular(FMatrixSparseCSC A, Random rand)
      Modies the matrix to make sure that at least one element in each column has a value