33. Appendix B Map Projections, Grids, and Polylines
33.1. Map Projections
The following map projections are currently supported in MET:
Lambert Conformal Projection
Lambert Azimuthal Equal Area Projection
Polar Stereographic Projection (Northern)
Polar Stereographic Projection (Southern)
Rotated Lat/Lon Projection
33.2. Grid Specification Strings
Several configuration file and command line options support the definition of grids as a grid specification string. A description of the that string for each of the supported grid types is provided below.
To specify a Lambert Grid, the syntax is
lambert Nx Ny lat_ll lon_ll lon_orient D_km R_km standard_lat_1 [ standard_lat_2 ] N|S
Here, Nx and Ny are the number of points in, respectively, the x and y grid directions. These two numbers give the overall size of the grid. lat_ll and lon_ll are the latitude and longitude, in degrees, of the lower left point of the grid. North latitude and east longitude are considered positive. lon_orient is the orientation longitude of the grid. It’s the meridian of longitude that’s parallel to one of the vertical grid directions. D_km and R_km are the grid resolution and the radius of the Earth, both in kilometers. standard_lat_1 and standard_lat_2 are the standard parallels of the Lambert projection. If the two latitudes are the same, then only one needs to be given. N|S means to write either N or S depending on whether the Lambert projection is from the north pole or the south pole.
As an example of specifying a Lambert grid, suppose you have a northern hemisphere Lambert grid with 614 points in the x direction and 428 points in the y direction. The lower left corner of the grid is at latitude \(12.190^\circ\) north and longitude \(133.459^\circ\) west. The orientation longitude is \(95^\circ\) west. The grid spacing is \(12.19058^\circ\) km. The radius of the Earth is the default value used in many grib files: 6367.47 km. Both standard parallels are at \(25^\circ\) north. To specify this grid in the config file, you would write
To grid = "lambert 614 428 12.190 -133.459 -95.0 12.19058 6367.47 25.0 N";
For a Lambert Azimuthal Equal Area grid, grid specification strings are not supported.
For a Polar Stereographic grid, the syntax is
stereo Nx Ny lat_ll lon_ll lon_orient D_km R_km lat_scale N|S
Here, Nx, Ny, lat_ll, lon_ll, lon_orient, D_km and R_km have the same meaning as in the Lambert case. lat_scale is the latitude where the grid scale D_km is true, while N|S means to write either N or S depending on whether the stereographic projection is from the north pole or the south pole.
For Plate Carrée (i.e. Lat/Lon) grids, the syntax is
latlon Nx Ny lat_ll lon_ll delta_lat delta_lon
The parameters Nx, Ny, lat_ll and lon_ll are as before. delta_lat and delta_lon are the latitude and longitude increments of the grid-i.e., the change in latitude or longitude between one grid point and an adjacent grid point.
For a Rotated Plate Carrée (i.e. Rotated Lat/Lon) grids, the syntax is
rotlatlon Nx Ny lat_ll lon_ll delta_lat delta_lon true_lat_sp true_lon_sp aux_rotation
The parameters Nx, Ny, lat_ll, lon_ll, delta_lat, and delta_lon are as before. true_lat_sp and true_lon_sp are the latitude and longitude for the south pole. aux_rotation is the auxilary rotation in degrees.
For a Mercator grid, the syntax is
mercator Nx Ny lat_ll lon_ll lat_ur lon_ur
The parameters Nx, Ny, lat_ll and lon_ll are again as before, while lat_ur and lon_ur are the latitude and longitude of the upper right corner of the grid.
For a Gaussian grid, the syntax is
gaussian lon_zero Nx Ny
The parameters Nx and Ny are as before, while lon_zero defines the first longitude.
For a Semi Lat/Lon grid, no grid specification string is supported. This grid type is only supported via Python embedding or when reading NetCDF files generated by another MET tool. A Semi Lat/Lon grid defines the information about 2D field of data whose dimension are defined by arrays of latitude (lats), longitude (lons), level (levels), and time (times). Times are defined as unixtime, the number of seconds since January 1, 1970. Typically, the lats or lons array and the levels or times array has non-zero length. For example, a zonal mean field is defined using the lats and levels array. A meridional mean field is defined using the lons and levels array. A Hovmoeller field is defined using lats or lons versus times. An arbitrary cross-section is defined by specifying both the lats and lons array with exactly the same length versus levels or times.
Statistics can be computed from data on Semi Lat/Lon grids but only when all data resides on the same Semi Lat/Lon grid. Two Semi Lat/Lon grids are equal when their lats, lons, levels, and times arrays match. No functionality is provided to regrid Semi Lat/Lon data. The MET tools can plot Semi Lat/Lon data, however no map data is overlaid since these grids lack two spatial dimensions.
The majority of NCEP’s pre-defined grids that reside on one of the projections listed above are implemented in MET. The user may specify one of these NCEP grids in the configuration files as “GNNN” where NNN is the 3-digit NCEP grid number. Defining a new masking grid in MET would involve modifying the vx_data_grids library and recompiling.
33.4. Polylines for NCEP Regions
Many of NCEP’s pre-defined verification regions are implemented in MET as lat/lon polyline files. The user may specify one of these NCEP verification regions in the configuration files by pointing to the lat/lon polyline file in the installed share/met/poly directory. Users may also easily define their own lat/lon polyline files.
The NCEP verification regions that are implemented in MET as lat/lon polylines are listed below:
APL.poly for the Appalachians
ATC.poly for the Arctic Region
CAM.poly for Central America
CAR.poly for the Caribbean Sea
ECA.poly for Eastern Canada
GLF.poly for the Gulf of Mexico
GMC.poly for the Gulf of Mexico Coast
GRB.poly for the Great Basin
HWI.poly for Hawaii
LMV.poly for the Lower Mississippi Valley
MDW.poly for the Midwest
MEX.poly for Mexico
NAK.poly for Northern Alaska
NEC.poly for the Northern East Coast
NMT.poly for the Northern Mountain Region
NPL.poly for the Northern Plains
NPO.poly for the Northern Pacific Ocean
NSA.poly for Northern South America
NWC.poly for Northern West Coast
PRI.poly for Puerto Rico and Islands
SAK.poly for Southern Alaska
SAO.poly for the Southern Atlantic Ocean
SEC.poly for the Southern East Coast
SMT.poly for the Southern Mountain Region
SPL.poly for the Southern Plains
SWC.poly for the Southern West Coast
SWD.poly for the Southwest Desert
WCA.poly for Western Canada
EAST.poly for the Eastern United States (consisting of APL, GMC, LMV, MDW, NEC, and SEC)
WEST.poly for the Western United States (consisting of GRB, NMT, NPL, NWC, SMT, SPL, SWC, and SWD)
CONUS.poly for the Continental United States (consisting of EAST and WEST)