Geostationary Operational Environmental Satellite Aerosol/Smoke Product

**(GASP)**

**Interface Control Document**

(Documentation Version 1.0)

December 2005

Prepared for:

National Environmental Satellite, Data,

And Information Service,

Office of Satellite Data Processing and Distribution,

Satellite Services Division

Prepared by:

Jianbin Yang/Charles Brown

NOAA/NESDIS/OSDPD/ESPC/QSS Group, Inc

Ana Prados

NOAA/NESDIS/ORA- UMBC/JCET

World Weather Building

Camp Springs, MD 20746-4304

Last Revision: January 2006

**1. INPUT FILES**

1.1 Raw Input Dataset

The GOES data is provided to IDL via MCIDAS. Each file contains header
information - data on the image and navigation - as well as the original
satellite data. The PROC_INC routine (called by GASP) reads in these
files and stores them in the GASP/data/us/areafiles directory.

**AREA - RAW DATA** Files that are read into GASP for processing
include**:**

GER/GECONS01V

GER/GECONS04I2

GER/GECONS04I4

GER/GECONS04I6

A complete description of the format of the AREA files is given in the
METADATA Document and the MCiDAS documentation.

**1.2 Getmcg and Readmc1**

The GASP algorithm uses two routines to read the raw MCIDAS file and
produce the intermediate files:

Getmcg

This routine inputs the AREA header and the Navigation (NAV) header. The
AREA header contains information on the image: for example, size, time
of acquisition, date of acquisition, etc. The NAV header contains
information on the orbit of the satellite and allows the conversion of
the image (pixel,line) coordinate to (latitude,longitude) coordinates.
For more information on the usage of this routine see getmcg.pro and the
calls to this subroutine in gasp.pro.

Readmc1

This routine reads in the MCIDAS image data from the raw MCIDAS file.
For more information on the usage of this routine see readmc1.pro and
the calls to this subroutine in gasp.pro.

The filename structure stored by the catchup-conus.scr is:

AREA_JJJ_HHMM_chN

where:

JJJ - The day of year (ranges 001 - 366)

HH - Hour of observation (GMT time)

MM - minute of satellite observation

N - Channel number of the image

**2. INTERMEDIATE FILES**

The intermediate output from each stage of processing is stored in
various files. Files are compressed using the unix gzip command.

Note: Intermediate file Examples

The examples included are for the Intermedate files were taken as one

snap-shot to give samples of the files generated from the input AREA
files.

**2.1 Modified-mcidas files**

The GASP algorithm uses these modified-MCIDAS files for I/O during
processing. The files are created at the end of the PROC_INC processing
using IDL writeu (which writes binary data) and point_lun (which changes
the I/O location in an open file) commands. First the new AREA and NAV
headers are output, then the remapped image is output (NEWIMAGE).

The modified-MCIDAS files are input using the GETMCG and READMC1
routines in a nearly identical manner as the raw MCIDAS files.

For further assistance on the file headers, see the getmcg.pro file
which defines the header structures. For further information on the file
I/O, see the writeu/point_lun statements in the PROC_INC routine and the
GETMCG/READMC1 calls in PROC_CLD and PROC_CCR and PROC_TAU.

The filename format of the modified-MCIDAS file (stored in \$AREA) is:

YYYYJJJHHMMSS_iKK_EXT.c0N.gz

Where:

YYYY - is the year of the observation (e.g., 2001)

JJJ - is day of year (range 001-366)

HH - hour of observation (GMT time)

MM - minute of observation

SS - second of observation

KK - satellite identifier: 08 = GOES-8, 16=GOES-12

EXT - a string defining the sector stored (e.g., \>US=)

N - channel number (e.g., 1,2,3,4,5 for GOES-8 or 1,2,3,4,6 for GOES-12)

The example below shows the files from November 16, 2005 at

2:45:14 P.M. for GOES Satellite the area scanned is US and the

scan includes bands 1,2,4,6.

Example:

2005320144514_i16_US.c01.gz

2005320144514_i16_US.c02.gz

2005329144514_i16_US.c04.gz

2005320144514_i16_US.c06.gz

2005320144513_i16_US.c01.std.gz

2005320144513_i16_US.c04.gz

2005320144513_i16_US.c06.gz

**2.2 Cloud Mask Files**

The cloud mask files store the cloud/no-cloud decision made for each
pixel in a given image. The cloud mask is stored as a simple binary file
with the same dimensions (nx,ny) as the original image. A simple IDL
read routine would include:

CloudMask = bytarr(nx,ny)

OpenR, 1, CloudMaskFile,/Compress

ReadU,1,CloudMask

Close,1

For more information on the cloud mask file, see the PROC_CLD routine
where it is created or the PROC_AOD routine where it is input.

The filename structure for these cloud mask files is very similar to the
modified-MCIIDAS files:

YYYYJJJHHMMSS_iKK_EXT.c0N.gz.cld.gz

The example below shows the files from November 16, 2005 at

2:45:14 P.M.

Example:

2005320234513_i16_US.c06.gz.cld.gz

**2.3 Angular Files**

The angular files (stored in \$AREA/ang) store the viewing illumination
geometry of a given image (which keeps it from being calculated again).
The data is stored and read by the routine: READ_ANG. See that routine
form more information on the data format.

[*Ex*ample:]{.underline}

2005320114513_i16_US.c01.gz.ang.gz

**2.4 Composite Reflectance files**

The composite reflectances represent the surface contribution the the
satellite images. The composites are created by the PROC_CCR routine and
read in by the PROC_SFC routine. The routines are stored in the same
modified-MCIDAS format that the satellite imagery uses because they are
simply constructed from the satellite images. The file is output near
the end of PROC_CCR (using writeu/point_lun commands) and input near the
beginning of PROC_SFC (using the GETMCG and READMC1 routines). The files
are stored in /data/GASP/US/mos directory and the naming convention is
now differs from previous files:

mos_JJJ_HHMM.mos.gz

mos_JJJ_HHMM.std.gz

The .mos extension denotes that the composite is stored. The std
extension denotes that the standard deviation of the composite is
stored. This latter file is primarily used in the cloud mask routine (it
provides the natural variabillity of the surface. Clouds often increase
the variability so this aids in detecting heterogeneous clouds).

*[Example:]{.underline}*

*mos_320_2245.mos.gz*

*mos_320_2245.std.gz*

**2.5 Surface Reflectance Files**

The surface reflectance files are the largest intermediate files, partly
due to the redundant storing of angular information. The files are
stored in the /data/GASP/US/sfc directory and follow the naming
convention of the composite files:

mos_JJJ_HHMM\_\<EXT\>.sfc.gz

The data stored in the surface files includes more than just the
retrieved surface reflectance.

Each variable written is a fltarr(nx,ny) type variable. They represent
the surface reflectance (sfc), solar zenith angle (imgsza), view zenith
angle (imgvza), relative azimuth angle (imgazi), and the pixel surface
elevation (imgprs).

Example:

*mos_320_2215_US.sfc.gz*

*mos_320_2215_US.sfc.gz*

**3. OUTPUT FILES**

There are two primary outputs from the GASP algorithm. One is binary
output files (the size of the sector generally prohibits output of data
in ASCII format). These files are the result of processing the original
MCIDAS files into the various files (most of which are described above
in the intermediate file description) used during the retrievals. The
second format are image files (currently stored as JPEG files) used to
distribute images via the world wide web (WWW). There are other two
output files, one for the Mcidas AREA format and another is for Geotiff
format.

**3.1 Aerosol Optical Depth Files**

The aerosol output data is currently stored in two manners: one being
the data in full dynamic (i.e., 4-byte float) resolution while the
second reduces the resolution to store more information. The latter is
good for further testing of cloud masks etc. Both are stored in the
/data/GASP/US/aod directory.

The full dynamic resolution data has the following naming convention:

YYJJJHHMMSS_iKK_EXT.aod.gz

*[Example:]{.underline}*

*2005338211514_i16_US.aod.gz*

*2005339134514_i16_US.aod.gz*

The goes aod value is the retrieved aerosol optical depth. The sl value
is the aerosol signal and is related to the response of the
satellite-detected reflectance to a unit change in optical depth. This
is useful in analyzing the results. Finally, the accmask value is the
final mask used in filtering the results. The values are rounded to
integers because 4-byte integers compress more efficiently than do
4-byte floats.

The naming convention for the abbreviated file is:

YYYYJJJHHMMSS_iKK_EXT.all.aod.gz

This file contains the same data as above (but stored in a different
manner) in addition to other data useful in analyzing the results.

*[Example:]{.underline}*

*2005338201515_i16_US.all.aod.gz*

*2005339141514_i16_US.all.aod.gz*

**3.2 Imagery files (for the WWW)**

Imagery at each step of the processing is stored in a separate directory
(defined \$WEB above and termed WEBdir in the gasp.pro routine) for ease
of disseminating the data via the world wide web (WWW). Again, images
are stored in different subdirectories of \$WEB and are described herein
by the routine which creates them. All files are in the standard
JPG/JPEG format and are written using IDL. Many of the image filenames
do not store the julian day in the name, which cause the files to be
overwritten each

> **PROC_INC**
>
> This routine creates 1 file per visible image processed which is
> stored in the \$WEB/img directory. The image is a grey-scale image of
> the visible channel data. This file has the naming convention:
>
> HHMM\_\<EXT\>\_1.jpg
>
> *[Example:]{.underline}*
>
> *today-1945_US_1.jpg*
>
> Additionally, this file is also stored as latest.jpg (or
> latest_US_1.jpg), which allows the most recently processed image to be
> easily viewed.
>
> **PROC_CLD**
>
> This routine creates two files per visible image which are useful in
> analyzing the accuracy of the cloud mask, both of which are stored in
> the \$WEB/cld directory. The first is named:
>
> cld_vis_HHMM\_\<EXT\>.jpg
>
> Example:
>
> This is the same image as the PROC_INC visible image except with
> clouds replaced by black pixels (this file is also written to
> latest_vis.jpg/ latest_vis_US.jpg ).Thus clouds that are missed by the
> cloud mask should be visible. The second file is the:
>
> **PROC_AOD**
>
> This routine creates one image per file processed. The image is a
> mixed gray-scale-color-scale image. The pixels represented as
> gray-scale are those masked as cloud by the cloud mask (or those
> pixels where the retrieval is invalid, such as sun glint over ocean,
> bright surfaces, etc). The color pixels represent values of the
> retrieved aerosol optical depth. The files are stored in the \$WEB/aod
> directory and are named:
>
> AOD_HHMM\_\<EXT\>.jpg
>
> Example:
>
> The files are also stored as \$WEB/aod/latest.jpg.
>
> **PROC_CCR**
>
> The composite routine stores the gray-scale of the composite
> background to \$WEB/mosaic using:
>
> mosaic_HHMMZ\_\<EXT\>.jpg
>
> *[Example:]{.underline}*
>
> *mosaic_1615Z_US.jpg*
>
> *mosaic_1645Z_USday.jpg*
>
> **PROC_SFC**
>
> The surface reflectance retrieval stores the retrieved surface
> reflectance image in \$WEB/sfc using:
>
> sfc_HHMM\_\<EXT\>.jpg
>
> *[Example:]{.underline}*
>
> *sfc_1645_US.jpg*

**3.3 Mcidas AREA files**

The Mcidas AREA file is converted from the aerosol output data (see 3.1)
by running the script "AOD2AREA.sh". It is in Rectilinear projection.
The data is located on "/data/GASP/AOD- DATASET" directory, and it can
be accessed through ADDE server with the dataset name GAS/AOD.

A complete description of the format of the AREA files is given in the
METADATA Document and the MCiDAS documentation.

**3.4 Geotiff files**

The Geotiff files are created from the aerosol output data (see 3.1) by
running the script "AOD2AREA.sh, "AOD2AREA_CLD.sh" and
EnhanceAREA2Geotiff.c. They are located on "/data/GASP/geotiff"
directory.

**4 . OTHER INPUT DATA FILES**

There are numerous data files which are required when processing GASP.
These files are used in the IDL processing and are generally read in by
gasp.pro or its immediate subroutines (e.g., PROC_AOD). The files are
summarized here.

**4.1 Look up table**

The file GOESLUTi03.LUTcontains the output from a radiative transfer
model (in this case the 6S radiative transfer model). It is used to (by
interpolation) retrieve the surface reflectance and and aerosol optical
depth.

**4.2 Latitude file**

The lat.dat file provides the latitude for each pixel in the processing
sector and is stored in the GASP/ref directory.

**4.3 Longitude file**

The lon.dat file provides the longitude for each pixel in the processing
sector and is stored int the GASP/ref directory.

**4.4 View Zenith angle file**

The vza.dat file provides the view zenith angle for each pixel in the
processing sector. It is also stored in the GASP.ref directory.

**4.5 View azimuth angle file**

The azi.dat file provides the view azimuth angle for each pixel in the
processing sector and is stored in the GASP/ref directory.

**4.6 Surface elevation file**

The elev.dat file provides the surface elevation data (in meters) to be
used by the retrieval to account for Rayleigh scattering. Also stored in
the GASP/ref directory.

**4.7 Landcover file**

The lc.dat file provides information on the landcover for each pixel. It
is stored in the GASP/ref directory.

**4.8 USnxny file**

USnxny contains the number of pixels (nx) and number of scan lines (ny)
in the processing sector. It is stored under GASP/ref.