Maybe try building by hand in a DMNetwork using a handrawn mesh with just a few vertices and endless and see if what you want to do makes sense
> On May 20, 2019, at 2:04 AM, Swarnava Ghosh <[email protected]> wrote: > > Hi Barry, > > Thank you for your email. My planned discretization is based on the fact that > I need a distributed unstructured mesh, where at each vertex point I perform > local calculations. For these calculations, I do NOT need need to assemble > any global matrix. I will have fields defined at the vertices, and using > linear interpolation, I am planing to find the values of these fields at some > spatial points with are within a ball around each vertex. Once the values of > these fields are known within the compact support around each vertex, I do > local computations to calculate my unknown field. My reason for having the a > mesh is essentially to 1) define fields at the vertices and 2) perform linear > interpolation (using finite elements) at some spatial points. Also the local > computations around at each vertex is computationally the most expensive > step. In that case, having a cell partitioning will result in vertices being > shared among processes, which will result in redundant computations. > > My idea is therefore to have DMNetwork to distribute vertices across > processes and use finite elements for the linear interpolation part. > > Thanks, > SG > > > > On Sun, May 19, 2019 at 6:54 PM Smith, Barry F. <[email protected]> wrote: > > I am not sure you want DMNetwork, DMNetwork has no geometry; it only has > vertices and edges. Vertices are connected to other vertices through the > edges. For example I can't see how one would do vertex centered finite volume > methods with DMNetwork. Maybe if you said something more about your planned > discretization we could figure something out. > > > On May 19, 2019, at 8:32 PM, Swarnava Ghosh <[email protected]> wrote: > > > > Hi Barry, > > > > No, the gmesh file contains a mesh and not a graph/network. > > In that case, is it possible to create a DMNetwork first from the DMPlex > > and then distribute the DMNetwork. > > > > I have this case, because I want a vertex partitioning of my mesh. Domain > > decomposition of DMPlex gives me cell partitioning. Essentially what I want > > is that no two processes can share a vertex BUT that can share an edge. > > Similar to how a DMDA is distributed. > > > > Thanks, > > Swarnava > > > > On Sun, May 19, 2019 at 4:50 PM Smith, Barry F. <[email protected]> wrote: > > > > This use case never occurred to us. Is the gmesh file containing a > > graph/network (as opposed to a mesh)? There seem two choices > > > > 1) if the gmesh file contains a graph/network one could write a gmesh > > reader for that case that reads directly for and constructs a DMNetwork or > > > > 2) write a converter for a DMPlex to DMNetwork. > > > > I lean toward the first > > > > Either way you need to understand the documentation for DMNetwork and > > how to build one up. > > > > > > Barry > > > > > > > On May 19, 2019, at 6:34 PM, Swarnava Ghosh via petsc-users > > > <[email protected]> wrote: > > > > > > Hi Petsc users and developers, > > > > > > I am trying to find a way of creating a DMNetwork from a DMPlex. I have > > > read the DMPlex from a gmesh file and have it distributed. > > > > > > Thanks, > > > SG > > >
