| /petsc/src/dm/impls/plex/tests/ |
| H A D | ex16.c | 82 …rrorCode CreateVolumeSubmesh(DM dm, PetscBool domain, PetscBool lower, PetscReal height, DM *subdm) in CreateVolumeSubmesh() argument 89 …PlexFilter(dm, label, 1, PETSC_FALSE, PETSC_FALSE, PetscObjectComm((PetscObject)dm), NULL, subdm)); in CreateVolumeSubmesh() 90 PetscCall(PetscObjectSetName((PetscObject)*subdm, "Submesh")); in CreateVolumeSubmesh() 91 PetscCall(PetscObjectSetOptionsPrefix((PetscObject)*subdm, "sub_")); in CreateVolumeSubmesh() 92 PetscCall(DMViewFromOptions(*subdm, NULL, "-dm_view")); in CreateVolumeSubmesh() 93 PetscCall(DMPlexGetSubpointMap(*subdm, &map)); in CreateVolumeSubmesh() 100 DM subdm; in TestBoundaryField() local 108 …lexFilter(dm, label, 1, PETSC_FALSE, PETSC_FALSE, PetscObjectComm((PetscObject)dm), NULL, &subdm)); in TestBoundaryField() 109 PetscCall(PetscObjectSetName((PetscObject)subdm, "Submesh")); in TestBoundaryField() 110 PetscCall(PetscObjectSetOptionsPrefix((PetscObject)subdm, "sub_")); in TestBoundaryField() [all …]
|
| H A D | ex23.c | 112 static PetscErrorCode CreateSubdomainMesh(DM dm, DMLabel *domLabel, DM *subdm, AppCtx *user) in CreateSubdomainMesh() argument 123 …PlexFilter(dm, label, 1, PETSC_FALSE, PETSC_FALSE, PetscObjectComm((PetscObject)dm), NULL, subdm)); in CreateSubdomainMesh() 124 PetscCall(DMGetDimension(*subdm, &dim)); in CreateSubdomainMesh() 125 PetscCall(SetupDiscretization(*subdm, dim, simplex, user)); in CreateSubdomainMesh() 126 PetscCall(PetscObjectSetName((PetscObject)*subdm, "subdomain")); in CreateSubdomainMesh() 127 PetscCall(DMViewFromOptions(*subdm, NULL, "-sub_dm_view")); in CreateSubdomainMesh() 133 static PetscErrorCode CreateBoundaryMesh(DM dm, DMLabel *bdLabel, DM *subdm, AppCtx *user) in CreateBoundaryMesh() argument 144 PetscCall(DMPlexCreateSubmesh(dm, label, 1, PETSC_TRUE, subdm)); in CreateBoundaryMesh() 145 PetscCall(DMGetDimension(*subdm, &dim)); in CreateBoundaryMesh() 146 PetscCall(SetupDiscretization(*subdm, dim, simplex, user)); in CreateBoundaryMesh() [all …]
|
| H A D | ex74.c | 53 DM dm, subdm, coorddm; in main() local 98 …m, filter, filterValue, PETSC_FALSE, PETSC_FALSE, PetscObjectComm((PetscObject)dm), NULL, &subdm)); in main() 101 PetscCall(PetscObjectSetName((PetscObject)subdm, "Example_SubDM")); in main() 102 PetscCall(DMViewFromOptions(subdm, NULL, "-dm_view")); in main() 103 PetscCall(DMGetCellCoordinateDM(subdm, &coorddm)); in main() 106 PetscCall(DMDestroy(&subdm)); in main()
|
| H A D | ex71.c | 73 DM dm, subdm; in main() local 138 …eLabelHalo, user.sanitizeSubmesh, PetscObjectComm((PetscObject)dm), &ownershipTransferSF, &subdm)); in main() 141 PetscCall(PetscObjectSetName((PetscObject)subdm, "Example_SubDM")); in main() 142 PetscCall(DMViewFromOptions(subdm, NULL, "-dm_view")); in main() 143 PetscCall(DMDestroy(&subdm)); in main()
|
| H A D | ex75.c | 10 DM dm, coordDM, subdm; in main() local 63 …m, filter, filterValue, PETSC_FALSE, PETSC_FALSE, PetscObjectComm((PetscObject)dm), NULL, &subdm)); in main() 65 PetscCall(PetscObjectSetName((PetscObject)subdm, "Example_SubDM")); in main() 66 PetscCall(DMViewFromOptions(subdm, NULL, "-dm_view")); in main() 67 PetscCall(DMDestroy(&subdm)); in main()
|
| /petsc/src/dm/interface/ |
| H A D | dmi.c | 234 …lds, const PetscInt fields[], const PetscInt numComps[], const PetscInt comps[], IS *is, DM *subdm) in DMSelectFields_Private() argument 243 PetscCall(PetscFree2((*subdm)->nullspaceConstructors, (*subdm)->nearnullspaceConstructors)); in DMSelectFields_Private() 244 …PetscCall(PetscCalloc2(numFields, &(*subdm)->nullspaceConstructors, numFields, &(*subdm)->nearnull… in DMSelectFields_Private() 251 PetscCall(DMSetLocalSection(*subdm, subsection)); in DMSelectFields_Private() 253 …if (dm->nullspaceConstructors) (*subdm)->nullspaceConstructors[field] = dm->nullspaceConstructors[… in DMSelectFields_Private() 258 PetscCall(DMSetNumFields(*subdm, 1)); in DMSelectFields_Private() 262 PetscCall(DMSetField(*subdm, 0, NULL, (PetscObject)fvNew)); in DMSelectFields_Private() 264 PetscCall(DMCreateDS(*subdm)); in DMSelectFields_Private() 268 PetscCall(DMGetField(*subdm, field, NULL, &disc)); in DMSelectFields_Private() 276 PetscCall(PetscDSCopyConstants(dm->probs[field].ds, (*subdm)->probs[0].ds)); in DMSelectFields_Private() [all …]
|
| H A D | dmcoordinates.c | 29 static PetscErrorCode DMSubDomainHook_Coordinates(DM dm, DM subdm, PetscCtx ctx) in DMSubDomainHook_Coordinates() argument 37 PetscCall(DMGetCoordinateDM(subdm, &subdm_coord)); in DMSubDomainHook_Coordinates() 39 PetscCall(DMGetCoordinates(subdm, &ccoords)); in DMSubDomainHook_Coordinates() 50 PetscCall(DMSetCoordinates(subdm, ccoords)); in DMSubDomainHook_Coordinates() 51 PetscCall(DMSetCoordinatesLocal(subdm, clcoords)); in DMSubDomainHook_Coordinates()
|
| /petsc/src/dm/impls/product/ |
| H A D | productutils.c | 22 PetscErrorCode DMProductGetDM(DM dm, PetscInt slot, DM *subdm) in DMProductGetDM() argument 31 *subdm = product->dm[slot]; in DMProductGetDM() 54 PetscErrorCode DMProductSetDM(DM dm, PetscInt slot, DM subdm) in DMProductSetDM() argument 63 PetscCall(PetscObjectReference((PetscObject)subdm)); in DMProductSetDM() 65 product->dm[slot] = subdm; in DMProductSetDM()
|
| /petsc/src/dm/impls/stag/tests/ |
| H A D | ex23.c | 68 DM subdm; in main() local 71 PetscCall(DMProductGetDM(cdm, d, &subdm)); in main() 72 PetscCall(DMGetCoordinates(subdm, &coor)); in main() 73 PetscCall(DMGetCoordinatesLocal(subdm, &coor_local)); in main() 74 PetscCall(DMLocalToGlobal(subdm, coor_local, INSERT_VALUES, coor)); in main()
|
| /petsc/src/dm/impls/plex/ |
| H A D | plexsubmesh.c | 1972 static PetscErrorCode GetSurfaceSide_Static(DM dm, DM subdm, PetscInt numSubpoints, const PetscInt … in GetSurfaceSide_Static() argument 1987 if (subdm) { in GetSurfaceSide_Static() 1993 PetscCall(DMPlexGetConeSize(subdm, subpoint, &subconeSize)); in GetSurfaceSide_Static() 1994 PetscCall(DMPlexGetCone(subdm, subpoint, &subcone)); in GetSurfaceSide_Static() 1995 PetscCall(DMPlexGetConeOrientation(subdm, subpoint, &subornt)); in GetSurfaceSide_Static() 2150 …e(DM dm, DMLabel label, DMLabel blabel, PetscInt bvalue, PetscBool flip, PetscBool split, DM subdm) in DMPlexLabelCohesiveComplete() argument 2162 if (subdm) { in DMPlexLabelCohesiveComplete() 2163 PetscCall(DMPlexGetSubpointIS(subdm, &subpointIS)); in DMPlexLabelCohesiveComplete() 2197 … PetscCall(GetSurfaceSide_Static(dm, subdm, numSubpoints, subpoints, support[s], points[p], &pos)); in DMPlexLabelCohesiveComplete() 2334 static PetscErrorCode DMPlexCheckValidSubmesh_Private(DM dm, DMLabel label, DM subdm) in DMPlexCheckValidSubmesh_Private() argument [all …]
|
| /petsc/src/dm/impls/da/ |
| H A D | dadd.c | 429 DM subdm; in DMCreateDomainDecompositionScatters_DA() local 445 subdm = subdms[i]; in DMCreateDomainDecompositionScatters_DA() 446 PetscCall(DMDAGetLocalInfo(subdm, &subinfo)); in DMCreateDomainDecompositionScatters_DA() 447 PetscCall(DMDAGetNonOverlappingRegion(subdm, &xs, &ys, &zs, &xm, &ym, &zm)); in DMCreateDomainDecompositionScatters_DA() 457 PetscCall(DMDACreatePatchIS(subdm, &lower, &upper, &isis, patchis_offproc)); in DMCreateDomainDecompositionScatters_DA() 467 PetscCall(DMDACreatePatchIS(subdm, &lower, &upper, &osis, patchis_offproc)); in DMCreateDomainDecompositionScatters_DA() 481 PetscCall(DMGetGlobalVector(subdm, &svec)); in DMCreateDomainDecompositionScatters_DA() 482 PetscCall(DMGetLocalVector(subdm, &slvec)); in DMCreateDomainDecompositionScatters_DA() 489 PetscCall(DMRestoreGlobalVector(subdm, &svec)); in DMCreateDomainDecompositionScatters_DA() 490 PetscCall(DMRestoreLocalVector(subdm, &slvec)); in DMCreateDomainDecompositionScatters_DA() [all …]
|
| H A D | dacreate.c | 160 …scErrorCode DMCreateSubDM_DA(DM dm, PetscInt numFields, const PetscInt fields[], IS *is, DM *subdm) in DMCreateSubDM_DA() argument 165 if (subdm) { in DMCreateSubDM_DA() 171 PetscCall(DMCreate(PetscObjectComm((PetscObject)dm), subdm)); in DMCreateSubDM_DA() 173 PetscCall(DMSetPointSF(*subdm, sf)); in DMCreateSubDM_DA() 175 PetscCall(DMSetApplicationContext(*subdm, ctx)); in DMCreateSubDM_DA() 178 PetscCall(DMSetCoordinatesLocal(*subdm, coords)); in DMCreateSubDM_DA() 181 if (coords) PetscCall(DMSetCoordinates(*subdm, coords)); in DMCreateSubDM_DA() 184 PetscCall(DMSetType(*subdm, DMDA)); in DMCreateSubDM_DA() 185 PetscCall(DMSetDimension(*subdm, dm->dim)); in DMCreateSubDM_DA() 186 PetscCall(DMDASetSizes(*subdm, da->M, da->N, da->P)); in DMCreateSubDM_DA() [all …]
|
| /petsc/src/snes/impls/nasm/ |
| H A D | nasm.c | 100 DM dm, subdm; in SNESSetUp_NASM() local 151 PetscCall(SNESGetDM(nasm->subsnes[i], &subdm)); in SNESSetUp_NASM() 152 PetscCall(DMCreateLocalVector(subdm, &nasm->xl[i])); in SNESSetUp_NASM() 153 …PetscCall(DMGlobalToLocalHookAdd(subdm, DMGlobalToLocalSubDomainDirichletHook_Private, NULL, nasm-… in SNESSetUp_NASM() 596 DM dm, subdm; in SNESNASMSolveLocal_Private() local 630 PetscCall(SNESGetDM(subsnes, &subdm)); in SNESNASMSolveLocal_Private() 642 PetscCall(SNESGetDM(subsnes, &subdm)); in SNESNASMSolveLocal_Private() 643 PetscCall(DMSNESGetBoundaryLocal(subdm, &bl, &bctx)); in SNESNASMSolveLocal_Private() 644 if (bl) PetscCall((*bl)(subdm, Xlloc, bctx)); in SNESNASMSolveLocal_Private() 646 PetscCall(DMSubDomainRestrict(dm, oscat, gscat, subdm)); in SNESNASMSolveLocal_Private() [all …]
|
| /petsc/src/ksp/pc/impls/telescope/ |
| H A D | telescope.c | 107 DM subdm = NULL; in private_PCTelescopeGetSubDM() local 110 subdm = NULL; in private_PCTelescopeGetSubDM() 114 subdm = NULL; in private_PCTelescopeGetSubDM() 117 subdm = ((PC_Telescope_DMDACtx *)sred->dm_ctx)->dmrepart; in private_PCTelescopeGetSubDM() 120 subdm = NULL; in private_PCTelescopeGetSubDM() 123 if (sred->ksp) PetscCallAbort(PETSC_COMM_SELF, KSPGetDM(sred->ksp, &subdm)); in private_PCTelescopeGetSubDM() 127 return subdm; in private_PCTelescopeGetSubDM() 325 DM dm = NULL, subdm = NULL; in PCView_Telescope() local 328 subdm = private_PCTelescopeGetSubDM(sred); in PCView_Telescope() 372 PetscCall(DMView_DA_Short(subdm, subviewer)); in PCView_Telescope() [all …]
|
| H A D | telescope_dmda.c | 123 static PetscErrorCode PCTelescopeSetUp_dmda_repart_coors2d(PC_Telescope sred, DM dm, DM subdm) in PCTelescopeSetUp_dmda_repart_coors2d() argument 135 …if (PCTelescope_isActiveRank(sred)) PetscCall(DMDASetUniformCoordinates(subdm, 0.0, 1.0, 0.0, 1.0,… in PCTelescopeSetUp_dmda_repart_coors2d() 146 PetscCall(DMDAGetCorners(subdm, &si, &sj, NULL, &ni, &nj, NULL)); in PCTelescopeSetUp_dmda_repart_coors2d() 187 PetscCall(DMGetCoordinates(subdm, &_coors)); in PCTelescopeSetUp_dmda_repart_coors2d() 199 PetscCall(DMGetCoordinateDM(subdm, &_dmc)); in PCTelescopeSetUp_dmda_repart_coors2d() 200 PetscCall(DMGetCoordinates(subdm, &_coors)); in PCTelescopeSetUp_dmda_repart_coors2d() 201 PetscCall(DMGetCoordinatesLocal(subdm, &_coors_local)); in PCTelescopeSetUp_dmda_repart_coors2d() 214 static PetscErrorCode PCTelescopeSetUp_dmda_repart_coors3d(PC_Telescope sred, DM dm, DM subdm) in PCTelescopeSetUp_dmda_repart_coors3d() argument 227 …if (PCTelescope_isActiveRank(sred)) PetscCall(DMDASetUniformCoordinates(subdm, 0.0, 1.0, 0.0, 1.0,… in PCTelescopeSetUp_dmda_repart_coors3d() 239 PetscCall(DMDAGetCorners(subdm, &si, &sj, &sk, &ni, &nj, &nk)); in PCTelescopeSetUp_dmda_repart_coors3d() [all …]
|
| /petsc/src/dm/impls/swarm/tests/ |
| H A D | ex11.c | 378 DM dm, subdm, sw; in main() local 390 PetscCall(DMCreateSubDM(dm, 1, &user.field, &subis, &subdm)); in main() 392 PetscCall(DMGetGlobalVector(subdm, &fhat)); in main() 394 PetscCall(TestParticlesToField(sw, subdm, fhat, &user)); in main() 395 PetscCall(TestFieldToParticles(sw, subdm, fhat, &user)); in main() 396 PetscCall(DMRestoreGlobalVector(subdm, &fhat)); in main() 408 PetscCall(TestParticlesToGradientField(sw, subdm, fhat, &user)); in main() 417 PetscCall(DMDestroy(&subdm)); in main()
|
| /petsc/src/ts/impls/multirate/ |
| H A D | mprk.c | 557 DM dm, subdm, newdm; in TSMPRKSetSplits() local 574 PetscCall(TSGetDM(mprk->subts_slow, &subdm)); in TSMPRKSetSplits() 575 PetscCall(DMCopyDMTS(subdm, newdm)); in TSMPRKSetSplits() 576 PetscCall(DMCopyDMSNES(subdm, newdm)); in TSMPRKSetSplits() 581 PetscCall(TSGetDM(mprk->subts_slowbuffer, &subdm)); in TSMPRKSetSplits() 582 PetscCall(DMCopyDMTS(subdm, newdm)); in TSMPRKSetSplits() 583 PetscCall(DMCopyDMSNES(subdm, newdm)); in TSMPRKSetSplits() 588 PetscCall(TSGetDM(mprk->subts_fast, &subdm)); in TSMPRKSetSplits() 589 PetscCall(DMCopyDMTS(subdm, newdm)); in TSMPRKSetSplits() 590 PetscCall(DMCopyDMSNES(subdm, newdm)); in TSMPRKSetSplits() [all …]
|
| /petsc/src/dm/impls/shell/ |
| H A D | dmshell.c | 1045 PetscErrorCode DMShellSetCreateSubDM(DM dm, PetscErrorCode (*subdm)(DM, PetscInt, const PetscInt[],… in DMShellSetCreateSubDM() 1053 dm->ops->createsubdm = subdm; in DMShellSetCreateSubDM() 1072 PetscErrorCode DMShellGetCreateSubDM(DM dm, PetscErrorCode (**subdm)(DM, PetscInt, const PetscInt[]… in DMShellGetCreateSubDM() 1080 *subdm = dm->ops->createsubdm; in DMShellGetCreateSubDM() 1120 …rrorCode DMCreateSubDM_Shell(DM dm, PetscInt numFields, const PetscInt fields[], IS *is, DM *subdm) in DMCreateSubDM_Shell() argument 1123 if (subdm) PetscCall(DMShellCreate(PetscObjectComm((PetscObject)dm), subdm)); in DMCreateSubDM_Shell() 1124 PetscCall(DMCreateSectionSubDM(dm, numFields, fields, NULL, NULL, is, subdm)); in DMCreateSubDM_Shell()
|
| /petsc/src/binding/petsc4py/src/petsc4py/PETSc/ |
| H A D | petscdmshell.pxi | 436 cdef DM subdm = None 443 subdm = subtype_DM(subdms[i])() 444 subdm.dm = subdms[i] 445 CHKERR(PetscINCREF(subdm.obj)) 446 psubdms.append(subdm) 481 cdef DM subdm 490 iset, subdm = create_subdm(dm, fields, *args, **kargs) 493 CHKERR(PetscINCREF(subdm.obj)) 495 csubdm[0] = subdm.dm
|
| /petsc/src/dm/impls/stag/ |
| H A D | stagutils.c | 1520 DM subdm; in DMStagSetUniformCoordinatesProduct() local 1542 …undaryType[d], stag->N[d], dof0, dof1, stag->stencilType, stag->stencilWidth, stag->l[d], &subdm)); in DMStagSetUniformCoordinatesProduct() 1544 PetscCall(DMSetVecType(subdm, dm->vectype)); in DMStagSetUniformCoordinatesProduct() 1545 PetscCall(DMSetMatType(subdm, dm->mattype)); in DMStagSetUniformCoordinatesProduct() 1546 PetscCall(DMSetUp(subdm)); in DMStagSetUniformCoordinatesProduct() 1549 PetscCall(DMStagSetUniformCoordinatesExplicit(subdm, xmin, xmax, 0, 0, 0, 0)); in DMStagSetUniformCoordinatesProduct() 1552 PetscCall(DMStagSetUniformCoordinatesExplicit(subdm, ymin, ymax, 0, 0, 0, 0)); in DMStagSetUniformCoordinatesProduct() 1555 PetscCall(DMStagSetUniformCoordinatesExplicit(subdm, zmin, zmax, 0, 0, 0, 0)); in DMStagSetUniformCoordinatesProduct() 1560 PetscCall(DMProductSetDM(dmc, d, subdm)); in DMStagSetUniformCoordinatesProduct() 1562 PetscCall(DMDestroy(&subdm)); in DMStagSetUniformCoordinatesProduct()
|
| /petsc/src/ts/tutorials/ |
| H A D | ex29.c | 68 static PetscErrorCode CoefficientSubDomainRestrictHook(DM dm, DM subdm, PetscCtx ctx) in CoefficientSubDomainRestrictHook() argument 79 PetscCall(DMDACreateCompatibleDMDA(subdm, 2, &csubdm)); in CoefficientSubDomainRestrictHook() 80 PetscCall(PetscObjectCompose((PetscObject)subdm, "coefficientdm", (PetscObject)csubdm)); in CoefficientSubDomainRestrictHook()
|
| /petsc/src/snes/utils/ |
| H A D | dmsnes.c | 102 static PetscErrorCode DMSubDomainHook_DMSNES(DM dm, DM subdm, PetscCtx ctx) in DMSubDomainHook_DMSNES() argument 105 PetscCall(DMCopyDMSNES(dm, subdm)); in DMSubDomainHook_DMSNES() 111 …e DMSubDomainRestrictHook_DMSNES(DM dm, VecScatter gscat, VecScatter lscat, DM subdm, PetscCtx ctx) in DMSubDomainRestrictHook_DMSNES() argument
|
| /petsc/src/ts/impls/arkimex/ |
| H A D | fsarkimex.c | 9 DM dm, subdm, newdm; in TSARKIMEXSetSplits() local 18 PetscCall(TSGetDM(ark->subts_slow, &subdm)); in TSARKIMEXSetSplits() 19 PetscCall(DMCopyDMTS(subdm, newdm)); in TSARKIMEXSetSplits() 25 PetscCall(TSGetDM(ark->subts_fast, &subdm)); in TSARKIMEXSetSplits() 26 PetscCall(DMCopyDMTS(subdm, newdm)); in TSARKIMEXSetSplits()
|
| /petsc/src/snes/tutorials/ |
| H A D | ex77.c | 356 DM subdm; in SetupNearNullSpace() local 362 PetscCall(DMCreateSubDM(dm, 1, &fields, NULL, &subdm)); in SetupNearNullSpace() 363 PetscCall(DMPlexCreateRigidBody(subdm, 0, &nearNullSpace)); in SetupNearNullSpace() 366 PetscCall(DMDestroy(&subdm)); in SetupNearNullSpace()
|
| /petsc/src/ts/impls/implicit/discgrad/ |
| H A D | tsdiscgrad.c | 80 static PetscErrorCode DMSubDomainHook_TSDiscGrad(DM dm, DM subdm, PetscCtx ctx) in DMSubDomainHook_TSDiscGrad() argument 86 …SubDomainRestrictHook_TSDiscGrad(DM dm, VecScatter gscat, VecScatter lscat, DM subdm, PetscCtx ctx) in DMSubDomainRestrictHook_TSDiscGrad() argument 93 PetscCall(TSDiscGradGetX0AndXdot(ts, subdm, &X0_sub, &Xdot_sub)); in DMSubDomainRestrictHook_TSDiscGrad() 102 PetscCall(TSDiscGradRestoreX0AndXdot(ts, subdm, &X0_sub, &Xdot_sub)); in DMSubDomainRestrictHook_TSDiscGrad()
|