Lines Matching refs:metric
843 static PetscErrorCode DMPlexP1FieldCreate_Private(DM dm, PetscInt f, PetscInt size, Vec *metric) in DMPlexP1FieldCreate_Private() argument
859 PetscCall(DMCreateLocalVector(dm, metric)); in DMPlexP1FieldCreate_Private()
901 PetscErrorCode DMPlexMetricCreate(DM dm, PetscInt f, Vec *metric) in DMPlexMetricCreate() argument
916 PetscCall(VecCreate(comm, metric)); in DMPlexMetricCreate()
917 PetscCall(VecSetSizes(*metric, 1, PETSC_DECIDE)); in DMPlexMetricCreate()
918 PetscCall(VecSetFromOptions(*metric)); in DMPlexMetricCreate()
919 } else if (isotropic) PetscCall(DMPlexP1FieldCreate_Private(dm, f, 1, metric)); in DMPlexMetricCreate()
920 else PetscCall(DMPlexP1FieldCreate_Private(dm, f, Nd, metric)); in DMPlexMetricCreate()
942 PetscErrorCode DMPlexMetricCreateUniform(DM dm, PetscInt f, PetscReal alpha, Vec *metric) in DMPlexMetricCreateUniform() argument
946 PetscCall(DMPlexMetricCreate(dm, f, metric)); in DMPlexMetricCreateUniform()
949 PetscCall(VecSet(*metric, alpha)); in DMPlexMetricCreateUniform()
950 PetscCall(VecAssemblyBegin(*metric)); in DMPlexMetricCreateUniform()
951 PetscCall(VecAssemblyEnd(*metric)); in DMPlexMetricCreateUniform()
980 PetscErrorCode DMPlexMetricCreateIsotropic(DM dm, PetscInt f, Vec indicator, Vec *metric) in DMPlexMetricCreateIsotropic() argument
986 PetscCall(DMPlexMetricCreate(dm, f, metric)); in DMPlexMetricCreateIsotropic()
988 PetscCall(VecGetSize(*metric, &n)); in DMPlexMetricCreateIsotropic()
989 if (m == n) PetscCall(VecCopy(indicator, *metric)); in DMPlexMetricCreateIsotropic()
996 PetscCall(DMProjectFieldLocal(dmIndi, 0.0, indicator, funcs, INSERT_VALUES, *metric)); in DMPlexMetricCreateIsotropic()