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


#include "petscts.h"  
PetscErrorCode  TSSetIFunction(TS ts,Vec r,TSIFunction f,void *ctx)
Logically Collective on TS

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)

Calling sequence of f

    PetscErrorCode f(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


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

Level: beginner

See Also

TSSetRHSJacobian(), TSSetRHSFunction(), TSSetIJacobian()