Public Member Functions | |
TimeSteppingData (const unsigned int look_ahead, const unsigned int look_back) | |
Public Attributes | |
const unsigned int | look_ahead |
const unsigned int | look_back |
sleep
method. TimeDependent::TimeSteppingData::TimeSteppingData | ( | const unsigned int | look_ahead, | |
const unsigned int | look_back | |||
) |
Constructor; see the different fields for a description of the meaning of the parameters.
This denotes the number of timesteps the timestepping algorithm needs to look ahead. Usually, this number will be zero, since algorithms looking ahead can't act as timestepping schemes since they can't compute their data from knowledge of the past only and are therefore global in time.
However, it may be necessary to look ahead in other circumstances, when not wanting to access the data of the next time step(s), but for example to know the next grid, the solution of a dual problem on the next time level, etc.
Note that for a dual problem walking back in time, "looking ahead" means looking towards smaller time values.
The value of this number determines, how many time steps ahead the time step manager start to call the wake_up
function for each time step.
Referenced by TimeDependent::do_loop().
This is the opposite variable to the above one. It denotes the number of time steps behind the present one for which we need to keep all data in order to do the computations on the present time level.
For one step schemes (e.g. the Euler schemes, or the Crank-Nicolson scheme), this value will be one.
The value of this number determines, how many time steps after having done computations on a tim level the time step manager will call the sleep
function for each time step.
Referenced by TimeDependent::do_loop().