Class CompColMatrix

  • All Implemented Interfaces:
    java.lang.Iterable<MatrixEntry>, Matrix

    public class CompColMatrix
    extends AbstractMatrix
    Compressed column storage (CCS) matrix
    • Constructor Detail

      • CompColMatrix

        public CompColMatrix​(MatrixVectorReader r)
                      throws java.io.IOException
        Constructor for CompColMatrix
        Parameters:
        r - Reader to get sparse matrix from
        Throws:
        java.io.IOException
      • CompColMatrix

        public CompColMatrix​(int numRows,
                             int numColumns,
                             int[][] nz)
        Constructor for CompColMatrix
        Parameters:
        numRows - Number of rows
        numColumns - Number of columns
        nz - The nonzero column indices on each column
      • CompColMatrix

        public CompColMatrix​(Matrix A,
                             boolean deep)
        Constructor for CompColMatrix
        Parameters:
        A - Copies from this matrix
        deep - True if the copy is to be deep. If it is a shallow copy, A must be a CompColMatrix
      • CompColMatrix

        public CompColMatrix​(Matrix A)
        Constructor for CompColMatrix
        Parameters:
        A - Copies from this matrix. The copy will be deep
    • Method Detail

      • getColumnPointers

        public int[] getColumnPointers()
        Returns the column pointers
      • getRowIndices

        public int[] getRowIndices()
        Returns the row indices
      • getData

        public double[] getData()
        Returns the internal data storage
      • multAdd

        public Vector multAdd​(double alpha,
                              Vector x,
                              Vector y)
        Description copied from interface: Matrix
        y = alpha*A*x + y
        Specified by:
        multAdd in interface Matrix
        Overrides:
        multAdd in class AbstractMatrix
        x - Vector of size A.numColumns()
        y - Vector of size A.numRows()
        Returns:
        y
      • set

        public void set​(int row,
                        int column,
                        double value)
        Description copied from interface: Matrix
        A(row,column) = value
        Specified by:
        set in interface Matrix
        Overrides:
        set in class AbstractMatrix
      • add

        public void add​(int row,
                        int column,
                        double value)
        Description copied from interface: Matrix
        A(row,column) += value
        Specified by:
        add in interface Matrix
        Overrides:
        add in class AbstractMatrix
      • get

        public double get​(int row,
                          int column)
        Description copied from interface: Matrix
        Returns A(row,column)
        Specified by:
        get in interface Matrix
        Overrides:
        get in class AbstractMatrix
      • zero

        public CompColMatrix zero()
        Description copied from interface: Matrix
        Zeros all the entries in the matrix, while preserving any underlying structure. Useful for general, unstructured matrices.
        Specified by:
        zero in interface Matrix
        Overrides:
        zero in class AbstractMatrix
        Returns:
        A