Data Zoo File Formats October 21, 1993 The Data Zoo contains many different kinds of data. However, all the data maintained at the Center for Coastal Studies has been unified in one sense. The format follows one simple paradigm. That being one instrument, one file. Each file has five lines of header information, and tab separated columns for the dynamic variables. This format was chosen for several reasons. The most important of which is ease of accessibility. CCS believes that the days of storing your data in some cryptic binary format requiring a specific function to read it back in are over. These ASCII files can be read into anything. This format is easily manipulated. Space considerations are only a minor factor since disk space is relatively cheap, and you can easily compress ASCII files with a compression tool like zip, compress, arc, stuffit, etc. These tools will save you much more space than your average binary encoding. Outline of the CCS ASCII Format --------------------------------------------- 1st line) Lists the names of the static variables. #All header lines use 2nd line) Lists the units of the static variables. #tabs to separate entries 3rd line) The values of the static variables. 4th line) Lists the names of the dynamic variables as column headings. 5th line) Lists the units that the dynamic variables are in. 6th line) The values of the dynamic variables begin here and are listed in tab separated columns. - - - - - - nth line) - - - Example of a current meter file ----------------------------------------------------------- start_time npts samp_interv depth lat lon yymmddhhmmss #_pts seconds meters deg deg 911024200000 4388 3600 56 32.700 -119.592 north east temp m_s m_s deg_C 0.184 0.018 14.33 0.175 0.022 14.00 0.123 0.056 13.47 0.103 0.075 13.38 0.094 0.127 13.38 0.042 0.169 NaN 0.120 0.185 14.05 0.136 0.161 13.98 0.129 0.149 13.91 0.195 0.167 14.18 . . . . . . . . . 0.175 0.022 14.00 Flagging of bad or missing values ----------------------------------------------- Bad values are flagged by putting a NaN in place of the bad value. A NaN is a valid IEEE Floating point number and is a valid Real number in FORTRAN and a valid Float in C. Warnings and Limitations ------------------------------------ Each file must contain all the static header columns defined for it's type of instrument. If no value is available a NaN must be used for that value. And the order in which they appear must match the definition outlined below. This constraint may be removed in the future. In the case of dynamic variables we are less constrained. No order is imposed on the columns as the column headers serve to define which column is which. And not all defined column types must appear in any given file. For example, in a current meter file the columns names north, east, vert, temp, pressure, and salinity are defined. But if you only have values for north, and east only those columns need appear. Specific form for each kind of instrument ------------------------------------------------------------ The following types of instruments have a format defined for them: Current Meters Drifters Met. Stations Ships Temperature Loggers XBT Casts Pressure Sensors CTD Casts Defined fields for each kind of instrument file ------------------------------------------------------------ *** It is important for compatibility reasons with the programs that read and write these files that the names and abbreviations used below to define the fields are used with strict adherence. CTD Casts: Static Variables start_time npts station_depth cast_depth lat lon surf_temp atm_temp_wet atm_temp_dry wind_speed wind_direction Dynamic Variables salinity temp pressure O2 FL NO2 NO3 PO3 SI2 Current Meters: Static Variables start_time npts samp_interv depth lat lon Dynamic Variables north east vert temp pressure salinity Drifters: Static Variables start_time npts depth start_lat start_lon transmitter inst_type station Dynamic Variables time lat lon temp quality Met. Stations: Static Variables start_time npts samp_interv lat lon Dynamic Variables north east atm_pressure atm_temp_wet atm_temp_dry sea_surf_temp dew_point salinity long_wave_solar_rad short_wave_solar_rad sig_wave_height ave_wave_period dom_wave_period ave_wave_direction anemom_height Pressure Sensors: Static Variables start_time npts samp_interv dept lat lon Dynamic Variables pressure temp salinity Ships: Static Variables start_time npts start_lat start_lon method name Dynamic Variables time lat lon temp conduct Temp. Loggers: Static Variables start_time npts samp_interv depth lat lon Dynamic Variables temp XBT Casts: Static Variables start_time npts station_depth cast_depth lat lon surf_temp atm_temp_wet atm_temp_dry wind_speed wind_direction Dynamic Variables temp pressure