Next: Allowed Options
Up: schedule.ccl
Previous: Assignment Statements
Contents
Each schedule block in the file schedule.ccl must have the syntax
schedule [GROUP] <function name|group name> AT|IN <time> \
[AS <alias>] \
[WHILE <variable>] [IF <variable>] \
[BEFORE|AFTER <function name>|(<function name> <function name> ...)] \
{
[LANG: <language>]
[STORAGE: <group>[timelevels],<group>[timelevels]...]
[TRIGGER: <group>,<group>...]
[SYNCHRONISE: <group>,<group>...]
[OPTIONS: <option>,<option>...]
} "Description of function"
- GROUP
- Schedule a schedule group with the same options
as a schedule function. The schedule group will be created if it doesn't exist.
- <function name|group name>
- The name of a function or a
schedule group to be scheduled. Function and schedule group names
are case sensitive
- <group>
- A group of grid variables. Variable groups
inherited from other thorns may be used, but they must then be fully
qualified with the implementation name.
- AT
- Functions can be scheduled to run at the Cactus
schedule bins, for example CCTK_EVOL, CCTK_STARTUP. A
complete list and description of these is provided in
Appendix E3. The initial letters
CCTK_ are optional. Grid variables cannot be used in the
CCTK_STARTUP and CCTK_SHUTDOWN timebins.
- IN
- Schedules a function or schedule group to run in a
schedule group rather than in a Cactus timebin.
- AS
- Provides an alias for a function or schedule group
which should be used for scheduling before, after or in. This can
be used to provide thorn independence for other thorns scheduling
functions or schedule groups relative to this one.
- WHILE
- Executes a function or schedule group until the given
variable (which must be a fully qualified integer grid scalar) has
the value zero.
- IF
- Executes a function or schedule group only if the given
variable (which must be a fully qualified integer grid scalar) has
a non-zero value.
- BEFORE/AFTER
- Takes a function name, a function alias,
a schedule group name, or a parentheses-enclosed whitespace-separated
list of these. (Any names that are not provided by an active thorn
are ignored.) Note that a single schedule block may have multiple
BEFORE/AFTER clauses.
- LANG
- The code language for the function (either C or FORTRAN). No language should be specified for a schedule group.
- STORAGE
- List of variable groups which should have storage
switched on for the duration of the function or schedule group.
Each group must specify how many timelevels to activate storage for,
from 1 up to the maximum number for the group as specified in the
defining interface.ccl file. If the maximum is 1 (the default)
this number may be omitted.
- TRIGGER
- List of grid variables or groups to be used as
triggers for causing an ANALYSIS function or group to be
executed. Any schedule block for an analysis function or analysis
group may contain a TRIGGER line.
- SYNCHRONISE
- List of groups to be synchronised as soon
as the function or schedule group is exited.
- OPTIONS
- List of additional options (see
Section E2.4.2) for the scheduled function or group of functions
Subsections
Next: Allowed Options
Up: schedule.ccl
Previous: Assignment Statements
Contents
|