petsc-3.14.5 2021-03-03
DMPlexComputeBdIntegral
Form the integral over the specified boundary from the global input X using pointwise functions specified by the user
Synopsis
#include "petscdmplex.h"
PetscErrorCode DMPlexComputeBdIntegral(DM dm, Vec X, DMLabel label, PetscInt numVals, const PetscInt vals[],
void (*func)(PetscInt, PetscInt, PetscInt,
const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]),
PetscScalar *integral, void *user)
Input Parameters
| dm | - The mesh
|
| X | - Global input vector
|
| label | - The boundary DMLabel
|
| numVals | - The number of label values to use, or PETSC_DETERMINE for all values
|
| vals | - The label values to use, or PETSC_NULL for all values
|
| func = The function to integrate along the boundary |
| user | - The user context
|
Output Parameter
| integral | - Integral for each field
|
See Also
DMPlexComputeIntegralFEM(), DMPlexComputeBdResidualFEM()
Level
developer
Location
src/dm/impls/plex/plexfem.c
Examples
src/snes/tutorials/ex12.c.html
Implementations
src/dm/impls/plex/plexfem.c:2164:static PetscErrorCode DMPlexComputeBdIntegral_Internal(DM dm, Vec locX, IS pointIS,
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages