Create a Riemannian metric field


#include "petscdmplex.h"   
PetscErrorCode DMPlexMetricCreate(DM dm, PetscInt f, Vec *metric)

Input Parameters#

  • dm - The DM

  • f - The field number to use

Output Parameter#

  • metric - The metric

Options Database Key#

  • -dm_adaptor <pragmatic/mmg/parmmg> - specify dm adaptor to use

Options Database Keys for Mmg and ParMmg#

  • -dm_plex_metric_gradation_factor - Maximum ratio by which edge lengths may grow during gradation

  • -dm_plex_metric_num_iterations - Number of parallel mesh adaptation iterations for ParMmg

  • -dm_plex_metric_no_insert - Should node insertion/deletion be turned off?

  • -dm_plex_metric_no_swap - Should facet swapping be turned off?

  • -dm_plex_metric_no_move - Should node movement be turned off?

  • -dm_plex_metric_verbosity - Choose a verbosity level from -1 (silent) to 10 (maximum).

Options Database Keys for Riemannian metrics#

  • -dm_plex_metric_isotropic - Is the metric isotropic?

  • -dm_plex_metric_uniform - Is the metric uniform?

  • -dm_plex_metric_restrict_anisotropy_first - Should anisotropy be restricted before normalization?

  • -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

  • -dm_plex_metric_p - L-p normalization order

  • -dm_plex_metric_target_complexity - Target metric complexity


It is assumed that the DM is comprised of simplices.

See Also#

DMPLEX, DMPlexMetricCreateUniform(), DMPlexMetricCreateIsotropic()





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