CharacteristicSetVelocityInterpolationLocal#
Sets the routine used to interpolate the velocity field along a characteristic using a locally-accessible array
Synopsis#
#include "petsccharacteristic.h"
PetscErrorCode CharacteristicSetVelocityInterpolationLocal(Characteristic c, DM da, Vec v, Vec vOld, 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 velocity vectorsv - the current velocity vector
vOld - the previous-time-step velocity vector
numComponents - the number of velocity components to interpolate
components - the indices of the velocity components in
vandvOldinterp - 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 velocity 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, CharacteristicSetVelocityInterpolation(), CharacteristicSetFieldInterpolationLocal()
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