1 static char help[] = "Test global numbering\n\n"; 2 3 #include <petscdmplex.h> 4 #include <petscsf.h> 5 6 int main(int argc, char **argv) 7 { 8 DM dm; 9 IS point_numbering, point_numbering_parallel; 10 PetscSF point_sf; 11 12 PetscFunctionBeginUser; 13 PetscCall(PetscInitialize(&argc, &argv, NULL, help)); 14 PetscCall(DMCreate(PETSC_COMM_WORLD, &dm)); 15 PetscCall(DMSetType(dm, DMPLEX)); 16 PetscCall(DMSetFromOptions(dm)); 17 PetscCall(DMViewFromOptions(dm, NULL, "-dm_view")); 18 19 PetscCall(DMPlexCreatePointNumbering(dm, &point_numbering)); 20 PetscCall(ISOnComm(point_numbering, PETSC_COMM_WORLD, PETSC_USE_POINTER, &point_numbering_parallel)); 21 PetscCall(ISViewFromOptions(point_numbering_parallel, NULL, "-point_numbering_view")); 22 PetscCall(ISDestroy(&point_numbering_parallel)); 23 PetscCall(ISDestroy(&point_numbering)); 24 25 PetscCall(DMGetPointSF(dm, &point_sf)); 26 PetscCall(PetscSFViewFromOptions(point_sf, NULL, "-point_sf_view")); 27 28 PetscCall(DMDestroy(&dm)); 29 PetscCall(PetscFinalize()); 30 return 0; 31 } 32 33 /*TEST 34 35 test: 36 nsize: 2 37 args: -dm_plex_simplex 0 -dm_plex_box_faces 2,2 -dm_view -point_numbering_view -petscpartitioner_type simple 38 TEST*/ 39