[petsc-users] DMDA ghosted boundary
Matthew Knepley
knepley at gmail.com
Fri Aug 12 12:15:45 CDT 2022
On Fri, Aug 12, 2022 at 9:27 AM David Scott <d.scott at epcc.ed.ac.uk> wrote:
> On 12/08/2022 11:26, Matthew Knepley wrote:
>
> This email was sent to you by someone outside the University.
> You should only click on links or attachments if you are certain that the
> email is genuine and the content is safe.
> On Fri, Aug 12, 2022 at 2:21 AM Quynh Nguyen <nguyenquynh9537 at gmail.com>
> wrote:
>
>> Dear petsc developers and users,
>>
>> I am a new petsc user ^_^.
>> I have some questions about using DMDA_BOUNDARY_GHOSTED.
>>
>> 1. I have 2D Poisson code with domain (nx, ny), and I used
>> DMDA_BOUNDARY_NONE, then the size of the matrix is (nx*ny)X(nx*ny). *what
>> is the size of the matrix if I used DMDA_BOUNDARY_GHOSTED? is it the same
>> size as DMDA_BOUNDARY_NONE*?
>>
>
> Yes, the matrix should be the same size, but local vectors have extra
> ghost node slots.
>
>
>> 2. if the matrix size of DMDA_BOUNDARY_GHOSTED isn't the same as
>> DMDA_BOUNDARY_NONE, *how i can view the matrix including ghost points*?
>> I ask this one because I used MatView(P, PETSC_VIEWER_STDOUT_WORLD) to show
>> the matrix but excluded ghost points.
>>
>
> Ghost nodes are there so that stencil operations on local vectors work at
> boundaries. You fill in the slots with boundary information.
>
> I can see how this works if you are writing your own solver but can it be
> used with a KSP? In the case of periodic boundary conditions the boundary
> values are "filled in" for you by PETSc. Is there any way for a user to
> supply boundary information to a PETSc solver when using
> DMDA_BOUNDARY_GHOSTED?
>
Right now, there is not. This is mainly due to the lack of consensus for
boundary condition specification. Periodic conditions are simple in this
respect.
For example, Plex has such a thing
https://petsc.org/main/docs/manualpages/DM/DMAddBoundary/
that can be used to fill in these constrained spots
https://petsc.org/main/docs/manualpages/DMPLEX/DMPlexInsertBoundaryValues/
But there have been many complaints about this interface (and I suspect any
interface we choose).
Maybe there is something that we could write that would make it easier for
you with DMDA?
Thanks,
Matt
> Thanks,
>
> David
>
> Thanks,
>
> Matt
>
>
>> I hope someone can explain my wonder :)
>>
>> P/S: maybe, those question is simple and a bit stupid ^_^.
>>
>> Have a nice day,
>>
>> --
>> Quynh Nguyen
>> Graduate student, Ocean Engineering.
>> School of Naval Architecture and Ocean Engineering, University of Ulsan.
>>
>> -----------------------------------------------------------------------------------------
>> Mobile: (+82) 010-9394-5595
>> Email: nguyenquynh9537 at gmail.com; nguyenthiquynhb_t58 at hus.edu.vn
>>
>
>
> --
> 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.cse.buffalo.edu/~knepley/>
>
>
> The University of Edinburgh is a charitable body, registered in Scotland,
> with registration number SC005336. Is e buidheann carthannais a th’ ann an
> Oilthigh Dhùn Èideann, clàraichte an Alba, àireamh clàraidh SC005336.
>
--
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.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20220812/0e2226b1/attachment.html>
More information about the petsc-users
mailing list