[petsc-users] can MatGetSubMatrix extract remote rows?

Barry Smith bsmith at mcs.anl.gov
Tue May 19 17:54:10 CDT 2015


> On May 19, 2015, at 5:47 PM, Fande Kong <fande.kong at colorado.edu> wrote:
> 
> If I am interested in extracting some remote and local rows and columns but as another sequential matrix, then I have to use  MatGetSubMatrices?

  Yes

> There are no ways to use MatGetSubMatrix to get a sequential matrix?

  No

> Because I am only interested in one sequential matrix per core not multi matrices.

  You can just ask for one matrix with MatGetSubMatrices() will give you one sequential matrix per MPI process. 


> 
> Fande,
> 
> On Tue, May 19, 2015 at 4:40 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> 
> > On May 19, 2015, at 5:33 PM, Fande Kong <fande.kong at colorado.edu> wrote:
> >
> > Hi all,
> >
> > I am confused with MatGetSubMatrix and MatGetSubMatrices.  In my understanding, I think MatGetSubMatrix extracts local rows and columns to form another parallel matrix with the same communicator, while MatGetSubMatrices extracts both local and remote entities to construct some sequential matrices. Is it right?
> 
>   Yes except that MatGetSubMatrix can also use remote rows (and columns) for the part that is on a particular processor. That is it is not restricted to only grabbing local rows/columns in the new parallel matrix.
> 
> 
> >
> > Thanks,
> >
> > Fande,
> 
> 



More information about the petsc-users mailing list