6.1. AWIPS Tiled Writer

The AWIPS Tiled writer is used to create AWIPS compatible tiled NetCDF4 files.

The Advanced Weather Interactive Processing System (AWIPS) is a program used by the United States National Weather Service (NWS) and others to display and analyze data relevant to meteorology. Sectorized Cloud and Moisture Imagery (SCMI) is a NetCDF4 format accepted by AWIPS to store one image broken up into one or more “tiles”. This format has been used to support additional products over time and so this writer is now called “awips_tiled” to refer to the generic usse of these files. Once AWIPS is configured for specific products the AWIPS Tiled writer can be used to provide compatible products to the system. The files created by this writer are compatible with AWIPS II.

The writer takes remapped image data and creates an AWIPS-compatible NetCDF4 file. The writer and the AWIPS client may need to be configured to make things appear the way the user wants in the AWIPS client. The writer can only produce files for datasets mapped to areas with specific projections:

  • Lambert Conformal Conic (+proj=lcc)

  • Geostationary (+proj=geos)

  • Mercator (+proj=merc)

  • Polar Stereographic (+proj=stere)

This is a limitation of the AWIPS client and not of the writer.

6.1.1. Numbered versus Lettered Grids

By default the writer will save tiles by number starting with ‘1’ representing the upper-left image tile. Tile numbers then increase along the column and then on to the next row.

By specifying --letters on the command line, tiles can be designated with a letter. Lettered grids or sectors are preconfigured in the writer configuration file (awips_tiled.yaml in SatPy). The lettered tile locations are static and will not change with the data being written to them. Each lettered tile is split in to a certain number of subtiles (–letter-subtiles), default 2 rows by 2 columns. Lettered tiles are meant to make it easier for receiving AWIPS clients/stations to filter what tiles they receive; saving time, bandwidth, and space.

Tiles (numbered or lettered) not containing any valid data are not created.

Warning

The writer does not default to using any grid. Therefore, it is recommended to specify one or more grids for remapping by using the -g flag.

For more detailed information on templates and other options for this writer see the Satpy documentation here.

6.1.2. Command Line Arguments

usage: |script| -r <reader> -w awips_tiled [-h] [--compress] [--output-filename FILENAME] [--use-end-time] [--use-sector-reference] [--tiles TILE_COUNT TILE_COUNT] [--tile-size TILE_SIZE TILE_SIZE] [--letters] [--letter-subtiles LETTER_SUBTILES LETTER_SUBTILES]
                                           [--source-name SOURCE_NAME] [--sector-id SECTOR_ID] [--template TEMPLATE] [--environment-prefix ENVIRONMENT_PREFIX] [--check-categories | --no-check-categories]

6.1. AWIPS Tiled Writer

--compress

zlib compress each netcdf file

Default: False

--output-filename

custom file pattern to save dataset to

--use-end-time

use end_time metadata inplace of start_time (useful for multi-day composites)

Default: False

--use-sector-reference

use the lettered sector location as reference and shift data to match tile pixel locations. Useful when tiles will be updated in future executions. By default the sector tiles are shifted to match the data location. Maximum shift is 0.5 pixels.

Default: False

--tiles

Number of tiles to produce in Y (rows) and X (cols) direction respectively

Default: [1, 1]

--tile-size

Specify how many pixels are in each tile (overrides ‘–tiles’)

--letters

Create tiles from a static letter-based grid based on the product projection

Default: False

--letter-subtiles

Specify number of subtiles in each lettered tile: ‘row col’

Default: (2, 2)

--source-name

specify processing source name used in attributes and filename

Default: “SSEC”

--sector-id

specify name for sector/region used in attributes and filename (example ‘LCC’)

--template

specify name for pre-configured template used to determine output file structure and formatting.

Default: “polar”

--environment-prefix

Force value for templates that support an ‘environment_prefix’ in the filename (default ‘OR’).

Default: “DR”

--check-categories, --no-check-categories

Specify whether category/flag products should be checked for empty tiles. By default (True), tiles consisting entirely of ‘missing’ pixels will not be written. For category products this may not be desired as the missing or invalid value is something users are interested in. (default: True)

Default: True

6.1.3. Lettered Sectors

../_images/scmi_grid_LCC.png

Fig. 6.1 “LCC” Sector Lettered Grid

../_images/scmi_grid_Pacific.png

Fig. 6.2 “Pacific” Sector Lettered Grid

../_images/scmi_grid_Mercator.png

Fig. 6.3 “Mercator” Sector Lettered Grid

../_images/scmi_grid_Polar.png

Fig. 6.4 “Polar” Sector Lettered Grid

Examples:

polar2grid.sh -r viirs_sdr -w awips_tiled --awips-true-color --awips-false-color --num-workers 8 -g lcc_conus_300 --sector-id LCC --letters --compress -f viirs/*.h5

polar2grid.sh -r modis_l1b -w awips_tiled -p vis01 bt31 -g lcc_conus_1km --sector-id LCC --letters --compress -f a1.22261.1857.250m.hdf a1.22261.1857.1000m.hdf a1.22261.1857.geo.hdf

polar2grid.sh -r amsr2_l1b -w awips_tiled --num-workers 4 -grid-coverage 0.002 -g polar_alaska_1km --sector-id Polar --letters --compress -f $data_dir/GW1AM2_202209102335_181A_L1DLBTBR_1110110.h5

polar2grid.sh -r amsr2_l1b -w awips_tiled --grid-coverage 0 -g merc_pacific_1km --sector-id Pacific --letters --compress -f GW1AM2_202209120018_188A_L1DLBTBR_1110110.h5

 polar2grid.sh -r clavrx -w awips_tiled -p cld_height_acha cloud_type cld_temp_acha -g lcc_conus_300 --sector-id LCC --letters --compress --grid-coverage 0.002 -f clavrx_a1.22245.0759.1000m.level2.hdf

polar2grid.sh -r acspo -w awips_tiled --num-workers 8 --grid-coverage 0 -g lcc_conus_750 --sector-id LCC --letters --compress --method ewa --weight-delta-max 40.0 --weight-distance-max 1.0 -f $data_dir/202*VIIRS_NPP-ACSPO_V2.80*.nc