On Thu, 7 May 2020 at 17:53, Hammond, Glenn E via petsc-users <
[email protected]> wrote:

> Jed,
>
> We call MatMeshToCellGraph() to generate the dual matrix.  This function
> relies upon ParMETIS.  Can you point me to a similar function that does not
> require ParMETIS ( e.g. for PTScotch)?
>
>
Maybe a starting point:

DMPlexCreateFromCellList(comm, ..., &dm);
PetscSectionCreate(comm, &cellPartSection);
DMPlexGetPartitioner(dm, &partitioner);
PetscPartitionerSetType(partitioner, PETSCPARTITIONERPTSCOTCH);
PetscPartitionerDMPlexPartition(partitioner, dm, NULL, cellPartSection,
&cellPart);

One minor annoyance is that the first call will need the vertex
coordinates.  Matthew, any better way?


-- 
Lisandro Dalcin
============
Research Scientist
Extreme Computing Research Center (ECRC)
King Abdullah University of Science and Technology (KAUST)
http://ecrc.kaust.edu.sa/

Reply via email to