Skip to main content
`Ctrl`+`K`

# SNESTSFormFunction

Function to evaluate nonlinear residual defined by an ODE solver algorithm implemented within `TS`

## Synopsis

    #include "petscts.h"
    PetscErrorCode SNESTSFormFunction(SNES snes, Vec U, Vec F, void *ctx)

Logically Collective

## Input Parameters

- snes - nonlinear solver

- U - the current state at which to evaluate the residual

- ctx - user context, must be a `TS`

## Output Parameter

- F - the nonlinear residual

## Note

This function is not normally called by users and is automatically registered with the `SNES` used by `TS`. It is most frequently passed to `MatFDColoringSetFunction()`.

## See Also

TS: Scalable ODE and DAE Solvers, `SNESSetFunction()`, `MatFDColoringSetFunction()`

## Level

developer

## Location

src/ts/interface/ts.c

## Implementations

SNESTSFormFunction_ARKIMEX() in src/ts/impls/arkimex/arkimex.c
SNESTSFormFunction_BDF() in src/ts/impls/bdf/bdf.c
SNESTSFormFunction_EIMEX() in src/ts/impls/eimex/eimex.c
SNESTSFormFunction_RK() in src/ts/impls/explicit/rk/rk.c
SNESTSFormFunction_GLEE() in src/ts/impls/glee/glee.c
SNESTSFormFunction_Alpha() in src/ts/impls/implicit/alpha/alpha1.c
SNESTSFormFunction_Alpha() in src/ts/impls/implicit/alpha/alpha2.c
SNESTSFormFunction_DiscGrad() in src/ts/impls/implicit/discgrad/tsdiscgrad.c
SNESTSFormFunction_GLLE() in src/ts/impls/implicit/glle/glle.c
SNESTSFormFunction_IRK() in src/ts/impls/implicit/irk/irk.c
SNESTSFormFunction_Theta() in src/ts/impls/implicit/theta/theta.c
SNESTSFormFunction_Mimex() in src/ts/impls/mimex/mimex.c
SNESTSFormFunction_Pseudo() in src/ts/impls/pseudo/posindep.c
SNESTSFormFunction_RosW() in src/ts/impls/rosw/rosw.c

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