Lines Matching refs:dmc
1229 PetscErrorCode DMCreateInterpolation(DM dmc, DM dmf, Mat *mat, Vec *vec) in DMCreateInterpolation() argument
1232 PetscValidHeaderSpecific(dmc, DM_CLASSID, 1); in DMCreateInterpolation()
1235 PetscCall(PetscLogEventBegin(DM_CreateInterpolation, dmc, dmf, 0, 0)); in DMCreateInterpolation()
1236 PetscUseTypeMethod(dmc, createinterpolation, dmf, mat, vec); in DMCreateInterpolation()
1237 PetscCall(PetscLogEventEnd(DM_CreateInterpolation, dmc, dmf, 0, 0)); in DMCreateInterpolation()
1315 PetscErrorCode DMCreateRestriction(DM dmc, DM dmf, Mat *mat) in DMCreateRestriction() argument
1318 PetscValidHeaderSpecific(dmc, DM_CLASSID, 1); in DMCreateRestriction()
1321 PetscCall(PetscLogEventBegin(DM_CreateRestriction, dmc, dmf, 0, 0)); in DMCreateRestriction()
1322 PetscUseTypeMethod(dmc, createrestriction, dmf, mat); in DMCreateRestriction()
1323 PetscCall(PetscLogEventEnd(DM_CreateRestriction, dmc, dmf, 0, 0)); in DMCreateRestriction()
1389 PetscErrorCode DMCreateMassMatrix(DM dmc, DM dmf, Mat *mat) in DMCreateMassMatrix() argument
1392 PetscValidHeaderSpecific(dmc, DM_CLASSID, 1); in DMCreateMassMatrix()
1393 if (!dmf) dmf = dmc; in DMCreateMassMatrix()
1396 PetscCall(PetscLogEventBegin(DM_CreateMassMatrix, dmc, dmf, 0, 0)); in DMCreateMassMatrix()
1397 PetscUseTypeMethod(dmc, createmassmatrix, dmf, mat); in DMCreateMassMatrix()
1398 PetscCall(PetscLogEventEnd(DM_CreateMassMatrix, dmc, dmf, 0, 0)); in DMCreateMassMatrix()
1450 PetscErrorCode DMCreateGradientMatrix(DM dmc, DM dmf, Mat *mat) in DMCreateGradientMatrix() argument
1453 PetscValidHeaderSpecific(dmc, DM_CLASSID, 1); in DMCreateGradientMatrix()
1454 if (!dmf) dmf = dmc; in DMCreateGradientMatrix()
1457 PetscUseTypeMethod(dmc, creategradientmatrix, dmf, mat); in DMCreateGradientMatrix()
3363 PetscErrorCode DMCoarsen(DM dm, MPI_Comm comm, DM *dmc) in DMCoarsen() argument
3370 PetscUseTypeMethod(dm, coarsen, comm, dmc); in DMCoarsen()
3371 if (*dmc) { in DMCoarsen()
3372 …(*dmc)->bind_below = dm->bind_below; /* Propagate this from parent DM; otherwise -dm_bind_below wi… in DMCoarsen()
3373 PetscCall(DMSetCoarseDM(dm, *dmc)); in DMCoarsen()
3374 (*dmc)->ops->creatematrix = dm->ops->creatematrix; in DMCoarsen()
3375 PetscCall(PetscObjectCopyFortranFunctionPointers((PetscObject)dm, (PetscObject)*dmc)); in DMCoarsen()
3376 (*dmc)->ctx = dm->ctx; in DMCoarsen()
3377 (*dmc)->levelup = dm->levelup; in DMCoarsen()
3378 (*dmc)->leveldown = dm->leveldown + 1; in DMCoarsen()
3379 PetscCall(DMSetMatType(*dmc, dm->mattype)); in DMCoarsen()
3381 if (link->coarsenhook) PetscCall((*link->coarsenhook)(dm, *dmc, link->ctx)); in DMCoarsen()
3385 PetscCheck(*dmc, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONG, "NULL coarse mesh produced"); in DMCoarsen()
3726 PetscErrorCode DMCoarsenHierarchy(DM dm, PetscInt nlevels, DM dmc[]) in DMCoarsenHierarchy() argument
3732 PetscAssertPointer(dmc, 3); in DMCoarsenHierarchy()
3736 PetscCall(DMCoarsen(dm, PetscObjectComm((PetscObject)dm), &dmc[0])); in DMCoarsenHierarchy()
3737 …for (i = 1; i < nlevels; i++) PetscCall(DMCoarsen(dmc[i - 1], PetscObjectComm((PetscObject)dm), &d… in DMCoarsenHierarchy()
3738 } else PetscUseTypeMethod(dm, coarsenhierarchy, nlevels, dmc); in DMCoarsenHierarchy()