Skip to main content
`Ctrl`+`K`

# TSEvaluateStep

Evaluate the solution at the end of a time step with a given order of accuracy.

## Synopsis

    #include "petscts.h"
    PetscErrorCode TSEvaluateStep(TS ts, PetscInt order, Vec U, PetscBool *done)

Collective

## Input Parameters

- ts - time stepping context

- order - desired order of accuracy

- done - whether the step was evaluated at this order (pass `NULL` to generate an error if not available)

## Output Parameter

- U - state at the end of the current step

## Notes

This function cannot be called until all stages have been evaluated.

It is normally called by adaptive controllers before a step has been accepted and may also be called by the user after `TSStep()` has returned.

## See Also

TS: Scalable ODE and DAE Solvers, `TS`, `TSStep()`, `TSAdapt`

## Level

advanced

## Location

src/ts/interface/ts.c

## Implementations

TSEvaluateStep_ARKIMEX() in src/ts/impls/arkimex/arkimex.c
TSEvaluateStep_EIMEX() in src/ts/impls/eimex/eimex.c
TSEvaluateStep_RK() in src/ts/impls/explicit/rk/rk.c
TSEvaluateStep_GLEE() in src/ts/impls/glee/glee.c
TSEvaluateStep_IRK() in src/ts/impls/implicit/irk/irk.c
TSEvaluateStep_MPRK() in src/ts/impls/multirate/mprk.c
TSEvaluateStep_MPRKSPLIT() in src/ts/impls/multirate/mprk.c
TSEvaluateStep_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