[petsc-users] [petsc-dev] Using PETSc MatIS, how to matmult a global IS matrix and a global vector ?

Stefano Zampini stefano.zampini at gmail.com
Sun May 21 16:02:37 CDT 2017


Franck,

PETSc takes care of doing the matrix-vector multiplication properly using MatIS.  As Matt said, the layout of the vectors is the usual parallel layout.
The local sizes of the MatIS matrix (i.e. the local size of the left and right vectors used in MatMult) are not the sizes of the local subdomain  matrices in MatIS.


> On May 21, 2017, at 6:47 PM, Matthew Knepley <knepley at gmail.com> wrote:
> 
> On Sun, May 21, 2017 at 11:26 AM, Franck Houssen <franck.houssen at inria.fr <mailto:franck.houssen at inria.fr>> wrote:
> Using PETSc MatIS, how to matmult a global IS matrix and a global vector ? Example is attached : I don't get what I expect that is a vector such that proc0 = [1, 2] and proc1 = [2, 1]
> 
> 1) I think the global size of your matrix is wrong. You seem to want 3, not 4
> 
> 2) Global vectors have a non-overlapping row partition. You might be thinking of local vectors
> 
>   Thanks,
> 
>     Matt
>  
> Franck
> 
> 
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
> 
> http://www.caam.rice.edu/~mk51/ <http://www.caam.rice.edu/~mk51/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170521/1dfe48c8/attachment.html>


More information about the petsc-users mailing list