MatGetOwnershipRangeColumn#

Returns the range of matrix columns associated with rows of a vector one multiplies this matrix by that are owned by this processor.

Synopsis#

#include "petscmat.h" 
PetscErrorCode MatGetOwnershipRangeColumn(Mat mat, PetscInt *m, PetscInt *n)

Not Collective, unless matrix has not been allocated, then collective

Input Parameter#

  • mat - the matrix

Output Parameters#

  • m - the global index of the first local column, use NULL to not obtain this value

  • n - one more than the global index of the last local column, use NULL to not obtain this value

Notes#

If the Mat was obtained from a DM with DMCreateMatrix(), then the range values are determined by the specific DM.

If the Mat was created directly the range values are determined by the local size passed to MatSetSizes() or MatCreateAIJ(). If PETSC_DECIDE was passed as the local size, then the vector uses default values for the range using PetscSplitOwnership().

For certain DM, such as DMDA, it is better to use DM specific routines, such as DMDAGetGhostCorners(), to determine the local values in the matrix.

Returns the columns of the “diagonal block” for most sparse matrix formats. See Matrix Layouts for details on matrix layouts.

See Also#

Matrices, Mat, MatGetOwnershipRange(), MatGetOwnershipRanges(), MatGetOwnershipRangesColumn(), PetscLayout, MatSetSizes(), MatCreateAIJ(), DMDAGetGhostCorners(), DM

Level#

developer

Location#

src/mat/interface/matrix.c

Examples#

src/ksp/ksp/tutorials/ex85.c
src/ksp/ksp/tutorials/ex27.c
src/mat/tutorials/ex10.c
src/snes/tutorials/ex48.c


Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages