G5NR Data Access Guide
For questions or comments please send an email to g5nr at lists dot nasa dot gov.
G5NR background
The GEOS-5 Nature Run (Ganymed release) is a 2-year global, non-hydrostatic mesoscale simulation for the period 2005-2006. In addition to standard meteorological parameters (wind, temperature, moisture, surface pressure), this simulation includes 15 aerosol tracers (dust, seasalt, sulfate, black and organic carbon), O3, CO and CO2. This model simulation is driven by prescribed sea-surface temperature and sea-ice, daily volcanic and biomass burning emissions, as well as high-resolution inventories of anthropogenic sources.
File format and organization
GEOS-5 files are generated with the Network Common Data Form (NetCDF-4) library, which uses Hierarchical Data Format Version 5 (HDF-5) as the underlying format. NetCDF-4 is an open-source product of UCAR/Unidata (https://www.unidata.ucar.edu/software/netcdf/) and HDF-5 is developed by the HDF Group (http://www.hdfgroup.org/). One convenient method of reading GEOS-5 files is to use the NetCDF-4 library, but the HDF-5 library can also be used directly. These files can be easily read by applications such as IDL, Matlab, GrADS, FERRET, NCL, Panoply as well in Python using the netCDF4, h5py or PyTables packages.
File naming conventions
Read file metadata
Download data files
Retrieve (global) data from FTP server
Retrieve data (global/subset) using download tool
Read downloaded data files
Fortran program to read data from downloaded file
Python program to read data from downloaded file
OPeNDAP client access
OPeNDAP is a data server architecture that allows users to use data files that are stored on remote computers with their favorite analysis and visualization tools. Opening an OPeNDAP file is as easy replacing the file name in the client software by an OPeNDAP URL. All G5NR collections that are provided by ftp/download-tool are also available on the OPeNDAP server
http://opendap.nccs.nasa.gov/dods/OSSE/GEOS-5.12/BETA9.
Fortran program as OPeNDAP client
C program as OPeNDAP client
Client access
In the following, we read the field 'T' (air temperature) from collection inst01hr_3d_T_Cv, compute its min/max and if applicable, plot it. We give an example for each of the two cases
- a file has been downloaded either via ftp or using the download tool
- using the OPenDAP server
For each case, we compute min/max for both
- global temperature
- temperature over North America
Programming
Fortran
For reading a downloaded file or accessing directly via OPeNDAP using Fortran, please see this page.
Free clients
In this section we read air temperature, compute it min/max (as with the 'programming' examples) and display the surface air temperature.
Python
pygrads
R
This example requires the ncdf4 and rworldmap packages.
> library(ncdf4)
> library(rworldmap)
Loading required package: sp
### Welcome to rworldmap ###
For a short introduction type : vignette('rworldmap')
> im <- 720
> jm <- 361
> lm <- 72
> nc <- nc_open("http://opendap.nccs.nasa.gov:9090/dods/OSSE/GEOS-5.12/BETA9/0.5000_deg/inst/inst01hr_3d_T_Cv")
< t <- ncvar_get(nc,"t",start=c(1,1,1,37),count=c(im,jm,lm,1))
> str(t)
num [1:720, 1:361, 1:72] 218 218 218 218 218 ...
> summary(t)
Min. 1st Qu. Median Mean 3rd Qu. Max.
179.7 220.9 241.7 243.4 265.3 316.7
> mapGriddedData(t[1:im,1:jm,71])
NCL
IDV
IDV is an OPeNDAP tool that can access and display the nature run data. In our OPenDAP server, all files are time aggregated, so they appear as a single dataset for each location.
This is an example to open and display the field 'T' (air temperature) from the collection 'inst01hr_3d_T_Cv'. The OPenDAP URL for this dataset is http://opendap.nccs.nasa.gov:80/dods/OSSE/GEOS-5.12/BETA9/0.5000_deg/inst/inst01hr_3d_T_Cv. The following steps are valid for IDV version 5.0u1 running on a Linux desktop.
From the 'Dashboard' panel
- Select Data Choosers -> URLS.In the URL field, enter the above OPenDAP URL and click on 'Add Source'
- Select Field Selector and choose the 3D field'air_temperature'. The 'Times' tab lists all the available levels and times for this data. At this point, one can select specific times, level and regions (subsetting) from the 'Times' and 'Level' and 'Region' tabs. Click on 'Create Display'.