Class SubMatrixRef

    • Constructor Detail

      • SubMatrixRef

        public SubMatrixRef​(Matrix A,
                            int[] rows,
                            int[] cols)
        Constructs a sub-matrix reference.
        Parameters:
        A - a matrix
        rows - the row indices
        cols - the column indices
        Throws:
        IndexOutOfBoundsException - if rowFrom, rowTo, colFrom, or colTo is invalid
      • SubMatrixRef

        public SubMatrixRef​(Matrix A,
                            int rowFrom,
                            int rowTo,
                            int colFrom,
                            int colTo)
        Constructs a sub-matrix reference.
        Parameters:
        A - a matrix
        rowFrom - the beginning row index
        rowTo - the ending row index
        colFrom - the beginning column index
        colTo - the ending column index
      • SubMatrixRef

        public SubMatrixRef​(Matrix A)
        Constructs a reference to the whole matrix.
        Parameters:
        A - a matrix
    • Method Detail

      • nRows

        public int nRows()
        Description copied from interface: Table
        Gets the number of rows. Rows count from 1.
        Specified by:
        nRows in interface Table
        Returns:
        the number of rows
      • nCols

        public int nCols()
        Description copied from interface: Table
        Gets the number of columns. Columns count from 1.
        Specified by:
        nCols in interface Table
        Returns:
        the number of columns
      • get

        public double get​(int i,
                          int j)
        Description copied from interface: MatrixAccess
        Get the matrix entry at [i,j].
        Specified by:
        get in interface MatrixAccess
        Parameters:
        i - the row index
        j - the column index
        Returns:
        A[i,j]
      • getRow

        public Vector getRow​(int i)
        Description copied from interface: Matrix
        Get the specified row in the matrix as a vector.
        Specified by:
        getRow in interface Matrix
        Parameters:
        i - the row index
        Returns:
        the vector A[i, ]
      • getColumn

        public Vector getColumn​(int j)
        Description copied from interface: Matrix
        Get the specified column in the matrix as a vector.
        Specified by:
        getColumn in interface Matrix
        Parameters:
        j - the column index
        Returns:
        a vector A[, j]
      • multiply

        public Vector multiply​(Vector v)
        Description copied from interface: Matrix
        Right multiply this matrix, A, by a vector.
        Specified by:
        multiply in interface Matrix
        Parameters:
        v - a vector
        Returns:
        Av, a vector
      • scaled

        public Matrix scaled​(double scalar)
        Description copied from interface: Matrix
        Scale this matrix, A, by a constant.
        Specified by:
        scaled in interface Matrix
        Parameters:
        scalar - a double
        Returns:
        cA
      • ZERO

        public Matrix ZERO()
        Description copied from interface: MatrixRing
        Get a zero matrix that has the same dimension as this matrix.
        Specified by:
        ZERO in interface AbelianGroup<Matrix>
        Specified by:
        ZERO in interface MatrixRing
        Returns:
        the 0 matrix
      • ONE

        public Matrix ONE()
        Description copied from interface: MatrixRing
        Get an identity matrix that has the same dimension as this matrix. For a non-square matrix, it zeros out the rows (columns) with index > nCols (nRows).
        Specified by:
        ONE in interface MatrixRing
        Specified by:
        ONE in interface Monoid<Matrix>
        Returns:
        an identity matrix
      • t

        public Matrix t()
        Description copied from interface: MatrixRing
        Get the transpose of this matrix. This is the involution on the matrix ring.
        Specified by:
        t in interface MatrixRing
        Returns:
        the transpose of this matrix
      • set

        @Deprecated
        public void set​(int i,
                        int j,
                        double value)
                 throws MatrixAccessException
        Deprecated.
        SubMatrixRef is immutable
        Description copied from interface: MatrixAccess
        Set the matrix entry at [i,j] to a value. This is the only method that may change a matrix.
        Specified by:
        set in interface MatrixAccess
        Parameters:
        i - the row index
        j - the column index
        value - the value to set A[i,j] to
        Throws:
        MatrixAccessException - if i or j is out of range