ANNOTATED TMAP DESCRIPTOR FOR GRIDS AT TIMESTEPS DATA SETS Mark Verschell June '88- modified by kob Nov '91 This is a NAMELIST_FILE. For more information, consult the FORTRAN manual. Some basic information about NAMELIST_FILE structure may be helpful. A NAMELIST_FILE is composed of NAMELIST_GROUPS. Each NAMELIST_GROUP start with a "$" and a NAMELIST_GROUP_NAME in column 2. Column 1 is reserved for comment statements. If a line begins with something other than a blank in column 1 it is considered a comment line. However, inside of a NAMELIST_GROUP column 1 must always be a blank otherwise it is an error. The NAMELIST_GROUP_NAME is followed by NAMELIST_GROUP_ENTITIES and VALUES. In a NAMELIST_GROUP's simplest form, this looks like: $group_name entity = value[, entity = value, ...] $[END] A NAMELIST_GROUP may be continued over any number of lines, and is very flexible in format. NAMELIST_ENTITIES can be grouped on the same line, on different lines or any mixture thereof. Commas and/or carriage returns are used as delimiters between NAMELIST_ENTITIES. A NAMELIST_ENTITY can be a string, an integer value, a real value, or an array of strings, integers, or reals. Each NAMELIST_GROUP can be composed of a mixture of string, integer, real, or array NAMELIST_ENTITIES. NAMELIST_ENTITIES that are strings can continue on as many lines as necessary to finish the NAMELIST_ENTITY. The proper format for continuing strings across more than one line is just end a line at a convenient location and continue on the next line in column 2. Do not end each line with a string delimiters. A string NAMELIST_ENTITY has string delimiters only at the very beginning and at the very end. NOTE: Do not end a break point in a string with a space. Trailing spaces will be ignored. If you want to include blank spaces at the break point of a string, start the blanks in column 2 of the next line. For example: 1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890 $STRING_GROUP test_string = 'This is a very long string which I would like to bre ak here and maybe again ! break in middle of word, next line start col. 2 here' ! break at end of word, next line space in col. 2 $END NAMELIST_ENTITIES that are arrays can also continue across as many lines as is desired or is necessary. Each array entry will be separated from the next by COMMAS. Formatting is irrelevant for individual array components. Individual components can appear grouped as many or as few per line as desired and position on the line is ignored. For example: 1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890 $ARRAY_GROUP test_array = 1, 2, 3, 4, 5, 6, 7, 7, 8, 9, 10 test_array_of_strings = 'String arrays can also continue on as many lines as necessary', 'And each individual array element can be', 'continued on following lines as is nec essary to complete the NAMELIST_ENTITY' $END The following annotated sample descriptor is provided to make editing of descriptor files easier. ******************************************************************************** * NOAA/PMEL Tropical Modeling and Analysis Program, Seattle, WA. * ******************************************************************************** $FORMAT_RECORD ! d_type = ' GT', !D_TYPE is 'GRIDS AT TIMESTEPS' indicating how data ! is organized in the data files. d_format = ' 1C', !D_FORMAT indicates descriptor file revision level. d_source_class = 'MODEL OUTPUT', ! d_source = 'PHIL/SEIG', !D_SOURCE_CLASS, D_SOURCE, D_SUBSOURCE, and d_subsource = 'TROPICAL PACIFIC', !D_PROG_REV are optional in descriptors other than d_prog_rev = 0.00 !TMAP GFDL model runs. $END ! $BACKGROUND_RECORD ! d_expnum = '0032', !D_EXPNUM must match the experiment number in the ! STEP record of each data file. (Almost all have 2 ! preceding zeroes). d_modnum = ' BA', !D_MODNUM must match the modification number in the ! STEP record of each data file. (Almost all have 2 ! preceding blanks). d_title = 'GFDL output 82-83 Hindcast with Sadler winds 7 degr !D_TITLE is a descriptive title for each experiment ee waveguide', ! that will be used as plot heading. d_forcing_set = 'Sadler', !D_FORCING_SET is usually the wind set. (optional) d_t0time = '14-JAN-1980 14:00:00', !D_T0TIME is date at timestep=0; The date must be ! given in the format of the example to the left, ! unless the data is time independent, in which case ! the word 'INDEPENDENT' should be put in place of a ! date. d_time_unit = 3600., !D_TIME_UNIT is the length of each timestep unit in ! seconds (typically 1 hour). Used to determine time ! axis units. d_ntegrate_tstep = 1.0, !D_NTEGRATE_TSTEP is the number of time_units per ! integration step in the model run. (optional) d_ntuple = 1, !D_NTUPLE indicates timestep groups (e.g. groups of ! 3 timesteps that are 73 timesteps from the next ! group of 3 timesteps in the output data files). ! NOT IMPLEMENTED AS OF 6/90 d_time_run = '11-AUG-1987 00:00:00', ! (optional) d_who_ranit = 'Mark Verschell', ! (optional) d_time_made = '07-OCT-1987 17:28:00', ! (optional) d_who_madeit = 'Mark Verschell', ! (optional) d_aux_modnum = ' AA',' ZA' !D_AUX_MODNUM contains the modification numbers for ! up to 6 auxiliary data sets, matching the ! modification numbers in the STEP records in the ! data files associated with each data set. For ! example if you have PSI in an auxiliary data set ! and the data files associated with that auxiliary ! data set have a modification number of ' AA' then ! you would have an entry for D_AUX_MODNUM of ' AA' ! The first D_AUX_MODNUM entry is considered auxil- ! iary set 1, the second 2, and so on. Normally this ! parameter is not needed. (See also D_AUX_SET_NUM, ! and S_AUX_SET_NUM) d_add_parm = 'MIN_WIND_SPEED = 345 cm/sec', !D_ADD_PARM is used to pass names and values of up 'INITIAL_CLIMATOLOGY = EDIT2', ! to 15 additional parameters to programs that are ! analyzing the particular data set. The additional ! parameters are passed as 'name = value'. (See ! example to left) d_grid_filename = 'PANGEA.GRD',' ',' ',' ',' ',' ', !D_GRID_FILENAME contains filenames (including ! directory) that describe extra grid definitions. ! The subroutine GT$INIT_DSET reads in these files, ! and stores the relevant information in a GRID ! DESCRIPTION COMMON. $END ! $MESSAGE_RECORD ! d_message = ' ', !The NAMELIST_GROUP MESSAGE_RECORD lets the creator d_alert_on_open = .FALSE., ! of the descriptor print out an important message d_alert_on_output = .FALSE., ! when the descriptor is accessed (OPEN) or when ! data is read from a date file (OUTPUT). $END ! $VARIABLE_RECORD !Each descriptor file must have one VARIABLE_RECORD ! NAMELIST_GROUP per variable, including all ! variables in auxiliary files. d_var_code = 'TEMP', !The D_VAR_CODE must be the same as the variable ! code stored in the data files. d_var_title = 'TEMPERATURE', !D_VAR_TITLE is the variable title used in plots and ! other data output. d_var_titl_mod = ' ' !D_VAR_TITL_MOD is additional info about variable. ! (e.g. "smoothed") d_var_units = 'deg. C', ! d_grid_name = 'PS3DT', !D_GRID_NAME is the grid a variable is stored on. ! (refers to d_grid_filename above) d_missing_flag = 0.0, !D_MISSING_FLAG indicates variable missing. d_bad_flag = -1E+34, !D_BAD_FLAG indicates alt. missing variable flag d_ordering = 'WE','SN','UD','TI', !D_ORDERING is the ordering in each data file of ! this particular variable. The example to the left ! is the normal ordering and stands for (longitude ! [WEST-EAST], latitude[SOUTH-NORTH], depth ! [UP-DOWN], time) d_grid_start = 1,1,1,-1, !D_GRID_START and D_GRID_END describe the subscript d_grid_end = 160,100,27,-1, ! range of the variable for x, y, z, t in that ! order. -1 indicates an unknown range. The range is ! based upon the defining grid. These values are ! always given in the order x, y, z, t irregardless ! of the d_ordering parameter above. d_precision = 'SINGLE', !SINGLE or DOUBLE precision d_aux_set_num = 0, !D_AUX_SET_NUM is used to indicate which data set ! the variable is stored in, 0 is in main data set, ! while 1-6 are in auxiliary data sets. When the ! variable is in an auxiliary data set, the ! modification numbers are given by D_AUX_MODNUM. ! (See also D_AUX_MODNUM and S_AUX_SET_NUM) ! (optional) $END ! $VARIABLE_RECORD !For successive VARIABLE_RECORDS (and STEPFILE_REC- d_var_code = 'SALT', ! ORDS) any NAMELIST_ENTITIES that have values which d_var_title = '(SALINITY(ppt) - 35) /1000', ! are the same as those in the RECORD immediately d_var_units = 'frac. by wt. less .035', ! preceding them are optional. The values will be d_missing_flag = -1E+34, ! carried over from the preceding RECORD. These d_bad_flag = .01, ! repetitive NAMELIST_ENTITIES and there values are $END ! usually left out of the descriptor, to save space $VARIABLE_RECORD ! and above all processing time. d_var_code = 'U ', ! d_var_title = 'ZONAL VELOCITY', ! d_var_units = 'cm/sec', ! d_grid_name = 'PS3DU', ! d_bad_flag = -1E+34, ! $END ! $VARIABLE_RECORD ! d_var_code = 'V ', ! d_var_title = 'MERIDIONAL VELOCITY', ! $END ! $VARIABLE_RECORD ! d_var_code = 'W ', ! d_var_title = 'VERTICAL VELOCITY', ! d_grid_name = 'PS3DW', ! $END ! $VARIABLE_RECORD ! d_var_code = 'TAUX', ! d_var_title = 'ZONAL WIND STRESS', ! d_var_units = 'dynes/cm**2', ! d_grid_name = 'PS2DU', ! d_grid_end = 160,100,1,-1, ! $END ! $VARIABLE_RECORD ! d_var_code = 'TAUY', ! d_var_title = 'MERIDIONAL WIND STRESS', ! $END ! $VARIABLE_RECORD ! d_var_code = 'PSI', ! d_var_title = 'STREAM FUNCTION', ! d_var_units = 'cm**3/sec', ! d_aux_set_num = 1, ! $END ! $VARIABLE_RECORD ! d_var_code = '**END OF VARS**', !D_VAR_FLAG with a value of '**END OF VARS**' ! indicates no more variables described in this ! descriptor file. NOTE: The number of variables in ! the descriptor must match the number in the data ! files. $END ! $EXTRA_RECORD !EXTRA_RECORD is just that, an extra NAMELIST_GROUP ! that at this time has no use, but is here in case $END ! of future need. $STEPFILE_RECORD !A STEP_FILE is a data file containing 1 or more ! time steps of GT data. s_filename = 'GTBA032.001', !If S_NUM_OF_FILES=1 then S_FILENAME is the filename ! of the data file. if S_NUM_OF_FILES>1 then ! S_FILENAME is the first file in a group of files ! and the rest of the filenames are determined by ! adding 1 to each successive file (i.e. gtba032.001 ! + 1 = gtba032.002) s_aux_set_num = 0, !S_AUX_SET_NUM is used to indicate which data set ! the stepfile is associated with, 0 is in main data ! set, while 1-6 are in auxiliary data sets. When ! the stepfile is in an auxiliary data set, the ! modification numbers are given by D_AUX_MODNUM. ! (See also D_AUX_MODNUM and D_AUX_SET_NUM) ! (optional) s_start = 17592., !S_START is the first timestep in data file group !S_START, S_END AND S_DELTA are rendered insignificant ! if the data is time-independent. It is recommended ! that S_START and S_END be set to -1e34 for time- ! independent data sets. s_end = 35039., !S_END is the last timestep in data file group s_delta = 73., !S_DELTA is the delta timestep in data file group s_num_of_files = 24, !S_NUM_OF_FILES is the number of files in data file s_regvarflag = ' ', !S_REGVARFLAG indicates regular variables in data ! file group. NOTE: As of 6/90 no value other than ! ' ' is allowed for S_REGVARFLAG. s_index = ' ', !S_INDEX is reserved for future use when the data ! file (group) contains either irregular variables ! or irregular timesteps, or both. S_INDEX will ! point to a file that describes the irregular ! data file. NOTE: As of 6/90 no value other than ! ' ' is allowed for S_INDEX. $END ! $STEPFILE_RECORD ! s_filename = 'PSI_GTAA032.001', ! s_aux_set_num = 1, ! $END ! $STEPFILE_RECORD ! s_filename = '**END OF STEPFILES**', !S_FILENAME with a value of '**END OF STEPFILES**' ! indicates no more stepfiles described in this ! descriptor file. $END !