The I/O API also uses a standard set of logical names LOGFILE, SCENDESC, and EXECUTION_ID for the program's log, the scenario/run description file, and the run's execution ID. Routine DSCGRID() uses a grid and coordinate description file with logical name GRIDDESC .
When you run a program that uses the I/O API, you begin with a
sequence of setenv commands that set the values for the
program's logical names, much as you begin a (normal) Cray
Fortran program with a sequence of ASSIGN
commands for its
files. For example, if myprogram has logical names
FOO and BAR that I want to connect up to files
somedata.mymodel and otherdata.whatever from
directory /tmp/mydir, the script for the program would look
something like:
... setenv FOO /tmp/mydir/somedata.mymodel setenv BAR /tmp/mydir/otherdata.whatever /user/mydir/myprogram ...
Note that you can declare a file
"volatile" by adding
a trailing (and quoted, so that setenv works correctly)
-v
to the value of the logical name, as indicated
below; this has the effect of telling the I/O API to do a
disk-synch before or after every input or output operation on that
file.
... setenv QUX "/tmp/mydir/volatiledata.mymodel -v"
To: Models-3/EDSS I/O API: The Help Pages