[petsc-users] Periodic domains in DMPlex / petsc4py

Artur Palha Da Silva Clérigo - LR A.PalhaDaSilvaClerigo at tudelft.nl
Wed Dec 12 08:17:39 CST 2018



On 12 Dec 2018, at 15:14, Matthew Knepley <knepley at gmail.com<mailto:knepley at gmail.com>> wrote:

On Wed, Dec 12, 2018 at 9:12 AM Artur Palha Da Silva Clérigo - LR <A.PalhaDaSilvaClerigo at tudelft.nl<mailto:A.PalhaDaSilvaClerigo at tudelft.nl>> wrote:
Dear Matt,

Thank you for your quick reply. As for your question: "why would there be a difference? They should be numbered in the same way.”

I see the degrees of freedom living on the periodic domain as the ones living at boundaries between interior elements. This is what I expect for non-periodic domain for nodal scalar field:

Non-periodic:

1                3                5
X-------------X-------------X
|                  |                 |
|                  |                 |
|                  |                 |
X-------------X-------------X
0                2                 4

Periodic (vertical boundaries, topologically, the domain is a cylinder)

1                3                1
X-------------X-------------X
|                  |                 |
|                  |                 |
|                  |                 |
X-------------X-------------X
0                2                 0

This is not the expected behaviour?

What I mean is that each vertex in the periodic domain gets 1 dof. Same procedure as non-periodic.
We do not duplicate vertices or anything like that.

Yes, I agree. That happens yes. What I meant was that for both the periodic and non-periodic case I always get the first numbering. Is this because I miss DMLocalizeCoordinates?




  Thanks,

    Matt

Once again thank you for your help.

-artur palha

On 12 Dec 2018, at 15:04, Matthew Knepley <knepley at gmail.com<mailto:knepley at gmail.com>> wrote:

On Wed, Dec 12, 2018 at 9:01 AM Artur Palha Da Silva Clérigo - LR via petsc-users <petsc-users at mcs.anl.gov<mailto:petsc-users at mcs.anl.gov>> wrote:
Dear All,

I having been trying to add periodic domain functionality to my code. I am able to generate a periodic mesh with gmsh and load it using dmplex. The problem is that I am unable to have a numbering of the degrees of freedom that reflects the periodicity (they are numbered as if there was no periodicity).

Why would there be a difference? They should be numbered in the same way.

I read this thread: https://lists.mcs.anl.gov/mailman/htdig/petsc-users/2018-October/036539.html

There it is mentioned that DMLocalizeCoordinates is required after loading the mesh.

Yes, this makes cell-wise coordinates, which have a jump at the periodic boundary.

My questions are the following:

1. Is it correct that I need to run DMLocalizeCoordinates on my DM?

Yes.

2. I am currently using petsc4py but I am unable to find DMLocalizeCoordinates. Is this functionality missing or is there an alternative to it?\

Its possible no wrapper has been written for this yet. Lisandro, is it missing? (I am at a meeting, or I would check).

  Thanks,

    Matt

Thank you for your time.

Kind regards,

-artur palha


--
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/>



--
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/20181212/22dfcd58/attachment.html>


More information about the petsc-users mailing list