ANNOUNCEMENT: A Grib 2 version of the NCEP IPOLATES LIBRARY (IP2LIB)

is ready for testing.

 

ABSTRACT: IP2LIB is a Grib 2 version of IPLIB, and uses the Grib 2 grid

definition templates (Section 3) as decoded by the NCEP G2 library.

This is a 'beta' version. Code development is documented here:

https://svnemc.ncep.noaa.gov/trac/nceplibs/ticket/81

https://svnemc.ncep.noaa.gov/trac/nceplibs/ticket/100

 

LOCATION OF CODE:

- In subversion: https://svnemc.ncep.noaa.gov/projects/nceplibs/ip2/tags/v1.0.0_beta

- On WCOSS Phase 1/2: /usrx/local/nceplibs/ip2/v1.0.0_beta

- On WCOSS Cray: /usrx/local/nceplibs/ip2/v1.0.0_beta

- On Theia: /scratch3/NCEPDEV/nceplibs/dev/ip2/v1.0.0_beta

 

HERITAGE TO GRIB 1 IPLIB: The current Grib 1 version of IPLIB (v3.0.0 -

https://svnemc.ncep.noaa.gov/projects/nceplibs/ip/tags/version_3.0.0) was used as astarting point for creating this Grib 2 version. Most routines retain the same name and function as their Grib 1 library counterparts. The exceptions are:

 

 Renamed routines (no change to function):

   gdswzd00_mod.f90 -> gdswzd_equid_cylind_mod.f90

   gdswzd01_mod.f90 -> gdswzd_mercator_mod.f90

   gdswzd03_mod.f90 -> gdswzd_lambert_conf_mod.f90

   gdswzd04_mod.f90 -> gdswzd_gaussian_mod.f90

   gdswzd05_mod.f90 -> gdswzd_polar_stereo_mod.f90

   gdswzdcb_mod.f90 -> gdswzd_rot_equid_cylind_egrid_mod.f90

   gdswzdcd_mod.f90 -> gdswzd_rot_equid_cylind_mod.f90

 

 Routines eliminated:

   gausslat.f90 (it was simply a wrapper around NCEP splib routine splat).

   makgds.f90 (computes the grib 1 GDS; obsolete for grib 2)

 

 Routines added:

   earth_radius.f90 - computes earth radius based on the grid definition template

 

Because some routines share the same name as their Grib 1 library counterpart, you should *not* link both IPLIB and IP2LIB to your application.


HOW TO BUILD YOUR PROGRAM: On WCOSS and Theia, we recommend the use of modules, which set the following environment variables:

 

 IP2_INC4 - directory containing module files (single precision version)

 IP2_INC8 - directory containing module files (double precision version)

 IP2_INCd - directory containing module files (mixed precsion version)

 

 IP2_LIB4 - path/name of single precision version of library

 IP2_LIB8 - path/name of double precision version of library

 IP2_LIBd - path/name of mixed precision version of library

 

 To load the library module on Theia:


  > module use -a /scratch3/NCEPDEV/nceplibs/dev/modulefiles

  > module load ip2/v1.0.0_beta

 

 To load the module on WCOSS Phase 1/2:


 > module use -a /usrx/local/nceplibs/modulefiles

 > module load ip2/v1.0.0_beta

 

 To load the module on WCOSS Cray:


 > module use -a /usrx/local/nceplibs/modulefiles

 > module load ip2-intel/1.0.0_beta (Intel compiled version) ...or...

 > module load ip2-cray-haswell/1.0.0_beta (Cray compiled version)

 

HOW TO CALL LIBRARY FROM YOUR APPLICATION: See the "README.ip2lib" file for examples.

 

REMARKS: This is a 'beta' version. Developer feedback is much appreciated.

 

QUESTIONS? CONTACT: george.gayno@noaa.gov