Class FlexCompColMatrix

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

    public class FlexCompColMatrix
    extends AbstractMatrix
    Matrix stored column-wise into sparse vectors
    • Constructor Detail

      • FlexCompColMatrix

        public FlexCompColMatrix​(int numRows,
                                 int numColumns)
        Constructor for FlexCompColMatrix
        Parameters:
        numRows - Number of rows
        numColumns - Number of column
      • FlexCompColMatrix

        public FlexCompColMatrix​(Matrix A,
                                 boolean deep)
        Constructor for FlexCompColMatrix
        Parameters:
        A - Matrix to copy contents from
        deep - True for a deep copy, false for a reference copy. A reference copy can only be made of an FlexCompColMatrix
      • FlexCompColMatrix

        public FlexCompColMatrix​(Matrix A)
        Constructor for FlexCompColMatrix
        Parameters:
        A - Matrix to copy contents from. The copy will be deep
    • Method Detail

      • getColumn

        public SparseVector getColumn​(int i)
        Returns the given column
      • setColumn

        public void setColumn​(int i,
                              SparseVector x)
        Sets the given column equal the passed vector
      • 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
      • 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
      • 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
      • 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 FlexCompColMatrix 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
      • compact

        public void compact()
        Tries to store the matrix as compactly as possible