Skip to main content
`Ctrl`+`K`

# TSSetIFunction

Set the function to compute F(t,U,U_t) where F() = 0 is the DAE to be solved.

## Synopsis

    #include "petscts.h"
    PetscErrorCode TSSetIFunction(TS ts, Vec r, TSIFunctionFn *f, void *ctx)

Logically Collective

## Input Parameters

- ts - the `TS` context obtained from `TSCreate()`

- r - vector to hold the residual (or `NULL` to have it created internally)

- f - the function evaluation routine

- ctx - user-defined context for private data for the function evaluation routine (may be `NULL`)

## Note

The user MUST call either this routine or `TSSetRHSFunction()` to define the ODE. When solving DAEs you must use this function.

## See Also

TS: Scalable ODE and DAE Solvers, `TS`, `TSIFunctionFn`, `TSSetRHSJacobian()`, `TSSetRHSFunction()`, `TSSetIJacobian()`

## Level

beginner

## Location

src/ts/interface/ts.c

## Examples

src/ts/tutorials/ex20.c
src/ts/tutorials/ex15.c
src/ts/tutorials/ex20opt_p.c
src/ts/tutorials/ex23fwdadj.c
src/ts/tutorials/ex20fwd.c
src/ts/tutorials/ex17.c
src/ts/tutorials/ex22.c
src/ts/tutorials/ex19.c
src/ts/tutorials/ex16.c
src/ts/tutorials/ex20adj.c

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