Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Barry Smith
An attempt at complete details on making an MR https://urldefense.us/v3/__https://petsc.org/release/developers/contributing/__;!!G_uCfscf7eWS!a1bbLw5WyJV3J-nT7Z3nTSKwJwV__JByZVLM7gnJkaJ4Te5me2x0zHqnrtQuQ0fcGofdMFdPKiheANeOyPLvqA$ Barry MR on improving the details of making an MR are also al

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Matthew Knepley
This is a really poor name. The boundary is not open in any sense. It should be called an internal boundary, and what they call internal boundaries should be called interdomain boundaries, but it seems too late to fix this. Turning on open boundaries is just a flag, so that is easy, and one can se

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Matthew Knepley
On Wed, Feb 5, 2025 at 9:52 AM neil liu wrote: > Dear developers, > > I am currently working with MMG in the context of PETSc and have > identified a need to modify the existing MMG interface, > DMAdaptMetric_Mmg_Plex(), for our use case. Given these requirements, I > would like to explore the fe

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
Hi, Matt, It is not enough to only turn on -the open boundary. For the above example, the 4 physical corner vertices (0D) for this internal quadrilateral surface have to be set, otherwise the shape can not be kept. In addition, for my present case, the boundary edges (1D) consisting of this quadr

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Matthew Knepley
On Wed, Feb 5, 2025 at 1:06 PM neil liu wrote: > Hi, Matt, > > It is not enough to only turn on -the open boundary. > For the above example, the 4 physical corner vertices (0D) for this > internal quadrilateral surface have to be set, otherwise the shape can not > be kept. > In addition, for my

[petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
Dear developers, I am currently working with MMG in the context of PETSc and have identified a need to modify the existing MMG interface, DMAdaptMetric_Mmg_Plex(), for our use case. Given these requirements, I would like to explore the feasibility of contributing to PETSc to enhance this interface

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Satish Balay
On Wed, 5 Feb 2025, Matthew Knepley wrote: > Yes. Please make a fork of the petsc repo, make a branch with the proposed > changes, make an MR for that branch, and add me to your fork (I am knepley > on GitLab). I can help you get it going. Some relevant info at https://urldefense.us/v3/__https:/

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
Hi, Mark, For example, in the left figure, the yellow rectangular face needs to be preserved during mesh refinement. However, without specifying its four corner points, the rectangle cannot be maintained, as shown in the right figure. Additionally, the four edges of this face must be recorded and

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
Theoretically, the edges of the open boundary surface can be extracted outside this subroutine. (I am wondering if this can be effectively delivered outside this subroutine.)_ It might be more convenient to assign edge labels and set these edges in MMG using MMG3D_Set_edges. This way, after refi

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
For open boundaries, MMG sets a reference for the internal open boundary surface and then runs in opnbdy mode after we define the corners using MMG3D_Set_corner. The edges are only desired for my own case. We need to know the edges delimiting the open boundary surface after refinement to extract s

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Matthew Knepley
On Wed, Feb 5, 2025 at 1:24 PM neil liu wrote: > The corners can be set with MMG's own API function, LIBMMG3D_EXPORT int > MMG3D_Set_corner(MMG5_pMesh mesh, MMG5_int k); > This definitely sets a corner attribute on a vertex. > The edges can be set with MMG's own API function, LIBMMG3D_EXPORT

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Pierre Jolivet
See also: https://urldefense.us/v3/__https://www.mmgtools.org/mmg-remesher-try-mmg/mmg-remesher-tutorials/mmg-remesher-mmg3d/open-boundary-remeshing__;!!G_uCfscf7eWS!bcNML6GoIvxF1ls5Qjid9GCrVeElFxFvhC-q4zu7XWf7ignDFL7YMID3e6hIAs2PsbqDNNvfg_dsLyo1-LX91Q$ . Thanks, Pierre > On 5 Feb 2025, at 4:39

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread neil liu
The corners can be set with MMG's own API function, LIBMMG3D_EXPORT int MMG3D_Set_corner(MMG5_pMesh mesh, MMG5_int k); The edges can be set with MMG's own API function, LIBMMG3D_EXPORT int MMG3D_Set_edges(MMG5_pMesh mesh, MMG5_int *edges, MMG5_int* refs); MMG doesn't have a very detailed docume

Re: [petsc-dev] Inquiry about contributing to MMG interface

2025-02-05 Thread Matthew Knepley
On Wed, Feb 5, 2025 at 2:06 PM neil liu wrote: > For open boundaries, MMG sets a reference for the internal open boundary > surface and then runs in opnbdy mode after we define the corners using > MMG3D_Set_corner. > > The edges are only desired for my own case. We need to know the edges > delimi