Home
last modified time | relevance | path

Searched refs:subdm (Results 1 – 25 of 46) sorted by relevance

12

/petsc/src/dm/impls/plex/tests/
H A Dex16.c82 …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 Dex23.c112 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 Dex74.c53 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 Dex71.c73 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 Dex75.c10 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 Ddmi.c234 …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 Ddmcoordinates.c29 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 Dproductutils.c22 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 Dex23.c68 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 Dplexsubmesh.c1972 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 Ddadd.c429 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 Ddacreate.c160 …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 Dnasm.c100 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 Dtelescope.c107 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 Dtelescope_dmda.c123 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 Dex11.c378 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 Dmprk.c557 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 Ddmshell.c1045 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 Dpetscdmshell.pxi436 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 Dstagutils.c1520 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 Dex29.c68 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 Ddmsnes.c102 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 Dfsarkimex.c9 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 Dex77.c356 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 Dtsdiscgrad.c80 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()

12