ferret [-memsize Mwords] [-unmapped] [-gui] [-help]
MODE VERIFY:ALWAYS
to help with debugging GO scripts
LIST/HEADING=ENHANCED
machine readable ASCII output format
DAYS1900(year,month,day)
At the time of this writing (29 Mar) the GUI is not available on all of the Unix platforms supported by Ferret. (Watch for announcements in the Ferret users group). We are enthusiastic about this interface and believe that it will be a pleasure to use and a real value. We need to stress, however, that at this time the GUI is still under development.
If you choose to use the GUI you are implicitly becoming a BETA tester. We make two requests of you:
Version 4.0 includes "immediate mode" mathematical expressions -- that
is, numerical expressions that may be embedded anywhere within a
command line, to be evaluated immediately by Ferret - before the
command, itself, is parsed and executed. Immediate mode expressions
are enclosed in grave acccents, the same syntax used by the Unix C
shell. Prior to parsing and executing the command Ferret will replace
the full grave accent expression, including the accent marks, with an
ASCII string representing the numerical value. For example, if the
given command is
o The limit to the number of variables that may be simultaneously read
from an ASCII or binary file (the "/VARIABLES=" qualifier on the
FILE command) has been increased from 10 to 20.
... memory size can be specified at the Unix command line (above) or it
can be reconfigured while FERRET is running with these commands:
The command
New qualifiers have been added to the SAVE (alias LIST/FORMAT=CDF)
command to specify the range of the intended output file independent
of the range of data to be inserted into the file. The new qualifiers
are /ILIMITS, /JLIMITS, /KLIMITS, /LLIMITS, /XLIMITS, /YLIMITS,
/ZLIMITS, /TLIMITS.
An example usage: Suppose the data set "giant3D" contains the
variables u and v each on a grid that is
nX x nY x nz = 1000 x 1000 x 200 = 200 Meg in size. Suppose that
we wish to create an output file of "speed = (u^2+v^2)^0.5".
We cannot fit the entire calculation into memory but we can compute
one vertical level at a time. Here we use "/KLIMITS" to create
an output file with all of the vertical levels. Then we use "/APPEND"
to insert the levels into the file.
The qualifier /HEADING now can take the argument "enhanced"
to produce ASCII output that is self-documenting and machine
readable. This is used in the "ASCII file" output on the FERRET/WWW
server. The /HEADING=enhanced feature requires that the /FORMAT
qualifier be used to specify the output format. If /FORMAT is
given but no FORTRAN format is actually specified then the data
will be listed using (5(1PG12.5)) but documented as using the
compatible but simpler format (5F12.5)
The title of a netCDF data set may be set explicitly using
By default netCDF file outputs will **not** contain attributes
that locate the output fields within a larger coordinate
framework (the attributes parent_grid, slab_min_index, ...). To
obtain this type of netCDF output file use the
The command GO/HELP journal_file
brings up the Unix "more" command to view the documentation at
the heading of a journal file.
The function
Modulo axes are now fully supported in netCDF, ASCII, and binary
files. FERRET is now capable of simultaneously providing "modulo"
data on one to 4 axes. (For example, a monthly climatological
set from X=0 to 360 may be requested with "/L=1:24/X=180:540",
which requires simultaneous modulo operations on both X and T).
Support has been added for netCDF coordinate axes that are
decreasing-ordered in the netCDF file. The fact that the axes are
reversed will be transparent to the user. Output netCDF files
will always be increasing-ordered.
The "*" character may now appear on the right hand side of a
substitution. It represents the entire argument string passed to
the script. Thus, for example
The command LIST/FORMAT=STREAM allows Ferret to write binary
output files with no record information embedded. These files
are easily readable by C programs or can be read by FORTRAN
programs that use OPEN(ACCESS='DIRECT",RECL=len,...) and
READ (UNIT=lun,REC=irec).
The binary output
files from FERRET that are produced with LIST/FORMAT=unformatted
are suitable as input to FORTRAN programs which omit
"ACCESS='DIRECT'" (or use "ACCESS='SEQUENTIAL'") and use
sequential reads (omitting "REC=irec").
Greatly improved performance of regridding operations
(VARIABLE[G=new_grid]) that involve differing time axes on
source and destination grids.
By default PLOT/VS will now plot symbols rather than a line. Use
the /LINE qualifier to reproduce previous behavior.
The speed of frame grabbing with the FRAME command or /FRAME
qualifier has been greatly increased.
Ferret now supports files that are encoded on longitudes -180 to 180.
(Previously, it had been recommended to use only positive longitudes.)
However, negative longitudes should be used with care. If a file is
encoded using all positive longitudes on a modulo axis and a plot
which begins at a negative longitude is requested there is a risk of
crashing Ferret because negative (left hand) modulo translations
are not supported. The GO scripts land and fland have not yet been
updated to support negative longitudes.
When graphical output is created from within a GO script Ferret will
define the PLOT+ symbol 'GO_FILE'. This can be used with commands
like
Note: In version 4.01 and higher a preferred syntax
that uses Ferret symbols is:
CONTOUR/Z=`temp[X=180,Y=0,Z=@LOC:15]` salt
Ferret will evaluate the expression "temp[X=180,Y=0,Z=@LOC:15]" (the
depth of the 15 degree isotherm at the equator/dateline), say, it is
234.5 meters). Ferret will generate and execute the command
CONTOUR/Z=234.5 salt
Notes about embedded expressions:
Back to Table of Contents
Back to Table of ContentsSHOW MEMORY
SET MEMORY/SIZE=xxx
(in MegaWords)
e.g. yes? SET MEMORY/SIZE=4
SET MODE VERIFY:ALWAYS
will place Ferret in a
state where MODE VERIFY cannot be cancelled by commands in a GO
script. This means that all lines executed within the GO script
will be echoed at the console -- a feature that can assist with
debugging GO scripts.
FRAME/FORMAT=GIF/file=gif_file_name.gif
captures the current output window.
(Use Back to Table of Contents
yes? SET DATA giant3D ! nX x nY x Nz = 1000 x 1000 x 200 = 200 Meg
yes? LET speed = (u^2+v^2)^0.5
yes? SAVE/KLIMITS=1:200/FILE=giant_speed.cdf speed[K=1]
yes? REPEAT/K=2:200 SAVE/APPEND/FILE=giant_speed.cdf speed
Back to Table of Contents
yes? LIST/FORMAT/HEADING=ENHANCED my_variable
Back to Table of Contents
SAVE/TITLE="My choice of data set titles" whatever_variables,...
Back to Table of Contents
Back to Table of ContentsSAVE
command with
the qualifier /HEADING=enhanced
DAYS1900(year,month,day)
provides the number of
days from 1-JAN-1900 (sensitive to leap years). This function is
helpful in processing many types of ASCII tabulated data.
$1% |*>="*"%
will have the
effect of inserting argument one (as given with the GO command)
with surrounding quotation marks.
Back to Table of Contents
Back to Table of Contents
LABEL xpos,ypos,center,rotate,size 'GO_FILE'
to document output plots
automatically with the name of the GO script that created them.
LABEL xpos,ypos,center,rotate,size ($GO_FILE)
Back to Table of Contents