|
Tempus Version of the Day
Time Integration
|
This example introduces Tempus::Stepper through Tempus::StepperForwardEuler. The van der Pol model is still provided through a Thyra::ModelEvaluator, and the application still manages the overall time loop and Tempus::SolutionHistory. However, the Forward Euler step itself is now delegated to a Tempus stepper object rather than being written explicitly in the application code.
The main purpose of this step is to separate the stepping algorithm from the surrounding application logic.
Relative to Example 4: Add SolutionHistory:
The central idea behind Tempus::Stepper is that a time integration algorithm should be encapsulated in its own object. This allows the application to reuse the same surrounding logic while changing only the stepping algorithm.
This example uses only part of the full Tempus::Stepper capability: