PetscSectionExtractDofsFromArray#

Extracts elements of an array corresponding to DOFs of specified points.

Synopsis#

#include "petscsection.h"   
PetscErrorCode PetscSectionExtractDofsFromArray(PetscSection origSection, MPI_Datatype dataType, const void *origArray, IS points, PetscSection *newSection, void *newArray[])

Not Collective

Input Parameters#

  • origSection - the PetscSection describing the layout of the array

  • dataType - MPI_Datatype describing the data type of the array (currently only MPIU_INT, MPIU_SCALAR, MPIU_REAL)

  • origArray - the array; its size must be equal to the storage size of origSection

  • points - IS with points to extract; its indices must lie in the chart of origSection

Output Parameters#

  • newSection - the new PetscSection describing the layout of the new array (with points renumbered 0,1,… but preserving numbers of DOFs)

  • newArray - the array of the extracted DOFs; its size is the storage size of newSection

See Also#

PetscSection, PetscSectionSym, PetscSectionGetChart(), PetscSectionGetDof(), PetscSectionGetStorageSize(), PetscSectionCreate()

Level#

developer

Location#

src/vec/is/section/interface/section.c


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