<< Click to Display Table of Contents >> The Time Section |
The TIME section is used in time dependent problem descriptors to specify a time range over which the problem is to be solved. It supports the following alternative forms:
FROM time1 TO time2
FROM time1 BY increment TO time2
FROM time1 TO time2 BY increment
Where:
time1 |
is the beginning time |
time2 |
is the ending time. |
increment |
is an optional specification of the initial time step for the solution. (the default initial time step is 1e-4*(time2-time1)). |
All time dependent problem descriptors must include statements which define the time range.
While the problem descriptor language supports alternate methods of specifying a time range, it is recommended that all time dependent problems include the TIME section to specify the total time domain of the problem.
Halting Execution
The time range specification may optionally be followed by a HALT statement:
HALT minimum
HALT = minimum
This statement will cause the computation to halt if the automatically controlled timestep drops below minimum. This facility is useful when inconsistencies in data or discontinuities in parameters cause the timestep controller to become confused.
HALT condition
Here the condition can be any relational operation, such as globalmax(myvariable) < 204. If the condition is met on any timestep, the computation will be halted.
Limiting the maximum timestep
The time range specification may optionally be followed by a LIMIT statement:
LIMIT maximum
LIMIT = maximum
This statement will prevent the timestep controller from increasing the computation timestep beyond the stated maximum.
maximum may be any constant arithmetic expression.
Critical Times
The time range specification may optionally be followed by a CRITICAL statement:
CRITICAL time1 {, time2, time3 ...}
This will ensure that each of the times in the list will fall at the end of some timestep interval.
Times may be separated by commas or spaces.
An #include statement can be used to read the times from a disk file.