MatMPIAIJGetLocalMatMerge#
Creates a MATSEQAIJ
from a MATMPIAIJ
matrix by taking all its local rows and putting them into a sequential matrix with mlocal rows and n columns. Where n is the sum of the number of columns of the diagonal and off-diagonal part
Synopsis#
#include "petscmat.h"
PetscErrorCode MatMPIAIJGetLocalMatMerge(Mat A, MatReuse scall, IS *glob, Mat *A_loc)
Not Collective
Input Parameters#
A - the matrix
scall - either
MAT_INITIAL_MATRIX
orMAT_REUSE_MATRIX
Output Parameters#
glob - sequential
IS
with global indices associated with the columns of the local sequential matrix generated (can beNULL
)A_loc - the local sequential matrix generated
Note#
This is different from MatMPIAIJGetLocalMat()
since the first columns in the returning matrix are those associated with the diagonal
part, then those associated with the off-diagonal part (in its local ordering)
See Also#
Matrices, Mat
, MATMPIAIJ
, MatGetOwnershipRange()
, MatMPIAIJGetLocalMat()
, MatMPIAIJGetLocalMatCondensed()
Level#
developer
Location#
Implementations#
MatMPIAIJGetLocalMatMerge_MPIAIJKokkos() in src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx
MatMPIAIJGetLocalMatMerge_MPIAIJCUSPARSE() in src/mat/impls/aij/mpi/mpicusparse/mpiaijcusparse.cu
MatMPIAIJGetLocalMatMerge_MPIAIJHIPSPARSE() in src/mat/impls/aij/mpi/mpihipsparse/mpiaijhipsparse.hip.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages