Skip to main content
`Ctrl`+`K`

# TSEIMEX

Time stepping with Extrapolated W-IMEX methods [CS10]. These methods are intended for problems with well-separated time scales, especially when a slow scale is strongly nonlinear such that it is expensive to solve with a fully implicit method. The user should provide the stiff part of the equation using `TSSetIFunction()` and the non-stiff part with `TSSetRHSFunction()`.

## Notes

The default is a 3-stage scheme, it can be changed with `TSEIMEXSetMaxRows()` or -ts_eimex_max_rows

This method currently only works with ODEs, for which the stiff part \( F(t,X,Xdot) \) has the form \( Xdot + Fhat(t,X)\).

The general system is written as

\[ F(t,X,Xdot) = G(t,X) \]

where F represents the stiff part and G represents the non-stiff part. The user should provide the stiff part of the equation using TSSetIFunction() and the non-stiff part with `TSSetRHSFunction()`. This method is designed to be linearly implicit on G and can use an approximate and lagged Jacobian.

Another common form for the system is

\[ y'=f(x)+g(x) \]

The relationship between F,G and f,g is

\[ F = y'-f(x), G = g(x) \]

## References

[CS10]

E.M. Constantinescu and A. Sandu. Extrapolated implicit-explicit time stepping. SIAM Journal on Scientific Computing, 31(6):4452–4477, 2010. doi:10.1137/080732833.

## See Also

TS: Scalable ODE and DAE Solvers, `TSCreate()`, `TS`, `TSSetType()`, `TSEIMEXSetMaxRows()`, `TSEIMEXSetRowCol()`, `TSEIMEXSetOrdAdapt()`, `TSType`

## Level

beginner

## Location

src/ts/impls/eimex/eimex.c

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