1966484cfSJed Brown static char help[] = "Test global numbering\n\n";
2966484cfSJed Brown
3966484cfSJed Brown #include <petscdmplex.h>
4966484cfSJed Brown #include <petscsf.h>
5966484cfSJed Brown
main(int argc,char ** argv)6d71ae5a4SJacob Faibussowitsch int main(int argc, char **argv)
7d71ae5a4SJacob Faibussowitsch {
8966484cfSJed Brown DM dm;
9*d1c35871SJed Brown IS point_numbering, point_numbering_parallel;
10966484cfSJed Brown PetscSF point_sf;
11966484cfSJed Brown
12327415f7SBarry Smith PetscFunctionBeginUser;
13966484cfSJed Brown PetscCall(PetscInitialize(&argc, &argv, NULL, help));
14966484cfSJed Brown PetscCall(DMCreate(PETSC_COMM_WORLD, &dm));
15966484cfSJed Brown PetscCall(DMSetType(dm, DMPLEX));
16966484cfSJed Brown PetscCall(DMSetFromOptions(dm));
17966484cfSJed Brown PetscCall(DMViewFromOptions(dm, NULL, "-dm_view"));
18966484cfSJed Brown
19966484cfSJed Brown PetscCall(DMPlexCreatePointNumbering(dm, &point_numbering));
20*d1c35871SJed Brown PetscCall(ISOnComm(point_numbering, PETSC_COMM_WORLD, PETSC_USE_POINTER, &point_numbering_parallel));
21*d1c35871SJed Brown PetscCall(ISViewFromOptions(point_numbering_parallel, NULL, "-point_numbering_view"));
22*d1c35871SJed Brown PetscCall(ISDestroy(&point_numbering_parallel));
23966484cfSJed Brown PetscCall(ISDestroy(&point_numbering));
24966484cfSJed Brown
25966484cfSJed Brown PetscCall(DMGetPointSF(dm, &point_sf));
26966484cfSJed Brown PetscCall(PetscSFViewFromOptions(point_sf, NULL, "-point_sf_view"));
27966484cfSJed Brown
28966484cfSJed Brown PetscCall(DMDestroy(&dm));
29966484cfSJed Brown PetscCall(PetscFinalize());
30966484cfSJed Brown return 0;
31966484cfSJed Brown }
32966484cfSJed Brown
33966484cfSJed Brown /*TEST
34966484cfSJed Brown
35966484cfSJed Brown test:
36966484cfSJed Brown nsize: 2
37966484cfSJed Brown args: -dm_plex_simplex 0 -dm_plex_box_faces 2,2 -dm_view -point_numbering_view -petscpartitioner_type simple
38966484cfSJed Brown TEST*/
39