CAMEX-3 NPOESS Aircraft Sounder Testbed- Microwave Temperature Sounder (NAST-MTS)

Table of Contents

Introduction
Data Documentation
File Content and File Naming Convention
Contact Informations

Introduction

The National Polar-orbiting Operational Environmental Satellite System (NPOESS) Aircraft Sounder Testbed- Microwave Temperature Sounder (NAST-MTS) is very much as the name suggests; an aircraft mounted Microwave Temperature Sounder. The instrument, built by Massachusetts Institute of Technology's Research Laboratory of Electonics (RLE), is about the size of a footlocker, and is mounted inside the forward section of one of the wing mounted 'superpods' of the NASA ER-2 aircraft, shown below.

ER2 aircraft in hangar

NAST-MTS is a scanning radiometer which sweeps from side to side viewing a path that is sixty five degrees either side of nadir. MTS covers 16 microwave frequencies in the vicinity of  54 gigahertz and 118 gigahertz in each of its scans. This results in an image that is approximately 80 kilometers wide measured from the aircraft altitude (~20km). The radiometer 'sees' in the microwave portion of the elecromagnetic spectum. Images produced by the instrument represent the thermal radiation emitted by the environment at these microwave frequencies. Each microwave frequency responds differently to temperatures at different altitudes as well as to the different constituents such as water vapor, precipitation and ice. By combining the information gathered from MTS with information derived from the sensors in both the visible and infrared regions of the spectrum, the structure and composition of the atmosphere in the field of view as well as surface characteristics may be determined. Since microwave frequencies penetrate clouds much more readily than do infrared or visible, internal structure becomes apparent. By measuring the location, intensity and altitude of the strong ice signal, inferences can be made of the convective activity and intensity in the storm.

Distribution of liquid and frozen water as well as water vapor are important signals that can provide an insight into the dynamic mechanisms involved with hurricanes. By providing this information, NAST-MTS gives researchers a tool for understanding the life cycle of the tropical storm.

Data Documentation

The data is provided in a form readily usable with MatLab (see http://www.mathworks.com/products/matlab). Included with the data is a  file which is a function call to be used with MatLab in order to read the binary and nav data.

read_camex.m

function [x, Tb, rtdf, t, nav, navt] = read_camex(datecode)

% quick and easy (i.e. slow) matlab reader for NAST-M Camex-3 files
%
0sage:  [x, Tb, rtdf, t, nav, navt] = read_camex(datecode)
%
%  datecode is ddMmmyy  (ex: '02Sep98')
%
%  function assumes the file is in your current working directory
%
%  x:    uncalibrated radiances
%  Tb:   calibrated radiances
%  rtdf: rtd temperature measurements
%  t:    UTC timestamps for above (seconds since Jan. 1, 1970)
%  nav:  navigation records collected from ER-2
%  navt: UTC timestamps for above (seconds since Jan. 1, 1970)
 

NUM_CHANS = 16;   umber of channels
NUM_SPOTS = 25;

filename = ['CAMEX_NASTM_' datecode '.bin'];
nav_filename = ['CAMEX_NASTM_nav_' datecode '.bin'];
 

if exist(nav_filename)~= 2
        fprintf('It appears that navigation data is not available...skipping.\n');
        NAV = 0;
else
        NAV = 1;
        NUM_NAV_PARAMS = 48;    umber of nav. items per record
end

if NAV
        fprintf('Opening archive for .  Input files are:\n\n\n', datecode, filename, nav_filename);
else
        fprintf('Opening archive for .  Input file is:  \n', datecode, filename);
end

0pen radiometric stuff
fid = fopen(filename,'rb');
if (fid < 0)
        error('Error opening file.  Check to make sure it''s in the current directory')
end

NUM_SCANS = fread(fid,1,'integer*4')
NUM_RTDS  = fread(fid,1,'integer*4')

0re-allocate matrices
x = zeros(NUM_CHANS,NUM_SPOTS,NUM_SCANS);
Tb = x;
rtdf = zeros(NUM_RTDS, NUM_SCANS);
t = zeros(1,NUM_SCANS);
 

%  slow, terrible loops, but mnemonic

% read uncalibrated radiances
for i = 1:NUM_SCANS
        for j = 1:NUM_SPOTS
                for k = 1:NUM_CHANS
                        x(k,j,i) = fread(fid,1,'integer*2');
                end
        end
fprintf('Loaded record   0 of   0\r', i, NUM_SCANS);
end
fprintf('Finished loading uncalibrated radiances.\n');

% read calibrated radiances
for i = 1:NUM_SCANS
        for j = 1:NUM_SPOTS
                for k = 1:NUM_CHANS
                        Tb(k,j,i) = fread(fid,1,'float');
                end
        end
fprintf('Loaded record   0 of   0\r', i, NUM_SCANS);
end
fprintf('Finished loading calibrated radiances.\n');

% read rtds
for i = 1:NUM_SCANS
        for j = 1:NUM_RTDS
                rtdf(j,i) = fread(fid,1,'float');
        end
fprintf('Loaded record   0 of   0\r', i, NUM_SCANS);
end
fprintf('Finished loading RTD readings.           \n');

% read time
for i = 1:NUM_SCANS
        t(i) = fread(fid,1,'integer*8');
        fprintf('Loaded record   0 of   0\r', i, NUM_SCANS);
end
fprintf('Finished loading timestamps.             \n');

fclose(fid);

if NAV   % read nav
        fid = fopen(nav_filename,'rb');
        if (fid < 0)
                error('Error opening nav file.  Check to make sure it''s in the current directory')
        end

        NUM_NAV_RECORDS = fread(fid,1,'integer*4');
        nav = zeros(NUM_NAV_PARAMS, NUM_NAV_RECORDS);
        navt = zeros(1, NUM_NAV_RECORDS);

        for i = 1:NUM_NAV_RECORDS
                for j = 1:NUM_NAV_PARAMS
                        nav(j,i) = fread(fid,1,'float');
                end
        fprintf('Loaded record   0 of   0\r', i, NUM_NAV_RECORDS);
        end

        for i = 1:NUM_NAV_RECORDS
                navt(i) = fread(fid,1,'integer*8');
        end

        fclose(fid);
end

fprintf('Finished loading.                            \n');


File Content and File Naming Convention

The file named README_NASTM_CAMEX is also included with the data. It describes the data format and naming conventions.

README_NASTM_CAMEX

NOTE:  The binary files were written with a LITTLE-ENDIAN machine

Two files are written:

CAMEX_NASTM_ddmmm98.bin

        The first number written, NUM_SCANS (32-bit integer), gives the number
        of records contained in the file.  The second value, NUM_RTDS
        (32-bit integer), gives the number of housekeeping temperatures
        recorded during the flight.  The remainder of the file is organized
        as follows:

        1)  uncalibrated radiance counts  (16 x 25 x NUM_SCANS)
            (16-bit signed integers)

                The first dimension is channel frequency (in GHz):
                        1       50.30  +/- .090
                        2       51.76  +/- .200
                        3       52.80  +/- .200
                        4       53.75  +/- .120
                        5       54.40  +/- .200
                        6       54.94  +/- .200
                        7       55.50  +/- .165
                        8       56.02  +/- .135
                        9       118.75 +/- 3.50 +/- .500
                        10      118.75 +/- 2.55 +/- .250
                        11      118.75 +/- 2.05 +/- .250
                        12      118.75 +/- 1.60 +/- .200
                        13      118.75 +/- 1.20 +/- .200
                        14      118.75 +/- .800 +/- .200
                        15      118.75 +/- .450 +/- .150
                        16      118.75 +/- .235 +/- .065

                The second dimension is spot number:
                        1       zenith (0 degrees)
                        2       zenith
                        3       heated calibration
                        4       heated calibration
                        5 - 23  nadir (-64.8 to 64.8 in steps of 7.2 degrees)
                        24      ambient calibration
                        25      ambient calibration

                The third dimension is scan number.

        2)  calibrated brightness temperatures  (32-bit floats)
                (same organization as above)

        3)  housekeeping temperatures  (NUM_RTDS x NUM_SCANS)
            (num(32-bit floats)

                Various RTD measurements of instrument thermometric
                temperature, including calibration target are recorded during
                flight.  The order was changed a couple of times during the
                deployment.  The nominal ordering is:

                        1:  118 Radiometer:  mixer
                        2:  118 Radiometer:  heatsink
                        3:  118 Radiometer:  LO
                        4:  118 Radiometer:  IF
                        5:  54  Radiometer:  IF
                        6:  54  Radiometer:  LO
                        7:  54  Radiometer:  mixer
                        8:  54  Radiometer:  RF
                        9:  Hot Load:  corner/top
                        10: Hot Load:  corner/bucket
                        11: Hot Load:  side/aluminum
                        12: Hot Load:  bottom/aluminum (control RTD)
                        13: Hot Load:  middle-side/bucket
                        14: Hot Load:  side/bucket
                        15: Hot Load:  side/aluminum
                        16: CPU heatsink
                        17: Flight PC box interior
                        18: IF plate
                        19: Video processor (wall of rack)
                        20: power supply rack
                        21: camera mount
                        22: stepper motor
                        23: Cold Load:  side/bucket
                        24: Cold Load:  side/tip
                        25: Cold Load:  side/tip
                        26: Cold Load:  corner/bucket
                        27: Cold Load:  corner/bucket

        4)  timestamps  (1 x NUM_SCANS)  (64-bit signed integers)
                "POSIX-time" (seconds since Jan. 1, 1970)

When navigation data is available from the ER-2, a second file is written:
CAMEX_NASTM_nav_ddmmm98.bin.

        The first number written, NUM_NAV_RECORDS (32-bit integer), gives
        the number of records contained in the file.    The remainder of the
        file contains:

        1) The 48 parameters given in the ER-2 Investigators Handbook
                (II-4-1) are stored.  All values are stored as 32-bit
                floats.  (48 x NUM_NAV_RECORDS)

        2) timestamps  (1 x NUM_SCANS)  (64-bit signed integers)
                "POSIX-time" (seconds since Jan. 1, 1970)
 

A NOTE ON THE TIMESTAMPS
^^^^^^^^^^^^^^^^^^^^^^^^
The POSIX-time values are calculated from UTC-time which is received
from the ER-2.  The calculation is as follows:

POSIX-time = tm_sec + tm_min*60 + tm_hour*3600 + tm_yday*86400 +
             (tm_year-70)*31536000 + ((tm_year-69)/4)*86400

             where UTC time is broken into tm_year:tm_day:tm_hour:tm_min:tm_sec

The UTC timestamps are stored as part of the navigation record, so conversions
to either timestamp type are possible.

Please address questions and comments to Bill Blackwell (wjb@mit.edu)

Contact Information

To order these data or for further information, please contact:

Global Hydrology Resource Center
User Services
320 Sparkman Drive
Huntsville, AL 35805
Phone: 256-961-7932
E-mail: support-ghrc@earthdata.nasa.gov
Web: http://ghrc.nsstc.nasa.gov/