This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Janine, > For those of you who don't know, I am working on converting the P-3 data > collected during EPIC from AOC standard tape format to NetCDF. I am > converting the header record, the trailer record, and the type 5 record > with transformations appied. I am not converting the type 4 raw data > record or the associated transformation record (type 2). > > The final goal is to have a dataset which can be easily compared with the > C-130 data in NetCDF. > > I have developed NetCDF dimensions and variables that I think will be > a good representation of this data. I have tried to follow the NCAR-RAF > netCDF conventions at http://raf.atd.ucar.edu/Software/netCDF.html to > facilitate easy comparison with the C-130. However, I am new to NetCDF > development and am concerned I may have missed something. So I am asking > for your help. > > Please take a look at the attached NetCDF header and let me know if I > have missed anything. In the interest of keeping the attachement small, A document you may want to look at is "Writing NetCDF Files: Best Practices" at http://www.unidata.ucar.edu/staff/russ/netcdf/BestPractices.html It was created since the NCAR-RAF conventions, so some of its recommendations may be incompatible with those, but the recommendation on the units attribute is fairly important: For each variable where it makes sense, add a units attribute, using the udunits conventions, if possible. The units attribute is a character string that specifies the units used for the variable's data. I noticed you use "deg" for the units of the LAT and LON variable: LAT:units = "deg" ; LON:units = "deg" ; but this is not a valid unit designation for the udunits package, which supports units such as "degree", "degrees_north", "degrees_west", and others for angular measure. You can see a complete list here: http://www.unidata.ucar.edu/packages/udunits/udunits.dat under the "UNITS OF PLANE ANGLE" heading. Your example uses some other nonstandard units, such as Ralt:units = "M" ; (This is 1000000, not meters) TA:units = "C" ; (this is "coulomb", you want "Celsius" or "degC" or ...) GS:units = "M/s" ; (you want "m/s" or "meter/second") LW:units = "g/m3" ; (you want "gram/m3", "g" is "9.80665 m/s2") and so on. The udunits representations are case sensitive, so "M" (mega) is not the same as "m" (meter). Although you can add your own units and unit abbreviations to the udunits set, that makes your files non-standard for others reading your data who only have the standard udunits definitions. The udunits package http://my.unidata.ucar.edu/content/software/udunits/ comes with a library and a program, also called udunits, that you can use to test various units specifications. There are additional suggestions for making sure your latitude and longitude variables are a recognized as part of a coordinate system, according to the CF conventions definition of that term, in the "Best Practices" document referenced above. A little time spent getting such details right may make your data usable in a lot of other general visualization and analysis packages in the future. --Russ _____________________________________________________________________ Russ Rew UCAR Unidata Program address@hidden http://my.unidata.ucar.edu