1c4762a1bSJed Brown static char help[] = "Tests various DMPlex routines to construct, refine and distribute a mesh.\n\n"; 2c4762a1bSJed Brown 3c4762a1bSJed Brown #include <petscdmplex.h> 4012bc364SMatthew G. Knepley #include <petscdmplextransform.h> 50a19bb7dSprj- #include <petscsf.h> 6c4762a1bSJed Brown 7c4762a1bSJed Brown enum {STAGE_LOAD, STAGE_DISTRIBUTE, STAGE_REFINE, STAGE_OVERLAP}; 8c4762a1bSJed Brown 9c4762a1bSJed Brown typedef struct { 10c4762a1bSJed Brown PetscLogEvent createMeshEvent; 11c4762a1bSJed Brown PetscLogStage stages[4]; 12c4762a1bSJed Brown /* Domain and mesh definition */ 13c4762a1bSJed Brown PetscInt dim; /* The topological mesh dimension */ 14c4762a1bSJed Brown PetscInt overlap; /* The cell overlap to use during partitioning */ 15c4762a1bSJed Brown PetscBool testp4est[2]; 16c4762a1bSJed Brown PetscBool redistribute; 17c4762a1bSJed Brown PetscBool final_ref; /* Run refinement at the end */ 18c4762a1bSJed Brown PetscBool final_diagnostics; /* Run diagnostics on the final mesh */ 19c4762a1bSJed Brown } AppCtx; 20c4762a1bSJed Brown 21c4762a1bSJed Brown PetscErrorCode ProcessOptions(MPI_Comm comm, AppCtx *options) 22c4762a1bSJed Brown { 23c4762a1bSJed Brown PetscFunctionBegin; 24c4762a1bSJed Brown options->dim = 2; 25c4762a1bSJed Brown options->overlap = 0; 26c4762a1bSJed Brown options->testp4est[0] = PETSC_FALSE; 27c4762a1bSJed Brown options->testp4est[1] = PETSC_FALSE; 28c4762a1bSJed Brown options->redistribute = PETSC_FALSE; 29c4762a1bSJed Brown options->final_ref = PETSC_FALSE; 30c4762a1bSJed Brown options->final_diagnostics = PETSC_TRUE; 31c4762a1bSJed Brown 32d0609cedSBarry Smith PetscOptionsBegin(comm, "", "Meshing Problem Options", "DMPLEX"); 339566063dSJacob Faibussowitsch PetscCall(PetscOptionsRangeInt("-dim", "The topological mesh dimension", "ex1.c", options->dim, &options->dim, NULL,1,3)); 349566063dSJacob Faibussowitsch PetscCall(PetscOptionsBoundedInt("-overlap", "The cell overlap for partitioning", "ex1.c", options->overlap, &options->overlap, NULL,0)); 359566063dSJacob Faibussowitsch PetscCall(PetscOptionsBool("-test_p4est_seq", "Test p4est with sequential base DM", "ex1.c", options->testp4est[0], &options->testp4est[0], NULL)); 369566063dSJacob Faibussowitsch PetscCall(PetscOptionsBool("-test_p4est_par", "Test p4est with parallel base DM", "ex1.c", options->testp4est[1], &options->testp4est[1], NULL)); 379566063dSJacob Faibussowitsch PetscCall(PetscOptionsBool("-test_redistribute", "Test redistribution", "ex1.c", options->redistribute, &options->redistribute, NULL)); 389566063dSJacob Faibussowitsch PetscCall(PetscOptionsBool("-final_ref", "Run uniform refinement on the final mesh", "ex1.c", options->final_ref, &options->final_ref, NULL)); 399566063dSJacob Faibussowitsch PetscCall(PetscOptionsBool("-final_diagnostics", "Run diagnostics on the final mesh", "ex1.c", options->final_diagnostics, &options->final_diagnostics, NULL)); 40d0609cedSBarry Smith PetscOptionsEnd(); 41c4762a1bSJed Brown 429566063dSJacob Faibussowitsch PetscCall(PetscLogEventRegister("CreateMesh", DM_CLASSID, &options->createMeshEvent)); 439566063dSJacob Faibussowitsch PetscCall(PetscLogStageRegister("MeshLoad", &options->stages[STAGE_LOAD])); 449566063dSJacob Faibussowitsch PetscCall(PetscLogStageRegister("MeshDistribute", &options->stages[STAGE_DISTRIBUTE])); 459566063dSJacob Faibussowitsch PetscCall(PetscLogStageRegister("MeshRefine", &options->stages[STAGE_REFINE])); 469566063dSJacob Faibussowitsch PetscCall(PetscLogStageRegister("MeshOverlap", &options->stages[STAGE_OVERLAP])); 47c4762a1bSJed Brown PetscFunctionReturn(0); 48c4762a1bSJed Brown } 49c4762a1bSJed Brown 50c4762a1bSJed Brown PetscErrorCode CreateMesh(MPI_Comm comm, AppCtx *user, DM *dm) 51c4762a1bSJed Brown { 52c4762a1bSJed Brown PetscInt dim = user->dim; 53c4762a1bSJed Brown PetscBool testp4est_seq = user->testp4est[0]; 54c4762a1bSJed Brown PetscBool testp4est_par = user->testp4est[1]; 55c4762a1bSJed Brown PetscMPIInt rank, size; 56c4762a1bSJed Brown 57c4762a1bSJed Brown PetscFunctionBegin; 589566063dSJacob Faibussowitsch PetscCall(PetscLogEventBegin(user->createMeshEvent,0,0,0,0)); 599566063dSJacob Faibussowitsch PetscCallMPI(MPI_Comm_rank(comm, &rank)); 609566063dSJacob Faibussowitsch PetscCallMPI(MPI_Comm_size(comm, &size)); 619566063dSJacob Faibussowitsch PetscCall(PetscLogStagePush(user->stages[STAGE_LOAD])); 629566063dSJacob Faibussowitsch PetscCall(DMCreate(comm, dm)); 639566063dSJacob Faibussowitsch PetscCall(DMSetType(*dm, DMPLEX)); 649566063dSJacob Faibussowitsch PetscCall(DMPlexDistributeSetDefault(*dm, PETSC_FALSE)); 659566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(*dm)); 669566063dSJacob Faibussowitsch PetscCall(DMLocalizeCoordinates(*dm)); 67db2bf62eSStefano Zampini 689566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm,NULL,"-init_dm_view")); 699566063dSJacob Faibussowitsch PetscCall(DMGetDimension(*dm, &dim)); 70c4762a1bSJed Brown 71c4762a1bSJed Brown if (testp4est_seq) { 72*6cdd483eSPierre Jolivet PetscCheck(PetscDefined(HAVE_P4EST),PETSC_COMM_WORLD,PETSC_ERR_SUP,"Reconfigure PETSc with --download-p4est"); 73c4762a1bSJed Brown DM dmConv = NULL; 74c4762a1bSJed Brown 7519a9de31SVaclav Hapla PetscCall(DMPlexCheck(*dm)); 769566063dSJacob Faibussowitsch PetscCall(DMPlexSetRefinementUniform(*dm, PETSC_TRUE)); 779566063dSJacob Faibussowitsch PetscCall(DMPlexSetTransformType(*dm, DMPLEXREFINETOBOX)); 789566063dSJacob Faibussowitsch PetscCall(DMRefine(*dm, PETSC_COMM_WORLD, &dmConv)); 799566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 80c4762a1bSJed Brown if (dmConv) { 819566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 82c4762a1bSJed Brown *dm = dmConv; 83c4762a1bSJed Brown } 849566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm,NULL,"-initref_dm_view")); 8519a9de31SVaclav Hapla PetscCall(DMPlexCheck(*dm)); 86c4762a1bSJed Brown 878fb5bd83SMatthew G. Knepley /* For topologically periodic meshes, we first localize coordinates, 888fb5bd83SMatthew G. Knepley and then remove any information related with the 898fb5bd83SMatthew G. Knepley automatic computation of localized vertices. 908fb5bd83SMatthew G. Knepley This way, refinement operations and conversions to p4est 918fb5bd83SMatthew G. Knepley will preserve the shape of the domain in physical space */ 924fb89dddSMatthew G. Knepley PetscCall(DMSetPeriodicity(*dm, NULL, NULL, NULL)); 938fb5bd83SMatthew G. Knepley 949566063dSJacob Faibussowitsch PetscCall(DMConvert(*dm,dim == 2 ? DMP4EST : DMP8EST,&dmConv)); 95c4762a1bSJed Brown if (dmConv) { 969566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) dmConv, "conv_seq_1_")); 979566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(dmConv)); 989566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 99c4762a1bSJed Brown *dm = dmConv; 100c4762a1bSJed Brown } 1019566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "conv_seq_1_")); 1029566063dSJacob Faibussowitsch PetscCall(DMSetUp(*dm)); 1039566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_view")); 1049566063dSJacob Faibussowitsch PetscCall(DMConvert(*dm,DMPLEX,&dmConv)); 105c4762a1bSJed Brown if (dmConv) { 1069566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) dmConv, "conv_seq_2_")); 1079566063dSJacob Faibussowitsch PetscCall(DMPlexDistributeSetDefault(dmConv, PETSC_FALSE)); 1089566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(dmConv)); 1099566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 110c4762a1bSJed Brown *dm = dmConv; 111c4762a1bSJed Brown } 1129566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "conv_seq_2_")); 1139566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_view")); 1149566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 115c4762a1bSJed Brown } 116c4762a1bSJed Brown 1179566063dSJacob Faibussowitsch PetscCall(PetscLogStagePop()); 118c4762a1bSJed Brown if (!testp4est_seq) { 1199566063dSJacob Faibussowitsch PetscCall(PetscLogStagePush(user->stages[STAGE_DISTRIBUTE])); 1209566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_pre_dist_view")); 1219566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "dist_")); 1229566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(*dm)); 1239566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 1249566063dSJacob Faibussowitsch PetscCall(PetscLogStagePop()); 1259566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-distributed_dm_view")); 126c4762a1bSJed Brown } 1279566063dSJacob Faibussowitsch PetscCall(PetscLogStagePush(user->stages[STAGE_REFINE])); 1289566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "ref_")); 1299566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(*dm)); 1309566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 1319566063dSJacob Faibussowitsch PetscCall(PetscLogStagePop()); 132c4762a1bSJed Brown 133c4762a1bSJed Brown if (testp4est_par) { 134*6cdd483eSPierre Jolivet PetscCheck(PetscDefined(HAVE_P4EST),PETSC_COMM_WORLD,PETSC_ERR_SUP,"Reconfigure PETSc with --download-p4est"); 135c4762a1bSJed Brown DM dmConv = NULL; 136c4762a1bSJed Brown 13719a9de31SVaclav Hapla PetscCall(DMPlexCheck(*dm)); 1389566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_tobox_view")); 1399566063dSJacob Faibussowitsch PetscCall(DMPlexSetRefinementUniform(*dm, PETSC_TRUE)); 1409566063dSJacob Faibussowitsch PetscCall(DMPlexSetTransformType(*dm, DMPLEXREFINETOBOX)); 1419566063dSJacob Faibussowitsch PetscCall(DMRefine(*dm, PETSC_COMM_WORLD, &dmConv)); 1429566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 143c4762a1bSJed Brown if (dmConv) { 1449566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 145c4762a1bSJed Brown *dm = dmConv; 146c4762a1bSJed Brown } 1479566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_tobox_view")); 14819a9de31SVaclav Hapla PetscCall(DMPlexCheck(*dm)); 149c4762a1bSJed Brown 1509566063dSJacob Faibussowitsch PetscCall(DMConvert(*dm,dim == 2 ? DMP4EST : DMP8EST,&dmConv)); 151c4762a1bSJed Brown if (dmConv) { 1529566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) dmConv, "conv_par_1_")); 1539566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(dmConv)); 1549566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 155c4762a1bSJed Brown *dm = dmConv; 156c4762a1bSJed Brown } 1579566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "conv_par_1_")); 1589566063dSJacob Faibussowitsch PetscCall(DMSetUp(*dm)); 1599566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_view")); 1609566063dSJacob Faibussowitsch PetscCall(DMConvert(*dm, DMPLEX, &dmConv)); 161c4762a1bSJed Brown if (dmConv) { 1629566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) dmConv, "conv_par_2_")); 1639566063dSJacob Faibussowitsch PetscCall(DMPlexDistributeSetDefault(dmConv, PETSC_FALSE)); 1649566063dSJacob Faibussowitsch PetscCall(DMSetFromOptions(dmConv)); 1659566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 166c4762a1bSJed Brown *dm = dmConv; 167c4762a1bSJed Brown } 1689566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, "conv_par_2_")); 1699566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_view")); 1709566063dSJacob Faibussowitsch PetscCall(PetscObjectSetOptionsPrefix((PetscObject) *dm, NULL)); 171c4762a1bSJed Brown } 172c4762a1bSJed Brown 173c4762a1bSJed Brown /* test redistribution of an already distributed mesh */ 174c4762a1bSJed Brown if (user->redistribute) { 175c4762a1bSJed Brown DM distributedMesh; 1760a19bb7dSprj- PetscSF sf; 1770a19bb7dSprj- PetscInt nranks; 178c4762a1bSJed Brown 1799566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_pre_redist_view")); 1809566063dSJacob Faibussowitsch PetscCall(DMPlexDistribute(*dm, 0, NULL, &distributedMesh)); 181c4762a1bSJed Brown if (distributedMesh) { 1829566063dSJacob Faibussowitsch PetscCall(DMGetPointSF(distributedMesh, &sf)); 1839566063dSJacob Faibussowitsch PetscCall(PetscSFSetUp(sf)); 1849566063dSJacob Faibussowitsch PetscCall(DMGetNeighbors(distributedMesh, &nranks, NULL)); 1859566063dSJacob Faibussowitsch PetscCallMPI(MPI_Allreduce(MPI_IN_PLACE, &nranks, 1, MPIU_INT, MPI_MIN, PetscObjectComm((PetscObject)*dm))); 18663a3b9bcSJacob Faibussowitsch PetscCall(PetscViewerASCIIPrintf(PETSC_VIEWER_STDOUT_(PetscObjectComm((PetscObject)*dm)), "Minimum number of neighbors: %" PetscInt_FMT "\n", nranks)); 1879566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 188c4762a1bSJed Brown *dm = distributedMesh; 189c4762a1bSJed Brown } 1909566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_post_redist_view")); 191c4762a1bSJed Brown } 192c4762a1bSJed Brown 193c4762a1bSJed Brown if (user->overlap) { 194c4762a1bSJed Brown DM overlapMesh = NULL; 195c4762a1bSJed Brown 196c4762a1bSJed Brown /* Add the overlap to refined mesh */ 1979566063dSJacob Faibussowitsch PetscCall(PetscLogStagePush(user->stages[STAGE_OVERLAP])); 1989566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_pre_overlap_view")); 1999566063dSJacob Faibussowitsch PetscCall(DMPlexDistributeOverlap(*dm, user->overlap, NULL, &overlapMesh)); 200c4762a1bSJed Brown if (overlapMesh) { 201c4762a1bSJed Brown PetscInt overlap; 2029566063dSJacob Faibussowitsch PetscCall(DMPlexGetOverlap(overlapMesh, &overlap)); 20363a3b9bcSJacob Faibussowitsch PetscCall(PetscViewerASCIIPrintf(PETSC_VIEWER_STDOUT_WORLD, "Overlap: %" PetscInt_FMT "\n", overlap)); 2049566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 205c4762a1bSJed Brown *dm = overlapMesh; 206c4762a1bSJed Brown } 2079566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_post_overlap_view")); 2089566063dSJacob Faibussowitsch PetscCall(PetscLogStagePop()); 209c4762a1bSJed Brown } 210c4762a1bSJed Brown if (user->final_ref) { 211c4762a1bSJed Brown DM refinedMesh = NULL; 212c4762a1bSJed Brown 2139566063dSJacob Faibussowitsch PetscCall(DMPlexSetRefinementUniform(*dm, PETSC_TRUE)); 2149566063dSJacob Faibussowitsch PetscCall(DMRefine(*dm, comm, &refinedMesh)); 215c4762a1bSJed Brown if (refinedMesh) { 2169566063dSJacob Faibussowitsch PetscCall(DMDestroy(dm)); 217c4762a1bSJed Brown *dm = refinedMesh; 218c4762a1bSJed Brown } 219c4762a1bSJed Brown } 220c4762a1bSJed Brown 2219566063dSJacob Faibussowitsch PetscCall(PetscObjectSetName((PetscObject) *dm, "Generated Mesh")); 2229566063dSJacob Faibussowitsch PetscCall(DMViewFromOptions(*dm, NULL, "-dm_view")); 2231baa6e33SBarry Smith if (user->final_diagnostics) PetscCall(DMPlexCheck(*dm)); 2249566063dSJacob Faibussowitsch PetscCall(PetscLogEventEnd(user->createMeshEvent,0,0,0,0)); 225c4762a1bSJed Brown PetscFunctionReturn(0); 226c4762a1bSJed Brown } 227c4762a1bSJed Brown 228c4762a1bSJed Brown int main(int argc, char **argv) 229c4762a1bSJed Brown { 23030602db0SMatthew G. Knepley DM dm; 23130602db0SMatthew G. Knepley AppCtx user; 232c4762a1bSJed Brown 233327415f7SBarry Smith PetscFunctionBeginUser; 2349566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc, &argv, NULL, help)); 2359566063dSJacob Faibussowitsch PetscCall(ProcessOptions(PETSC_COMM_WORLD, &user)); 2369566063dSJacob Faibussowitsch PetscCall(CreateMesh(PETSC_COMM_WORLD, &user, &dm)); 2379566063dSJacob Faibussowitsch PetscCall(DMDestroy(&dm)); 2389566063dSJacob Faibussowitsch PetscCall(PetscFinalize()); 239b122ec5aSJacob Faibussowitsch return 0; 240c4762a1bSJed Brown } 241c4762a1bSJed Brown 242c4762a1bSJed Brown /*TEST 243c4762a1bSJed Brown 244c4762a1bSJed Brown # CTetGen 0-1 245c4762a1bSJed Brown test: 246c4762a1bSJed Brown suffix: 0 247c4762a1bSJed Brown requires: ctetgen 24830602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 3 -dim 3 -dm_plex_interpolate 0 -ctetgen_verbose 4 -dm_view ascii::ascii_info_detail -info :~sys 249c4762a1bSJed Brown test: 250c4762a1bSJed Brown suffix: 1 251c4762a1bSJed Brown requires: ctetgen 25230602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 3 -dim 3 -dm_plex_interpolate 0 -ctetgen_verbose 4 -dm_refine_volume_limit_pre 0.0625 -dm_view ascii::ascii_info_detail -info :~sys 253c4762a1bSJed Brown 254c4762a1bSJed Brown # 2D LaTex and ASCII output 2-9 255c4762a1bSJed Brown test: 256c4762a1bSJed Brown suffix: 2 257c4762a1bSJed Brown requires: triangle 25830602db0SMatthew G. Knepley args: -dm_plex_interpolate 0 -dm_view ascii::ascii_latex 259c4762a1bSJed Brown test: 260c4762a1bSJed Brown suffix: 3 261c4762a1bSJed Brown requires: triangle 26230602db0SMatthew G. Knepley args: -ref_dm_refine 1 -dm_view ascii::ascii_info_detail 263c4762a1bSJed Brown test: 264c4762a1bSJed Brown suffix: 4 265c4762a1bSJed Brown requires: triangle 266c4762a1bSJed Brown nsize: 2 26730602db0SMatthew G. Knepley args: -dm_coord_space 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type simple -dm_view ascii::ascii_info_detail 268c4762a1bSJed Brown test: 269c4762a1bSJed Brown suffix: 5 270c4762a1bSJed Brown requires: triangle 271c4762a1bSJed Brown nsize: 2 27230602db0SMatthew G. Knepley args: -dm_coord_space 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type simple -dm_view ascii::ascii_latex 273c4762a1bSJed Brown test: 274c4762a1bSJed Brown suffix: 6 27530602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_simplex 0 -dm_view ascii::ascii_info_detail 276c4762a1bSJed Brown test: 277c4762a1bSJed Brown suffix: 7 27830602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_simplex 0 -ref_dm_refine 1 -dm_view ascii::ascii_info_detail 279c4762a1bSJed Brown test: 280c4762a1bSJed Brown suffix: 8 281c4762a1bSJed Brown nsize: 2 28230602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type simple -dm_view ascii::ascii_latex 283c4762a1bSJed Brown 284c4762a1bSJed Brown # 1D ASCII output 28530602db0SMatthew G. Knepley testset: 28630602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 1 -dm_view ascii::ascii_info_detail -dm_plex_check_all 287c4762a1bSJed Brown test: 288c4762a1bSJed Brown suffix: 1d_0 28930602db0SMatthew G. Knepley args: 290c4762a1bSJed Brown test: 291c4762a1bSJed Brown suffix: 1d_1 29230602db0SMatthew G. Knepley args: -ref_dm_refine 2 293c4762a1bSJed Brown test: 294c4762a1bSJed Brown suffix: 1d_2 29530602db0SMatthew G. Knepley args: -dm_plex_box_faces 5 -dm_plex_box_bd periodic 296c4762a1bSJed Brown 297c4762a1bSJed Brown # Parallel refinement tests with overlap 298c4762a1bSJed Brown test: 299c4762a1bSJed Brown suffix: refine_overlap_1d 300c4762a1bSJed Brown nsize: 2 30130602db0SMatthew G. Knepley args: -dm_plex_dim 1 -dim 1 -dm_plex_box_faces 4 -dm_plex_box_faces 4 -ref_dm_refine 1 -overlap {{0 1 2}separate output} -dist_dm_distribute -petscpartitioner_type simple -dm_view ascii::ascii_info 302c4762a1bSJed Brown test: 303c4762a1bSJed Brown suffix: refine_overlap_2d 304c4762a1bSJed Brown requires: triangle 305c4762a1bSJed Brown nsize: {{2 8}separate output} 30630602db0SMatthew G. Knepley args: -dm_coord_space 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type simple -overlap {{0 1 2}separate output} -dm_view ascii::ascii_info 307c4762a1bSJed Brown 308d410b0cfSMatthew G. Knepley # Parallel extrusion tests 309d410b0cfSMatthew G. Knepley test: 310d410b0cfSMatthew G. Knepley suffix: spheresurface_extruded 311d410b0cfSMatthew G. Knepley nsize : 4 312d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_shape sphere -dm_extrude 3 -dist_dm_distribute -petscpartitioner_type simple \ 313d410b0cfSMatthew G. Knepley -dm_plex_check_all -dm_view ::ascii_info_detail -dm_plex_view_coord_system spherical 314d410b0cfSMatthew G. Knepley 315d410b0cfSMatthew G. Knepley test: 316d410b0cfSMatthew G. Knepley suffix: spheresurface_extruded_symmetric 317d410b0cfSMatthew G. Knepley nsize : 4 318d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_shape sphere -dm_extrude 3 -dm_plex_transform_extrude_symmetric -dist_dm_distribute -petscpartitioner_type simple \ 319d410b0cfSMatthew G. Knepley -dm_plex_check_all -dm_view ::ascii_info_detail -dm_plex_view_coord_system spherical 320d410b0cfSMatthew G. Knepley 321c4762a1bSJed Brown # Parallel simple partitioner tests 322c4762a1bSJed Brown test: 323c4762a1bSJed Brown suffix: part_simple_0 324c4762a1bSJed Brown requires: triangle 325c4762a1bSJed Brown nsize: 2 32630602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_interpolate 0 -dist_dm_distribute -petscpartitioner_type simple -dist_partition_view -dm_view ascii::ascii_info_detail 327c4762a1bSJed Brown test: 328c4762a1bSJed Brown suffix: part_simple_1 329c4762a1bSJed Brown requires: triangle 330c4762a1bSJed Brown nsize: 8 33130602db0SMatthew G. Knepley args: -dm_coord_space 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type simple -dist_partition_view -dm_view ascii::ascii_info_detail 332c4762a1bSJed Brown 333c4762a1bSJed Brown # Parallel partitioner tests 334c4762a1bSJed Brown test: 335c4762a1bSJed Brown suffix: part_parmetis_0 336c4762a1bSJed Brown requires: parmetis 337c4762a1bSJed Brown nsize: 2 3385a107427SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type parmetis -dm_view -petscpartitioner_view -test_redistribute -dm_plex_csr_alg {{mat graph overlap}} -dm_pre_redist_view ::load_balance -dm_post_redist_view ::load_balance -petscpartitioner_view_graph 339c4762a1bSJed Brown test: 340c4762a1bSJed Brown suffix: part_ptscotch_0 341c4762a1bSJed Brown requires: ptscotch 342c4762a1bSJed Brown nsize: 2 3435a107427SMatthew G. Knepley args: -dm_plex_simplex 0 -dist_dm_distribute -petscpartitioner_type ptscotch -petscpartitioner_view -petscpartitioner_ptscotch_strategy quality -test_redistribute -dm_plex_csr_alg {{mat graph overlap}} -dm_pre_redist_view ::load_balance -dm_post_redist_view ::load_balance -petscpartitioner_view_graph 344c4762a1bSJed Brown test: 345c4762a1bSJed Brown suffix: part_ptscotch_1 346c4762a1bSJed Brown requires: ptscotch 347c4762a1bSJed Brown nsize: 8 34830602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 1 -dist_dm_distribute -petscpartitioner_type ptscotch -petscpartitioner_view -petscpartitioner_ptscotch_imbalance 0.1 349c4762a1bSJed Brown 350c4762a1bSJed Brown # CGNS reader tests 10-11 (need to find smaller test meshes) 351c4762a1bSJed Brown test: 352c4762a1bSJed Brown suffix: cgns_0 353c4762a1bSJed Brown requires: cgns 35430602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/tut21.cgns -dm_view 355c4762a1bSJed Brown 356e826b96eSMatthew G. Knepley # ExodusII reader tests 357e826b96eSMatthew G. Knepley testset: 358e826b96eSMatthew G. Knepley args: -dm_plex_boundary_label boundary -dm_plex_check_all -dm_view 359e826b96eSMatthew G. Knepley test: 360e826b96eSMatthew G. Knepley suffix: exo_0 361e826b96eSMatthew G. Knepley requires: exodusii 362e826b96eSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/sevenside-quad.exo 363e826b96eSMatthew G. Knepley test: 364e826b96eSMatthew G. Knepley suffix: exo_1 365e826b96eSMatthew G. Knepley requires: exodusii 366e826b96eSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/sevenside-quad-15.exo 367e826b96eSMatthew G. Knepley test: 368e826b96eSMatthew G. Knepley suffix: exo_2 369e826b96eSMatthew G. Knepley requires: exodusii 370e826b96eSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/squaremotor-30.exo 371e826b96eSMatthew G. Knepley test: 372e826b96eSMatthew G. Knepley suffix: exo_3 373e826b96eSMatthew G. Knepley requires: exodusii 374e826b96eSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/blockcylinder-50.exo 375e826b96eSMatthew G. Knepley test: 376e826b96eSMatthew G. Knepley suffix: exo_4 377e826b96eSMatthew G. Knepley requires: exodusii 378e826b96eSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/simpleblock-100.exo 379e826b96eSMatthew G. Knepley 380c4762a1bSJed Brown # Gmsh mesh reader tests 38130602db0SMatthew G. Knepley testset: 38230602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_view 38330602db0SMatthew G. Knepley 384c4762a1bSJed Brown test: 385c4762a1bSJed Brown suffix: gmsh_0 386c4762a1bSJed Brown requires: !single 38730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 388c4762a1bSJed Brown test: 389c4762a1bSJed Brown suffix: gmsh_1 390c4762a1bSJed Brown requires: !single 39130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.msh 392c4762a1bSJed Brown test: 393c4762a1bSJed Brown suffix: gmsh_2 394c4762a1bSJed Brown requires: !single 39530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin.msh 396c4762a1bSJed Brown test: 397c4762a1bSJed Brown suffix: gmsh_3 398c4762a1bSJed Brown nsize: 3 399c4762a1bSJed Brown requires: !single 40030602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.msh -dist_dm_distribute -petscpartitioner_type simple 401c4762a1bSJed Brown test: 402c4762a1bSJed Brown suffix: gmsh_4 403c4762a1bSJed Brown nsize: 3 404c4762a1bSJed Brown requires: !single 40530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin.msh -dist_dm_distribute -petscpartitioner_type simple 406c4762a1bSJed Brown test: 407c4762a1bSJed Brown suffix: gmsh_5 408c4762a1bSJed Brown requires: !single 40930602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_quad.msh 410c4762a1bSJed Brown # TODO: it seems the mesh is not a valid gmsh (inverted cell) 411c4762a1bSJed Brown test: 412c4762a1bSJed Brown suffix: gmsh_6 413c4762a1bSJed Brown requires: !single 41430602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin_physnames.msh -final_diagnostics 0 415c4762a1bSJed Brown test: 416c4762a1bSJed Brown suffix: gmsh_7 41730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere_bin.msh -dm_view ::ascii_info_detail -dm_plex_check_all 418c4762a1bSJed Brown test: 419c4762a1bSJed Brown suffix: gmsh_8 42030602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere.msh -dm_view ::ascii_info_detail -dm_plex_check_all 421c4762a1bSJed Brown testset: 42230602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic_bin.msh -dm_view ::ascii_info_detail -dm_plex_check_all 423c4762a1bSJed Brown test: 424c4762a1bSJed Brown suffix: gmsh_9 425c4762a1bSJed Brown test: 426c4762a1bSJed Brown suffix: gmsh_9_periodic_0 427c4762a1bSJed Brown args: -dm_plex_gmsh_periodic 0 428c4762a1bSJed Brown testset: 42930602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh -dm_view ::ascii_info_detail -dm_plex_check_all 430c4762a1bSJed Brown test: 431c4762a1bSJed Brown suffix: gmsh_10 432c4762a1bSJed Brown test: 433c4762a1bSJed Brown suffix: gmsh_10_periodic_0 434c4762a1bSJed Brown args: -dm_plex_gmsh_periodic 0 435c4762a1bSJed Brown testset: 43630602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh -dm_view ::ascii_info_detail -dm_plex_check_all -ref_dm_refine 1 437c4762a1bSJed Brown test: 438c4762a1bSJed Brown suffix: gmsh_11 439c4762a1bSJed Brown test: 440c4762a1bSJed Brown suffix: gmsh_11_periodic_0 441c4762a1bSJed Brown args: -dm_plex_gmsh_periodic 0 442c4762a1bSJed Brown # TODO: it seems the mesh is not a valid gmsh (inverted cell) 443c4762a1bSJed Brown test: 444c4762a1bSJed Brown suffix: gmsh_12 445c4762a1bSJed Brown nsize: 4 446c4762a1bSJed Brown requires: !single mpiio 44730602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin_physnames.msh -viewer_binary_mpiio -dist_dm_distribute -petscpartitioner_type simple -dm_view -final_diagnostics 0 448c4762a1bSJed Brown test: 449c4762a1bSJed Brown suffix: gmsh_13_hybs2t 450c4762a1bSJed Brown nsize: 4 451012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_triquad.msh -dist_dm_distribute -petscpartitioner_type simple -dm_view -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_plex_check_all 452c4762a1bSJed Brown test: 453c4762a1bSJed Brown suffix: gmsh_14_ext 454c4762a1bSJed Brown requires: !single 455d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_extrude 2 -dm_plex_transform_extrude_thickness 1.5 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin.msh -dm_view -dm_plex_check_all 456c4762a1bSJed Brown test: 457c4762a1bSJed Brown suffix: gmsh_14_ext_s2t 458c4762a1bSJed Brown requires: !single 459d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_extrude 2 -dm_plex_transform_extrude_thickness 1.5 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_bin.msh -dm_view -dm_plex_check_all -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox 460c4762a1bSJed Brown test: 461c4762a1bSJed Brown suffix: gmsh_15_hyb3d 46230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh -dm_view -dm_plex_check_all 463c4762a1bSJed Brown test: 464c4762a1bSJed Brown suffix: gmsh_15_hyb3d_vtk 46530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh -dm_view vtk: -dm_plex_gmsh_hybrid -dm_plex_check_all 466c4762a1bSJed Brown test: 467c4762a1bSJed Brown suffix: gmsh_15_hyb3d_s2t 468012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh -dm_view -dm_plex_check_all -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox 469c4762a1bSJed Brown test: 470c4762a1bSJed Brown suffix: gmsh_16_spheresurface 471c4762a1bSJed Brown nsize : 4 47230602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple 473c4762a1bSJed Brown test: 474c4762a1bSJed Brown suffix: gmsh_16_spheresurface_s2t 475c4762a1bSJed Brown nsize : 4 476012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple 477c4762a1bSJed Brown test: 478c4762a1bSJed Brown suffix: gmsh_16_spheresurface_extruded 479c4762a1bSJed Brown nsize : 4 480d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_extrude 3 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple 481c4762a1bSJed Brown test: 482c4762a1bSJed Brown suffix: gmsh_16_spheresurface_extruded_s2t 483c4762a1bSJed Brown nsize : 4 484d410b0cfSMatthew G. Knepley args: -dm_coord_space 0 -dm_extrude 3 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple 485c4762a1bSJed Brown test: 486c4762a1bSJed Brown suffix: gmsh_17_hyb3d_interp_ascii 48730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_hexwedge.msh -dm_view -dm_plex_check_all 488c4762a1bSJed Brown test: 489c4762a1bSJed Brown suffix: exodus_17_hyb3d_interp_ascii 490c4762a1bSJed Brown requires: exodusii 49130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_hexwedge.exo -dm_view -dm_plex_check_all 492c4762a1bSJed Brown 493c4762a1bSJed Brown # Legacy Gmsh v22/v40 ascii/binary reader tests 494c4762a1bSJed Brown testset: 495c4762a1bSJed Brown output_file: output/ex1_gmsh_3d_legacy.out 49630602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_view ::ascii_info_detail -dm_plex_check_all 497c4762a1bSJed Brown test: 498c4762a1bSJed Brown suffix: gmsh_3d_ascii_v22 49930602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii.msh2 500c4762a1bSJed Brown test: 501c4762a1bSJed Brown suffix: gmsh_3d_ascii_v40 50230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii.msh4 503c4762a1bSJed Brown test: 504c4762a1bSJed Brown suffix: gmsh_3d_binary_v22 505a48df7f6SMatthew G. Knepley # Could not remake binary to remove extra face labeling 506a48df7f6SMatthew G. Knepley output_file: output/ex1_gmsh_3d_legacy_v22_bin.out 50730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary.msh2 508c4762a1bSJed Brown test: 509c4762a1bSJed Brown suffix: gmsh_3d_binary_v40 510c4762a1bSJed Brown requires: long64 51130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary.msh4 512c4762a1bSJed Brown 513c4762a1bSJed Brown # Gmsh v41 ascii/binary reader tests 514c4762a1bSJed Brown testset: # 32bit mesh, sequential 51581a1af93SMatthew G. Knepley args: -dm_coord_space 0 -dm_view ::ascii_info_detail -dm_plex_check_all -dm_plex_gmsh_mark_vertices 516c4762a1bSJed Brown output_file: output/ex1_gmsh_3d_32.out 517c4762a1bSJed Brown test: 518c4762a1bSJed Brown suffix: gmsh_3d_ascii_v41_32 51930602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii-32.msh 520c4762a1bSJed Brown test: 521c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_32 52230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-32.msh 523c4762a1bSJed Brown test: 524c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_32_mpiio 525dfd57a17SPierre Jolivet requires: defined(PETSC_HAVE_MPIIO) 52630602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-32.msh -viewer_binary_mpiio 5278cd392daSMatthew G. Knepley test: 5288cd392daSMatthew G. Knepley suffix: gmsh_quad_8node 5298cd392daSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-qua-8node.msh \ 53081a1af93SMatthew G. Knepley -dm_view -dm_plex_check_all -dm_plex_gmsh_mark_vertices 5318cd392daSMatthew G. Knepley test: 5328cd392daSMatthew G. Knepley suffix: gmsh_hex_20node 5338cd392daSMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-hex-20node.msh \ 53481a1af93SMatthew G. Knepley -dm_view -dm_plex_check_all -dm_plex_gmsh_mark_vertices 535c4762a1bSJed Brown testset: # 32bit mesh, parallel 53681a1af93SMatthew G. Knepley args: -dm_coord_space 0 -dist_dm_distribute -petscpartitioner_type simple -dm_view ::ascii_info_detail -dm_plex_check_all -dm_plex_gmsh_mark_vertices 537c4762a1bSJed Brown nsize: 2 538c4762a1bSJed Brown output_file: output/ex1_gmsh_3d_32_np2.out 539c4762a1bSJed Brown test: 540c4762a1bSJed Brown suffix: gmsh_3d_ascii_v41_32_np2 54130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii-32.msh 542c4762a1bSJed Brown test: 543c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_32_np2 54430602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-32.msh 545c4762a1bSJed Brown test: 546c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_32_np2_mpiio 547dfd57a17SPierre Jolivet requires: defined(PETSC_HAVE_MPIIO) 54830602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-32.msh -viewer_binary_mpiio 549c4762a1bSJed Brown testset: # 64bit mesh, sequential 55081a1af93SMatthew G. Knepley args: -dm_coord_space 0 -dm_view ::ascii_info_detail -dm_plex_check_all -dm_plex_gmsh_mark_vertices 551c4762a1bSJed Brown output_file: output/ex1_gmsh_3d_64.out 552c4762a1bSJed Brown test: 553c4762a1bSJed Brown suffix: gmsh_3d_ascii_v41_64 55430602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii-64.msh 555c4762a1bSJed Brown test: 556c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_64 55730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-64.msh 558c4762a1bSJed Brown test: 559c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_64_mpiio 560dfd57a17SPierre Jolivet requires: defined(PETSC_HAVE_MPIIO) 56130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-64.msh -viewer_binary_mpiio 562c4762a1bSJed Brown testset: # 64bit mesh, parallel 56381a1af93SMatthew G. Knepley args: -dm_coord_space 0 -dist_dm_distribute -petscpartitioner_type simple -dm_view ::ascii_info_detail -dm_plex_check_all -dm_plex_gmsh_mark_vertices 564c4762a1bSJed Brown nsize: 2 565c4762a1bSJed Brown output_file: output/ex1_gmsh_3d_64_np2.out 566c4762a1bSJed Brown test: 567c4762a1bSJed Brown suffix: gmsh_3d_ascii_v41_64_np2 56830602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-ascii-64.msh 569c4762a1bSJed Brown test: 570c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_64_np2 57130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-64.msh 572c4762a1bSJed Brown test: 573c4762a1bSJed Brown suffix: gmsh_3d_binary_v41_64_np2_mpiio 574dfd57a17SPierre Jolivet requires: defined(PETSC_HAVE_MPIIO) 57530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/gmsh-3d-binary-64.msh -viewer_binary_mpiio 576c4762a1bSJed Brown 577c4762a1bSJed Brown # Fluent mesh reader tests 578c4762a1bSJed Brown # TODO: Geometry checks fail 579c4762a1bSJed Brown test: 580c4762a1bSJed Brown suffix: fluent_0 581c4762a1bSJed Brown requires: !complex 58230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.cas -dm_view -final_diagnostics 0 583c4762a1bSJed Brown test: 584c4762a1bSJed Brown suffix: fluent_1 585c4762a1bSJed Brown nsize: 3 586c4762a1bSJed Brown requires: !complex 58730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.cas -dist_dm_distribute -petscpartitioner_type simple -dm_view -final_diagnostics 0 588c4762a1bSJed Brown test: 589c4762a1bSJed Brown suffix: fluent_2 590c4762a1bSJed Brown requires: !complex 59130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/cube_5tets_ascii.cas -dm_view -final_diagnostics 0 592c4762a1bSJed Brown test: 593c4762a1bSJed Brown suffix: fluent_3 594c4762a1bSJed Brown requires: !complex 595c4762a1bSJed Brown TODO: Fails on non-linux: fseek(), fileno() ? https://gitlab.com/petsc/petsc/merge_requests/2206#note_238166382 59630602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/cube_5tets.cas -dm_view -final_diagnostics 0 597c4762a1bSJed Brown 598c4762a1bSJed Brown # Med mesh reader tests, including parallel file reads 599c4762a1bSJed Brown test: 600c4762a1bSJed Brown suffix: med_0 601c4762a1bSJed Brown requires: med 60230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.med -dm_view 603c4762a1bSJed Brown test: 604c4762a1bSJed Brown suffix: med_1 605c4762a1bSJed Brown requires: med 606c4762a1bSJed Brown nsize: 3 60730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square.med -dist_dm_distribute -petscpartitioner_type simple -dm_view 608c4762a1bSJed Brown test: 609c4762a1bSJed Brown suffix: med_2 610c4762a1bSJed Brown requires: med 61130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/cylinder.med -dm_view 612c4762a1bSJed Brown test: 613c4762a1bSJed Brown suffix: med_3 614c4762a1bSJed Brown requires: med 615c4762a1bSJed Brown TODO: MED 616c4762a1bSJed Brown nsize: 3 61730602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/cylinder.med -dist_dm_distribute -petscpartitioner_type simple -dm_view 618c4762a1bSJed Brown 619c4762a1bSJed Brown # Test shape quality 620c4762a1bSJed Brown test: 621c4762a1bSJed Brown suffix: test_shape 622c4762a1bSJed Brown requires: ctetgen 62330602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dim 3 -dm_refine_hierarchy 3 -dm_plex_check_all -dm_plex_check_cell_shape 624c4762a1bSJed Brown 625c4762a1bSJed Brown # Test simplex to tensor conversion 626c4762a1bSJed Brown test: 627c4762a1bSJed Brown suffix: s2t2 628c4762a1bSJed Brown requires: triangle 629012bc364SMatthew G. Knepley args: -dm_coord_space 0 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_refine_volume_limit_pre 0.0625 -dm_view ascii::ascii_info_detail 630c4762a1bSJed Brown 631c4762a1bSJed Brown test: 632c4762a1bSJed Brown suffix: s2t3 633c4762a1bSJed Brown requires: ctetgen 634012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 3 -dim 3 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_refine_volume_limit_pre 0.0625 -dm_view ascii::ascii_info_detail 635c4762a1bSJed Brown 63630602db0SMatthew G. Knepley # Test cylinder 63730602db0SMatthew G. Knepley testset: 63830602db0SMatthew G. Knepley args: -dm_plex_shape cylinder -dm_plex_check_all -dm_view 639c4762a1bSJed Brown test: 640c4762a1bSJed Brown suffix: cylinder 64130602db0SMatthew G. Knepley args: -ref_dm_refine 1 642c4762a1bSJed Brown test: 643c4762a1bSJed Brown suffix: cylinder_per 64461a622f3SMatthew G. Knepley args: -dm_plex_cylinder_bd periodic -ref_dm_refine 1 -ref_dm_refine_remap 0 645c4762a1bSJed Brown test: 646c4762a1bSJed Brown suffix: cylinder_wedge 64761a622f3SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_interpolate 0 -dm_plex_cell tensor_triangular_prism -dm_view vtk: 648c4762a1bSJed Brown test: 649c4762a1bSJed Brown suffix: cylinder_wedge_int 650c4762a1bSJed Brown output_file: output/ex1_cylinder_wedge.out 65161a622f3SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_cell tensor_triangular_prism -dm_view vtk: 652c4762a1bSJed Brown 653c4762a1bSJed Brown test: 654c4762a1bSJed Brown suffix: box_2d 65530602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 2 -dm_plex_check_all -dm_view 656c4762a1bSJed Brown 657c4762a1bSJed Brown test: 658c4762a1bSJed Brown suffix: box_2d_per 65930602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 2 -dm_plex_check_all -dm_view 660c4762a1bSJed Brown 661c4762a1bSJed Brown test: 662c4762a1bSJed Brown suffix: box_2d_per_unint 66330602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_simplex 0 -dm_plex_interpolate 0 -dm_plex_box_faces 3,3 -dm_plex_box_faces 3,3 -dm_plex_check_all -dm_view ::ascii_info_detail 664c4762a1bSJed Brown 665c4762a1bSJed Brown test: 666c4762a1bSJed Brown suffix: box_3d 66730602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dim 3 -dm_plex_simplex 0 -ref_dm_refine 3 -dm_plex_check_all -dm_view 668c4762a1bSJed Brown 669c4762a1bSJed Brown test: 670c4762a1bSJed Brown requires: triangle 671c4762a1bSJed Brown suffix: box_wedge 67261a622f3SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 3 -dim 3 -dm_plex_simplex 0 -dm_plex_cell tensor_triangular_prism -dm_view vtk: -dm_plex_check_all 673c4762a1bSJed Brown 674c4762a1bSJed Brown testset: 675c4762a1bSJed Brown requires: triangle 676012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_cell tensor_triangular_prism -dm_plex_box_faces 2,3,1 -dm_view -dm_plex_check_all -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox 677c4762a1bSJed Brown test: 678c4762a1bSJed Brown suffix: box_wedge_s2t 679c4762a1bSJed Brown test: 680c4762a1bSJed Brown nsize: 3 68130602db0SMatthew G. Knepley args: -dist_dm_distribute -petscpartitioner_type simple 682c4762a1bSJed Brown suffix: box_wedge_s2t_parallel 683c4762a1bSJed Brown 684c4762a1bSJed Brown # Test GLVis output 68530602db0SMatthew G. Knepley testset: 68630602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_interpolate 0 687c4762a1bSJed Brown test: 688c4762a1bSJed Brown suffix: glvis_2d_tet 68930602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh -dm_plex_gmsh_periodic 0 -dm_view glvis: 690c4762a1bSJed Brown test: 691c4762a1bSJed Brown suffix: glvis_2d_tet_per 69230602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 0 693c4762a1bSJed Brown test: 694c4762a1bSJed Brown suffix: glvis_3d_tet 69530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere_bin.msh -dm_plex_gmsh_periodic 0 -dm_view glvis: 69630602db0SMatthew G. Knepley testset: 69730602db0SMatthew G. Knepley args: -dm_coord_space 0 69830602db0SMatthew G. Knepley test: 69930602db0SMatthew G. Knepley suffix: glvis_2d_tet_per_mfem 70030602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh -viewer_glvis_dm_plex_enable_boundary -viewer_glvis_dm_plex_enable_mfem -dm_view glvis: 70130602db0SMatthew G. Knepley test: 70230602db0SMatthew G. Knepley suffix: glvis_2d_quad 70330602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -dm_view glvis: 70430602db0SMatthew G. Knepley test: 70530602db0SMatthew G. Knepley suffix: glvis_2d_quad_per 70630602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -dm_plex_box_bd periodic,periodic -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 70730602db0SMatthew G. Knepley test: 7084fb89dddSMatthew G. Knepley suffix: glvis_2d_quad_per_shift 7094fb89dddSMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -dm_plex_box_bd periodic,periodic -dm_plex_box_lower -1,-1 -dm_plex_box_upper 1,1 -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 7104fb89dddSMatthew G. Knepley test: 71130602db0SMatthew G. Knepley suffix: glvis_2d_quad_per_mfem 71230602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -dm_plex_box_bd periodic,periodic -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary -viewer_glvis_dm_plex_enable_mfem 713c4762a1bSJed Brown test: 714c4762a1bSJed Brown suffix: glvis_3d_tet_per 71530602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere_bin.msh -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 716c4762a1bSJed Brown test: 717c4762a1bSJed Brown suffix: glvis_3d_tet_per_mfem 718c4762a1bSJed Brown TODO: broken 71930602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere_bin.msh -viewer_glvis_dm_plex_enable_mfem -dm_view glvis: 720c4762a1bSJed Brown test: 721c4762a1bSJed Brown suffix: glvis_3d_hex 72230602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_faces 3,3,3 -dm_view glvis: 723c4762a1bSJed Brown test: 724c4762a1bSJed Brown suffix: glvis_3d_hex_per 72530602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_faces 3,3,3 -dm_plex_box_bd periodic,periodic,periodic -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 0 726c4762a1bSJed Brown test: 727c4762a1bSJed Brown suffix: glvis_3d_hex_per_mfem 72830602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_faces 3,3,3 -dm_plex_box_bd periodic,periodic,periodic -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary -viewer_glvis_dm_plex_enable_mfem 72930602db0SMatthew G. Knepley test: 73030602db0SMatthew G. Knepley suffix: glvis_2d_hyb 73130602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_triquad.msh -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 73230602db0SMatthew G. Knepley test: 73330602db0SMatthew G. Knepley suffix: glvis_3d_hyb 73430602db0SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary 73530602db0SMatthew G. Knepley test: 73630602db0SMatthew G. Knepley suffix: glvis_3d_hyb_s2t 737012bc364SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_3d_cube.msh -dm_view glvis: -viewer_glvis_dm_plex_enable_boundary -ref_dm_refine 1 -ref_dm_plex_transform_type refine_tobox -dm_plex_check_all 738c4762a1bSJed Brown 739c4762a1bSJed Brown # Test P4EST 740c4762a1bSJed Brown testset: 741c4762a1bSJed Brown requires: p4est 74230602db0SMatthew G. Knepley args: -dm_coord_space 0 -dm_view -test_p4est_seq -conv_seq_2_dm_plex_check_all -conv_seq_1_dm_forest_minimum_refinement 1 743c4762a1bSJed Brown test: 744c4762a1bSJed Brown suffix: p4est_periodic 74530602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic -dm_plex_box_faces 3,5 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 2 -conv_seq_1_dm_p4est_refine_pattern hash 746c4762a1bSJed Brown test: 747c4762a1bSJed Brown suffix: p4est_periodic_3d 74830602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic,none -dm_plex_box_faces 3,5,4 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 2 -conv_seq_1_dm_p4est_refine_pattern hash 749c4762a1bSJed Brown test: 750c4762a1bSJed Brown suffix: p4est_gmsh_periodic 75130602db0SMatthew G. Knepley args: -dm_coord_space 0 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh 752c4762a1bSJed Brown test: 753c4762a1bSJed Brown suffix: p4est_gmsh_surface 75430602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 755c4762a1bSJed Brown test: 756c4762a1bSJed Brown suffix: p4est_gmsh_surface_parallel 757c4762a1bSJed Brown nsize: 2 75830602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -petscpartitioner_type simple -dm_view ::load_balance 759c4762a1bSJed Brown test: 760c4762a1bSJed Brown suffix: p4est_hyb_2d 76130602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_triquad.msh 762c4762a1bSJed Brown test: 763c4762a1bSJed Brown suffix: p4est_hyb_3d 76430602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh 765c4762a1bSJed Brown test: 766c4762a1bSJed Brown requires: ctetgen 767c4762a1bSJed Brown suffix: p4est_s2t_bugfaces_3d 76830602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 0 -dm_plex_dim 3 -dm_plex_box_faces 1,1 769c4762a1bSJed Brown test: 770c4762a1bSJed Brown suffix: p4est_bug_overlapsf 771c4762a1bSJed Brown nsize: 3 77230602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_faces 2,2,1 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -petscpartitioner_type simple 773c4762a1bSJed Brown test: 774c4762a1bSJed Brown suffix: p4est_redistribute 775c4762a1bSJed Brown nsize: 3 7765a107427SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_faces 2,2,1 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -petscpartitioner_type simple -test_redistribute -dm_plex_csr_alg {{mat graph overlap}} -dm_view ::load_balance 777c4762a1bSJed Brown test: 778c4762a1bSJed Brown suffix: p4est_gmsh_s2t_3d 77930602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 1 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 780c4762a1bSJed Brown test: 781c4762a1bSJed Brown suffix: p4est_gmsh_s2t_3d_hash 78230602db0SMatthew G. Knepley args: -conv_seq_1_dm_forest_initial_refinement 1 -conv_seq_1_dm_forest_maximum_refinement 2 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 783c4762a1bSJed Brown test: 784c4762a1bSJed Brown requires: long_runtime 785c4762a1bSJed Brown suffix: p4est_gmsh_periodic_3d 78630602db0SMatthew G. Knepley args: -dm_coord_space 0 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 1 -conv_seq_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere.msh 787c4762a1bSJed Brown 788c4762a1bSJed Brown testset: 789c4762a1bSJed Brown requires: p4est 790c4762a1bSJed Brown nsize: 6 79130602db0SMatthew G. Knepley args: -dm_coord_space 0 -test_p4est_par -conv_par_2_dm_plex_check_all -conv_par_1_dm_forest_minimum_refinement 1 -conv_par_1_dm_forest_partition_overlap 0 -dist_dm_distribute 792c4762a1bSJed Brown test: 79354fcfd0cSMatthew G. Knepley TODO: interface cones do not conform 794c4762a1bSJed Brown suffix: p4est_par_periodic 79530602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic -dm_plex_box_faces 3,5 -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash 796c4762a1bSJed Brown test: 79754fcfd0cSMatthew G. Knepley TODO: interface cones do not conform 798c4762a1bSJed Brown suffix: p4est_par_periodic_3d 79930602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic,periodic -dm_plex_box_faces 3,5,4 -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash 800c4762a1bSJed Brown test: 80154fcfd0cSMatthew G. Knepley TODO: interface cones do not conform 802c4762a1bSJed Brown suffix: p4est_par_gmsh_periodic 80330602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh 804c4762a1bSJed Brown test: 805c4762a1bSJed Brown suffix: p4est_par_gmsh_surface 80630602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 807c4762a1bSJed Brown test: 808c4762a1bSJed Brown suffix: p4est_par_gmsh_s2t_3d 80930602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 1 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 810c4762a1bSJed Brown test: 81154fcfd0cSMatthew G. Knepley TODO: interface cones do not conform 812c4762a1bSJed Brown suffix: p4est_par_gmsh_s2t_3d_hash 81330602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 1 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 814c4762a1bSJed Brown test: 815c4762a1bSJed Brown requires: long_runtime 816c4762a1bSJed Brown suffix: p4est_par_gmsh_periodic_3d 81730602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere.msh 818c4762a1bSJed Brown 819c4762a1bSJed Brown testset: 820c4762a1bSJed Brown requires: p4est 821c4762a1bSJed Brown nsize: 6 82230602db0SMatthew G. Knepley args: -dm_coord_space 0 -test_p4est_par -conv_par_2_dm_plex_check_all -conv_par_1_dm_forest_minimum_refinement 1 -conv_par_1_dm_forest_partition_overlap 1 -dist_dm_distribute -petscpartitioner_type simple 823c4762a1bSJed Brown test: 824c4762a1bSJed Brown suffix: p4est_par_ovl_periodic 82530602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic -dm_plex_box_faces 3,5 -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash 826c4762a1bSJed Brown #TODO Mesh cell 201 is inverted, vol = 0. (FVM Volume. Is it correct? -> Diagnostics disabled) 827c4762a1bSJed Brown test: 828c4762a1bSJed Brown suffix: p4est_par_ovl_periodic_3d 82930602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_simplex 0 -dm_plex_box_bd periodic,periodic,none -dm_plex_box_faces 3,5,4 -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash -final_diagnostics 0 830c4762a1bSJed Brown test: 831c4762a1bSJed Brown suffix: p4est_par_ovl_gmsh_periodic 83230602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/square_periodic.msh 833c4762a1bSJed Brown test: 834c4762a1bSJed Brown suffix: p4est_par_ovl_gmsh_surface 83530602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 836c4762a1bSJed Brown test: 837c4762a1bSJed Brown suffix: p4est_par_ovl_gmsh_s2t_3d 83830602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 1 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 839c4762a1bSJed Brown test: 840c4762a1bSJed Brown suffix: p4est_par_ovl_gmsh_s2t_3d_hash 84130602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 1 -conv_par_1_dm_forest_maximum_refinement 2 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/doublet-tet.msh 842c4762a1bSJed Brown test: 843c4762a1bSJed Brown requires: long_runtime 844c4762a1bSJed Brown suffix: p4est_par_ovl_gmsh_periodic_3d 84530602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/mesh-3d-box-innersphere.msh 846c4762a1bSJed Brown test: 847c4762a1bSJed Brown suffix: p4est_par_ovl_hyb_2d 84830602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_triquad.msh 849c4762a1bSJed Brown test: 850c4762a1bSJed Brown suffix: p4est_par_ovl_hyb_3d 85130602db0SMatthew G. Knepley args: -conv_par_1_dm_forest_initial_refinement 0 -conv_par_1_dm_forest_maximum_refinement 1 -conv_par_1_dm_p4est_refine_pattern hash -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_tetwedge.msh 852c4762a1bSJed Brown 853c4762a1bSJed Brown test: 854c4762a1bSJed Brown TODO: broken 855c4762a1bSJed Brown requires: p4est 856c4762a1bSJed Brown nsize: 2 857c4762a1bSJed Brown suffix: p4est_bug_labels_noovl 85830602db0SMatthew G. Knepley args: -test_p4est_seq -dm_plex_check_all -dm_forest_minimum_refinement 0 -dm_forest_partition_overlap 1 -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -dm_forest_initial_refinement 0 -dm_forest_maximum_refinement 2 -dm_p4est_refine_pattern hash -dist_dm_distribute -petscpartitioner_type simple -dm_forest_print_label_error 859c4762a1bSJed Brown 860c4762a1bSJed Brown test: 861c4762a1bSJed Brown requires: p4est 862c4762a1bSJed Brown nsize: 2 863c4762a1bSJed Brown suffix: p4est_bug_distribute_overlap 86430602db0SMatthew G. Knepley args: -dm_coord_space 0 -test_p4est_seq -conv_seq_2_dm_plex_check_all -conv_seq_1_dm_forest_minimum_refinement 0 -conv_seq_1_dm_forest_partition_overlap 0 -dm_plex_simplex 0 -dm_plex_box_faces 3,3 -conv_seq_1_dm_forest_initial_refinement 0 -conv_seq_1_dm_forest_maximum_refinement 2 -conv_seq_1_dm_p4est_refine_pattern hash -petscpartitioner_type simple -overlap 1 -dm_view ::load_balance 865c4762a1bSJed Brown args: -dm_post_overlap_view 866c4762a1bSJed Brown 867c4762a1bSJed Brown test: 868595782ffSMatthew G. Knepley suffix: ref_alfeld2d_0 869595782ffSMatthew G. Knepley requires: triangle 870012bc364SMatthew G. Knepley args: -dm_plex_box_faces 5,3 -dm_view -dm_plex_check_all -ref_dm_refine 1 -ref_dm_plex_transform_type refine_alfeld -final_diagnostics 871595782ffSMatthew G. Knepley test: 872595782ffSMatthew G. Knepley suffix: ref_alfeld3d_0 873595782ffSMatthew G. Knepley requires: ctetgen 874012bc364SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_box_faces 5,1,1 -dm_view -dm_plex_check_all -ref_dm_refine 1 -ref_dm_plex_transform_type refine_alfeld -final_diagnostics 875595782ffSMatthew G. Knepley 87609c713e7SStefano Zampini # Boundary layer refiners 87709c713e7SStefano Zampini test: 87809c713e7SStefano Zampini suffix: ref_bl_1 879d410b0cfSMatthew G. Knepley args: -dm_plex_dim 1 -dm_plex_simplex 0 -dm_plex_box_faces 5,1 -dm_view -dm_plex_check_all 0 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_boundary_layer -dm_extrude 2 -final_diagnostics -ref_dm_plex_transform_bl_splits 3 88009c713e7SStefano Zampini test: 88109c713e7SStefano Zampini suffix: ref_bl_2_tri 88209c713e7SStefano Zampini requires: triangle 8838c4475acSStefano Zampini args: -dm_coord_space 0 -dm_plex_box_faces 5,3 -dm_view -dm_plex_check_all 0 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_boundary_layer -dm_extrude 3 -final_diagnostics -ref_dm_plex_transform_bl_splits 4 88409c713e7SStefano Zampini test: 88509c713e7SStefano Zampini suffix: ref_bl_3_quad 886d410b0cfSMatthew G. Knepley args: -dm_plex_simplex 0 -dm_plex_box_faces 5,1 -dm_view -dm_plex_check_all 0 -ref_dm_refine 1 -ref_dm_plex_transform_type refine_boundary_layer -dm_extrude 3 -final_diagnostics -ref_dm_plex_transform_bl_splits 4 88709c713e7SStefano Zampini test: 88809c713e7SStefano Zampini suffix: ref_bl_spheresurface_extruded 88909c713e7SStefano Zampini nsize : 4 8908c4475acSStefano Zampini args: -dm_coord_space 0 -dm_extrude 3 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/surfacesphere_bin.msh -dm_plex_gmsh_spacedim 3 -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple -final_diagnostics -ref_dm_refine 1 -ref_dm_plex_transform_type refine_boundary_layer -ref_dm_plex_transform_bl_splits 2 89109c713e7SStefano Zampini test: 89209c713e7SStefano Zampini suffix: ref_bl_3d_hyb 89309c713e7SStefano Zampini nsize : 4 894012bc364SMatthew G. Knepley args: -dm_coord_space 0 -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/hybrid_3d_cube.msh -dm_plex_check_all -dm_view -dist_dm_distribute -petscpartitioner_type simple -final_diagnostics -ref_dm_refine 1 -ref_dm_plex_transform_type refine_boundary_layer -ref_dm_plex_transform_bl_splits 4 -ref_dm_plex_transform_bl_height_factor 3.1 8950e278f6aSMatthew G. Knepley 89630602db0SMatthew G. Knepley testset: 89730602db0SMatthew G. Knepley args: -dm_plex_shape sphere -dm_plex_check_all -dm_view 8980e278f6aSMatthew G. Knepley test: 8990e278f6aSMatthew G. Knepley suffix: sphere_0 90030602db0SMatthew G. Knepley args: 9010e278f6aSMatthew G. Knepley test: 9020e278f6aSMatthew G. Knepley suffix: sphere_1 90330602db0SMatthew G. Knepley args: -ref_dm_refine 2 9040e278f6aSMatthew G. Knepley test: 90568317524SMatthew G. Knepley suffix: sphere_2 90630602db0SMatthew G. Knepley args: -dm_plex_simplex 0 90768317524SMatthew G. Knepley test: 90868317524SMatthew G. Knepley suffix: sphere_3 90930602db0SMatthew G. Knepley args: -dm_plex_simplex 0 -ref_dm_refine 2 91068317524SMatthew G. Knepley 91168317524SMatthew G. Knepley test: 9120e278f6aSMatthew G. Knepley suffix: ball_0 9130e278f6aSMatthew G. Knepley requires: ctetgen 91430602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_shape ball -dm_plex_check_all -dm_view 9150e278f6aSMatthew G. Knepley 9160e278f6aSMatthew G. Knepley test: 9170e278f6aSMatthew G. Knepley suffix: ball_1 9180e278f6aSMatthew G. Knepley requires: ctetgen 91930602db0SMatthew G. Knepley args: -dm_plex_dim 3 -dm_plex_shape ball -bd_dm_refine 2 -dm_plex_check_all -dm_view 9200e278f6aSMatthew G. Knepley 9213fb88a6bSJed Brown test: 9223fb88a6bSJed Brown suffix: schwarz_p_extrude 9233fb88a6bSJed Brown args: -dm_plex_shape schwarz_p -dm_plex_tps_extent 1,1,1 -dm_plex_tps_layers 1 -dm_plex_tps_thickness .2 -dm_view 924a40d1d52SMatthew G. Knepley 925a40d1d52SMatthew G. Knepley test: 926a40d1d52SMatthew G. Knepley suffix: pyr_mixed_0 927a40d1d52SMatthew G. Knepley args: -dm_plex_filename ${wPETSC_DIR}/share/petsc/datafiles/meshes/pyr_tet.msh -dm_plex_check_all -dm_view 928c4762a1bSJed Brown TEST*/ 929