Skip to main content
`Ctrl`+`K`

# TSComputeIFunctionLinear

Evaluate the left hand side via the user-provided Jacobian, for linear problems only

## Synopsis

    #include "petscts.h"
    PetscErrorCode TSComputeIFunctionLinear(TS ts, PetscReal t, Vec U, Vec Udot, Vec F, PetscCtx ctx)

Collective

## Input Parameters

- ts - time stepping context

- t - time at which to evaluate

- U - state at which to evaluate

- Udot - time derivative of state vector

- ctx - context

## Output Parameter

- F - left hand side

## Notes

The assumption here is that the left hand side is of the form AUdot (and not AUdot + B*U). For other cases, the user is required to write their own `TSComputeIFunction()`. This function is intended to be passed to `TSSetIFunction()` to evaluate the left hand side for linear problems. The matrix (and optionally the evaluation context) should be passed to `TSSetIJacobian()`.

Note that using this function is NOT equivalent to using `TSComputeRHSFunctionLinear()` since that solves Udot = A U

## See Also

TS: Scalable ODE and DAE Solvers, `TS`, `TSSetIFunction()`, `TSSetIJacobian()`, `TSComputeIJacobianConstant()`, `TSComputeRHSFunctionLinear()`

## Level

intermediate

## Location

src/ts/interface/ts.c

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