DMPlexMetricEnforceSPD#

Enforce symmetric positive-definiteness of a metric

Synopsis#

#include "petscdmplex.h"   
PetscErrorCode DMPlexMetricEnforceSPD(DM dm, Vec metricIn, PetscBool restrictSizes, PetscBool restrictAnisotropy, Vec metricOut, Vec determinant)

Input parameters#

  • dm - The DM

  • metricIn - The metric

  • restrictSizes - Should maximum/minimum metric magnitudes be enforced?

  • restrictAnisotropy - Should maximum anisotropy be enforced?

Output parameter#

  • metricOut - The metric

  • determinant - Its determinant

Options Database Keys#

  • -dm_plex_metric_isotropic - Is the metric isotropic?

  • -dm_plex_metric_uniform - Is the metric uniform?

  • -dm_plex_metric_h_min - Minimum tolerated metric magnitude

  • -dm_plex_metric_h_max - Maximum tolerated metric magnitude

  • -dm_plex_metric_a_max - Maximum tolerated anisotropy

See Also#

DMPLEX, DMPlexMetricNormalize(), DMPlexMetricIntersection()

Level#

beginner

Location#

src/dm/impls/plex/plexmetric.c


Edit on GitLab

Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages