MatZeroRows

Zeros all entries (except possibly the main diagonal) of a set of rows of a matrix.

Synopsis

int MatZeroRows(Mat mat,IS is, Scalar *diag)
Collective on Mat

Input Parameters

mat - the matrix
is - index set of rows to remove
diag - pointer to value put in all diagonals of eliminated rows. Note that diag is not a pointer to an array, but merely a pointer to a single value.

Notes

For the AIJ matrix formats this removes the old nonzero structure, but does not release memory. For the dense and block diagonalformats this does not alter the nonzero structure.

The user can set a value in the diagonal entry (or for the AIJ androw formats can optionally remove the main diagonal entry from thenonzero structure as well, by passing a null pointer as the finalargument).

For the parallel case, all processes that share the matrix (i.e., those in the communicator used for matrix creation) MUST call thisroutine, regardless of whether any rows being zeroed are owned bythem.

Keywords

matrix, zero, rows, boundary conditions

See Also

MatZeroEntries(),

Location: src/mat/interface/matrix.c
Matrix Index
Table of Contents