[petsc-users] Doubts related MatCreateDense()
Kaushik Kulkarni
kaushikggg at gmail.com
Fri Feb 12 03:10:00 CST 2016
Thanks Barry,
Just one more doubt, does it mean that PETSc divides the global matrix
among various processes bases on the rows, and no "ACTUAL" division of
columns
occur
?
*Kaushik*
On Fri, Feb 12, 2016 at 2:28 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> > On Feb 12, 2016, at 1:51 AM, Kaushik Kulkarni <kaushikggg at gmail.com>
> wrote:
> >
> > Hi all,
> >
> > Could you help me with my doubts:
> >
> > Doubt 1: Initially I tried to create a matrix with MatCreateMPIDense();
> I received a compilation error stating that no such function existed.
>
> The name was changed
> >
> > Doubt 2: So I continued working with MatCreateDense(). And I set the
> global size to 10 cross 10. Now when I called the function
> MatGetLocalSize(A,&localrow,&localcolumn), and ran the code with 2
> processes the values returned were:
> > The local matrix size for the process 1 is 5 cross 5
> > The local matrix size for the process 2 is 5 cross 5
> > How can it be possible that process 1 is only dealing with 25 elements
> and process two is dealing with 25 elements, while the global matrix
> contains 100 elements.
>
> The local size for columns is slightly mis-leading. For standard PETSc
> matrices such as "Dense" each process stores all the entries for its rows
> of the matrix. The term "local columns" refers to the rows of the vector
> which one can use to do a matrix vector product with the matrix. See the
> users manual for more details on the layout of vectors and matrices in
> PETSc.
>
> Barry
>
> >
> > Thanks,
> > Kaushik
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160212/3bdcca53/attachment.html>
More information about the petsc-users
mailing list