Skip to main content
`Ctrl`+`K`

# PetscBdPointJacFn

A prototype of a pointwise boundary function that can be passed to, for example, `PetscDSSetBdJacobian()`

## Synopsis

    typedef void PetscBdPointJacFn(PetscInt dim, PetscInt Nf, PetscInt NfAux, const PetscInt uOff[], const PetscInt uOff_x[], const PetscScalar u[], const PetscScalar u_t[], const PetscScalar u_x[], const PetscInt aOff[], const PetscInt aOff_x[], const PetscScalar a[], const PetscScalar a_t[], const PetscScalar a_x[], PetscReal t, PetscReal u_tShift, const PetscReal x[], const PetscReal n[], PetscInt numConstants, const PetscScalar constants[], PetscScalar g0[]);

## Calling Sequence

- dim - the coordinate dimension

- Nf - the number of fields

- NfAux - the number of auxiliary fields

- uOff - the offset into `u`[] and `u_t`[] for each field

- uOff_x - the offset into `u_x`[] for each field

- u - each field evaluated at the current point

- u_t - the time derivative of each field evaluated at the current point

- u_x - the gradient of each field evaluated at the current point

- aOff - the offset into `a`[] and `a_t`[] for each auxiliary field

- aOff_x - the offset into `a_x`[] for each auxiliary field

- a - each auxiliary field evaluated at the current point

- a_t - the time derivative of each auxiliary field evaluated at the current point

- a_x - the gradient of auxiliary each field evaluated at the current point

- t - current time

- u_tShift - the multiplier `a` for \(dF/dU_t\)

- x - coordinates of the current point

- n - normal at the current point

- numConstants - number of constant parameters

- constants - constant parameters

- g - output values at the current point

## See Also

`PetscPointFn`, `PetscDSSetBdJacobian()`, PetscDSGetBdJacobian()`,` PetscDSSetBdJacobianPreconditioner()`,` PetscDSGetBdJacobianPreconditioner()`,` PetscDSSetBdResidual()`,` PetscDSGetBdResidual()`,` PetscDSSetObjective()`,` PetscDSGetObjective()`, PetscDSGetResidual()`, `PetscDSGetRHSResidual()`, `PetscDSGetRHSResidual()`, `PetscDSSetUpdate()`, `PetscDSGetUpdate()`, `DMPlexSetCoordinateMap()`, `PetscDSSetResidual()`, `PetscPointJacFn`

## Level

beginner

## Location

include/petscdstypes.h

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