petsc-3.14.6 2021-03-30
Report Typos and Errors

DMComputeL2FieldDiff

This function computes the L_2 difference between a function u and an FEM interpolant solution u_h, separated into field components.

Synopsis

#include "petscdm.h"          
#include "petscdmlabel.h"     
#include "petscds.h"     
PetscErrorCode DMComputeL2FieldDiff(DM dm, PetscReal time, PetscErrorCode (**funcs)(PetscInt, PetscReal, const PetscReal [], PetscInt, PetscScalar *, void *), void **ctxs, Vec X, PetscReal diff[])
Collective on dm

Input Parameters

dm - The DM
time - The time
funcs - The functions to evaluate for each field component
ctxs - Optional array of contexts to pass to each function, or NULL.
X - The coefficient vector u_h, a global vector

Output Parameter

diff - The array of differences, ||u^f - u^f_h||_2

See Also

DMProjectFunction(), DMComputeL2FieldDiff(), DMComputeL2GradientDiff()

Level

developer

Location

src/dm/interface/dm.c

Examples

src/ts/tutorials/ex46.c.html

Implementations

DMComputeL2FieldDiff_pforest(DM dm, PetscReal time, PetscErrorCode (**funcs) in src/dm/impls/forest/p4est/pforest.c
DMComputeL2FieldDiff_Plex(DM dm, PetscReal time, PetscErrorCode (**funcs) in src/dm/impls/plex/plexfem.c

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