[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20001016: Unable to find Version 7.7 NetCDF config file



>From: Frederic J Chagnon <address@hidden>
>Organization: MIT
>Keywords: 200010162003.e9GK39413512 McIDAS-X 7.7 netCDF config

Frederic,

>On page 3D-19 of the McIDAS 7.7 user guide, you refer to two sample 
>configuration files (netcdfgrid.cfg & netcdfpoint.cfg) that should be located 
>in the ~mcidas/data directory. I amunable to find these files, both on your 
>ftp site, or on my machine.

These files will be available with the McIDAS-X 7.7 release.  The version
currently in distribution from Unidata is 7.6.

>Could I please have a copy of these sample config files?

I have included the 7.7 version files below:

<snip> ----------------------- netcdfgrid.cfg ---------------------------

#
# Copyright(c) 2000, Space Science and Engineering Center, UW-Madison
# Refer to "McIDAS Software Acquisition and Distribution Policies"
# in the file  mcidas/data/license.txt
#

# $Id: netcdfgrid.cfg,v 1.1 2000/05/05 18:26:43 scottl Tst $
#
#
#
#  This file contains an example configuration file to
#   be used with the netcdf grid server
#
#  Inform the netcdf server which variable names are
#   associated with the x- and y- dimensions of a grid,
#   the temporal dimension, and the vertical dimension
#    **  dimension associations **
#  Time is associated with the dimension named TIME in
#   the netcdf file that this configuration file is
#   used to access
#
record     TIME
#
#  either x or lon can be the X (horizontal) axis
#  either y or lat can be the Y (horizontal) axis
#
x         XHORZ
y         YHORZ
lat       YHORZ
lon      XHORZ
#
#  There are many possibilities for a name for a 
#  vertical variable ... level below refers to a 
#  pressure level (1000,950,900,850,...,200,150,100mb)
#  Some variables aren't saved at each pressure level
#  (absolute vorticity, for example) and the levels they
#  are saved at are in level_c (1000,850,700,500,250mb)
#  Other variables are saved at fhg (a _f_ixed _h_eight _a_bove
#  ground (typically 2 and 10 meters); still others are 
#  saved at sigma levels (ls);  ls_bndry_bot is a sigma level
#  for the bottom of the bndry layer (e.g 0.98) and ls_bndry_top
#  for the top of the bndry layer (0.84);  ls_sfc_bot and
#  ls_sfc_top define the top/bottom of the surface layer
#  in the model (0.99 and 0.97 sigma);  ls_all_top and ls_all_bot
#  are the top and bottom of the model in sigma (1 and 0);
#  lfhg_bot and lfhg_top are 0 and 3000 m.  ls_bot and ls_top
#  give predefined sigma layers (1-0.97,0.97-0.94,0.94-0.91,0.91-0.88
#  and 0.88-0.85)
# So....there can be u which is saved at level, y, and x
#                    u_fhg which is saved at fhg, y and x
#                    u_ls which is saved at ls, y and x ...
#   all are u components, but some are at constant p, some are at 
#    constant z, and some are at constant sigma.
level      VERT
level_c    VERT
fhg        VERT
ls         VERT
ls_bndry   VERT
ls_sfc     VERT
ls_all     VERT
lfhg       VERT
#
#    **  parameter (variable) mappings  **
#    Put in the upcased name from the command line, and netcdf name
#      it should map to...the netcdf name will often (but now always!)
#      contain lowercase letters
#    The following are used by the program to translate between what
#      is entered in the sort clauses (PARAM=OMEGA) and what the netCDF
#      file refers to variables as.  For example, one would enter
#      PARAM=PRES on the command line to access P_sfc in the netcdf
#      file.  Only those parameters that are mapped here can be
#      succesfully accessed by the netcdf grid servers;  after all,
#      it does need to know what to look for.
#
PRES P_sfc
CAPE cape_sfc
W omega
OMEGA omega
TERRAIN Z_sfc
RH RH
ABV absvor
U u
V v
T T
TSIG T_ls
LI LI4_ls
LI_LS LI_ls
'TOTAL PRECIPITATION OVER ACCUMULATION INTERVAL' PRECIP
PCP PRECIP
CPRECIP precip_cn
PW pr_water_ls
CIN cin_sfc
HELICITY helc_lfhg
#
#    **  Vertical Level units mapping  **
hectopascals mb
#     Put the (upcased) netCDF name, and follow it with the McIDAS name
#      If you want to list out all of the variables in the file, all
#      of the variables must be listed here!
#     This part of the config file is present for the construction of the
#      gridheader -- the netcdf name is selected and the mcidas name is
#      extracted.  There should be 1 entry for each of the netCDF variable
#      names (that have x- and y- dimensions) that exist in the file.
#      This is necessary for a GRDLIST to list out all the grids in 
#      the netcdf file (i.e., GRDLIST GRID/NETCDF NUM=ALL)
Z Z UNITS='gp m'
T T
RH RH UNITS=%
omega W UNITS=pa/s
cape_sfc CAPE LEV=SFC UNITS=J/kg
P_sfc PRES LEV=SFC UNITS=pa
PRECIP PCP
pli_lpdg LI
LI4_lpdg LI4
LI_ls LI_S LEV=SFC
LI4_ls LI 
Psl_et PETA
Z_sfc TERN LEV=SFC
precip_cn PCPC
u U
v V
absvor ABV
pr_water_atm PW
pr_water_ls PWLS
u_fhg U_AG
v_fhg V_AG
u_ls USIG
v_ls VSIG
T_ls TSIG
RH_fhg RHAG
T_fhg T_AG
cin_sfc CIN LEV=SFC
cin_lpdg CINP
cin_ls CNBL
cape_lpdg CAPP
cape_ls CAPS
helc_lpdg HELC
helc_lfhg HELF
RH_lpdg RHP
u_lpdg UP
v_lpdg VP
T_lpdg TP
pr_water_ls PW LEV=SFC UNITS=kg/m2
RH_ls RHSG
#
#
#  What follows is the output from the ncdump -h of the eta
#   model netcdf file to which this configuration file refers.
#netcdf 97032712_eta {
#dimensions:
#       record = UNLIMITED ; // (7 currently)
#       level = 19 ;
#       level_c = 5 ;
#       fhg = 2 ;
#       ls = 5 ;
#       ls_bndry = 1 ;
#       ls_sfc = 1 ;
#       ls_all = 1 ;
#       lfhg = 1 ;
#       x = 93 ;
#       y = 65 ;
#       datetime_len = 21 ;
#       nmodels = 2 ;
#       accum = 2 ;
#       nav = 1 ;
#       nav_len = 100 ;
#variables:
#       double reftime(record) ;
#               reftime:long_name = "reference time" ;
#               reftime:units = "hours since 1992-1-1" ;
#       double valtime(record) ;
#               valtime:long_name = "valid time" ;
#               valtime:units = "hours since 1992-1-1" ;
#       char datetime(record, datetime_len) ;
#               datetime:long_name = "reference date and time" ;
#       float valtime_offset(record) ;
#               valtime_offset:long_name = "hours from reference time" ;
#               valtime_offset:units = "hours" ;
#       float level(level) ;
#               level:long_name = "level" ;
#               level:units = "hectopascals" ;
#       float level_c(level_c) ;
#               level_c:long_name = "level subset" ;
#               level_c:units = "hectopascals" ;
#       float fhg(fhg) ;
#               fhg:long_name = "fixed height above ground" ;
#               fhg:units = "meters" ;
#       float ls_bot(ls) ;
#               ls_bot:long_name = "bottom level of layer between 2 sigma 
levels" ;
#               ls_bot:units = "" ;
#       float ls_top(ls) ;
#               ls_top:long_name = "top level of layer between 2 sigma levels" ;
#               ls_top:units = "" ;
#       float ls_bndry_bot(ls_bndry) ;
#               ls_bndry_bot:long_name = "bottom level of boundary layer 
between 2 sigma levels" ;
#               ls_bndry_bot:units = "" ;
#       float ls_bndry_top(ls_bndry) ;
#               ls_bndry_top:long_name = "top level of boundary layer between 2 
sigma levels" ;
#               ls_bndry_top:units = "" ;
#       float ls_sfc_bot(ls_sfc) ;
#               ls_sfc_bot:long_name = "bottom level of surface layer between 2 
sigma levels" ;
#               ls_sfc_bot:units = "" ;
#       float ls_sfc_top(ls_sfc) ;
#               ls_sfc_top:long_name = "top level of surface layer between 2 
sigma levels" ;
#               ls_sfc_top:units = "" ;
#       float ls_all_bot(ls_all) ;
#               ls_all_bot:long_name = "bottom level of atmosphere between 2 
sigma levels" ;
#               ls_all_bot:units = "" ;
#       float ls_all_top(ls_all) ;
#               ls_all_top:long_name = "top level of atmosphere between 2 sigma 
levels" ;
#               ls_all_top:units = "" ;
#       float lfhg_bot(lfhg) ;
#               lfhg_bot:long_name = "bottom level of layer between 2 fixed 
heights above ground" ;
#               lfhg_bot:units = "meters" ;
#       float lfhg_top(lfhg) ;
#               lfhg_top:long_name = "top level of layer between 2 fixed 
heights above ground" ;
#               lfhg_top:units = "meters" ;
#       int model_id(nmodels) ;
#               model_id:long_name = "generating process ID number" ;
#       char nav_model(nav, nav_len) ;
#               nav_model:long_name = "navigation model name" ;
#       int grid_type_code(nav) ;
#               grid_type_code:long_name = "GRIB-1 GDS data representation 
type" ;
#       char grid_type(nav, nav_len) ;
#               grid_type:long_name = "GRIB-1 grid type" ;
#       char grid_name(nav, nav_len) ;
#               grid_name:long_name = "grid name" ;
#       int grid_center(nav) ;
#               grid_center:long_name = "GRIB-1 originating center ID" ;
#       int grid_number(nav) ;
#               grid_number:long_name = "GRIB-1 catalogued grid number" ;
#       char earth_shape(nav, nav_len) ;
#               earth_shape:long_name = "assumed earth shape" ;
#       char x_dim(nav, nav_len) ;
#               x_dim:long_name = "x dimension name" ;
#       char y_dim(nav, nav_len) ;
#               y_dim:long_name = "y dimension name" ;
#       int Nx(nav) ;
#               Nx:long_name = "number of points along x-axis" ;
#       int Ny(nav) ;
#               Ny:long_name = "number of points along y-axis" ;
#       float La1(nav) ;
#               La1:long_name = "latitude of first grid point" ;
#               La1:units = "degrees_north" ;
#       float Lo1(nav) ;
#               Lo1:long_name = "longitude of first grid point" ;
#               Lo1:units = "degrees_east" ;
#       byte ResCompFlag(nav) ;
#               ResCompFlag:long_name = "resolution and component flags" ;
#       float Lov(nav) ;
#               Lov:long_name = "orientation of the grid" ;
#               Lov:units = "degrees_east" ;
#       float Dx(nav) ;
#               Dx:long_name = "x-direction grid length" ;
#               Dx:units = "meters" ;
#       float Dy(nav) ;
#               Dy:long_name = "y-direction grid length" ;
#               Dy:units = "meters" ;
#       byte ProjFlag(nav) ;
#               ProjFlag:long_name = "projection center flag" ;
#       float Latin1(nav) ;
#               Latin1:long_name = "first intersecting latitude" ;
#               Latin1:units = "degrees_north" ;
#       float Latin2(nav) ;
#               Latin2:long_name = "second intersecting latitude" ;
#               Latin2:units = "degrees_north" ;
#       float SpLat(nav) ;
#               SpLat:long_name = "latitude of the southern pole" ;
#               SpLat:units = "degrees_north" ;
#       float SpLon(nav) ;
#               SpLon:long_name = "longitude of the southern pole" ;
#               SpLon:units = "degrees_east" ;
#       float LI_ls(record, ls_sfc, y, x) ;
#               LI_ls:long_name = "surface lifted index" ;
#               LI_ls:units = "degK" ;
#               LI_ls:_FillValue = -9999.f ;
#               LI_ls:navigation = "nav" ;
#       float LI4_ls(record, ls_bndry, y, x) ;
#               LI4_ls:long_name = "best (4 layer) lifted index" ;
#               LI4_ls:units = "degK" ;
#               LI4_ls:_FillValue = -9999.f ;
#               LI4_ls:navigation = "nav" ;
#       float PRECIP(record, y, x) ;
#               PRECIP:long_name = "total precipitation over accumulation 
interval" ;
#               PRECIP:units = "kg/m2" ;
#               PRECIP:_FillValue = -9999.f ;
#               PRECIP:navigation = "nav" ;
#       float PRECIP_accum_times(record, accum) ;
#               PRECIP_accum_times:long_name = "precipitation accumulation 
interval" ;
#               PRECIP_accum_times:units = "hours" ;
#               PRECIP_accum_times:_FillValue = -9999.f ;
#       float P_sfc(record, y, x) ;
#               P_sfc:long_name = "pressure at surface" ;
#               P_sfc:units = "Pa" ;
#               P_sfc:_FillValue = -9999.f ;
#               P_sfc:navigation = "nav" ;
#       float Psl_et(record, y, x) ;
#               Psl_et:long_name = "mean sea level pressure (ETA model 
reduction)" ;
#               Psl_et:units = "Pa" ;
#               Psl_et:_FillValue = -9999.f ;
#               Psl_et:navigation = "nav" ;
#       float RH(record, level, y, x) ;
#               RH:long_name = "relative humidity" ;
#               RH:units = "percent" ;
#               RH:_FillValue = -9999.f ;
#               RH:navigation = "nav" ;
#       float T(record, level, y, x) ;
#               T:long_name = "temperature" ;
#               T:units = "degK" ;
#               T:_FillValue = -9999.f ;
#               T:navigation = "nav" ;
#       float Z(record, level, y, x) ;
#               Z:long_name = "geopotential height" ;
#               Z:units = "gp m" ;
#               Z:_FillValue = -9999.f ;
#               Z:navigation = "nav" ;
#       float Z_sfc(y, x) ;
#               Z_sfc:long_name = "terrain" ;
#               Z_sfc:units = "gp m" ;
#               Z_sfc:_FillValue = -9999.f ;
#               Z_sfc:navigation = "nav" ;
#       float omega(record, level, y, x) ;
#               omega:long_name = "pressure vertical velocity" ;
#               omega:units = "Pa/s" ;
#               omega:_FillValue = -9999.f ;
#               omega:navigation = "nav" ;
#       float precip_cn(record, y, x) ;
#               precip_cn:long_name = "convective precipitation over 
accumulation interval" ;
#               precip_cn:units = "kg/m2" ;
#               precip_cn:_FillValue = -9999.f ;
#               precip_cn:navigation = "nav" ;
#       float precip_cn_accum_times(record, accum) ;
#               precip_cn_accum_times:long_name = "convective precipitation 
accumulation interval" ;
#               precip_cn_accum_times:units = "hours" ;
#               precip_cn_accum_times:_FillValue = -9999.f ;
#       float u(record, level, y, x) ;
#               u:long_name = "u-component of wind" ;
#               u:units = "meters/second" ;
#               u:_FillValue = -9999.f ;
#               u:navigation = "nav" ;
#       float v(record, level, y, x) ;
#               v:long_name = "v-component of wind" ;
#               v:units = "meters/second" ;
#               v:_FillValue = -9999.f ;
#               v:navigation = "nav" ;
#       float absvor(record, level_c, y, x) ;
#               absvor:long_name = "absolute vorticity" ;
#               absvor:units = "1/s" ;
#               absvor:_FillValue = -9999.f ;
#               absvor:navigation = "nav" ;
#       float pr_water_ls(record, ls_all, y, x) ;
#               pr_water_ls:long_name = "precipitable water" ;
#               pr_water_ls:units = "kg/m2" ;
#               pr_water_ls:_FillValue = -9999.f ;
#               pr_water_ls:navigation = "nav" ;
#       float u_fhg(record, fhg, y, x) ;
#               u_fhg:long_name = "u-component of wind at fixed height above 
ground" ;
#               u_fhg:units = "meters/second" ;
#               u_fhg:_FillValue = -9999.f ;
#               u_fhg:navigation = "nav" ;
#       float v_fhg(record, fhg, y, x) ;
#               v_fhg:long_name = "v-component of wind at fixed height above 
ground" ;
#               v_fhg:units = "meters/second" ;
#               v_fhg:_FillValue = -9999.f ;
#               v_fhg:navigation = "nav" ;
#       float RH_fhg(record, fhg, y, x) ;
#               RH_fhg:long_name = "relative humidity at fixed height above 
ground" ;
#               RH_fhg:units = "percent" ;
#               RH_fhg:_FillValue = -9999.f ;
#               RH_fhg:navigation = "nav" ;
#       float T_fhg(record, fhg, y, x) ;
#               T_fhg:long_name = "temperature at fixed height above ground" ;
#               T_fhg:units = "degK" ;
#               T_fhg:_FillValue = -9999.f ;
#               T_fhg:navigation = "nav" ;
#       float cin_sfc(record, y, x) ;
#               cin_sfc:long_name = "surface convective inhibition" ;
#               cin_sfc:units = "J/kg" ;
#               cin_sfc:_FillValue = -9999.f ;
#               cin_sfc:navigation = "nav" ;
#       float cape_sfc(record, y, x) ;
#               cape_sfc:long_name = "surface convective available potential 
energy" ;
#               cape_sfc:units = "J/kg" ;
#               cape_sfc:_FillValue = -9999.f ;
#               cape_sfc:navigation = "nav" ;
#       float cin_ls(record, ls_bndry, y, x) ;
#               cin_ls:long_name = "boundary convective inhibition" ;
#               cin_ls:units = "J/kg" ;
#               cin_ls:_FillValue = -9999.f ;
#               cin_ls:navigation = "nav" ;
#       float cape_ls(record, ls_bndry, y, x) ;
#               cape_ls:long_name = "boundary convective available potential 
energy" ;
#               cape_ls:units = "J/kg" ;
#               cape_ls:_FillValue = -9999.f ;
#               cape_ls:navigation = "nav" ;
#       float helc_lfhg(record, lfhg, y, x) ;
#               helc_lfhg:long_name = "helicity" ;
#               helc_lfhg:units = "meters2/seconds2" ;
#               helc_lfhg:_FillValue = -9999.f ;
#               helc_lfhg:navigation = "nav" ;
#       float RH_ls(record, ls, y, x) ;
#               RH_ls:long_name = "relative humidity in boundary layer" ;
#               RH_ls:units = "percent" ;
#               RH_ls:_FillValue = -9999.f ;
#               RH_ls:navigation = "nav" ;
#       float u_ls(record, ls, y, x) ;
#               u_ls:long_name = "u-component of wind in boundary layer" ;
#               u_ls:units = "meters/second" ;
#               u_ls:_FillValue = -9999.f ;
#               u_ls:navigation = "nav" ;
#       float v_ls(record, ls, y, x) ;
#               v_ls:long_name = "v-component of wind in boundary layer" ;
#               v_ls:units = "meters/second" ;
#               v_ls:_FillValue = -9999.f ;
#               v_ls:navigation = "nav" ;
#       float T_ls(record, ls, y, x) ;
#               T_ls:long_name = "temperature in boundary layer" ;
#               T_ls:units = "degK" ;
#               T_ls:_FillValue = -9999.f ;
#               T_ls:navigation = "nav" ;
#
#// global attributes:
#               :record = "reftime, valtime" ;
#               :ls = "ls_bot, ls_top" ;
#               :ls_bndry = "ls_bndry_bot, ls_bndry_top" ;
#               :ls_sfc = "ls_sfc_bot, ls_sfc_top" ;
#               :ls_all = "ls_all_bot, ls_all_top" ;
#               :lfhg = "lfhg_bot, lfhg_top" ;
#               :history = "created by gribtonc from HDS broadcast" ;
#               :title = "NCEP Global Product Set" ;
#               :Conventions = "NUWG" ;
#               :version = 0. ;
#}

<snip> ----------------------- netcdfgrid.cfg ---------------------------

<snip> ----------------------- netcdfpoint.cfg ---------------------------

#
#
# Copyright(c) 2000, Space Science and Engineering Center, UW-Madison
# Refer to "McIDAS Software Acquisition and Distribution Policies"
# in the file  mcidas/data/license.txt
#

# $Id: netcdfpoint.cfg,v 1.2 2000/05/05 18:24:13 scottl Tst $
#
#
#  This is a template for a point netcdf config file in 
#    ~mcidas/data.  The netcdf file that this config 
#    file helps describe is also in ~mcidas/data and
#    is called netcdfbuoy.nc;  it contains buoy data.
#  The dsserve command that should be entered to link
#    the netcdf file to the PT* commands in McIDAS is:
#  DSSERVE ADD PT/EXAMPLE NCDF 
#     DIRFILE=~/mcidas/data/netcdfbuoy.nc 
#     INFO=~/mcidas/data/netcdfpoint.cfg
#  A PTLIST PT/EXAMPLE PAR=p1 p2 SEL='SELECT strings'
#     will then return data as expected.
#
#  Enter first the McIDAS command-line name, the units, the 
#       precision (2 below means 2 decimal places) and then
#       the name of the netcdf variable in the file that
#       is to match the McIDAS variable name
#  Note that case matters for netcdf variable names
#  Also note that it is not necessary to include all variables
#       in the netcdf file in this configuration file;  one
#       need include only those that the user wants to see
#       listed using McIDAS...if you request a parameter not
#       listed in the configuration file, the PT* commands
#       will return PTLIST: Invalid return parameter requested
#
LAT DEG 4 Lat
LON DEG 4 Lon
#  Here (IDN) is an example of an integer value
IDN X 0 buoy
#  Here (ID) is an example of a character value
ID CHAR 0 ship
#  Note that time sometimes returns in netcdf units (seconds past a date)
TIME HMS 0 time_obs
SPD KTS 2 meanWind
VIS M 2 VIS
DIR M 1 DIR
T C 2 T
RH PCT 1 humidity
TD C 2 TD
PSL MB 1 SLP
P MB 1 PRES
DPDT MB 1 Ptend
PCP MM 1 PRECIP_amt
TW C 1 Tw
#
# The following lines are the output from the ncdump -h on the
#   netcdf file to which this configuration file refers
#netcdf netcdfbuoy {
#dimensions:
#       recNum = UNLIMITED ; // (2 currently)
#       rep_type_len = 4 ;
#       ship_call_len = 5 ;
#       maxLevel = 15 ;
#       r_len = 256 ;
#variables:
#       char rep_type(recNum, rep_type_len) ;
#               rep_type:long_name = "Report type" ;
#               rep_type:reference = "WMO #306, FM 13-X and FM 18-IX" ;
#       int zone(recNum) ;
#               zone:long_name = "Buoy zone" ;
#               zone:_FillValue = -99999 ;
#               zone:reference = "Table 0161" ;
#       int buoy(recNum) ;
#               buoy:long_name = "Buoy number" ;
#               buoy:_FillValue = -99999 ;
#       char ship(recNum, ship_call_len) ;
#               ship:long_name = "Ship call" ;
#       int time_obs(recNum) ;
#               time_obs:long_name = "time of Observation" ;
#               time_obs:_FillValue = -99999 ;
#               time_obs:units = "seconds since 1970-01-01 00 UTC" ;
#       int time_nominal(recNum) ;
#               time_nominal:long_name = "time nominal" ;
#               time_nominal:_FillValue = -99999 ;
#               time_nominal:units = "seconds since 1970-01-01 00 UTC" ;
#       float Lat(recNum) ;
#               Lat:long_name = "Buoy/Ship latitude" ;
#               Lat:_FillValue = -99999.f ;
#               Lat:valid_range = -90., 90. ;
#               Lat:units = "degrees" ;
#       float Lon(recNum) ;
#               Lon:long_name = "Buoy/Ship longitude" ;
#               Lon:_FillValue = -99999.f ;
#               Lon:valid_range = -180., 180. ;
#               Lon:units = "degrees" ;
#       int qPos(recNum) ;
#               qPos:long_name = "Quality control of Position" ;
#               qPos:_FillValue = -99999 ;
#               qPos:reference = "Table 3334" ;
#       int qTime(recNum) ;
#               qTime:long_name = "Quality control of Time" ;
#               qTime:_FillValue = -99999 ;
#               qTime:reference = "Table 3334" ;
#       int S1qCntrl(recNum) ;
#               S1qCntrl:long_name = "Quality control of Sec 1" ;
#               S1qCntrl:_FillValue = -99999 ;
#               S1qCntrl:reference = "Table 3334" ;
#       int S1qPos(recNum) ;
#               S1qPos:long_name = "Quality control position of Sec 1" ;
#               S1qPos:_FillValue = -99999 ;
#       int stnType(recNum) ;
#               stnType:long_name = "Type of station operation" ;
#               stnType:_FillValue = -99999 ;
#               stnType:reference = "Table 1860" ;
#       int meanWind(recNum) ;
#               meanWind:long_name = "Highest mean wind speed" ;
#               meanWind:_FillValue = -99999 ;
#               meanWind:reference = "Table 3778" ;
#       int VIS(recNum) ;
#               VIS:long_name = "Horizontal visibility" ;
#               VIS:_FillValue = -99999 ;
#               VIS:reference = "Table 4377" ;
#       int cloudCover(recNum) ;
#               cloudCover:long_name = "Total cloud cover in oktas" ;
#               cloudCover:_FillValue = -99999 ;
#               cloudCover:reference = "Table 2700" ;
#       int DIR(recNum) ;
#               DIR:long_name = "Buoy/Ship Direction" ;
#               DIR:_FillValue = -99999 ;
#               DIR:valid_range = 0, 360 ;
#               DIR:units = "degrees" ;
#       float SPD(recNum) ;
#               SPD:long_name = "Buoy/Ship Speed" ;
#               SPD:_FillValue = -99999.f ;
#               SPD:units = "meters/sec" ;
#       float T(recNum) ;
#               T:long_name = "Air Temperature to tenths" ;
#               T:_FillValue = -99999.f ;
#               T:units = "Celsius" ;
#       int humidity(recNum) ;
#               humidity:long_name = "Humidity" ;
#               humidity:_FillValue = -99999 ;
#               humidity:units = "percent" ;
#       float TD(recNum) ;
#               TD:long_name = "Dew-point Air temperature to tenths" ;
#               TD:_FillValue = -99999.f ;
#               TD:units = "Celsius" ;
#       float PRES(recNum) ;
#               PRES:long_name = "Buoy/Ship level pressure" ;
#               PRES:_FillValue = -99999.f ;
#               PRES:units = "millibars" ;
#       float SLP(recNum) ;
#               SLP:long_name = "Sea level pressure" ;
#               SLP:_FillValue = -99999.f ;
#               SLP:units = "millibars" ;
#       int char_Ptend(recNum) ;
#               char_Ptend:long_name = "Character Pressure tendency" ;
#               char_Ptend:_FillValue = -99999 ;
#               char_Ptend:units = "0|1|2|3|4|5|6|7|8 Table 12-5" ;
#       float Ptend(recNum) ;
#               Ptend:long_name = "Change in Pressure in past 3 hours" ;
#               Ptend:_FillValue = -99999.f ;
#               Ptend:units = "millibars" ;
#       float PRECIP_amt(recNum) ;
#               PRECIP_amt:long_name = "Precipitation amount" ;
#               PRECIP_amt:_FillValue = -99999.f ;
#               PRECIP_amt:units = "mm" ;
#               PRECIP_amt:reference = "Table 3590" ;
#       int PRECIP_period(recNum) ;
#               PRECIP_period:long_name = "Precipitation Period" ;
#               PRECIP_period:_FillValue = -99999 ;
#               PRECIP_period:units = "hours" ;
#               PRECIP_period:reference = "Table 4019" ;
#       int WXpresent(recNum) ;
#               WXpresent:long_name = "Present weather" ;
#               WXpresent:_FillValue = -99999 ;
#               WXpresent:reference = "Manned stn Table 4677, auto Table 4680" ;
#       int WXpast(recNum) ;
#               WXpast:long_name = "Past weather" ;
#               WXpast:_FillValue = -99999 ;
#               WXpast:reference = "Manned stn Table 4561, auto Table 4531" ;
#       int cloudLow(recNum) ;
#               cloudLow:long_name = "Lower level clouds" ;
#               cloudLow:_FillValue = -99999 ;
#               cloudLow:reference = "Table 0513" ;
#       int cloudMiddle(recNum) ;
#               cloudMiddle:long_name = "Middle level clouds" ;
#               cloudMiddle:_FillValue = -99999 ;
#               cloudMiddle:reference = "Table 0515" ;
#       int cloudHigh(recNum) ;
#               cloudHigh:long_name = "Higher level clouds" ;
#               cloudHigh:_FillValue = -99999 ;
#               cloudHigh:reference = "Table 0509" ;
#       int S2qCntrl(recNum) ;
#               S2qCntrl:long_name = "Quality control of Sec 2" ;
#               S2qCntrl:_FillValue = -99999 ;
#               S2qCntrl:reference = "Table 3334" ;
#       int S2qPos(recNum) ;
#               S2qPos:long_name = "Quality control position of Sec 2" ;
#               S2qPos:_FillValue = -99999 ;
#       int shipTrueDIR(recNum) ;
#               shipTrueDIR:long_name = "Ship\'s True direction" ;
#               shipTrueDIR:_FillValue = -99999 ;
#               shipTrueDIR:reference = "Table 0700" ;
#       int shipAvgSPD(recNum) ;
#               shipAvgSPD:long_name = "Ship\'s Avg speed" ;
#               shipAvgSPD:_FillValue = -99999 ;
#               shipAvgSPD:reference = "Table 4451" ;
#       float Tw(recNum) ;
#               Tw:long_name = "Water Temperature to tenths" ;
#               Tw:_FillValue = -99999.f ;
#               Tw:units = "Celsius" ;
#       int Pwa(recNum) ;
#               Pwa:long_name = "Period of waves" ;
#               Pwa:_FillValue = -99999 ;
#               Pwa:units = "seconds" ;
#       int Hwa(recNum) ;
#               Hwa:long_name = "Height of waves" ;
#               Hwa:_FillValue = -99999 ;
#               Hwa:units = "meters" ;
#       float Hwa_tenths(recNum) ;
#               Hwa_tenths:long_name = "Height of waves" ;
#               Hwa_tenths:_FillValue = -99999.f ;
#               Hwa_tenths:units = "meters" ;
#       int swellDIR1(recNum) ;
#               swellDIR1:long_name = "Direction of swells" ;
#               swellDIR1:_FillValue = -99999 ;
#               swellDIR1:units = "degrees" ;
#       float Ps1(recNum) ;
#               Ps1:long_name = "Period of swells" ;
#               Ps1:_FillValue = -99999.f ;
#               Ps1:units = "seconds" ;
#       float Hs1(recNum) ;
#               Hs1:long_name = "Height of swells" ;
#               Hs1:_FillValue = -99999.f ;
#               Hs1:units = "meters" ;
#       int ICE(recNum) ;
#               ICE:long_name = "Sea ice or ice of land origin" ;
#               ICE:_FillValue = -99999 ;
#       float Tmax(recNum) ;
#               Tmax:long_name = "Max Air Temperature to tenths" ;
#               Tmax:_FillValue = -99999.f ;
#               Tmax:units = "Celsius" ;
#       float Tmin(recNum) ;
#               Tmin:long_name = "Min Air Temperature to tenths" ;
#               Tmin:_FillValue = -99999.f ;
#               Tmin:units = "Celsius" ;
#       int groundState(recNum) ;
#               groundState:long_name = "State of ground" ;
#               groundState:_FillValue = -99999 ;
#               groundState:reference = "Table 0975" ;
#       int snowDepth(recNum) ;
#               snowDepth:long_name = "Snow depth" ;
#               snowDepth:_FillValue = -99999 ;
#               snowDepth:units = "Centimeters" ;
#               snowDepth:reference = "Table 3889" ;
#       float PRECIP_amt24(recNum) ;
#               PRECIP_amt24:long_name = "Precipitation amount last 24 hours" ;
#               PRECIP_amt24:_FillValue = -99999.f ;
#               PRECIP_amt24:units = "mm" ;
#       int cloudObsured(recNum) ;
#               cloudObsured:long_name = "Total cloud cover in oktas" ;
#               cloudObsured:_FillValue = -99999 ;
#               cloudObsured:reference = "Table 2700" ;
#       int cloudGenus(recNum) ;
#               cloudGenus:long_name = "Cloud genus" ;
#               cloudGenus:_FillValue = -99999 ;
#               cloudGenus:reference = "Table 0500" ;
#       int cloudHeight(recNum) ;
#               cloudHeight:long_name = "Cloud Height in meters" ;
#               cloudHeight:_FillValue = -99999 ;
#               cloudHeight:reference = "Table 1677" ;
#       int Qn(recNum) ;
#               Qn:long_name = "Quality control of satellite transmission" ;
#               Qn:_FillValue = -99999 ;
#               Qn:reference = "Table 3313" ;
#       int Ql(recNum) ;
#               Ql:long_name = "Quality control of location" ;
#               Ql:_FillValue = -99999 ;
#               Ql:reference = "Table 3311" ;
#       int time_position(recNum) ;
#               time_position:long_name = "Time at last known position" ;
#               time_position:_FillValue = -99999 ;
#               time_position:units = "seconds since 1970-01-01 00 UTC" ;
#       int drogueType(recNum) ;
#               drogueType:long_name = "drogue Type" ;
#               drogueType:_FillValue = -99999 ;
#       int cableLength(recNum) ;
#               cableLength:long_name = "cable length" ;
#               cableLength:_FillValue = -99999 ;
#               cableLength:units = "meters" ;
#       char report(recNum, r_len) ;
#               report:long_name = "Originial report" ;
#               report:_FillValue = "" ;
#               report:reference = "max length 256" ;
#
#// global attributes:
#               :title = "BUOY definition" ;
#               :version = 1.1 ;
#}

<snip> ----------------------- netcdfpoint.cfg ---------------------------

>Thanks.

There is no guarantee that the netCDF access will work 100% correctly in
McIDAS-X 7.7.  I will be interested in hearing about your experiences
in using it.

>Frederic Chagnon        (617)253-5483
>Ralph M. Parsons Laboratory    48-212
>Massachusetts Institute of Technology
>Cambridge         MA            02139

Tom Yoksas