MTP Software Overview

MJ Mahoney
Last Revision: February 2, 2011

Contents

Introduction

Because MTPs have been flying on airborne research platforms for more than 25 years, it should be no surprise that the MTP data analysis software has evolved very substantially over this period of time. When I got involved in the MTP work in 1995, all the MTP software was written in Quick Basic (QB) days,  which had a program memory limit of 64 KB! This mandated that the MTP data processing be carried out in a number of steps, and programs were written for each of these steps. Because the links between the QB processing steps were often accomplished with the MERGE command, output from one program step to the next was done by using intermediate files. This is still done to some extent.

About 1998 I started migrating the QB code to Visual Basic (VB). This added a GUI interface, and graphics that was not available in Quick Basic. But in moving from QB to VB another major change was made: all data was stored in binary data structures. Since it was realized that loosing the ability to examine ASCII files directly would be an issue, tools were also developed to retain the ASCII capability with the new, more efficient use of binary data structures and files. In about 2000 a new approach was taken to speed up data processing. The RAW data files are now read into arrays in memory where they reside for most processing steps. This made it simple to move forward or backward in a flight to examine and process data since it involved only an array index change. Other substantial changes also occurred as both program memory and hard drive memory increased dramatically in size. Eventually "tricks" to conserve both types of memory became unnecessary. In all of this, every effort was made to conserve backward compatibility. This makes the current software more complicated than it need be, but it was the right thing to do. We next describe a recent significant change that was made in the way that we calibrate the MTP termperature profile measurements.

Before MTP temperature profile retrievals can be performed it is necessary to calibrate the gain (counts/K) of the MTP. To do this, the counts out of the instrument must be known at two temperatures: the reference target temperature and an outside air temperature (OAT). The reference target temperature is accurately measured using an RTD, but the OAT is not known accurately. We generally compare the in situ OAT measurement to that of radiosondes that an aircraft flies close to, and use this flight level comparison to make a correction to the OAT that we call the program parameter OATnavCor.

In the past the MTP temperature calibration involved comparing the full MTP retrieved temperature profiles (ATPs) to radiosonde temperature profiles. If there was a bias at flight level, that bias was removed by specifying the value for OATnavCor. It now seems simpler to do the flight level temperature calibration without using MTP retrieved temperature profiles. It is simpler because all the steps leading up to doing retrievals are not needed to do the calibration, and in fact OATnavCor is now always 0 K because by definition the flight level in situ temperature is in perfect agreement with that of radiosondes. This has the added advantage that the instrument gains do not have to be re-calculated (and data reprocessed) because OATnavCor never changes! We had never done this prior to the GV T-Rex field campaign, so several iterations through all the flight data were needed to get an accurate value for OATnavCor.

The MTP did not fly during the T-Rex campaign. However, since there were differences between the available GV in situ temperature measurements made during T-Rex, we were asked if the MTP temperature calibration software could be used to do a temperature calibration for T-Rex. Since the MTP did not fly on T-Rex, the normal MTP full temperature profile comparisons could not be made to determine the accuracy of the T-Rex in situ temperature measurements. Therefore, new code was written to extract the various in situ aircraft temperatures from the 1 Hz 'NGyyyymmdd.asc' avionics files for each T-Rex flight. Only flight level temperature comparisons were done between radiosondes and the GV in situ temperature measurements.  MTP measurements are not involved and are not needed. This seems simpler than the old approach of comparing temperature profiles at all levels (although this capability still exists and can be used to assess retrieval accuracy away from flight level).

After the OAT calibration is done (see following Steps), corrected T values are substituted into the IWG1-line or A-line in the MTP RAW file, depending on the instrument (canister or otherwise). After this is done, there should be no flight level bias with respect to radiosondes (if it was done correctly), and OATnavCor is zero. The file that is written with the corrected temperature is named: NGyyyymmdd.RNG, where XX depends on which temperature was substituted; the AW in RAW is replaced by the first two letters of the aircraft acronym, NGV. A new file is created because we don't ever want the RAW file to be modified. (This example is for the NCAR GV. The file name would by ERyyyymmdd.RMM if MMS data was substituted into a RAW ER-2 data file.)

This new approach to temperature calibration needed some motivation. In the past we have avoided doing RAOB temperature comparisons in the troposphere for the simple reason that the large lapse rate there increases the temperature error due to aircraft altitude excursions. (This is just one of many quality control considerations if accurate comparisons between RAOBs and in situ temperatures are to be made.) During the HIPPO campaigns however, two factors forced a reconsideration of this approach: the GV was seldom in level flight because it was continually profiling the full depth of the troposphere (and sometimes lower stratosphere), and the GV flew primarily over oceanic regions where radiosondes are sparse. Prior to the HIPPO campaigns we have always done RAOB comparisons at the time of closest approach with one exception. This was during a campaign out of San Juan, Costa Rica; the NASA WB-57 aircraft flew only over ocean negating the possibility of radiosondes comparisons. However, radiosondes were launched from Juan Santamaria airport, and the WB-57 made slow spiraling descents over the airport. This represented our only option for RAOB comparisons, and they worked very effectively. (COSMIC GPS soundings were just becoming available and we weren't equipped with software to use them.)

During the recent HIPPO campaigns most of the research flights were over ocean. If comparisons were only made at the time of closest approach to a RAOB launch site about 20 comparisons were possible. After editting for various quality control reasons, this would leave too few comparisons to get statistically significant results. So, encouraged by our Cost Rica experience, we adopted a new approach. We did comparisons in the troposphere every 2 km from 2 km on up whenever the radiosondes were sufficiently close. This potentially can increase the number of comparisons by an order of magnitude (depending on the maximum altitude of the NGV), and it allows any pressure altitude dependence of the calibration to be clearly identified (because of the fairly uniform sampling at the different pressure altitude levels).

For HIPPO-3 our going in position for doing temperature calibration was to use COSMIC soundings. We have actually written code to use the COSMIC soundings but so far that has not been necessary. We will therefore use the calibrated MTP temperature profiles as an independent way to evaluate the accuracy of the COSMIC soundings.

There are five major program groups used in the MTP data analysis:
This page will only provide an overview of these program groups, but there will be a link to a detailed discussion of each program.

Main Programs

The MTPbin program is the main program for all the MTP data processing. It has links to eighteen (18) forms to perform various functions. Collectively, these forms constitute the "Mother of all Programs (MOAP)."

Before MTPbin is run, it is necessary to run another program (MTPsetup) to establish such things as whether the data processing is realtime or offline, where the raw data files are coming from and where they end up going. Using this setup program greatly simplifies changing between realtime and offline data processing. A detailed description of MTPsetup can be found here.

MTPbin
itself  has eleven tabs associated with it. Before describing these tabs, we briefly describe in the Table 1 below the seventeen forms associated with MTPbin. It provides links to further detailed descriptions. Access to these forms is also provided on the MTP Software Notes home page.

Table 1. The seventeen forms used by the MTPbin program.
Form Name
Purpose
About
This form is loaded from the Help list on the menu bar. It simply gives the revision number of the software
ATP
The form is used by all the MTP data processing programs to graphically display an altitude temperature profile (ATP). It is loaded using the View tab Altitude Temperature Profile option on the MTPbin menu bar.
Batch
This form is loaded from the File list on the menu bar, and is used to batch process the data for a field campaign.
CaptureForm
All of the forms used for data processing can be saved as PNG images. This is done by double clicking on a form.
CTC
This form is used when color-coded temperature curtains (CTCs) are plotted.
Curtain
This form is used to set up how a CTC will be plotted.
EditBits
This form show the MakeWord and EditWord bits for the current ATP.
FLTINFO
This form shows all of the data processing parameters for the current campaign, flight and scan.
FltTrack
This form is loaded from the Show Flight Track button on the FLTINFO forms Flight tab.
FormatATP
This form is loaded from the Format list ATP option on the MTPbin menu bar. It is used to set up how ATPs are plotted on the ATP form.
NDP
This form is loaded from the View list Number Density Profile option on the MTPbin menu bar. It is used to show a number density profile for the current scan.
REFview
This form is loaded using View REF button on the right side of the MTPbin form. It is used to view ATPs and TBs, to write selected parameters to a text file, and many other useful functions.
SerialIO
This from is used to Input or Output serial data. It is currently only to input serial data using the COM In button on the right of the MTPbin form.
Status
This form displays the aircraft, tropopause, and cold point altitude and temperature, as well as the RC set(s) being used. It also indicates whether Nav data is being received. It is the information displayed on the upper right hand corner of the ATP display when real time ATPs are being generated.
Summary
This form is loaded using the View list Limits Summary option on the MTPbin menu bar. It displays maximum and minimum values of many data processing parameters.
TB
This form can be used to display brightness temperatures, but is currently not used.
Tools
This form is loaded using the Open Tools button on the right side of the MTPbin form. It has many useful tools needed for processing the MTP data.





Simulation Program

The MTP simulation program MTPsim is similar to MTPbin. The main difference is that it uses radiosondes to calculate theoretical brightness temperatures instead of measured brightness temperatures.


RAOB Programs

There are two programs that are used to handle radiosondes files: RAOBget is used to automatically download a list of soundings and save them as a binary file, and RAOBman is used to view and manipulate soundings.

Retrieval Coefficient Program

RCcalc is the program used to calculate retrieval coefficient sets.

Utility Programs



Index  |