[petsc-users] Global Numbering
Mohammad Hassan Baghaei
mhbaghaei at mail.sjtu.edu.cn
Wed Mar 21 13:18:03 CDT 2018
Sorry ! In fact, I am trying to construct the radius and theta coordinate for the circular domain I am having before going to the main local functions. I needed that for my local functions.
From: Matthew Knepley [mailto:knepley at gmail.com]
Sent: Thursday, March 22, 2018 1:45 AM
To: Mohammad Hassan Baghaei <mhbaghaei at mail.sjtu.edu.cn>
Cc: PETSc <petsc-users at mcs.anl.gov>
Subject: Re: [petsc-users] Global Numbering
On Wed, Mar 21, 2018 at 1:28 PM, Mohammad Hassan Baghaei <mhbaghaei at mail.sjtu.edu.cn <mailto:mhbaghaei at mail.sjtu.edu.cn> > wrote:
I am trying to fill a vector based on global coordinate.
You can see how this might be too vague for me to follow.
As I am trying to use VecGetValues() on the global coordinate,
Okay, this does not work for any parallel vector.
I find it that argument goes out of range, since I am using global numbering rather than local numbering.
It is not the numbering that is a problem. It is that parallel Vectors in PETSc are distributed. You cannot directly access
data you do not own. You can send it to one process (for example using VecScatterCreateToZero()), but this is of course
not scalable.
Thanks,
Matt
From: Matthew Knepley [mailto:knepley at gmail.com <mailto:knepley at gmail.com> ]
Sent: Wednesday, March 21, 2018 10:38 PM
To: Mohammad Hassan Baghaei <mhbaghaei at mail.sjtu.edu.cn <mailto:mhbaghaei at mail.sjtu.edu.cn> >
Cc: PETSc <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov> >
Subject: Re: [petsc-users] Global Numbering
On Wed, Mar 21, 2018 at 8:18 AM, Mohammad Hassan Baghaei <mhbaghaei at mail.sjtu.edu.cn <mailto:mhbaghaei at mail.sjtu.edu.cn> > wrote:
Hello
I am trying to create a global vector of coordinates based on the parallelized dm. I find it really hard to work with the local numbering, how can I manage to create a kind of numbering on global level so that I could easily access to the nodes based on the new numbering. Thanks for your time.
DMGetCoordinates() gives you a global vector.
DMGetCoordinatesLocal() gives you a local vector.
What are you trying to do?
Thanks,
Matt
Amir
--
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
https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
--
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
https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20180322/1b1c836f/attachment-0001.html>
More information about the petsc-users
mailing list