On 2021-07-14 6:42 p.m., Matthew Knepley wrote:

Ah, there was a confusion of intent. GlobalToNatural() is for people that want data transformed back into the original order. I thought that was what you wanted. If you just want mesh points in the original order, we give you the transformation as part of the output of DMPlexDistribute(). The migrationSF that is output maps the original point to
the distributed point. You run it backwards to get the original ordering.

  Thanks,

     Matt

Hi,

that seems to work better!  However, if I understand well the migrationSF is giving information on the originating process where the elements have been migrated from.

Is there a PETSc way to either:

1) send back the information to the originating process (somewhat "inverting" the migrationSF) ?  So I can retrieve the "partitioning array"  (just like the "part" parameter in ParMETIS_V3_PartMeshKway) on the sender process.

or

2) Have the pre-migrationSF: I mean I would like to extract the "where are the elements going to be sent?" (again like "part" parameter)

If not, I can always build the communication myself...

Thanks,

Eric




Reply via email to