Primary tabs

Ames Format Specification (v2.0)

Contents

1  Introduction
2  Basic Format Concepts
    2.1  Data Variables
    2.2  File Header Variables
3  Notation
4  Definitions
5  ASCII File Format Specifications
    5.1  FFI = 1001
    5.2  FFI = 1010
    5.3  FFI = 1020
    5.4  FFI = 2010
    5.5  FFI = 2110
    5.6  FFI = 2160
    5.7  FFI = 2310
    5.8  FFI = 3010
    5.9  FFI = 4010
    5.10  Summary of data record formats
6  Version 2 Format Extensions
    6.1  ONAME
    6.2  ORG
        6.2.1  Organizations
    6.3  SNAME
        6.3.1  Platforms
        6.3.2  Instruments
    6.4  MNAME
    6.5  XNAME(s), ANAME(a), VNAME(n)
        6.5.1  Geolocation Subjects
        6.5.2  Geolocation Qualifiers
        6.5.3  Geophysical Subjects
        6.5.4  Geophysical Qualifiers
        6.5.5  Platform Qualifiers
    6.6  Normal Comment Lines
        6.6.1  Signal Version 2 extensions
        6.6.2  Conversion to Standard Units
        6.6.3  Normal Comment Numeric Data
        6.6.4  Normal Comment String Data
    6.7  Standard Units
7  Format Examples
    7.1  FFI=1001
    7.2  FFI=1010
    7.3  FFI=1020
    7.4  FFI=2010
    7.5  FFI=2110
    7.6  FFI=2160
    7.7  FFI=2310
    7.8  FFI=3010
    7.9  FFI=4010

Steven E. Gaines and R. Stephen Hipskind
gaines@cloud1.arc.nasa.gov and steve.hipskind@nasa.gov

Version 2.0

2006-01-01

1  Introduction

This document describes a conceptual framework for specifying exchange data formats, and then gives a detailed description of the standard formats. Those considering writing exchange files must review the format options presented in this document and determine the format most suitable for recording their data. If none are deemed suitable then consult with the project archive manager for assistance with either recasting data into an existing format or defining a new format option.
The primary goal of instituting format standards for data exchange is to promote accessibility and ease of use of a variety of datasets from different instruments, platforms and numerical models. Toward that goal, exchange files must be self-describing and readable on all commonly used computer systems, using a minimal amount of software. An additional advantage of standardized file formats is that data files can more effectively be automatically screened for format errors before they are archived. The system described here uses ASCII files because ASCII coded files are readable on all of the common computer systems, and they are convenient in the sense that there are a variety of software tools which can be used to view and manipulate ASCII files.
This document also introduces some backward-compatible extensions to the original 1990 format specification. Computer programs which were designed to read an arbitrary file in the original format will also be able to read files in the formats described herein, both with and without the format extensions, although those programs will have to be modified to utilize the additional information supplied by the extensions. The format extensions merely provide more specific conventions for constructing the file header character string variables, and the added information can be used to facilitate automated processing of exchange files.
Perhaps the most fruitful way to learn about the file formats is to first review the concepts in Section 2 and then concentrate on the format recipes in Section 5, with reference to the notation and variable definitions in Sections 3 and 4. The format extensions are described in Section 6, and examples of each file format, without and with the format extensions, are in Section 7. Since any particular format option can accommodate a variety of types of data, the concepts, terminology, and format specifications are first presented in an abstract manner so not to bias or narrow their definition. The examples in Section 7 are included to provide a tangible link between the abstract definitions and actual exchange data files. It will, therefore, be useful to refer to these examples while (or before) reading the rest of this document.

2   Basic Format Concepts

For our purposes, ASCII exchange files are considered to be a sequence of printable ASCII characters, organized into lines, with each line terminated by one or two non-printable ASCII control characters.
  • Different types of operating systems use different control characters as line terminators: Unix-like systems use the <LF> character (ASCII decimal value 10); DOS/Windows systems use <CR><LF> characters (ASCII decimal values 13 and 10); the older Macintosh systems use the <CR> character.
Two general constraints on the way lines are constructed in all ASCII exchange files are:
  1. Aside from appropriate line terminators, only printable ASCII characters are allowed in the file. The printable characters have ASCII decimal values 32 through 126. Thus, horizontal TABs and other control characters are not allowed.
  2. The maximum number of printable ASCII characters allowed in each line is 132.
The specific constraints on how characters are arranged in a file are dictated by the particular file format, as specified in Section 5. Each ASCII data file consists of a file header, followed by the data records. The file header is used to describe the data and the origin of the file.
Both the file header and the data records consist of values of predefined variables, with each variable having a predefined type: character string or numeric. Numeric values are further classified as either integer or real numbers. Of course, a numeric value is also just a string of ASCII characters, but it is restricted to consist of only those characters used to express integer or real numbers, as defined in Section 4.
A character string variable value occupies an entire line, so line terminators delimit successive character string values. Successive numeric variable values are delimited by either one or more spaces or by a line terminator. However, as you will see in Section 6, the format extensions call for dividing values of the character string variables in the file header into fields, and interpreting the contents of each field as either a number or a character string. So in those special cases the field delimiter can also delimit successive numeric and character string values.

2.1  Data Variables

The data are conceptually divided into Independent Variables and Dependent Variables. Independent Variables are further classified as either bounded or unbounded, and Dependent Variables are further divided into Primary and Auxiliary Variables, as outlined below:
  • Independent Variables
      * bounded
      * unbounded (IVM)
  • Dependent Variables
      * Auxiliary Variables
          ** function of only the unbounded Independent Variable
      * Primary Variables
          ** function of all Independent Variables
The number and types of Independent Variables and the types of Dependent Variables in a particular file are determined by the particular format of the file, as specified in Section 5. The Independent Variable with the largest index (1 if there is only one Independent Variable, 2 if there are two, etc.) is the unbounded variable. The other Independent Variables (if any) are the bounded variables. Values of the unbounded variable are always explicitly recorded in the data records, and given the special name: Independent Variable Marks (IVM). Auxiliary Variables are functions of only the unbounded variable, whereas Primary Variables are considered to be single-valued functions of all Independent Variables.
To ensure that single-valuedness, all Independent Variables are required to have monotonic values. In other words, successive values of each Independent Variable must either continually increase or continually decrease. There are a few file formats for which values of the bounded Independent Variable are not constant throughout the file and can vary with each IVM, and in those cases the requirement is to use monotonic values of the bounded variable for each IVM.
Within the constraints of the predefined file formats, investigators have considerable leeway to choose a file format and their data variables. Data variable values can be either real numbers or character strings, depending on the particular format used to construct the file, and while it is often natural, and desirable, to use geolocation parameters as Independent Variables, that is not a requirement.
Our discussions of variables will often differentiate between the number of variables and the number of values of a particular variable, and it is important to recognize the distinction between the two. To illustrate, consider a file which uses altitude and time as the bounded and unbounded Independent Variables, so the number of Independent Variables is two. If 60 values of altitude are recorded in the file then the number of values of the bounded variable is 60.

2.2  File Header Variables

The file header is used to describe the data and the origin of the file. The first line in the file header includes the File Format Index (FFI) which, with reference to the format recipes in Section 5, determines the general format of the rest of file header and the data records. Several character string variables are used to specify information about the originators of the file and the primary source of the data within the file. Other variables are used to describe the Independent and Dependent Variables, and to define missing values and scale factors for the Dependent Variables.
  • You will notice that there are no missing values or scale factors associated with Independent Variables. Each Independent Variable value must be a valid value.
The file header also allows for three types of comments. Two of these comment types have reserved locations within the file header, and are associated with counters defining the number of lines occupied by each type of comment (which can be zero). The first type, called Special Comments, are reserved to note special problems or circumstances concerning the data within a specific exchange file, and the revision history for the dataset. The second type are called Normal Comments, and they can be used for more complete descriptions of the variables, instrument and originators of the file, or other comments that apply in general to all of a particular kind of dataset. The third type of comments are merely annotations which may follow numeric values; these comments must be contained on the same line as, and separated by at least one space from the last numeric value expected in the record. These annotations should not be included in lines containing character string values because the annotations cannot easily be separated from the character string values.

3   Notation

The array and implied loop notation, used to generalize the exchange file format definitions given in Section 5 will now be explained. The notation is merely a convenient means of specifying the file formats, and not intended to indicate useful or desirable array structures in computer programs. The descriptions are from the perspective of reading exchange files by following the format recipes in Section 5.
Variables enclosed in square brackets [ ] are read with one "read" statement and, therefore, the values occupy one record. If the value is a character string then the record encompasses only one line in the exchange file. If the values are numeric then the record may exceed one line; the implication being that as many lines as necessary will be read in order to gather the required number of values.
One or more variables appearing in a line, and not enclosed in square brackets, are read as one record and constitute one line in the exchange file.
The indices act as counters to indicate a particular array element, and thus the dependence of some variable. Several indices are consistently used for special purposes:
s
is the counter for the Independent Variables. Its range of values is expressed as s=1,NIV, which means that s may have integer values from 1 to NIV. When s=NIV (the number of Independent Variables) it references the unbounded Independent Variable.
m
is used to count Independent Variable Marks (IVM), which are the recorded values of the unbounded Independent Variable, and m can be the index of any IVM within the file.
n
is the counter for the Primary Variables and can assume values in the range n=1,NV, where NV is the number of Primary Variables.
a
is the counter for the Auxiliary Variables and can assume values of a=1,NAUXV, where NAUXV is the number of Auxiliary Variables.
The usage of other indices (i,j,k) is less consistent, but usually those indices are used to count array elements of the bounded Independent Variables. Indices are counted from one (1-relative).
To illustrate the notation, consider the array X which contains values of the Independent Variables.
X(i,m,s)
is the general expression for an arbitrary element of X, where i, m, and s can assume any allowable values. This expression indicates that values of the bounded Independent Variables depend on the unbounded Independent Variable, and can be different at each IVM. The allowable indices are in the range i=1,NX(m,s), s=1,NIV, which states that s may take on integer values of 1 to NIV, and i may assume integer values of 1 to NX(m,s). The index m can be the index of any IVM within the file. The variable NX(m,s) is the number of values of the s-th Independent Variable at the m-th IVM.
X(i,s)
is the more common expression for X and indicates that values of the bounded Independent Variable are fixed throughout the entire file. The allowable indices are in the range i=1,NX(s), s=1,NIV.
Now consider the array V which contains values of the Primary Variables.
V(X,n)
is the general expression of V, indicating its dependence on X but not specifying the number of Independent Variables (NIV). The allowable values of n are in the range n=1,NV.
V(i,m,n)
is an expression for V when there are two Independent Variables (NIV=2). The range of n is always n=1,NV, and m can be the index of any IVM, but the range of i will depend on whether or not values of the bounded Independent Variable depend on m. If they do then the range is i=1,NX(m,1); if they do not then i=1,NX(1).
To continue the illustration, consider the data record format for FFI=2010:
[ X(m,2)  ( A(m,a), a=1,NAUXV ) ] 
[ V(i,m,n), i=1,NX(1) ]  n=1,NV
X(m,2)
represents the m-th IVM for the unbounded Independent Variable (since NIV=2).
A(m,a)
is the value of the a-th Auxiliary Variable at the m-th IVM.
V(i,m,n)
is the value of the n-th Primary Variable at the m-th IVM and i-th bounded Independent Variable value.
The square brackets enclosing the first line of the expression indicate that an IVM and values of NAUXV Auxiliary Variables are read as one record which may span more than one line. The second line of the expression is to be interpreted to mean that for the m-th IVM there are NV records of Primary Variables, which will be read with n starting at a value of 1, incrementing by one for each record, and ending with a value of NV for the last record. The notation within the square brackets indicates that for each record, NX(1) values of the n-th Primary Variable at the m-th IVM are read. In this case, the constant values of the bounded Independent Variable (X(i,1), i=1,NX(1)) are obtained from the file header.
When considering the implied loop notation, like a=1,NAUXV, be aware that if the terminal value of the loop is smaller than the initial value then the loop is not executed. For example, if NAUXV=0 then only X(m,2) would be read in the first record of the above format expression, because there would be no Auxiliary Variables.
To be more specific with the FFI=2010 example, assume there are three Auxiliary Variables (NAUXV=3), two Primary Variables (NV=2), and four values for the bounded Independent Variable (NX(1)=4). Given these values for the loop limits, the general expressions for the data format imply the following record structure (the intra-record spacing between values is merely for illustration):
X(m,2)    A(m,1)    A(m,2)    A(m,3) 
  V(1,m,1)    V(2,m,1)    V(3,m,1)    V(4,m,1) 
  V(1,m,2)    V(2,m,2)    V(3,m,2)    V(4,m,2) 
X(m+1,2)  A(m+1,1)  A(m+1,2)  A(m+1,3) 
  V(1,m+1,1)  V(2,m+1,1)  V(3,m+1,1)  V(4,m+1,1) 
  V(1,m+1,2)  V(2,m+1,2)  V(3,m+1,2)  V(4,m+1,2) 
X(m+2,2)  A(m+2,1)  A(m+2,2)  A(m+2,3)
...
If NAUXV=0 then the resulting data records would be the same as those depicted above, except there would be no Auxiliary Variable values recorded in the records containing the IVM (X(m,2), X(m+1,2), etc.).

4   Definitions

A(m,a)
is the value of the a-th Auxiliary Variable at the m-th IVM (a=1,NAUXV). If A(m,a) is real, the use of ASCAL(a) to record its values as scaled whole numbers is encouraged.
AMISS(a)
is the value which indicates missing, erroneous or unreliable data for the a-th Auxiliary Variable. The value of AMISS(a) defined in the file header is the same value which appears in the data records for missing/bad values of A(m,a). The value of AMISS(a) must be the largest value of A(m,a) recorded in the file, so that any value smaller than AMISS(a) is considered valid data.
ANAME(a)
is a character string, on one line, describing the a-th Auxiliary Variable, A(m,a). Include the units of measure the data will have after multiplying recorded values of A(m,a) by the a-th scale factor, ASCAL(a).
Version 1.x:
The original specification allows a free-form description.
Extension:
The format extensions require a more specific format for ANAME(a); see Section 6.5 for details.
ASCAL(a)
is the scale factor (real) by which one multiplies recorded values of the a-th Auxiliary Variable to convert them to the units specified in ANAME(a).
character string
is the term used to describe the value of a variable which consists of a string of at most 132 printable ASCII characters. The printable ASCII characters have ASCII decimal values from 32 to 126.
Version 1.x:
The original specification requires that each character string value occupy a line, so that line terminators delimit a character string value.
Extension:
The format extensions use both line terminators and field separators, |, to delimit character string values.
DATE
specifies the UTC date at which the data within the exchange file begins. For aircraft data files DATE specifies the UTC launch date. DATE is in the form YYYY MM DD (year, month, day) with each integer value separated by at least one space. For example, 30 November 1988 can be expressed as: 1988 11 30
DX(s)
is the interval (real) between successive values of the s-th Independent Variable, X(i,s), i=1,NX(s); in the same units as specified in XNAME(s). DX(s)=0 for a non-uniform interval. DX(s) is non-zero for a constant interval. If DX(s) is non-zero then it is required that NX(s)=(X(NX(s),s)-X(1,s))/DX(s)+1. For some file formats the value of DX also depends on the unbounded Independent Variable and is expressed as DX(m,s).
FFI
is the file format index (integer). The FFI uniquely defines the file header and data formats. It is the second value recorded on the first line of an exchange file. The first (left-most) digit in the FFI gives the number of Independent Variables listed in the file header, the second digit gives the number of required (in the sense that they are necessary for reading the subsequent data records) Auxiliary Variables. The remaining digits are used to loosely associate file formats with similar characteristics.
Independent Variable Mark
is a value of the unbounded Independent Variable which is explicitly recorded in the data records. Independent Variable Marks (IVM) must be monotonic.
integer
is a whole number written without a decimal point. Leading zeros are insignificant. The characters which can be used to express integer values are: +-0123456789
IVM
is the acronym for Independent Variable Mark.
IVOL
is the volume number (integer) of the total number of volumes required to store a complete dataset, assuming only one file per volume; to be used in conjunction with NVOL to allow data exchange of large datasets requiring more than one volume of the exchange medium (diskette, etc.). IVOL and NVOL are legacies from the "sneakernet" days, so barring exceptional cases, IVOL=NVOL=1.
LENA(a)
is the number of characters (integer) used to record Auxiliary Variable A(m,a) when A(m,a) is represented as a character string. 0<LENA(a)<133.
LENX(s)
is the number of characters (integer) used to record Independent Variable X(i,s) when X(i,s) is represented as a character string. 0<LENX(s)<133.
line
refers to a string of printable ASCII characters within an exchange file, terminated by the appropriate end-of-line (or new line) designator for the operating system on which the file resides. The maximum number of printable characters per line is 132.
MNAME
is a character string specifying the mission which the data is supporting. The appropriate value for MNAME will be decided upon prior to the start of the mission.
NAUXC
is the number of Auxiliary Variables (integer) whose values are recorded as character strings. If NAUXC=0 then no Auxiliary Variables are recorded as character strings.
NAUXV
is the number of Auxiliary Variables (integer). If NAUXV=0 then no Auxiliary Variables are recorded and no missing values, scale factors, or names for the Auxiliary Variables are present in the file header.
NCOM(k)
represents a character string occupying the k-th Normal Comment line (k=1,NNCOML).
NIV
is the number of Independent Variables (integer) on which the Primary Variables are dependent.
NIVM
is the number of Independent Variable Marks in the exchange file. With all formats except FFI=1020, NIVM is also the dimension of the unbounded Independent Variable.
Version_1.x:
In the original specification, NIVM is not recorded in the file and its value must be found by reading the entire file and counting the number of Independent Variable Marks.
Extension:
NIVM is recorded in a Normal Comment metadata declaration, as described in Section 6.6.
NLHEAD
is the number of lines (integer) occupied by the file header. NLHEAD is the first recorded value on the first line of an exchange file.
NNCOML
is the number of Normal Comment lines (integer) within the file header, including blank lines. Normal Comments are those which apply to all of a particular kind of dataset, and can be used to more completely describe the contents of the file. If NNCOML=0 then there are no Normal Comment lines.
Extension:
The format extensions provide a convention for metadata declarations in the Normal Comment lines, and require that there be at least two Normal Comment lines; see Section 6.6 for details.
NSCOML
is the number of Special Comment lines (integer) within the file header. Special Comments are reserved to note special problems or circumstances concerning the data within a specific exchange file so they may easily be found and flagged by those reading the file. The revision history of the dataset should also be included in the Special Comments. If NSCOML=0 then there are no Special Comment lines.
NV
is the number of Primary Variables (integer) in the exchange file.
NVOL
is the total number of volumes (integer) required to store the complete dataset, assuming one file per volume. If NVOL>1 then each volume must contain a file header with an incremented value for IVOL, and continue the data records with monotonic Independent Variable Marks. IVOL and NVOL are legacies from the "sneakernet" days, so barring exceptional cases, IVOL=NVOL=1.
NVPM(s)
is the number of Independent Variable values (integer) between Independent Variable Marks, for the s-th Independent Variable. NVPM(s) is only used in FFI=1020, and for that format NVPM(s)=(X(m+1,s)-X(m,s))/DX(s), with s=1.
NX(s)
is the number of values (integer) for the s-th Independent Variable. In some formats, NX(s) is defined in the file header and specifies the constant number of values for the s-th bounded Independent Variable. Otherwise, NX=NX(m,s) is defined in the data records as an Auxiliary Variable and its values can vary with the Independent Variable Marks.
Version 1.x
In the case of an unbounded Independent Variable, NX(NIV) is never specified in the file but the values of X(m,NIV) are read from the data records (Independent Variable Marks).
Extension:
NIVM is recorded in a Normal Comment metadata declaration (see Section 6.6), and for all formats except FFI=1020, NIVM=NX(NIV).
NXDEF(s)
is the number of values (integer) of the s-th Independent Variable which are explicitly defined in the file header. If NXDEF(s)=NX(s) then all values of X(i,s), i=1,NX(s) are recorded in the file header. If NXDEF(s)=1 then only the first value, X(1,s), is recorded in the file header and the remaining values of X(i,s) are calculated as X(i,s)=X(1,s)+(i-1)*DX(s) for i=2,NX(s).
ONAME
represents a character string specifying the name(s) of the originator(s) of the exchange file, last name first, on one line.
Extension:
The format extensions require a more specific format for ONAME; see Section 6.1 for details.
ORG
represents a character string specifying the organization or affiliation of the originator of the exchange file. Can include address, phone number, email address, etc., on one line.
Extension:
The format extensions require a more specific format for ORG; see Section 6.2 for details.
RDATE
represents the date of data reduction or revision, in the same form as DATE.
real
refers to a real valued number that may include a decimal point or be written in exponential notation. It is preferred that the values of real numbers be limited to seven significant digits within the magnitude range of 1.0E-38 to 1.0E+38. The allowable characters in a real number representation are: +-.0123456789Ee
record
refers to a logical record to be read by one "read" statement, which in general may span more than one line. The first character of a record is also the first character of a line.
SCOM(k)
represents a character string occupying the k-th Special Comment line (k=1,NSCOML).
SNAME
represents a character string which specifies the source of the measurements or model results recorded in the file. Can include instrument name, measurement platform, etc.
Extension:
The format extensions require a more specific format for SNAME; see Section 6.3 for details.
V(X,n)
represents the value of n-th Primary Variable (n=1,NV) as a function of the Independent Variable(s) X. If V is real then the use of VSCAL(n) to record its values as scaled whole numbers, without decimal points, is encouraged. Depending on the number of Independent Variables, V(X,n) may also be expressed as: V(m,n), V(i,m,n), V(i,j,m,n), V(i,j,k,m,n).
VMISS(n)
represents a quantity indicating missing, erroneous or unreliable data values for the n-th Primary Variable. The value of VMISS(n) defined in the file header is the same value that appears in the data records for missing/bad values of V(X,n). The value of VMISS(n) must be the largest value of V(X,n) recorded in the file, so that any value smaller than VMISS(n) is considered valid data.
VNAME(n)
represents a character string, on one line, which specifies the name and/or description of the n-th Primary Variable, V(X,n). Include units of measure the data will have after multiplying recorded values of V(X,n) by the n-th scale factor, VSCAL(n).
Version 1.x:
The original specification allows a free-form description.
Extension:
The format extensions require a more specific format for VNAME(n); see Section 6.5 for details.
VSCAL(n)
represents the scale factor (real) by which one multiplies recorded values of the n-th Primary Variable to convert them to the units specified in VNAME(n).
X(i,s)
represents the i-th value of the s-th Independent Variable (X(i,s), i=1,NX(s), s=1,NIV). For some file formats the values of a bounded Independent Variable may also depend on the unbounded Independent Variable, and in those cases we will denote the bounded Independent Variable as X(i,m,s), with s<NIV. Values of X(i,s), i=1,NX(s) and X(i,m,s), i=1,NX(m,s) must be monotonic.
XNAME(s)
represents a character string, on one line, specifying the name and/or description of the s-th Independent Variable. Include units of measure and order the Independent Variable names such that, when reading Primary Variables from the data records, the most rapidly varying Independent Variable is listed first and the most slowly varying Independent Variable is listed last.
Version 1.x:
The original specification allows a free-form description.
Extension:
The format extensions require a more specific format for XNAME(s); see Section 6.5 for details.

5   ASCII File Format Specifications

This Section contains cookbook recipes for each ASCII data file format, ordered by increasing file format index (FFI). For each FFI there is a brief description of the variables and format, followed by a symbolic representation of the file header and a general expression for the data records. The variables used to construct the file header and the data records are defined in Section 4, and the notation used in this Section is described in Section 3. Occasionally, lower case characters, preceded by several periods, are used to annotate certain variables.

5.1  FFI = 1001

One real, unbounded Independent Variable (NIV=1).
Primary Variables are real.
No Auxiliary Variables.
Independent and Primary Variables are recorded in the same record.
NLHEAD 1001 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) 
XNAME(1) 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,1) ( V(m,n), n=1,NV ) ]

5.2  FFI = 1010

One real, unbounded Independent Variable (NIV=1).
Primary Variables are real.
Auxiliary Variables are real.
The Independent and Auxiliary Variables are in the same record.
All Primary Variables for a given Independent Variable Mark are recorded in the same record.
NLHEAD 1010 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) 
XNAME(1) 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,1) ( A(m,a), a=1,NAUXV ) ] 
[ V(m,n), n=1,NV ]

5.3  FFI = 1020

One real, constant increment, unbounded Independent Variable with implied values between Independent Variable Marks (NIV=1).
Primary Variables are real.
Auxiliary Variables are real.
The Independent and Auxiliary Variables are in the same record.
A record of Primary Variable values at implied Independent Variable values is recorded for each Primary Variable.
NLHEAD 1020 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) .............. DX(1) not equal to zero 
NVPM(1) 
XNAME(1) 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,1) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,n), i=1+(m-1)*NVPM(1),m*NVPM(1) ] n=1,NV

5.4  FFI = 2010

Two real Independent Variables (NIV=2); one unbounded, and one bounded with constant values defined in the file header.
Primary Variables are real.
Auxiliary Variables are real.
Independent Variable Mark and Auxiliary Variables are in the same record.
For each Primary Variable is a record of its values at the bounded Independent Variable values.
NLHEAD 2010 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) DX(2) 
NX(1) 
NXDEF(1) 
[ X(i,1), i=1,NXDEF(1) ] 
[ XNAME(s) ] s=1,2 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,2) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,m,n), i=1,NX(1) ] n=1,NV

5.5  FFI = 2110

Two real Independent Variables (NIV=2); one unbounded, and one bounded with its values recorded in the data records.
Primary Variables are real.
Auxiliary Variables are real; A(m,1)=NX(m,1) which defines the number of bounded Independent Variable values to be read from the records following the m-th Independent Variable Mark.
The values of X(i,m,1) are included in the records with the Primary Variables.
If NX(m,1)=AMISS(1) or NX(m,1)=0 then the implication is that the records containing values of the bounded Independent Variable and Primary Variables are omitted, and the next record contains the succeeding Independent Variable Mark and Auxiliary Variables.
NLHEAD 2110 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) DX(2) 
[ XNAME(s) ] s=1,2 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV ................. The first auxiliary variable is NX(m,1) 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,2) NX(m,1) ( A(m,a), a=2,NAUXV ) ] 
[ X(i,m,1) ( V(i,m,n), n=1,NV ) ] i=1,NX(m,1)

5.6  FFI = 2160

Two Independent Variables (NIV=2); the unbounded Independent Variable is a character string of length LENX(2); the bounded Independent Variable is real with its values recorded in the data records.
Primary Variables are real.
The Independent Variable Mark is in a separate record from the Auxiliary Variables.
The value of the first Auxiliary Variable is NX(m,1); if its value is zero or AMISS(1) then the records with X(i,m,1) and the Primary Variable values are omitted.
NAUXC is the number of Auxiliary Variables recorded as character strings, which follow the real-valued Auxiliary Variables and have lengths LENA(a), a=NAUXV-NAUXC+1,NAUXV. Therefore, AMISS(a), a=NAUXV-NAUXC+1,NAUXV are also character strings of length LENA(a).
NLHEAD 2160 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) 
LENX(2) 
[ XNAME(s) ] s=1,2 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV ........................ first auxiliary variable is NX(m,1) 
NAUXC 
[ ASCAL(a), a=1,NAUXV-NAUXC ] 
[ AMISS(a), a=1,NAUXV-NAUXC ] ...................these are real 
[ LENA(a), a=NAUXV-NAUXC+1,NAUXV ] 
[ AMISS(a) ] a=NAUXV-NAUXC+1,NAUXV ..........these are strings 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
X(m,2) .......................................character string 
[ NX(m,1) ( A(m,a), a=2,NAUXV-NAUXC ) ] 
[ A(m,a) ] a=NAUXV-NAUXC+1,NAUXV ..............character strings 
[ X(i,m,1) ( V(i,m,n), n=1,NV ) ] i=1,NX(m,1)

5.7  FFI = 2310

Two real Independent Variables (NIV=2); one unbounded, one bounded with its number of constant increment values, base value and increment defined in the Auxiliary Variable list.
Primary Variables are real.
Auxiliary Variables are real; the first three values are NX(m,1), X(1,m,1) and DX(m,1), which define the bounded Independent Variable values for the m-th Independent Variable Mark to be X(i,m,1) = X(1,m,1) + (i-1) * DX(m,1) for i=1,NX(m,1).
If NX(m,1)=AMISS(1) or NX(m,1)=0 then the implication is that the records containing values of the primary variables are omitted, and the next record contains the succeeding Independent Variable Mark and Auxiliary Variable values.
For each Primary Variable is a record of its values at the bounded Independent Variable values.
NLHEAD 2310 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(2) 
[ XNAME(s) ] s=1,2 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV ............first 3 auxil. var. are NX(m,1),X(1,m,1),DX(m,1) 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,2) NX(m,1) X(1,m,1) DX(m,1) ( A(m,a), a=4,NAUXV ) ] 
[ V(i,m,n), i=1,NX(m,1) ] n=1,NV

5.8  FFI = 3010

Three real Independent Variables (NIV=3); one unbounded, two bounded with constant values defined in the file header.
Primary Variables are real.
Auxiliary Variables are real.
The Independent Variable Marks and Auxiliary Variable values are in the same record.
For each Primary Variable and value of the second Independent Variable, is a record of Primary Variable values at values of the first Independent Variable.
NLHEAD 3010 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) DX(2) DX(3) 
NX(1) NX(2) 
NXDEF(1) NXDEF(2) 
[ X(i,1), i=1,NXDEF(1) ] 
[ X(j,2), j=1,NXDEF(2) ] 
[ XNAME(s) ] s=1,3 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,3) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,j,m,n), i=1,NX(1) ] j=1,NX(2) n=1,NV

5.9  FFI = 4010

Four real Independent Variables (NIV=4); one unbounded, three bounded with constant values defined in the file header.
Primary Variables are real.
Auxiliary Variables are real.
The Independent Variable Marks and Auxiliary Variables are in the same record.
For each Primary Variable and value of the third and second Independent Variables, is a record of Primary Variable values at values of the first Independent Variable.
NLHEAD 4010 
ONAME 
ORG 
SNAME 
MNAME 
IVOL NVOL 
DATE RDATE 
DX(1) DX(2) DX(3) DX(4) 
NX(1) NX(2) NX(3) 
NXDEF(1) NXDEF(2) NXDEF(3) 
[ X(i,1), i=1,NXDEF(1) ] 
[ X(j,2), j=1,NXDEF(2) ] 
[ X(k,3), k=1,NXDEF(3) ] 
[ XNAME(s) ] s=1,4 
NV 
[ VSCAL(n), n=1,NV ] 
[ VMISS(n), n=1,NV ] 
[ VNAME(n) ] n=1,NV 
NAUXV 
[ ASCAL(a), a=1,NAUXV ] 
[ AMISS(a), a=1,NAUXV ] 
[ ANAME(a) ] a=1,NAUXV 
NSCOML 
[ SCOM(k) ] k=1,NSCOML 
NNCOML 
[ NCOM(k) ] k=1,NNCOML 
[ X(m,4) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,j,k,m,n), i=1,NX(1) ] j=1,NX(2) k=1,NX(3) n=1,NV

5.10  Summary of data record formats

FFI=1001:
[ X(m,1) ( V(m,n), n=1,NV ) ]
FFI=1010:
[ X(m,1) ( A(m,a), a=1,NAUXV ) ] 
[ V(m,n), n=1,NV ]
FFI=1020:
[ X(m,1) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,n), i=1+(m-1)*NVPM(1),m*NVPM(1) ] n=1,NV
FFI=2010:
[ X(m,2) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,m,n), i=1,NX(1) ] n=1,NV
FFI=2110:
[ X(m,2) NX(m,1) ( A(m,a), a=2,NAUXV ) ] 
[ X(i,m,1) ( V(i,m,n), n=1,NV ) ] i=1,NX(m,1)
FFI=2160:
X(m,2) ...................................... string 
[ NX(m,1) ( A(m,a), a=2,NAUXV-NAUXC ) ] 
[ A(m,a) ] a=NAUXV-NAUXC+1,NAUXV ............ strings 
[ X(i,m,1) ( V(i,m,n), n=1,NV ) ] i=1,NX(m,1)
FFI=2310:
[ X(m,2) NX(m,1) X(1,m,1) DX(m,1) (A(m,a),a=4,NAUXV) ] 
[ V(i,m,n), i=1,NX(m,1) ] n=1,NV
FFI=3010:
[ X(m,3) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,j,m,n), i=1,NX(1) ] j=1,NX(2) n=1,NV
FFI=4010:
[ X(m,4) ( A(m,a), a=1,NAUXV ) ] 
[ V(i,j,k,m,n), i=1,NX(1) ] j=1,NX(2) k=1,NX(3) n=1,NV

6   Version 2 Format Extensions

This Section describes some extensions to the original ASCII exchange file formats which were defined in the preceding Sections. These extensions do add a layer of complexity to exchange files, and to this document too, but those are balanced by the potential benefits:
  1. To make the definitions of the file header variables (ONAME, ORG, SNAME, MNAME, XNAME, ANAME and VNAME) more specific, and thus help reduce the problems of multiple definitions for the same parameter, and of automatically identifying geolocation, geophysical and special purpose parameters.
  2. To define conventions for using Normal Comment lines to specify values which were not included in the Version 1.x formats. This opens up the possibility of defining a variety of metadata in ways which both humans and computer programs can find and use those data.
The extensions patch some inadequacies of the original exchange file formats and provide additional information which can be used to facilitate automatic processing of data, including the translation to and from other archive formats without significant loss of information. The extensions are backward-compatible with the original formats, so computer programs designed to read the original formats can also read files which incorporate the extensions, even if they ignore the additional information provided by the extensions.
Instead of striving to define each archived parameter in all conceivable detail, the primary goal is to provide a relatively simple way to categorize each type of geolocation, geophysical and platform-specific parameter, by first uniquely identifying each of those parameters, and then linking them to the appropriate people, instrument/model, measurement platform and location. Those basic relationships can be used to build more detailed relationships, and to guide computer programs through preliminary analyses of those parameters.
The format extensions consist of redefining the way metadata are recorded in the character string variables in the file header. This is done by dividing the value of each variable into fields and using each field to store a particular bit of information. In many cases the allowable values of a field are selected from a predefined list of options maintained by the archivist.
Obviously, those lists must grow, so for this type of system to be useful the lists must be actively maintained. Therefore, archive users are encouraged to notify the archivist of any additions or corrections they think should be made to the lists.
The vertical bar character, |, is used as the field delimiter, and each field value can include leading and trailing blank spaces which are insignificant and can be removed without altering the field value. However, after removing any leading or trailing blanks, the remainder of any non-numeric field value is case-sensitive and space-sensitive. Some field values are optional and can be blank or null (e.g., ||). Values of character string variables in exchange files are confined to a single line, so to facilitate the documentation of the format extensions, the ampersand character, &, is used to indicate continued lines. This is only a figment of the documentation; ampersand characters have no special meaning in exchange files. Likewise, ellipsis, ..., are used in this document to indicate possibly omitted information.
The way to signal that an exchange file is using the Version 2 format extensions is to use the following two metadata declarations as the first two Normal Comment lines:
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 21601
The details of the metadata declarations are described in Section 6.6, but for now it is sufficient to know that the presence of those two lines implies that:
  1. the format extensions described in this Section apply;
  2. the value of NIVM (21601 in this example) is the dimension of the unbounded Independent Variable (for all formats except FFI=1020).
  3. additional metadata declarations may follow those two lines, and free-form comments may follow the last metadata declaration.
If the first two Normal Comment lines are not metadata declarations for format version and NIVM then the original Version 1.x format, without the extensions, is assumed. Since the file header can be read by computer programs which were designed to read the original formats, one method for correctly interpreting all exchange files is to first read the file header, and then check the first two Normal Comment lines for the required metadata declarations, and then based on that test decide how to interpret the file header and data records.

6.1   ONAME

ONAME provides the names of the Principal Investigators (PI) and/or the Data Originators (DO) associated with the dataset, and must include at least one complete name. The PI is the person who is officially responsible for producing the data within the file. If there is more than one PI (Co-PIs) then the names of all PIs should be included in ONAME. Some datasets may not have an associated PI, so in those cases use one or more DO names. If the desired list of names will not fit in the ONAME line then use the ONAME_add metadata declaration, Section 6.6.4, to record additional DO names.
A DO is a person involved in the data reduction and the generation of the exchange file. If the PI also performed those tasks then there is no need to include DO names.
Each name consists of two parts: the family name(s) and the given name(s). Record each name as you would want it to appear in a name database. The PI names are listed first, followed by the DO names.
ONAME always contains 2*(nPI+nDO)+2 fields, and has the form:
nPI | nDO | PIfname | PIgname | ... | DOfname | DOgname | ...
nPI
is an integer value, zero or greater, specifying the number of PI names (family/given name pairs) appearing in the ONAME line.
nDO
is an integer value, zero or greater, specifying the number of DO names (family/given name pairs) appearing in the ONAME line.
PIfname
is a PI's family name(s), sometimes called a last name.
PIgname
is a PI's given names, which include first name, middle names, or initials.
DOfname
is a DO's family name(s).
DOgname
is a DO's given names.
Example:
 0 | 1 | Gaines | Steven E.

6.2   ORG

ORG gives the contact information for the primary contact: the person to contact if someone has questions about the file. The ORG_add metadata declaration, Section 6.6.4, can be used to record additional contact information for other entries in the ONAME line. ORG always contains four fields; its format is:
NameNo | Affiliation | Email | (Extra)
NameNo
is the number of the name in ONAME to which ORG applies. For example, if ONAME contains two names and NameNo=2, then the information in ORG pertains to the second name in ONAME, which occupies the fifth and sixth fields in ONAME.
Affiliation
is the short name of the primary contact's affiliation, selected from org_tab, described below. The main purpose for including an affiliation is to help locate the person if their email address becomes obsolete, so the organization at which the contact works is often the appropriate choice for Affiliation, even if it is not the contact's employer.
Email
is the contact's email address.
Extra
is an optional character string (can be blank or null) which can be used to include telephone numbers, postal address and additional Email addresses.
Example:
 1 | NASA ARC | gaines@cloud1.arc.nasa.gov |Tel:1-650-604-4546

6.2.1   Organizations

The value for Affiliation in the ORG variable is selected from the first column of the org_tab table, which is maintained at http://espoarchive.nasa.gov/archive/docs/org_tab.html. An abridged version of org_tab is included here for illustration.
OrgOrganization Name
DLRDeutsches Zentrum fuer Luft- und Raumfahrt
DUUniversity of Denver
HUHarvard University
NASA ARCNASA Ames Research Center
NASA GSFCNASA Goddard Space Flight Center
NASA JPLNASA Jet Propulsion Laboratory
NASA LaRCNASA Langley Research Center
NCARNational Center for Atmospheric Research
NOAA ALNOAA Aeronomy Laboratory
NOAA CMDLNOAA Climate Monitoring and Diagnostics Laboratory

6.3   SNAME

SNAME specifies, by measurement platform and instrument, the sources of the data within the file. These specifications are referenced by the parameter descriptions, Section 6.5, to indicate both the source of the parameter and the location where the parameter applies, so every instrument/platform referenced by the parameter descriptions must be included in SNAME. Use the SNAME_add metadata declaration, Section 6.6.4, to specify data sources which will not fit in the SNAME line. SNAME always contains 2*nInst+2 fields, and has the form:
nInst | Plat | Inst | Plat | Inst | ... | (Extra)
nInst
is the number of Plat|Inst pairs contained in the SNAME line; must be greater than zero.
Plat
specifies the measurement platform from which data were obtained, selected from plat_tab, described below. If model results are being specified then use model as the value for Plat.
Inst
specifies the instrument, or model, used to gather or generate the data. Its value is selected from the first column of inst_tab, described below.
Extra
is an optional descriptor (can be blank or null).
Example:
3|WB-57 926|FCAS II|WB-57 926|N-MASS|WB-57 926|MMS|Combined aerosol data

6.3.1   Platforms

The value for Plat is selected from the first column of plat_tab, which is maintained at http://espoarchive.nasa.gov/archive/docs/plat_tab.html. An abridged version of plat_tab is included here for illustration.
PlatPlatform Description
AuraAura satellite
balloonGondola balloon
DC-8 717DC-8 aircraft, NASA ARC 717
DC-8 817DC-8 aircraft, NASA DFRC 817
ER-2 706ER-2 aircraft, NASA ARC 706
groundGround station, fixed location
modelMathematical model
sondeSmall balloon, expendable instrument package
WB-57 926WB-57 aircraft, NASA JSC 926

6.3.2   Instruments

The value for Inst is selected from the first column of inst_tab, which is maintained at http://espoarchive.nasa.gov/archive/docs/inst_tab.html. An abridged version of inst_tab is presented here.
InstInstrument Name
ALIASAircraft Laser Infrared Absorption Spectrometer
DADSData Acquisition and Display System
DIALDifferential Absorption Lidar
FCAS IIFocused Cavity Aerosol Spectrometer II
GSFCAMNASA GSFC Data Assimilation Model
GSFCTMNASA GSFC Trajectory Model
HUCO2HU High-Altitude Fast-Response CO2 Analyzer
HUTWHU Total Water Instrument
HUWVHU Water Vapor Instrument
ICATSInformation Collection and Transmission System
LAHLyman Alpha Hygrometers
MkIVMark IV Interferometer
MMSMeteorological Measurement System
MTPMicrowave Temperature Profiler
NavRecPlatform navigation recording system
N-MASSNucleation-Mode Aerosol Size Spectrometer
O3sondeOzonesonde instrument package
raobRadiosonde instrument package

6.4   MNAME

MNAME specifies the official short name for the mission which the data is supporting. It always includes two fields, and has the form:
Mshort | (Extra)
Mshort
is the official short name for the mission which the data is supporting. Its value will be decided upon and communicated to participants prior to the start of the mission.
Extra
is an optional descriptor (can be blank or null).
Example:
SOLVE II | flight over Greenland

6.5   XNAME(s), ANAME(a), VNAME(n)

This one gets a little complicated because it packs a lot of information into one line, and values for several of the fields are inter-dependent. However, following the documentation trail for each field should reveal how to construct these variable descriptions. If not then please ask the archivist.
XNAME(s), ANAME(a) and VNAME(n) each represent a line of text describing, respectively, a particular Independent, Auxiliary or Primary Variable. If longer descriptions for a particular parameter seem necessary then use the note_* metadata declarations in Sections 6.6 and 6.6.4 to provide more complete descriptions. All variable names/descriptions require eight fields, and have the form:
Subject| Qualifier| Units| (Extra)| Class| Type| Source| Where
Subject
specifies the general subject of the parameter. Its allowable values are determined by the value of Class.
Qualifier
further specifies a parameter by qualifying the value of Subject. Its allowable values are also determined by the value of Class.
Units
specifies the physical units of measure for the parameter being described. If the parameter is a numeric Dependent Variable (Auxiliary or Primary) then its recorded values are multiplied by the appropriate scale factor (ASCAL or VSCAL) to arrive at the specified units. The units for character string values are set to NULL.
  • Units = RecordedValue * SCAL
  • Investigators are free to use any units they think are appropriate, with the stipulation that the units of geolocation, geophysical and platform-specific parameters (Class is gloc*, gphy* or plat) must be convertible to Standard Units by the method described in Section 6.6.2. For those parameter classes, Subject and Qualifier are selected from the various tables which are introduced in this Section, and are associated with specific Standard Units. So if the value of Units is not Standard Units then a conversion to Standard Units must be provided in the Normal Comment metadata declarations, Section 6.6.2.
Extra
is an optional description which can be used to further specify the parameter. Its value can be blank or null.
Class
specifies the parameter class of each variable, and its value determines the allowable values for Subject and Qualifier. Class must have one of the following values (this list may grow):
gloc
indicates a geolocation parameter. The Subject and Qualifier values for the description of a geolocation parameter are selected from the allowable values in the gloc_subj_tab and gloc_qual_tab tables, described in Sections 6.5.1 and 6.5.2. There are basically four geolocation coordinates (altitude, latitude, longitude and time), with several methods for measuring each coordinate. The coordinate is selected from the Subject column of gloc_subj_tab and the measurement method is selected from gloc_qual_tab. Each exchange file must include at least one geolocation parameter (usually time) which, through reference to other measurements, can be related to the other coordinates (see the description of Where, below).
gloc_S_n
indicates that the parameter is a geolocation coordinate for the platform/instrument described by the n-th Plat|Inst entry in SNAME. For example, a value of gloc_S_1 indicates a geolocation coordinate for the first Plat|Inst entry in SNAME, which occupies the second and third fields in SNAME. This class is provided for those situations where it is useful to distinguish between the location of a measurement platform and the location of an observation. The Subject and Qualifier values are selected in the same way as with Class=gloc, although there is no requirement for exchange files to include these platform geolocation parameters.
gphy_air
indicates a measurement or simulation of some geophysical parameter in the atmosphere. The Subject and Qualifier values for the description of a geophysical parameter are selected from the allowable values in the gphy_subj_tab and gphy_qual_tab tables, described in Sections 6.5.3 and 6.5.4. The value of Subject specifies whether the parameter measures a bulk property or an ingredient of the atmosphere; Qualifier specifies the measurement.
gphy_sea
indicates a measurement or simulation of some geophysical parameter in the sea, and Subject and Qualifier for this class are defined in the same way as for the gphy_air class.
plat
indicates a platform-specific parameter, other than its geolocation. For this class the value for Subject is selected from the Plat column of plat_tab, Section 6.3.1, to indicate the measurement platform to which the parameter refers. The value for Qualifier is selected from the allowable values in plat_qual_tab table, described in Section 6.5.5.
anal
indicates an analysis-specific parameter. Investigators are free to choose values for Subject and Qualifier for their analysis-specific parameters, but they should use the predefined values from the various tables when feasible, or at least follow a similar parameter description scheme. Analysis-specific parameters include things like error estimates, special flag variables, sample averaging times and correction factors.
inst
indicates an instrument-specific parameter, other than its geolocation. For this class, the value for Subject is selected from the first column of inst_tab, Section 6.3.2, to indicate the instrument to which the parameter refers. Investigators are free to choose a value for Qualifier. Instrument-specific parameters include things like sample volume flow rate, laser pulse rate, instrument temperature, etc.
Type
specifies the type of parameter, with its value selected from the following list (which may grow):
insitu
indicates the parameter is an in situ sample or measurement, or derived from primarily in situ measurements.
remote
indicates the parameter is a remotely sensed quantity, or derived from primarily remotely sensed quantities.
model
indicates a modeled parameter, which includes climatological statistics and UTC.
user
is a catch-all option to indicate a user-defined parameter which is not described by any of the other options. This type includes things like index counters and other analysis- and instrument-specific parameters. Obviously, this is not an option for geolocation, geophysical and platform-specific parameters because Subject and Qualifier for those classes of parameters are selected from predefined lists.
DLf_V_n
indicates the parameter is a measurement detection limit flag variable for the n-th Primary Variable, V(X,n), with n having a value in the range n=1,NV. This special type of parameter is used to indicate which values of V(X,n) have been set to missing values because they were below or above detection limits. A missing value indicates missing or erroneous data, and the following reserved values flag the indicated events:

0 = a valid value;
1 = value is below detection limit;
2 = value is above detection limit.

  • Users can define additional flag values between 2 and the missing value to indicate other events which cause missing data, like a calibration period, large aircraft roll angle, etc. Additional flag values should be defined in a note_V_n metadata declaration (Section 6.6.4).
  • If the detection limits for V(X,n) are variable then an additional Primary Variable with Type=DLv_V_n will be included to specify the detection limits.
  • If the detection limits for V(X,n) are constant then a Normal Comment metadata declaration for LUDL_V_n is used to specify the constant values for the lower and upper detection limits (see Section 6.6.3).
DLv_V_n
indicates the parameter specifies the detection limit values for the n-th Primary Variable, V(X,n). A parameter of this type is always associated with a corresponding flag parameter of Type=DLf_V_n, such that when the flag parameter has a value of 1 then the value of this parameter specifies the lower detection limit of V(X,n); and when the flag parameter has a value of 2 then the value of this parameter specifies the upper detection limit for V(X,n). Otherwise, the value of this parameter is its missing value.
  • The value of Units for this parameter must be the same as the units of V(X,n), specified in VNAME(n).
e_X_s
indicates the parameter is an error estimate for the s-th Independent Variable. The range of values for s is s=1,NIV.
e_A_a
indicates the parameter is an error estimate for the a-th Auxiliary Variable, where a can have a value in the range a=1,NAUXV.
e_V_n
indicates the parameter is an error estimate for the n-th Primary Variable, with n having a value in the range n=1,NV.
f_X_s
indicates the parameter is a user-defined flag variable pertaining to the s-th Independent Variable, with the value of s in the range s=1,NIV.
f_A_a
indicates the parameter is a user-defined flag variable pertaining to the a-th Auxiliary Variable, with the value of a in the range a=1,NAUXV.
f_V_n
indicates the parameter is a user-defined flag variable pertaining to the n-th Primary Variable, with the value of n in the range n=1,NV.
Source
specifies the source(s) of the parameter by a list of one or more space-separated options of the form S_n, indicating the n-th Plat|Inst entry in SNAME (see Section 6.3). For example, if the value of Source is S_2 then the source is the second Plat|Inst entry in SNAME, which occupies the fourth and fifth fields in SNAME.
Where
specifies where, in time/space, this parameter applies. A list of one to four space-separated options is used to designate the data variables or data sources which provide geolocation coordinates for this parameter. If this parameter is a geolocation coordinate then use the list to indicate the remaining coordinates or sources for those coordinates. If, instead of altitude, your analysis uses pressure or potential temperature as a vertical coordinate then include that in the list. Options are:
A_n
indicates the n-th Auxiliary Variable.
V_n
indicates the n-th Primary Variable.
X_n
indicates the n-th Independent Variable.
S_n
indicates the n-th Plat|Inst entry in SNAME (as with Source). If some geolocation coordinates for this parameter are not specified in the exchange file then use this option to point to an instrument which provides the unspecified coordinates (directly related, of course, to a coordinate which is specified).
Example1:
altitude | geometric | m | GPS altitude of aircraft plus & 
altitude from laser | gloc | remote | S_1 S_2 | X_2 A_8 A_9
Example2:
air | parcel number | 1 || anal | user | S_1 | X_2 V_1 V_2 V_3
Example3:
air | temperature | K || gphy_air | insitu | S_1 | X_1 S_1
Example4:
air | temperature error | K | 1-sigma uncertainty | & 
anal | e_V_2 | S_1 | X_1 S_1
In the above examples, Example4 describes a parameter which gives error estimates for the second Primary Variable, indicated by the e_V_2 value for Type.

6.5.1   Geolocation Subjects

For a geolocation parameter, i.e., Class=gloc or Class=gloc_S_n, the value of Subject is selected from the gloc_subj_tab table and an appropriate Qualifier is selected from the gloc_qual_tab table. Although atmospheric pressure and potential temperature are often used as vertical coordinates, they are not classified as geolocation parameters; they are instead classified as bulk properties of the atmosphere. Barometric and geopotential altitudes are related to pressure, and they are grouped as geolocation parameters. This classification scheme was adopted mainly as a convenience.
The complete and current version of gloc_subj_tab is maintained at http://espoarchive.nasa.gov/archive/docs/gloc_subj_tab.html.
ClassSubjectNotes
glocaltitudeAltitude is measured as height above mean sea level (MSL), although there are various models for both MSL and the height above MSL. Negative if below MSL.
gloclatitudeLatitude is measured as positive north of the Equator, negative south of the Equator. Range: -90 to +90.
gloclongitudeLongitude is measured as east longitude; west longitude can be expressed as negative numbers. Range is either 0 to 360, or -180 to +180.
gloctimeTime of an observation, or applicable time of an integrated measurement or grab sample.
gloclaunch timeLaunch time of an aircraft or sounding platform (balloon, rocket, dropsonde, etc.).
glocsample start timeStart time of a grab sample or integrated measurement. Requires an associated stop time.
glocsample stop timeStop time of a grab sample or integrated measurement. Requires an associated start time.

6.5.2   Geolocation Qualifiers

For a geolocation parameter, the value of Qualifier is selected from the gloc_qual_tab table so that it will appropriately qualify the value of Subject selected from gloc_subj_tab. Examining both the Qualifier and Standard Units columns in gloc_qual_tab should make the appropriate selection unambiguous.
If the value of Units used in the parameter description do not match the Standard Units given in gloc_qual_tab then it is required to include the appropriate Normal Comment metadata declarations to define the conversion from Units to Standard Units, as described in Section 6.6.2.
The complete and current version of gloc_qual_tab is maintained at http://espoarchive.nasa.gov/archive/docs/gloc_qual_tab.html.
ClassQualifierStandard UnitsNotes
glocbarometricmA synonym for pressure altitude. Which Standard Atmosphere?
glocgeodeticmSurveyed or modeled using a geodetic Earth model (non-GPS). Which model?
glocgeometricmGeometrically measured height above MSL (lidar, radar, yardstick, ...).
glocgeopotentialmGeopotential meters, from hydrostatic integration.
glocGPSmGlobal Positioning System (GPS) uses the WGS-84 Earth model.
glocgeodeticdegSurveyed or modeled using a (non-GPS) geodetic Earth model. Which model?
glocGPSdegGlobal Positioning System uses the WGS-84 Earth model.
glocINSdegInertial Navigation System (INS).
glocsphericaldegSpherical Earth model. Radius?
glocsecondssSeconds since 00:00 UTC on day given by DATE (line 7).
glochourshHours since 00:00 UTC on day given by DATE (line 7).
glocdaysdDays since 00:00 UTC on day given by DATE (line 7).
glocdays since year0dDays since 00:00 UTC on January 1 of year given in DATE (line 7).

6.5.3   Geophysical Subjects

For a geophysical parameter, i.e., in the gphy_air or gphy_sea classes, the value of Subject is selected from the gphy_subj_tab table and an appropriate Qualifier is selected from the gphy_qual_tab table. Geophysical parameters are basically divided into measures of the bulk properties of the medium and measures of the ingredients of the medium.
The complete and current version of gphy_subj_tab is maintained at http://espoarchive.nasa.gov/archive/docs/gphy_subj_tab.html; an abridged version of that table is presented here for illustration.
ClassSubjectNotes
gphyairBulk property of the atmosphere
gphyseaBulk property of the sea/ocean
gphycloudAtmospheric cloud property
gphyaerosolSolid or liquid particles suspended in the atmosphere
gphysulfate aerosol 
gphysoot 
gphyCH4Methane molecules
gphyClOChlorine monoxide molecules
gphyClNO3Chlorine nitrate molecules
gphyCOCarbon monoxide molecules
gphyCO2Carbon dioxide molecules
gphyH2OWater molecules
gphyH2O iceWater, solid phase
gphyH2O liquidWater, liquid phase
gphyH2O vaporWater, vapor phase
gphyH2SO4Sulfuric acid
gphyHClHydrogen chloride molecules
gphyHFHydrogen fluoride molecules
gphyHNO3Nitric acid
gphyN2ONitrous oxide molecules
gphyNONitric oxide molecules
gphyNO2Nitrogen dioxide molecules
gphyO3Ozone molecules.
gphySO2Sulfur dioxide molecules

6.5.4   Geophysical Qualifiers

For a geophysical parameter, the value of Qualifier is selected from the gphy_qual_tab table so that it will appropriately qualify the value of Subject selected from gphy_subj_tab. Examining both the Qualifier and Standard Units columns in gphy_qual_tab should make the appropriate selection unambiguous.
The Notes column in gphy_qual_tab sometimes uses the terms substance and mixture to help clarify the parameter descriptions. The term mixture refers to the medium in which the parameter applies (air or sea, obtained from the value of Class). The term substance refers to the thing defined by the value of Subject, which can be either the mixture itself or an ingredient of the mixture.
If the value of Units used in the parameter description do not match the Standard Units given in gphy_qual_tab then it is required to include the appropriate Normal Comment metadata declarations to define the conversion from Units to Standard Units, as described in Section 6.6.2.
The complete and current version of gphy_qual_tab is maintained at http://espoarchive.nasa.gov/archive/docs/gphy_qual_tab.html.
ClassQualifierStandard UnitsNotes
gphypressurePa 
gphypartial pressurePaPartial pressure of a gaseous ingredient.
gphysaturation vapor pressurePaOver water? Over ice?
gphyrelative humidity1Ratio of the actual water vapor pressure to the saturation vapor pressure (Pa Pa-1).
gphytemperatureK 
gphydew-point temperatureK 
gphydew-point depressionKDifference between temperature and dew-point temperature.
gphyfrost-point temperatureK 
gphyvirtual temperatureK 
gphypotential temperatureK 
gphybrightness temperatureKRadiant energy intensity of a particular wave band, expressed as temperature.
gphywind directiondegDirection from which the horizontal wind blows, reckoned clockwise from true north.
gphywind speedm s-1Magnitude of horizontal wind component.
gphyeastward windm s-1Magnitude of east-west wind component; positive toward east.
gphynorthward windm s-1Magnitude of north-south wind component; positive toward north.
gphyvertical windm s-1Magnitude of vertical wind component; positive upward.
gphypotential vorticityK m2 kg-1 s-1 
gphymass densitykg m-3Mass of an ingredient per unit volume of that ingredient.
gphymass concentrationkg m-3Mass of a substance per unit volume of the mixture.
gphynumber concentrationm-3The number of particles or molecules of a substance per unit volume of the mixture.
gphycolumn numberm-2Number concentration integrated over a line-of-sight. Zenith? Nadir? Slant?
gphysurface area concentrationm-1Total particle surface area of a substance per unit volume of the mixture (m2 m-3).
gphyvolume concentration1Total particle volume of a substance per unit volume of the mixture (m3 m-3).
gphymass mixing ratio1Ratio of the mass concentration of an ingredient to the mass concentration of all other ingredients of the mixture.
gphymass fraction1Ratio of the mass concentration of a substance to the mass concentration of the mixture. Synonym for specific humidity if the ingredient is water vapor and the mixture is air.
gphyaerosol mass fraction1Ratio of the mass concentration of a substance to the mass concentration of all aerosols.
gphyvolume mixing ratio1Ratio of the number of moles of an ingredient to the total number of moles of all other ingredients of the mixture (mol mol-1).
gphymole fraction1Ratio of the number of moles of a substance to the total number of moles in the mixture (mol mol-1).
gphyspecific numberkg-1The number of particles or molecules of a substance per unit mass of the mixture.
gphydiameterm 

6.5.5   Platform Qualifiers

For a platform-specific parameter, Class=plat, the value of Qualifier is selected from the plat_qual_tab table; the value of Subject is selected from the Plat column of the plat_tab table, to indicate the measurement platform to which the parameter refers. Examining both the Qualifier and Standard Units columns in plat_qual_tab should make the appropriate selection unambiguous.
If the value of Units used in the parameter description do not match the Standard Units given in plat_qual_tab then it is required to include the appropriate Normal Comment metadata declarations to define the conversion from Units to Standard Units, as described in Section 6.6.2.
The complete and current version of plat_qual_tab is maintained at http://espoarchive.nasa.gov/archive/docs/plat_qual_tab.html.
ClassQualifierStandard UnitsNotes
platground speedm s-1Speed relative to the ground.
plateastward speedm s-1Magnitude of east-west ground speed component; positive toward east.
platnorthward speedm s-1Magnitude of north-south ground speed component; positive toward north.
platvertical speedm s-1Positive upward, negative downward.
plattrue air speedm s-1Speed relative to the air.
platMach number1Ratio of the true air speed to the speed of sound.
platheight above EarthmFrom radar or lidar height (geometric).
platground track angledegReckoned clockwise from true north.
platpitch angledegNose up is positive.
platroll angledegRight wing down is positive.
plattrue headingdegReckoned clockwise from true north.

6.6   Normal Comment Lines

Any information which can be expressed with printable ASCII characters can be included in the Normal Comment lines. It is, however, often useful to have some of that information recorded in ways which both humans and computer programs can readily extract it. To help with that task, the format extensions include conventions for recording arbitrary numeric arrays and string arrays in the Normal Comment lines. Specially named numeric arrays are used to signal that the file employs the extended format. In this subsection we describe those conventions, and also offer a method for standardizing the way certain parameters are recorded in the Normal Comment lines.
There are two types of Normal Comment metadata declarations, and each can span more than one line. In general, fields in these declarations are delimited by the field delimiter, |, although the beginning and end of a line can also delimit the beginning or end of most fields; the exception being the field containing numeric array elements.
#MD | NA | Name | N_elements | val1 val2 val3 ... valN 
#MD | SA | Name | N_elements | string1 | string2 | ... | stringN
#MD
indicates the start of a metadata declaration, and must be the first non-blank characters on a line.
NA
indicates the declaration is for a numeric array. The last field in this type of declaration contains N_elements space-separated numeric values (real numbers), which can span multiple lines, and as such is treated as a special type of field. The idea is to read as many lines as necessary to gather the indicated number of values.
SA
indicates the declaration is for an array of character string values. There is a separate field for each array element (character string), and there can be several elements on the same line or one element on a line, but no element can span more than one line. Each element is terminated by either a field delimiter, |, or the end of a line, and starts after either a preceding field delimiter or the beginning of a line.
Name
specifies the name of the parameter being defined in the metadata declaration. The required metadata, and commonly used metadata, are given specific names and listed in NA_tab and SA_tab, below, to help standardize their usage. Customized values for Name are also allowed, but investigators are encouraged to use the names in those tables when applicable.
N_elements
is an integer value which specifies the number of array elements in the declaration. Its value must be greater than zero.
Example1:
#MD | NA | SUscale_V | 8 | 0.3048 1 0.5144 0.5144 
1 1 1000 0.01
Example2:
#MD | NA | LUDL_V_3 | 2 | -500 500
Example3:
#MD | SA | station name | 1 | Fairbanks, Alaska
Example4:
#MD | SA | note_X_1 | 3 
The altitude of an observation, reckoned by adding the 
GPS altitude of the instrument and the laser height of the 
observation above the instrument
Example5:
#MD | SA | SU_V | 4 | m | K | m s-1 | m s-1

6.6.1  Signal Version 2 extensions

When a file employs the format extensions, at least two metadata declarations are required to specify format version and NIVM. Those two declarations must occupy the first two Normal Comment lines, and look like:
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 170
The first of those declarations specifies that Version 2 format extensions are employed in the file, and the second specifies that there are 170 (for example) Independent Variable Marks recorded in the file. For all formats except FFI=1020, the value of NIVM is also the dimension of the unbounded Independent Variable. Other metadata declarations can follow those first two, and free-form comments can follow the last metadata declaration. Without those first two declarations the file is assumed to be written in the Version 1.x formats, without the extensions.

6.6.2   Conversion to Standard Units

There are several other metadata declarations which may be required. As explained in Section 6.5, if a parameter described in XNAME, ANAME or VNAME is in the gloc*, gphy* or plat class (i.e., a geolocation, geophysical or platform-specific parameter) and its specified units are not Standard Units from the appropriate Qualifier table, then three additional declarations are required to specify its conversion to Standard Units. To illustrate, suppose there are three Primary Variables (NV=3) with the following VNAME descriptions:
altitude | barometric | feet || gloc | insitu | S_2 | X_1 S_2 
air | temperature | K || gphy_air | insitu | S_1 | X_1 V_1 S_2 
air | temperature error | K || anal | e_V_2 | S_1 | X_1 V_1 S_2
Since altitude is a geolocation parameter and feet are not Standard Units, three additional metadata declarations are required to convert all of the Primary Variable units to Standard Units:
#MD | NA | SUoffset_V | 3 | 0       0   0 
#MD | NA | SUscale_V  | 3 | 0.3048  1   1 
#MD | SA | SU_V       | 3 | m     | K | NULL
The third Primary Variable (temperature error) is an analysis-specific parameter and, as such, does not require a valid conversion to Standard Units. The same would be true if it were an instrument-specific parameter; in both cases a valid conversion to Standard Units is not required. However, since the metadata declarations require entries for all Primary Variables, there must at least be place-holders in the declarations for parameters which need not, and maybe cannot, be converted to Standard Units. The above example illustrates the convention for handling such cases, which is an offset of 0, a scale factor of 1 and NULL as the Standard Units.
The conversion from the units specified in the variable description to Standard Units is:
SU = (Units * SUscale) + SUoffset
That conversion is for both Independent and Dependent Variables. However, recall that there is also a scale factor (ASCAL or VSCAL) associated with each numeric Dependent Variable which multiplies the values recorded in the data records to yield the specified Units. That additional conversion for Dependent Variables is symbolically represented as:
Units = RecordedValue * SCAL
where RecordedValue is a value recorded in the data records and SCAL is the appropriate scale factor obtained from the file header (ASCAL or VSCAL).
The aforementioned example indicates the Standard Units conversion parameters for Primary Variables; similar parameters for Independent and Auxiliary Variables are listed in NA_tab and SA_tab.

6.6.3   Normal Comment Numeric Data

This table lists several standardized names to use in numeric array metadata declarations. The complete and current version of NA_tab is maintained at http://espoarchive.nasa.gov/archive/docs/NA_tab.html.
NA NameDescription
format versionOne element specifying the format version. A value of 2 indicates Version 2 format extensions. Must be the first metadata declaration
LUDL_V_nTwo elements which specify the constant lower and upper detection limits for the n-th Primary Variable, V(X,n), where n can assume a value in the range n=1,NV. Same units as V(X,n).
NIVMOne element specifying the number of Independent Variable Marks, which is also the dimension of the unbounded Independent Variable (for all formats except FFI=1020). Must be the second metadata declaration.
SUoffset_ANAUXV-NAUXC elements specifying the offsets to convert units of all numeric Auxiliary Variables to Standard Units.
SUoffset_VNV elements specifying the offsets to convert units of all Primary Variables to Standard Units.
SUoffset_XNIV elements specifying the offset to convert units of all Independent Variables to Standard Units.
SUscale_ANAUXV-NAUXC elements specifying the scale factors to convert units of all numeric Auxiliary Variables to Standard Units.
SUscale_VNV elements specifying the scale factors to convert units of all Primary Variables to Standard Units.
SUscale_XNIV elements specifying the scale factors to convert units of all Independent Variables to Standard Units.

6.6.4   Normal Comment String Data

This table lists several standardized names to use in string array metadata declarations. The complete and current version of SA_tab is maintained at http://espoarchive.nasa.gov/archive/docs/SA_tab.html.
SA NameDescription
note_A_aNote pertaining to a-th Auxiliary Variable; a=1,NAUXV. For more complete descriptions of a parameter and of its measurement and error characteristics.
note_V_nNote pertaining to n-th Primary Variable; n=1,NV. For more complete descriptions of a parameter and of its measurement and error characteristics.
note_X_sNote pertaining to s-th Independent Variable; s=1,NIV. For more complete descriptions of a parameter and of its measurement and error characteristics.
ONAME_addAn even-element array specifying family and given names of additional contributors (DOs) to the exchange file, which will not fit in the ONAME line.
ORG_addAn array specifying additional contact information. There are 4 elements for each additional person, which correspond to the 4 fields in the ORG line.
SNAME_addAn even-element array specifying additional Platform/Instrument data sources, which will not fit in the SNAME line. These additional sources are a continuation of those listed in SNAME and can also be referenced from parameter descriptions.
station nameOne element specifying the name of a fixed station.
SU_ANAUXV-NAUXC elements specifying the Standard Units for all numeric Auxiliary Variables.
SU_VNV elements specifying the Standard Units for all Primary Variables.
SU_XNIV elements specifying the Standard Units for all Independent Variables.

6.7   Standard Units

The concept of Standard Units is used to facilitate automated calculations involving geolocation, geophysical and platform-specific parameters. The standardized names and units for those parameters are listed in the various tables in Section 6.5. Investigators are free to express those parameters in whichever units they prefer, but if their choice of units is not Standard Units then they must also provide the conversion from their units to Standard Units, as in Section 6.6.2. Thus, investigators can use their preferred units, and those users who are so inclined can automate calculations with the Standard Units or conversions of the Standard Units to some other units. The alternative to such a scheme would be to list all common choices for units in the tables, which would result in much longer tables and require more decision-making to be built into computer programs. The drawback of the Standard Units scheme is that most exchange files will have to include metadata declarations to convert their units to Standard Units because commonly used units like mb, hPa and ppbv are not Standard Units.
Standard Units are SI units with one exception and several additions. The exception is that Standard Units measure plane angles in degrees (deg) instead of radians. For reference, the following table lists the elemental Standard Units, with the understanding that they can be appropriately combined to yield the Standard Units listed as options in the Qualifier tables in Section 6.5.
QuantityNameIn Base UnitsStandard Units
Standard Units not required  NULL
pure number, unitless  1
lengthmetermm
masskilogramkgkg
timesecondss
thermodynamic temperaturekelvinKK
amount of substancemolemolmol
electric currentampereAA
luminous intensitycandelacdcd
pressurepascalm-1 kg s-2Pa
energyjoulem2 kg s-2J
powerwattm2 kg s-3W
solid anglesteradianm2 m-2sr
plane angledegree deg
hourhourhh
daydaydd

7   Format Examples

This Section provides two fictitious examples for each file format, one without and one with the format extensions, ordered by increasing file format index (FFI). For each example is a file header followed by a sample of the data records. Numeric constants in the file headers have been annotated with comments enclosed by curly braces, { }, which usually indicate the name of the variable used in the format recipes in Section 5, and defined in Section 4. The annotations are included here as references and need not appear in exchange files. The data records in some of the examples have also been annotated, but those are solely for illustration since annotations should not appear in the data records of exchange files. Aside from the annotations, each example tries to mimic what you would see if you viewed the sample exchange file with a text editor.
Again, as in Section 6, the ampersand character, &, is used to indicate continued lines, and ellipsis, ..., are used to indicate possibly omitted information. This is just to facilitate documenting the formats; those characters have no special meaning in exchange files.

7.1  FFI=1001

22 1001                                    {NLHEAD FFI} 
Mertz, Fred U. 
NASA ARC (fum@nasa.gov) 
Wind data from NASA ER-2 Meteorological Measurement System (MMS) 
TOP /ferry flight to Tahiti 
1 1                                        {IVOL NVOL} 
1991  1 16   1991  1 16                    {DATE RDATE} 
0                                          {DX(1)} 
Seconds since 00Z (s) 
3                                          {NV} 
0.1 0.1 0.1                                {VSCAL} 
9999 9999 9999                             {VMISS} 
horizontal wind speed (m s-1) 
horizontal wind direction (deg); true direction from which it blows. 
vertical wind (m s-1) + up 
1                                          {NSCOML} 
Pilot reported CAT between the times 50300-50400. 
4                                          {NNCOML} 
Preliminary wind data 
1Hz desampled from 5Hz 
OMEGA used for calc = 0.06280 RAD/SEC 
UTs      Spd  Dir   w 
30446.9  305  2592  22 
30447.9  304  2596  22 
30448.9  305  2601  9999 
30449.9  306  2603  9999 
30450.9  307  2606  25 
30451.8  307  2607  27 
30452.8  309  2610  29 
30453.8  310  2610  29 
30454.8  312  2621  32 
...

24 1001                                    {NLHEAD FFI} 
1 | 0 | Mertz | Fred U. 
1 | NASA ARC | fum@nasa.gov | 
1 | ER-2 706 | MMS | Wind data 
TOP | Tahiti Ozone Project, ferry flight to Tahiti 
1 1                                        {IVOL NVOL} 
1991  1 16    1991  1 16                   {DATE RDATE} 
0                                          {DX(1)} 
time | seconds | s || gloc | model | S_1 | S_1 
3                                          {NV} 
0.1 0.1 0.1                                {VSCAL(n)} 
9999 9999 9999                             {VMISS(n)} 
air | wind speed | m s-1 || gphy_air | insitu | S_1 | X_1 S_1 
air | wind direction | deg || gphy_air | insitu | S_1 | X_1 S_1 
air | vertical wind | m s-1 || gphy_air | insitu | S_1 | X_1 S_1 
1                                          {NSCOML} 
Pilot reported CAT between the times 50300-50400. 
6                                          {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM           | 1 | 21609 
Preliminary wind data 
1Hz desampled from 5Hz 
OMEGA used for calc = 0.06280 RAD/SEC 
UTs      Spd  Dir   w 
30446.9  305  2592  22 
30447.9  304  2596  22 
30448.9  305  2601  9999 
30449.9  306  2603  9999 
30450.9  307  2606  25 
30451.8  307  2607  27 
30452.8  309  2610  29 
30453.8  310  2610  29 
30454.8  312  2621  32 
...

7.2  FFI=1010

38 1010                                      {NLHEAD FFI} 
Mertz, Fred; Mertz, Ethel; Ricardo, Lucy B. 
NASA JPL; E.Mertz: elm@nasa.gov 
DC-8 Mark IV Interferometer 
TOP 
1 1                                          {IVOL NVOL} 
1991 1 16 1991 2 15                          {DATE RDATE} 
0                                            {DX(1)} 
UTC fractional day number of year given in DATE (d) 
8                                            {NV} 
1.0E+17 1.0E+14 1.0E+13 1.0E+14 1.0E+14 1.0E+13 1.0E+13 1.0E+18 
9999 9999 9999 9999 9999 9999 9999 9999      {VMISS} 
O3 column density (molecules cm-2) 
NO column density (molecules cm-2) 
NO2 column density (molecules cm-2) 
HNO3 column density (molecules cm-2) 
ClNO3 column density (molecules cm-2) 
HCl column density (molecules cm-2) 
HF column density (molecules cm2) 
H2O column density (molecules cm-2) 
10                                           {NAUXV} 
1 1 1 1 1 1 1 1 1 1                          {ASCAL} 
99 99 99 99 99.9 999.9 999.9 999 9999 999    {AMISS} 
UTC Month (mon) 
UTC Day (d) 
UTC Hour (h) 
UTC Minute (min) 
Latitude (degrees) 
Longitude (degrees) 
Solar zenith angle (degrees) reckoned from DC-8 
Air temperature (Celsius) 
Static pressure (millibars) 
Potential temperature (Kelvin) 
0                                            {NSCOML} 
3                                            {NNCOML} 
NOTE 1: Geolocation data taken from DADS and appropriately averaged. 
NOTE 2: All these column values will change when analyses are 
repeated. 
16.021 1 16 0 30 -5.9 -125.0 88.4 -56 237 328 
80 24 75 142 12 240 72 47 
16.038 1 16 0 55 -6.0 -127.1 88.5 -57 237 328 
70 19 82 121 12 243 72 56 
16.158 1 16 3 48 -6.4 -137.7 88.9 -57 237 327 
71 16 78 118 10 237 56 49 
...

50 1010                                      {NLHEAD FFI} 
2 | 1 | Mertz | Fred | Mertz | Ethel | Ricardo | Lucy B. 
2 | NASA JPL | elm@nasa.gov | 
2 | DC-8 717 | MkIV | DC-8 717 | DADS | DC-8 Mark IV Interferometer 
TOP | 
1 1                                          {IVOL NVOL} 
1991 1 16 1991 2 15                          {DATE RDATE} 
0                                            {DX(1)} 
time|days since year0|DayOfYear|=1 at 1 Jan 00Z|gloc|model|S_1|A_5 A_6 A_9 
8                                            {NV} 
1.0E+17 1.0E+14 1.0E+13 1.0E+14 1.0E+14 1.0E+13 1.0E+13 1.0E+18 
9999 9999 9999 9999 9999 9999 9999 9999      {VMISS} 
O3|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
NO|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
NO2|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
HNO3|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
ClNO3|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
HCl|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
HF|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
H2O|column number|molecules cm-2|zenith|gphy_air|remote|S_1 S_2|X_1 A_5 A_6 A_9 
10                                           {NAUXV} 
1 1 1 1 1 1 1 1 1 1                          {ASCAL} 
99 99 99 99 99.9 999.9 999.9 999 9999 999    {AMISS} 
time | UTC_month | mon || anal | model |S_1|X_1 A_5 A_6 A_9 
time | UTC day | d || anal | model |S_1|X_1 A_5 A_6 A_9 
time | UTC hour | h || anal | model |S_1|X_1 A_5 A_6 A_9 
time | UTC minute | min || anal | model |S_1|X_1 A_5 A_6 A_9 
latitude | INS | deg || gloc_S_1 | insitu |S_2|X_1 A_6 A_9 
longitude | INS | deg || gloc_S_1 | insitu |S_2|X_1 A_5 A_9 
air | solar zenith angle | deg || gphy_air | model |S_2|X_1 A_5 A_6 A_9 
air | temperature | Celsius || gphy_air | insitu |S_2|X_1 A_5 A_6 A_9 
air | pressure | mb || gphy_air | insitu |S_2|X_1 A_5 A_6 
air | potential temperature | K || gphy_air | insitu |S_2|X_1 A_5 A_6 A_9 
0                                            {NSCOML} 
15                                           {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 320 
#MD | NA | SUoffset_X | 1 | -1 
#MD | NA | SUscale_X  | 1 | 1 
#MD | SA | SU_X       | 1 | d 
#MD | NA | SUoffset_V | 8 | 0 0 0 0 0 0 0 0 
#MD | NA | SUscale_V | 8 | 1e+4 1e+4 1e+4 1e+4 1e+4 1e+4 1e+4 1e+4 
#MD | SA | SU_V | 8 | m-2|m-2|m-2|m-2|m-2|m-2|m-2|m-2 
#MD | NA | SUoffset_A | 10 | 0 0 0 0 0 0 0 273.15 0 0 
#MD | NA | SUscale_A | 10 | 1 1 1 1 1 1 1 1 100 1 
#MD | SA | SU_A | 10 |NULL|NULL|NULL|NULL|deg|deg|deg|K|Pa|K 
#MD | SA | note_X_1 | 2 
DayOfYear=1 at 1 January 00:00 UTC.  The Standard Units conversion 
subtracts one day to convert to the standard "days since year0". 
NOTE: All these column values will change when analyses are repeated. 
16.021 1 16 0 30 -5.9 -125.0 88.4 -56 237 328 
80 24 75 142 12 240 72 47 
16.038 1 16 0 55 -6.0 -127.1 88.5 -57 237 328 
70 19 82 121 12 243 72 56 
16.158 1 16 3 48 -6.4 -137.7 88.9 -57 237 327 
71 16 78 118 10 237 56 49 
...

7.3  FFI=1020

29 1020                                      {NLHEAD FFI} 
MERTZ, FRED 
NOAA Aeronomy Laboratory 
ER-2 LYMAN-ALPHA HYGROMETER 
TOP 
1 1                                          {IVOL NVOL} 
1991 01 16 1991 01 16                        {DATE RDATE} 
1.0                                          {DX(1)} 
30                                           {NVPM(1)} 
Seconds since 00Z (s) 
1                                            {NV} 
0.01                                         {VSCAL(1)} 
999999                                       {VMISS(1)} 
Water vapor volume mixing ratio (ppmv) 
4                                            {NAUXV} 
1.0 1.0 1.0 1.0                              {ASCAL} 
99 99 99 99999                               {AMISS} 
UTC HOUR (h) 
UTC MINUTE (min) 
UTC SECOND (s) 
OBSERVATION COUNT STARTING FROM TIME COMPUTER IS TURNED ON (NULL) 
0                                            {NSCOML} 
6                                            {NNCOML} 
This is PRELIMINARY data 
08:05:01 COMPUTER ON 
CALB 8.525E+13 4.829E+7 T = 3.000E+2 DltP = 0.000E+0 
NOB 2.799E+2 -1.471E-3 -7.641E+22 
OHB 1.279E+2 5.113E-4 -7.641E+22 
 
29301.0 08 08 21 200 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 87166 84175 76721 80130 81401 79359 
79887 84339 89955 97811 95614 91508 
29331.0 08 08 51 230 
88126 86236 79440 81826 82911 90481 92042 91391 
94605 93040 87099 85103 87131 87423 82418 75260 
64485 59903 63633 68262 72430 75216 78814 77879 
72445 69610 66126 60302 55169 48993 
29361.0 08 09 21 260 
39742 39137 38357 38002 36171 35267 36094 38442 
40786 41725 42796 43492 44009 43589 42926 43308 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 999999 999999 999999 999999 
...

34 1020                                      {NLHEAD FFI} 
1 | 0 | MERTZ | FRED 
1 | NOAA AL | fum@noaa.gov | 
2 | ER-2 706 | LAH | ER-2 706 | MMS | ER-2 Lyman-Alpha Hygrometers 
TOP | 
1 1                                          {IVOL NVOL} 
1991 01 16 1991 01 16                        {DATE RDATE} 
1.0                                          {DX(1)} 
30                                           {NVPM(1)} 
time | seconds | s || gloc | model |S_1|S_2 
1                                            {NV} 
0.01                                         {VSCAL(1)} 
999999                                       {VMISS(1)} 
H2O vapor|volume mixing ratio|ppmv||gphy_air|insitu|S_1|X_1 S_2 
4                                            {NAUXV} 
1.0 1.0 1.0 1.0                              {ASCAL} 
99 99 99 99999                               {AMISS} 
time | UTC hour | h || anal | model |S_1|X_1 S_2 
time | UTC minute | min || anal | model |S_1|X_1 S_2 
time | UTC second | s || anal | model |S_1|X_1 S_2 
observation number|count|NULL|from computer startup|anal|user|S_1|X_1 S_2 
0                                            {NSCOML} 
11                                           {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 704 
#MD | NA | SUoffset_V | 1 | 0 
#MD | NA | SUscale_V  | 1 | 1.0E-6 
#MD | SA | SU_V       | 1 | 1 
This is PRELIMINARY data 
08:05:01 COMPUTER ON 
CALB 8.525E+13 4.829E+7 T = 3.000E+2 DltP = 0.000E+0 
NOB 2.799E+2 -1.471E-3 -7.641E+22 
OHB 1.279E+2 5.113E-4 -7.641E+22 
 
29301.0 08 08 21 200 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 87166 84175 76721 80130 81401 79359 
79887 84339 89955 97811 95614 91508 
29331.0 08 08 51 230 
88126 86236 79440 81826 82911 90481 92042 91391 
94605 93040 87099 85103 87131 87423 82418 75260 
64485 59903 63633 68262 72430 75216 78814 77879 
72445 69610 66126 60302 55169 48993 
29361.0 08 09 21 260 
39742 39137 38357 38002 36171 35267 36094 38442 
40786 41725 42796 43492 44009 43589 42926 43308 
999999 999999 999999 999999 999999 999999 999999 999999 
999999 999999 999999 999999 999999 999999 
...

7.4  FFI=2010

39 2010                                      {NLHEAD FFI} 
Mertz, Fred 
University of Denver; fum@du.edu 
WB-57 FCAS Aerosol size distribution 
TOP II 
1 1                                          {IVOL NVOL} 
2005 01 16  2005 02 15                       {DATE RDATE} 
0.0 30.0                                     {DX(1) DX(2)} 
32                                           {NX(1)} 
32                                           {NXDEF(1)} 
0.060 0.068 0.078 0.089 0.101 0.115 0.131 0.149 
0.169 0.193 0.219 0.250 0.284 0.323 0.368 0.419 
0.477 0.543 0.618 0.703 0.801 0.912 1.038 1.181 
1.34  1.53  1.74  1.98  2.25  2.56  2.92  3.33 
Diameter Range, Lower limit (microns) 
Time, seconds from midnight (UTS) 
1                                            {NV} 
1.0                                          {VSCAL(1)} 
9.99e+09                                     {VMISS(1)} 
Particle Mixing Ratio in Specified size Bins (#/mg Air) 
3                                            {NAUXV} 
1 1 1                                        {ASCAL} 
99.99 99.99 99.99                            {AMISS} 
Ambient Air Density (mg/cu. cm) 
Density of Particle (g/cu. cm) 
Mass fraction of H2SO4 (g H2SO4/g particles) 
0                                            {NSCOML} 
11                                           {NNCOML} 
Size distributions are measured with a Focused Cavity Aerosol 
Spectrometer (FCAS II).  Size is measured at laser. 
Reported size is adjusted to account for evaporation in sampling 
and transport. 
Concentrations adjusted to account for effects of anisokinetic sampling. 
Mass fraction of sulfuric acid is calculated from theory. 
Mass fraction of sulfuric acid depends upon pressure, temperature 
and water vapor. 
Water vapor, pressure and temperature are measured by other investigators. 
The particle mixing ratios in the channel with the smallest 
diameter that has particles are underestimates. 
56620 0.665 1.563 0.633 
9.99e+09 9.99e+09 9.99e+09 6.24e+00 1.27e+01 1.97e+01 1.91e+01 1.64e+01 
1.09e+01 6.61e+00 4.50e+00 3.51e+00 2.70e+00 1.26e+00 9.53e-01 4.66e-01 
2.68e-01 1.78e-01 1.47e-01 9.53e-02 3.27e-02 1.43e-02 1.31e-02 1.40e-02 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
56650 0.635 1.509 0.583 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 2.85e+01 3.06e+01 3.19e+01 2.67e+01 
1.92e+01 1.07e+01 7.63e+00 5.38e+00 4.82e+00 2.70e+00 1.79e+00 7.13e-01 
3.50e-01 9.71e-02 5.67e-02 4.99e-02 3.07e-02 4.21e-03 6.33e-02 1.26e-01 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
56680 0.605 1.451 0.525 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 2.13e+01 3.73e+01 5.38e+01 4.24e+01 
3.09e+01 1.62e+01 1.06e+01 8.78e+00 7.78e+00 6.15e+00 3.35e+00 1.96e+00 
9.50e-01 3.24e-01 1.15e-01 1.42e-01 1.33e-01 9.32e-02 4.16e-02 2.91e-03 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
...

52 2010                                      {NLHEAD FFI} 
1 | 0 | Mertz | Fred 
1 | DU | fum@du.edu | 
3 |WB-57 926|FCAS II|WB-57 926|MMS|WB-57 926|HUWV|Aerosol size distribution 
TOP II | 
1 1                                          {IVOL NVOL} 
2005 01 16  2005 02 15                       {DATE RDATE} 
0.0 30.0                                     {DX(1) DX(2)} 
32                                           {NX(1)} 
32                                           {NXDEF(1)} 
0.060 0.068 0.078 0.089 0.101 0.115 0.131 0.149 
0.169 0.193 0.219 0.250 0.284 0.323 0.368 0.419 
0.477 0.543 0.618 0.703 0.801 0.912 1.038 1.181 
1.34  1.53  1.74  1.98  2.25  2.56  2.92  3.33 
aerosol|diameter|microns|size bin lower limit|gphy_air|insitu|S_1|X_2 S_2 
time|seconds|s|sync to MMS|gloc|model|S_1 S_2|S_2 
1                                            {NV} 
1.0                                          {VSCAL(1)} 
9.99e+09                                     {VMISS(1)} 
aerosol|specific number|#/mg Air||gphy_air|insitu|S_1 S_2|X_2 S_2 
3                                            {NAUXV} 
1 1 1                                        {ASCAL} 
99.99 99.99 99.99                            {AMISS} 
air|mass concentration|mg/cu. cm||gphy_air|insitu|S_2|X_2 S_2 
aerosol|mass density|g/cu. cm||gphy_air|insitu|S_1 S_2|X_2 S_2 
H2SO4|aerosol mass fraction|g H2SO4/g particles||gphy_air|model  & 
     |S_1 S_2 S_3|X_2 S_2 
0                                            {NSCOML} 
24                                           {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 254 
#MD | NA | SUoffset_X | 2 | 0 0 
#MD | NA | SUscale_X  | 2 | 1e-6 1 
#MD | SA | SU_X       | 2 | m | s 
#MD | NA | SUoffset_V | 1 | 0 
#MD | NA | SUscale_V  | 1 | 1e+6 
#MD | SA | SU_V       | 1 | kg-1 
#MD | NA | SUoffset_A | 3 | 0 0 0 
#MD | NA | SUscale_A  | 3 | 1 1e+3 1 
#MD | SA | SU_A       | 3 | kg m-3 | kg m-3 | 1 
#MD | SA | note_A_3 | 4 
Mass fraction of sulfuric acid is calculated from theory. 
Mass fraction of sulfuric acid depends upon pressure, temperature 
and water vapor. 
Water vapor, pressure and temperature are measured by other investigators. 
 
Size distributions are measured with a Focused Cavity Aerosol 
Spectrometer (FCAS II).  Size is measured at laser. 
Reported size is adjusted to account for evaporation in sampling 
and transport. 
Concentrations adjusted to account for effects of anisokinetic sampling. 
The particle mixing ratios in the channel with the smallest 
diameter that has particles are underestimates. 
56620 0.665 1.563 0.633 
9.99e+09 9.99e+09 9.99e+09 6.24e+00 1.27e+01 1.97e+01 1.91e+01 1.64e+01 
1.09e+01 6.61e+00 4.50e+00 3.51e+00 2.70e+00 1.26e+00 9.53e-01 4.66e-01 
2.68e-01 1.78e-01 1.47e-01 9.53e-02 3.27e-02 1.43e-02 1.31e-02 1.40e-02 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
56650 0.635 1.509 0.583 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 2.85e+01 3.06e+01 3.19e+01 2.67e+01 
1.92e+01 1.07e+01 7.63e+00 5.38e+00 4.82e+00 2.70e+00 1.79e+00 7.13e-01 
3.50e-01 9.71e-02 5.67e-02 4.99e-02 3.07e-02 4.21e-03 6.33e-02 1.26e-01 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
56680 0.605 1.451 0.525 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 2.13e+01 3.73e+01 5.38e+01 4.24e+01 
3.09e+01 1.62e+01 1.06e+01 8.78e+00 7.78e+00 6.15e+00 3.35e+00 1.96e+00 
9.50e-01 3.24e-01 1.15e-01 1.42e-01 1.33e-01 9.32e-02 4.16e-02 2.91e-03 
9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 9.99e+09 
...

7.5  FFI=2110

30 2110                                      {NLHEAD FFI} 
Mertz, Fred 
NASA JPL; fum@nasa.gov 
ER-2 Microwave Temperature Profiler (MTP) 
TOP 
1 1                                          {IVOL NVOL} 
1991 1 16 1991 1 16                          {DATE RDATE} 
0.0 0.0                                      {DX(1) DX(2)} 
Remote sensing "applicable altitude" (m) 
Seconds since 00Z (s) 
2                                            {NV} 
1 1                                          {VSCAL} 
999.9 99.9                                   {VMISS} 
Brightness temperature (K) 
Brightness temperature error (K) 
7                                            {NAUXV} 
1 1 1 1 1 1 1                                {ASCAL} 
99 99999 99.999 999.999 99.9 99.9 999.9      {AMISS} 
Number of "applicable altitudes" recorded in subsequent data records (NULL) 
Pressure altitude of ER-2 (m) 
Latitude (deg) 
Longitude (deg) 
Aircraft pitch (deg) 
Aircraft roll (deg) 
Horizon brightness temperature (K), ave. of Chan 1 & 2 brightness temp. 
0                                            {NSCOML} 
3                                            {NNCOML} 
The brightness temperatures are approximately equal to air 
temperatures at ER-2 altitudes. 
 
59461 5 14460 -17.764 -125.102 1.5 -0.3 212.0 
23470 211.9 2.5 
21370 209.1 2.1 
19670 206.5 1.7 
18460 205.8 1.3 
17660 205.5 1.1 
59475 7 14495 -17.779 -125.076 1.6 -0.3 211.7 
25895 215.6 2.9 
23495 210.9 2.5 
21395 207.8 2.1 
19695 205.0 1.7 
18495 204.9 1.3 
17695 205.0 1.1 
16995 205.9 0.9 
...

36 2110                                      {NLHEAD FFI} 
1 | 0 | Mertz | Fred 
1 | NASA JPL | fum@nasa.gov | 
2 |ER-2 706| MTP |ER-2 706| MMS | ER-2 Microwave Temperature Profiler 
TOP | 
1 1                                          {IVOL NVOL} 
1991 1 16 1991 1 16                          {DATE RDATE} 
0.0 0.0                                      {DX(1) DX(2)} 
altitude|barometric|m|U.S.Std.Atm.1976|gloc|remote|S_1 S_2|X_2 A_3 A_4 
time|seconds|s||gloc|model|S_1 S_2|X_1 A_3 A_4 
2                                            {NV} 
1 1                                          {VSCAL} 
999.9 99.9                                   {VMISS} 
air|brightness temperature|K||gphy_air|remote|S_1 S_2|X_1 X_2 A_3 A_4 
air|brightness temperature error|K||anal|e_V_1|S_1|X_1 X_2 A_3 A_4 
7                                            {NAUXV} 
1 1 1 1 1 1 1                                {ASCAL} 
99 99999 99.999 999.999 99.9 99.9 999.9      {AMISS} 
altitude levels | number count | NULL || anal | user |S_1|X_2 A_3 A_4 
altitude | barometric | m |of ER-2| gloc_S_1 | insitu |S_2|X_2 S_2 
latitude | INS | deg || gloc | insitu |S_1 S_2|X_1 X_2 A_4 
longitude| INS | deg || gloc | insitu |S_1 S_2|X_1 X_2 A_3 
ER-2 706| pitch angle | deg || plat | insitu |S_2|X_2 A_2 S_2 
ER-2 706| roll angle | deg || plat | insitu |S_2|X_2 A_2 S_2 
air|brightness temperature|K|forward horizon|gphy_air|remote|S_1 S_2|X_2 S_2 
0                                            {NSCOML} 
9                                            {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 1203 
#MD | SA | note_A_7 | 2 
This is the forward-looking horizon brightness temperature, from the 
average of channels 1 and 2, and approximates outside air temperature. 
 
The brightness temperatures are approximately equal to air 
temperatures at ER-2 altitudes. 
 
59461 5 14460 -17.764 -125.102 1.5 -0.3 212.0 
23470 211.9 2.5 
21370 209.1 2.1 
19670 206.5 1.7 
18460 205.8 1.3 
17660 205.5 1.1 
59475 7 14495 -17.779 -125.076 1.6 -0.3 211.7 
25895 215.6 2.9 
23495 210.9 2.5 
21395 207.8 2.1 
19695 205.0 1.7 
18495 204.9 1.3 
17695 205.0 1.1 
16995 205.9 0.9 
...

7.6  FFI=2160

34 2160                                      {NLHEAD FFI} 
Mertz, Fred 
NASA ARC; fum@nasa.gov 
Radiosonde observations 
AASE 
1 1                                          {IVOL NVOL} 
1989 1 16 1989 1 16                          {DATE RDATE} 
0                                            {DX(1)} 
5                                            {LENX(2)} 
Pressure level (hPa) 
Radiosonde station identifier (BBSSS), BB=block #, SSS=station code. 
5                                            {NV} 
1.0 0.1 0.1 1.0 0.1                          {VSCAL} 
99999 9999 999 999 9999                      {VMISS} 
Geopotential height (gpm) 
Air temperature (C) 
Dew-point depression (C) 
Wind direction (degrees) 
Wind speed (knots) 
6                                            {NAUXV} 
1                                            {NAUXC} 
1.0 0.01 0.01 0.01 1.0                       {ASCAL} 
999 9999 99999 9999 9999                     {AMISS} 
30                                           {LENA(9)} 
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 
Number of pressure levels in the sounding (NULL) 
UTC hour of launch (h) 
East longitude of station (deg) 
Latitude of station (deg) 
Elevation of station above MSL (m) 
Station name 
0                                            {NSCOML} 
1                                            {NNCOML} 
Ship stations are in block 99. 
71082 
4 1200 -6233 8250 66 
Alert/Ellesmere Island         
850.0 1136 -331 48 235 330 
700.0 3498 -363 36 999 9999 
500.0 4770 -467 50 235 420 
400.0 6230 -541 60 235 490 
99C7C 
14 1200 -3550 5270 0 
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 
1014.0 0 16 39 270 290 
1000.0 118 6 27 280 210 
...

43 2160                                      {NLHEAD FFI} 
0 | 1 | Mertz | Fred 
1 | NASA ARC | fum@nasa.gov | 
2 |ground|raob|sonde|raob|Radiosonde observations at several stations. 
AASE | Airborne Arctic Stratospheric Expedition 
1 1                                          {IVOL NVOL} 
1989 1 16 1989 1 16                          {DATE RDATE} 
0                                            {DX(1)} 
5                                            {LENX(2)} 
air | pressure | hPa || gphy_air | insitu |S_2|A_2 A_3 A_4 V_1 
station | identifier | NULL | (BBSSS) | anal | user |S_1|A_2 A_3 A_4 A_5 
5                                            {NV} 
1.0 0.1 0.1 1.0 0.1                          {VSCAL} 
99999 9999 999 999 9999                      {VMISS} 
altitude | geopotential | m || gloc | insitu |S_2|A_2 A_3 A_4 
air | temperature | C || gphy_air | insitu |S_2|A_2 A_3 A_4 V_1 
air | dew-point depression | C || gphy_air | insitu |S_2|A_2 A_3 A_4 V_1 
air | wind direction | deg || gphy_air | remote |S_1|A_2 A_3 A_4 V_1 
air | wind speed | knots || gphy_air | remote |S_1|A_2 A_3 A_4 V_1 
6                                            {NAUXV} 
1                                            {NAUXC} 
1.0 0.01 0.01 0.01 1.0                       {ASCAL} 
999 9999 99999 9999 9999                     {AMISS} 
30                                           {LENA(9)} 
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 
pressure levels | number count | NULL || anal | user |S_2|A_2 A_3 A_4 A_5 
launch time | hours | h || gloc | model |S_1|A_3 A_4 A_5 
longitude | geodetic | deg || gloc_S_1 | model |S_1|A_2 A_4 A_5 
latitude | geodetic | deg || gloc_S_1 | model |S_1|A_2 A_3 A_5 
altitude | geodetic | m || gloc_S_1 | model |S_1|A_2 A_3 A_4 
station | name | NULL || anal | user |S_1|A_2 A_3 A_4 A_5 
0                                            {NSCOML} 
10                                           {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 67 
#MD | NA | SUoffset_X | 2 | 0 0 
#MD | NA | SUscale_X  | 2 | 100 1 
#MD | SA | SU_X       | 2 | Pa | NULL 
#MD | NA | SUoffset_V | 5 | 0 273.15 0 0 0 
#MD | NA | SUscale_V  | 5 | 1 1 1 1 0.5144 
#MD | SA | SU_V       | 5 | m | K | K | deg | m s-1 
#MD | SA | note_X_2 | 2 | BBSSS: BB=block #; SSS=station code 
Ship stations are in block 99. 
71082 
4 1200 -6233 8250 66 
Alert/Ellesmere Island         
850.0 1136 -331 48 235 330 
700.0 3498 -363 36 999 9999 
500.0 4770 -467 50 235 420 
400.0 6230 -541 60 235 490 
99C7C 
14 1200 -3550 5270 0 
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 
1014.0 0 16 39 270 290 
1000.0 118 6 27 280 210 
...

7.7  FFI=2310

33 2310                                      {NLHEAD FFI} 
Mertz, Fred 
NASA LaRC; fum@nasa.gov 
DC-8 DIAL ozone number densities 
TOP II|Tahiti Ozone Project II 
1 1                                          {IVOL NVOL} 
2005 1 16  2005 2 20                         {DATE RDATE} 
0.0                                          {DX(2)} 
Geometric altitude of observation (m) 
Seconds since 00Z (s) 
1                                            {NV} 
1.0E+09                                      {VSCAL} 
99999                                        {VMISS} 
Ozone number density (#/cc) 
9                                            {NAUXV} 
1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.01 0.01        {ASCAL} 
999 99999 999 99999 99 99 99 99999 9999      {AMISS} 
Number of altitudes for current time mark (NULL) 
Geometric altitude (m) at which data begins 
Altitude increment (m) 
Geometric altitude of aircraft (m) 
UTC Hour (h) 
UTC Minute (min) 
UTC Second (s) 
East longitude (deg) 
Latitude (deg) 
0                                            {NSCOML} 
5                                            {NNCOML} 
VERTICAL AVERAGING INTERVAL: 975 METERS AT 1-7 KM ABOVE AIRCRAFT 
2025 METERS > 7 KM ABOVE AIRCRAFT 
(TRANSITION RANGE VARIES WITH SIGNAL STRENGTH) 
HORIZONTAL AVERAGING INTERVAL: 60 KM 
 
30335 26 12819 75 10389 8 25 35 -13324 -945 
 1340  1519  1660  1779  1868  1939  1973  1992  1989  1955 
 1934  1897  1817  1721  1619  1514  1434  1343  1258  1203 
 1140  1088  1037   956   892   878 
30360 22 12819 75 10383 8 26 0 -13322 -993 
 1351  1523  1658  1774  1860  1930  1962  1974  1966  1932 
 1909  1877  1803  1706  1600  1493  1407  1310 99999 99999 
 1094  1045 
30384 93 12744 75 10378 8 26 24 -13312 -1031 
  934  1378  1541  1673  1782  1862  1925  1950  1956  1946 
 1912  1884  1843  1765  1667  1565  1457  1375  1279  1194 
...

38 2310                                      {NLHEAD FFI} 
1 | 0 | Mertz | Fred U. 
1 | NASA LaRC | fum@nasa.gov | 
2 |DC-8 817| DIAL |DC-8 817| ICATS | DC-8 DIAL ozone number densities 
TOP II | Tahiti Ozone Project II 
1 1                                          {IVOL NVOL} 
2005 1 16 2005 2 20                          {DATE RDATE} 
0.0                                          {DX(2)} 
altitude | geometric | m || gloc | remote |S_1 S_2|X_2 A_8 A_9 
time | seconds | s || gloc | model |S_2|X_1 A_8 A_9 
1                                            {NV} 
1.0E+09                                      {VSCAL} 
99999                                        {VMISS} 
O3|number concentration|#/cc||gphy_air|remote|S_1 S_2|X_1 X_2 A_8 A_9 
9                                            {NAUXV} 
1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.01 0.01        {ASCAL} 
999 99999 999 99999 99 99 99 99999 9999      {AMISS} 
altitude levels|number count|NULL||anal|user|S_1|X_2 A_8 A_9 
altitude|geometric|m|at which data begins|gloc|remote|S_1 S_2|X_2 A_8 A_9 
altitude|geometric|m|increment|anal|user|S_1|X_2 A_8 A_9 
altitude|GPS|m|of DC8|gloc_S_2|remote|S_2|X_2 A_8 A_9 
time|UTC hour|h||anal|model|S_2|X_1 X_2 A_8 A_9 
time|UTC minute|min||anal|model|S_2|X_1 X_2 A_8 A_9 
time|UTC second|s||anal|model|S_2|X_1 X_2 A_8 A_9 
longitude|GPS|deg||gloc_S_2|remote|S_2|X_2 A_4 A_9 
latitude|GPS|deg||gloc_S_2|remote|S_2|X_2 A_4 A_8 
0                                            {NSCOML} 
10                                           {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 575 
#MD | NA | SUoffset_V | 1 | 0 
#MD | NA | SUscale_V  | 1 | 1.0E+6 
#MD | SA | SU_V       | 1 | m-3 
VERTICAL AVERAGING INTERVAL: 975 METERS AT 1-7 KM ABOVE AIRCRAFT 
2025 METERS > 7 KM ABOVE AIRCRAFT 
(TRANSITION RANGE VARIES WITH SIGNAL STRENGTH) 
HORIZONTAL AVERAGING INTERVAL: 60 KM 
 
30335 26 12819 75 10389 8 25 35 -13324 -945 
 1340  1519  1660  1779  1868  1939  1973  1992  1989  1955 
 1934  1897  1817  1721  1619  1514  1434  1343  1258  1203 
 1140  1088  1037   956   892   878 
30360 22 12819 75 10383 8 26 0 -13322 -993 
 1351  1523  1658  1774  1860  1930  1962  1974  1966  1932 
 1909  1877  1803  1706  1600  1493  1407  1310 99999 99999 
 1094  1045 
30384 93 12744 75 10378 8 26 24 -13312 -1031 
  934  1378  1541  1673  1782  1862  1925  1950  1956  1946 
 1912  1884  1843  1765  1667  1565  1457  1375  1279  1194 
...

7.8  FFI=3010

26 3010                                      {NLHEAD FFI} 
Mertz, Fred 
NASA GSFC; fum@nasa.gov 
NASA GSFC Data Assimilation Model grid point analyses 
AASE 
1 1                                          {IVOL NVOL} 
1989 1 16  1989 1 16                         {DATE RDATE} 
5.0 2.5 12.0                                 {DX(1) DX(2) DX(3)} 
8 3                                          {NX(1) NX(2)} 
1 1                                          {NXDEF(1) NXDEF(2)} 
-25                      {X(1,1); X(i,1) = -25 -20 -15 -10 -5 0 5 10} 
60.0                                    {X(1,2); X(j,2) = 60 62.5 65} 
East longitude (deg) 
Latitude (deg) 
Hours since 00Z (h) 
2                                            {NV} 
1.0E-08 0.1                                  {VSCAL} 
99999 9999                                   {VMISS} 
Potential vorticity (K m2 kg-1 s-1) 
Temperature (K) 
1                                            {NAUXV} 
1                                            {ASCAL} 
999.9                                        {AMISS} 
Potential temperature (K) 
0                                            {NSCOML} 
0                                            {NNCOML} 
0 400 
1604 1597 1589 1578 1570 1578 1584 1589      {PV rec} 
1598 1583 1561 1534 1506 1478 1447 1446      {PV rec} 
1440 1439 1442 1469 1493 1512 1527 1537      {PV rec} 
2234 2251 2259 2250 2247 2200 2194 2187      { T rec} 
2194 2151 2159 2150 2147 2166 2175 2165      { T rec} 
2121 2136 2140 2140 2138 2127 2111 2104      { T rec} 
12 400 
1532 1522 1509 1492 1472 1467 1459 1450      {PV rec} 
1419 1433 1448 1465 1483 1503 1525 1567      {PV rec} 
1670 1691 1711 1724 1737 1744 1745 1743      {PV rec} 
2224 2241 2249 2240 2237 2200 2184 2177      { T rec} 
2184 2141 2149 2140 2137 2156 2165 2155      { T rec} 
2111 2126 2130 2130 2128 2117 2101 2101      { T rec} 
24 400 
1587 1578 1569 1558 1546 1533 1641 1626 
...

28 3010                                      {NLHEAD FFI} 
0 | 1 | Mertz | Fred 
1 | NASA GSFC | fum@nasa.gov | 
1 | model | GSFCAM |grid point analyses on isentropic surface 
AASE | 
1 1                                          {IVOL NVOL} 
1989 1 16   1989 1 16                        {DATE RDATE} 
5.0 2.5 12.0                                 {DX(1) DX(2) DX(3)} 
8 3                                          {NX(1) NX(2)} 
1 1                                          {NXDEF(1) NXDEF(2)} 
-25                       {X(1,1); X(i,1)= -25 -20 -15 -10 -5 0 5 10} 
60.0                      {X(1,2); X(j,2)= 60 62.5 65} 
longitude | spherical | deg || gloc | model |S_1|X_2 X_3 A_1 
latitude | spherical | deg || gloc | model |S_1|X_1 X_3 A_1 
time | hours | h || gloc | model |S_1|X_1 X_2 A_1 
2                                            {NV} 
1.0E-08 0.1                                  {VSCAL} 
99999 9999                                   {VMISS} 
air|potential vorticity|K m2 kg-1 s-1||gphy_air|model|S_1|X_1 X_2 X_3 A_1 
air|temperature|K||gphy_air|model|S_1|X_1 X_2 X_3 A_1 
1                                            {NAUXV} 
1                                            {ASCAL} 
999.9                                        {AMISS} 
air | potential temperature | K || gphy_air | model |S_1|X_1 X_2 X_3 
0                                            {NSCOML} 
2                                            {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 4 
0 400 
1604 1597 1589 1578 1570 1578 1584 1589      {PV rec} 
1598 1583 1561 1534 1506 1478 1447 1446      {PV rec} 
1440 1439 1442 1469 1493 1512 1527 1537      {PV rec} 
2234 2251 2259 2250 2247 2200 2194 2187      { T rec} 
2194 2151 2159 2150 2147 2166 2175 2165      { T rec} 
2121 2136 2140 2140 2138 2127 2111 2104      { T rec} 
12 400 
1532 1522 1509 1492 1472 1467 1459 1450      {PV rec} 
1419 1433 1448 1465 1483 1503 1525 1567      {PV rec} 
1670 1691 1711 1724 1737 1744 1745 1743      {PV rec} 
2224 2241 2249 2240 2237 2200 2184 2177      { T rec} 
2184 2141 2149 2140 2137 2156 2165 2155      { T rec} 
2111 2126 2130 2130 2128 2117 2101 2101      { T rec} 
24 400 
1587 1578 1569 1558 1546 1533 1641 1626 
...

7.9  FFI=4010

24 4010                                      {NLHEAD FFI} 
Mertz, Fred 
NASA GSFC; fum@nasa.gov 
NASA GSFC Data Assimilation Model grid point analyses 
AASE 
1 1                                          {IVOL NVOL} 
1989 1 16  1989 1 16                         {DATE RDATE} 
5.0 2.5 40.0 0.0                             {DX(1) DX(2) DX(3) DX(4)} 
8 3 2                                        {NX(1) NX(2) NX(3)} 
1 1 2                                    {NXDEF(1) NXDEF(2) NXDEF(3)} 
-25                       {X(1,1); X(i,1)= -25 -20 -15 -10 -5 0 5 10} 
60.0                                     {X(1,2); X(j,2)= 60 62.5 65} 
400 440                                      {X(k,3)} 
East longitude (deg) 
Latitude (deg) 
Potential temperature (K) 
Hours since 00Z (h) 
1                                            {NV} 
1.0E-08                                      {VSCAL} 
99999                                        {VMISS} 
Potential vorticity (K m2 kg-1 s-1) 
0                                            {NAUXV} 
0                                            {NSCOML} 
0                                            {NNCOML} 
0 
1604 1597 1589 1578 1570 1578 1584 1589 
1598 1583 1561 1534 1506 1478 1447 1446 
1440 1439 1442 1469 1493 1512 1527 1537 {last 400K rec} 
3135 3151 3175 3198 3220 3240 3260 3278 
3326 3348 3369 3389 3409 3428 3446 3465 
3498 3492 3485 3476 3468 3459 3464 3446 {last 440K rec} 
12 
1532 1522 1509 1492 1472 1467 1459 1450 
1419 1433 1448 1465 1483 1503 1525 1567 
1670 1691 1711 1724 1737 1744 1745 1743 {last 400K rec} 
3424 3419 3409 3396 3379 3354 3327 3297 
3193 3158 3125 3095 3065 3037 3011 2998 
2956 2938 2920 2914 2909 2906 2905 2906 {last 440K rec} 
36 
1587 1578 1569 1558 1546 1533 1641 1626 
...

26 4010                                      {NLHEAD FFI} 
0 | 1 | Mertz | Fred 
1 | NASA GSFC | fum@nasa.gov | 
1 | model | GSFCAM | grid point analyses on isentropic surfaces 
AASE | 
1 1                                          {IVOL NVOL} 
1989 1 16  1989 1 16                         {DATE RDATE} 
5.0 2.5 40.0 0.0                            {DX(1) DX(2) DX(3) DX(4)} 
8 3 2                                        {NX(1) NX(2) NX(3)} 
1 1 2                                    {NXDEF(1) NXDEF(2) NXDEF(3)} 
-25                       {X(1,1); X(i,1)= -25 -20 -15 -10 -5 0 5 10} 
60.0                      {X(1,2); X(j,2)= 60 62.5 65} 
400 440                   {X(k,3)} 
longitude | spherical | deg || gloc | model |S_1|X_2 X_3 X_4 
latitude | spherical | deg || gloc | model |S_1|X_1 X_3 X_4 
air | potential temperature | K || gphy_air | model |S_1|X_1 X_2 X_4 
time | hours | h || gloc | model |S_1|X_1 X_2 X_3 
1                                            {NV} 
1.0E-08                                      {VSCAL} 
99999                                        {VMISS} 
air|potential vorticity|K m2 kg-1 s-1||gphy_air|model|S_1|X_1 X_2 X_3 X_4 
0                                            {NAUXV} 
0                                            {NSCOML} 
2                                            {NNCOML} 
#MD | NA | format version | 1 | 2 
#MD | NA | NIVM | 1 | 7 
0 
1604 1597 1589 1578 1570 1578 1584 1589 
1598 1583 1561 1534 1506 1478 1447 1446 
1440 1439 1442 1469 1493 1512 1527 1537 {last 400K rec} 
3135 3151 3175 3198 3220 3240 3260 3278 
3326 3348 3369 3389 3409 3428 3446 3465 
3498 3492 3485 3476 3468 3459 3464 3446 {last 440K rec} 
12 
1532 1522 1509 1492 1472 1467 1459 1450 
1419 1433 1448 1465 1483 1503 1525 1567 
1670 1691 1711 1724 1737 1744 1745 1743 {last 400K rec} 
3424 3419 3409 3396 3379 3354 3327 3297 
3193 3158 3125 3095 3065 3037 3011 2998 
2956 2938 2920 2914 2909 2906 2905 2906 {last 440K rec} 
36 
1587 1578 1569 1558 1546 1533 1641 1626 
...