CharacteristicSetFieldInterpolationLocal#
Sets the routine used to interpolate the field being advected at the foot of a characteristic using a locally-accessible array
Synopsis#
#include "petsccharacteristic.h"
PetscErrorCode CharacteristicSetFieldInterpolationLocal(Characteristic c, DM da, Vec v, PetscInt numComponents, PetscInt components[], PetscErrorCode (*interp)(void *array, PetscReal interpIndices[], PetscInt numComponents, PetscInt components[], PetscScalar values[], PetscCtx ctx), PetscCtx ctx)
Not Collective
Input Parameters#
c - the
Characteristiccontextda - the
DMdescribing the layout of the field vectorv - the field vector to be advected
numComponents - the number of field components to interpolate
components - the indices of the field components in
vinterp - the interpolation routine, called with a local array pointer rather than a
Vecctx - context passed to the interpolation routine
Calling sequence of interp#
array - the locally-accessible array of the field vector obtained from the
DMinterpIndices - the coordinates at which to interpolate
numComponents - the number of components to interpolate
components - the indices of the components in the array
values - the interpolated values, one per component per point
ctx - the application context
See Also#
TS: Scalable ODE and DAE Solvers, Characteristic, CharacteristicSetFieldInterpolation(), CharacteristicSetVelocityInterpolationLocal()
Level#
developer
Location#
src/ts/characteristic/interface/characteristic.c
Index of all Characteristic routines
Table of Contents for all manual pages
Index of all manual pages