PETSc version 3.17.4
Fix/Edit manual page

# DMTSSetIFunction

set TS implicit function evaluation function

### Synopsis

    #include "petscts.h"
    PetscErrorCode DMTSSetIFunction(DM dm,TSIFunction func,void *ctx)

Not Collective

### Input Parameters

| dm | - DM to be used with TS
| func | - function evaluating f(t,u,u_t)
| ctx | - context for residual evaluation

### Calling sequence of func

        PetscErrorCode func(TS ts,PetscReal t,Vec u,Vec u_t,Vec F,ctx);

| t | - time at step/stage being solved
| u | - state vector
| u_t | - time derivative of state vector
| F | - function vector
| ctx | - [optional] user-defined context for matrix evaluation routine

### Note

TSSetFunction() is normally used, but it calls this function internally because the user context is actually associated with the DM. This makes the interface consistent regardless of whether the user interacts with a DM or not. If DM took a more central role at some later date, this could become the primary method of setting the residual.

### See Also

DMTSSetContext(), TSSetIFunction(), DMTSSetJacobian()

### Level

advanced

### Location

src/ts/utils/dmts.c
Index of all TS routines
Table of Contents for all manual pages
Index of all manual pages