PetscWeakFormSetJacobianPreconditioner — PETSc 3.25.4 documentation

Skip to main content
`Ctrl`+`K`

# PetscWeakFormSetJacobianPreconditioner

Set the lists of Jacobian preconditioner pointwise functions `g0`, `g1`, `g2`, and `g3` for a given key in a `PetscWeakForm`

## Synopsis

    #include "petscds.h"
    PetscErrorCode PetscWeakFormSetJacobianPreconditioner(PetscWeakForm wf, DMLabel label, PetscInt val, PetscInt f, PetscInt g, PetscInt part, PetscInt n0, void (**g0)(PetscInt, PetscInt, PetscInt, const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), PetscInt n1, void (**g1)(PetscInt, PetscInt, PetscInt, const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), PetscInt n2, void (**g2)(PetscInt, PetscInt, PetscInt, const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), PetscInt n3, void (**g3)(PetscInt, PetscInt, PetscInt, const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]))

Not Collective

## Input Parameters

- wf - The `PetscWeakForm`

- label - The label selecting the mesh region, or `NULL` for the entire domain

- val - The label value selecting the mesh region

- f - The test field number

- g - The trial field number

- part - The equation part, or 0 if unused

- n0 - The number of `g0` pointwise functions to set

- g0 - The array of `g0` Jacobian preconditioner pointwise functions, or `NULL` to clear the key

- n1 - The number of `g1` pointwise functions to set

- g1 - The array of `g1` Jacobian preconditioner pointwise functions, or `NULL` to clear the key

- n2 - The number of `g2` pointwise functions to set

- g2 - The array of `g2` Jacobian preconditioner pointwise functions, or `NULL` to clear the key

- n3 - The number of `g3` pointwise functions to set

- g3 - The array of `g3` Jacobian preconditioner pointwise functions, or `NULL` to clear the key

## See Also

`PetscWeakForm`, `PetscWeakFormGetJacobianPreconditioner()`, `PetscWeakFormAddJacobianPreconditioner()`, `PetscWeakFormSetJacobian()`

## Level

intermediate

## Location

src/dm/dt/interface/dtweakform.c

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