Hello,
I’ve a hard time answering the following DMPlex questions by just looking at 
some of the examples and manual.
Considering two DMPlex dm and dma, as in 
petsc/src/dm/impls/plex/examples/tests/ex19.c, I’d like to interpolate a simple 
P_1 FE function from dm to dma.
The DMCreateInterpolation call gives me:
[0]PETSC ERROR: Invalid argument
[0]PETSC ERROR: Number of fine indices 0 != 4 dual basis vecs
[…]
[0]PETSC ERROR: #1 DMPlexComputeInterpolatorGeneral() line 2508 in 
petsc/src/dm/impls/plex/plexfem.c
[0]PETSC ERROR: #2 DMCreateInterpolation_Plex() line 7688 in 
petsc/src/dm/impls/plex/plex.c
[0]PETSC ERROR: #3 DMCreateInterpolation() line 1139 in 
petsc/src/dm/interface/dm.c
But the DMs look OK, don’t they, cf. below?
So I have three simple questions:
1) are all tests at the bottom of ex19.c broken because of PRAgMaTIc or because 
of DMPlex currently not supporting some operations? (I’m not using PRAgMaTIc to 
do mesh adaptation, so I was hoping to not run into an error)
2) is DMCreateInterpolation + MatInterpolate the correct way of transferring 
one Vec from a DMPlex onto another?
3) if yes, by looking at the names of the arguments in 
DMPlexComputeInterpolatorGeneral, dmc and dmf, could you comment on the 
performance of this function for unrelated meshes, e.g., if both DMs are “fine” 
and not one coarse and the other fine (albeit non-nested), for simple P_k 
spaces.

Thanks in advance for your help,
Pierre

$ mpirun -n 1 ./ex19 -msh in.msh -init_dm_view ::ascii_info -adapt_dm_view 
::ascii_info -mat_view ::ascii_info -do_L2 -petscspace_degree 1
DM Object: DMinit 1 MPI processes
  type: plex
DMinit in 3 dimensions:
  0-cells: 1331
  1-cells: 7930
  2-cells: 12600
  3-cells: 6000
Labels:
  depth: 4 strata with value/size (0 (1331), 1 (7930), 2 (12600), 3 (6000))
  Face Sets: 6 strata with value/size (4 (200), 1 (200), 5 (200), 2 (200), 3 
(200), 6 (200))
  Cell Sets: 1 strata with value/size (0 (6000))
DM Object: DMadapt (adapt_) 1 MPI processes
  type: plex
DMadapt in 3 dimensions:
  0-cells: 2905
  1-cells: 18888
  2-cells: 31368
  3-cells: 15384
Labels:
  depth: 4 strata with value/size (0 (2905), 1 (18888), 2 (31368), 3 (15384))
  Face Sets: 6 strata with value/size (1 (200), 4 (200), 6 (200), 2 (200), 5 
(200), 3 (200))
  Cell Sets: 1 strata with value/size (0 (15384))


Reply via email to