[petsc-users] periodic boundary conditions

Barry Smith bsmith at petsc.dev
Tue Jul 18 11:07:17 CDT 2023


   They are never really "eliminated" because extra copies in the global vector never exist. 

> On Jul 18, 2023, at 12:03 PM, Karthikeyan Chockalingam - STFC UKRI <karthikeyan.chockalingam at stfc.ac.uk> wrote:
> 
> Thank you, Barry. I am using the MPIAIJ format for a Finite Element application. So, I am trying to understand what is implemented in DMDA to eliminate those extra nodes.
>  
> Best,
> Karthik.
>  
> From: Barry Smith <bsmith at petsc.dev <mailto:bsmith at petsc.dev>>
> Date: Tuesday, 18 July 2023 at 16:58
> To: Chockalingam, Karthikeyan (STFC,DL,HC) <karthikeyan.chockalingam at stfc.ac.uk <mailto:karthikeyan.chockalingam at stfc.ac.uk>>
> Cc: Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>>, petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov> <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>>
> Subject: Re: [petsc-users] periodic boundary conditions
> 
>  
>    If you are using DMDA with periodic boundary conditions for example only one "copy" of such nodes exists in the global vector (the vector the solvers see) so one does not need to eliminate extra ones 
> 
> 
> On Jul 18, 2023, at 11:51 AM, Karthikeyan Chockalingam - STFC UKRI via petsc-users <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>> wrote:
>  
> Yes, I clearly understand I need to eliminate one set of periodic nodes. I was hoping to use x = P x’ to eliminate one set. It is a kind of mapping.
>  
> Sorry, I am not sure if it is the LocalToGlobal mapping you are referring to. Is there an example or reference to show how the LocalToGlobal mapping is being used to impose PBC?
>  
> Best,
> Karthik.
>  
>  
> From: Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>>
> Date: Tuesday, 18 July 2023 at 16:38
> To: Chockalingam, Karthikeyan (STFC,DL,HC) <karthikeyan.chockalingam at stfc.ac.uk <mailto:karthikeyan.chockalingam at stfc.ac.uk>>
> Cc: petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov> <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>>
> Subject: Re: [petsc-users] periodic boundary conditions
> 
> On Tue, Jul 18, 2023 at 11:18 AM Karthikeyan Chockalingam - STFC UKRI <karthikeyan.chockalingam at stfc.ac.uk <mailto:karthikeyan.chockalingam at stfc.ac.uk>> wrote:
> Thanks Matt.
>  
> The mesh is structured (rectilinear), so it is periodic in that sense.
>  
> Can you please explain how I can impose it strongly?
>  
> Strongly means make those variables equal in a pointwise sense. We do this in the
> LocalToGlobal mapping, so one set is eliminated in the global problem.
>  
>   Thanks,
>  
>     Matt
>  
> My initial thought was to come up with a relation between the periodic nodes:
>  
> x = P x’
>  
> Say for 1-D problem with two elements
> (1)-------------(2)------------(3)
>  
> P = [1 0, 0 1, 1 0]
> x = [x1 x2 x3]
> x’ = [x1 x2]
>  
> and solve
> [P^T A P] x’ = P^T b
>  
> I don’t think [P^T A P] is deterministic.
>  
> Kind regards,
> Karthik.
>  
>  
> From: Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>>
> Date: Tuesday, 18 July 2023 at 14:31
> To: Chockalingam, Karthikeyan (STFC,DL,HC) <karthikeyan.chockalingam at stfc.ac.uk <mailto:karthikeyan.chockalingam at stfc.ac.uk>>
> Cc: petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov> <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>>
> Subject: Re: [petsc-users] periodic boundary conditions
> 
> On Tue, Jul 18, 2023 at 9:02 AM Karthikeyan Chockalingam - STFC UKRI via petsc-users <petsc-users at mcs.anl.gov <mailto:petsc-users at mcs.anl.gov>> wrote:
> Hello,
>  
> This is exactly not a PETSc question. I am solving a Poisson equation using finite elements. I would like to impose PBC. I am thinking of using the Lagrange multiplier method to impose them as constraints. Or do you think I could take an alternative approach?
>  
> There are several options:
>  
> 1) Just make a periodic mesh. This is what Plex does by default.
>  
> 2) Impose the conditions strongly. This is what is done if you create the ZBox shape in Plex.
>  
> 3) Impose the conditions weakly. This is what you are doing with Lagrange multipliers. You could
> also do a Nitsche boundary condition for this.
>  
> Since the constraint is so simple, I do not see an advantage to imposing it weakly.
>  
>   Thanks,
>  
>      Matt
>  
> Thank you for your help.
>  
> Kind regards,
> Karthik.
>  
> -- 
> Dr. Karthik Chockalingam
> High Performance Software Engineering Group
> Hartree Centre | Science and Technology Facilities Council
> karthikeyan.chockalingam at stfc.ac.uk <mailto:karthikeyan.chockalingam at stfc.ac.uk>
>   
>  <image001.png>
>  
> 
>  
> --
> 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/20230718/2e4c2e91/attachment-0001.html>


More information about the petsc-users mailing list