Upgrade Specifications


Any application that accesses the DG library should be examined for the following grid diagnostic (DG) functions that have been discontinued:


1.     dgarea.f 
2.     dgclal.f
3.     dgfile.f 
4.     dginit.f
5.     dgkxky.f
6.     dgmfil.f 
7.     dgofil.f 
8.     dgpcll.f
9.     dgplll.f
10.  dgrdat.f
11.  dgufil.f
12.  dguhdr.f 


For users who have written their own applications, the following passage explains how to replace the discontinued functions with the supported functions in the DG and GD libraries. The following describes the necessary modifications.
All private codes that use the DG library must now call DG_INTL before doing anything.
Calling DG_NFIL will assure use of the supported DG and GD software.
Calling GD_OPEN will assure use of the supported GD software.
If your private code contains calls to DG_FILE or DG_INIT, then remove these as well as any calls to GD_OPNF, GD_OFIL, GR_OPEN, DG_MFIL or DG_OFIL. Remove calls to GR_FTIM and use the following sequence of calls to access gridded data for diagnostic calculations:
CALL DG_NFIL ( gdfile, gdoutf, iret ) to process GDFILE user input
CALL DG_NDTM ( gdattim, iret ) to process GDATTIM user input
DO WHILE ( nxttm )
CALL DG_NTIM ( .true., .true., time, nxttm, ier ) to get the next time
(If you are not displaying the grid, using it instead for a calculation on the entire grid, skip the following three calls and do either CALL DG_GRID or DG_VECR. In this case the two flags passed to DG_NTIM should be .false. to prevent both internal navigation changes and the addition of a column to globe-wrapping grids.)
CALL DG_FIXA ( garea, proj, garut, prjut, ier ) to process GAREA & PROJ
CALL GG_MAPS ( prjut, garut, imgfl, idrpfl, ier ) to set display map
CALL DG_SUBG ( ijskp, ix1, iy1, ix2, iy2, iret ) to set grid subset; note: ix1, iy1, ix2, iy2 are output 
CALL DG_GRID (....) to get the grid of scalar data
or CALL DG_VECR (....) to get the grid of vector data
 <insert data processing and display function here>
CALL DG_NEND ( ier ) to make sure all grid files are closed 
Note that all calls to GD_ subroutines including GD_CLOS should be removed.
All private codes that use only the GD library should call GD_OPEN with the file name before any operation using the file access number. When all operations are done, use
CALL GD_CLOS ( -1, ier ) to close any open files.