|
Tempus Version of the Day
Time Integration
|
This example replaces the raw C++ arrays from Example 0: Basic Problem with Thyra vectors and vector spaces. The mathematical problem, timestepper, and overall time-integration structure remain essentially unchanged, The main purpose is to introduce the abstract vector interfaces used throughout Tempus and other Trilinos packages.
Changes relative to Example 0: Basic Problem:
Thyra::VectorBase,Thyra::VectorSpaceBase is introduced to define the state space,Thyra::DetachedVectorView,Thyra::V_VpStV, Thyra::norm, Thyra::V_VTeuchos::RCP is used for memory management.This example shows how the same application logic can be expressed in terms of abstract numerical objects rather than concrete array storage. That abstraction is a prerequisite for later examples that introduce Thyra::ModelEvaluator and Tempus solution-management objects.
A more detailed explanation of what changed from Example 0: Basic Problem is given in Transition from Example 0 to Example 1.
The next example moves the problem definition into a Thyra::ModelEvaluator while preserving the same Forward Euler update.