The Retrieval

A retrieval problem is formed based upon three key concepts:

  1. The Measurement L1: L1 Data representing a real (or simulated) measurement

  2. The Forward Model: the ability to simulate the measurements of 1.

  3. The Retrieval Target: A definition of the quantity to be retrieved

The Measurement L1

Measurement L1 is data, typically radiances, that the instrument sees, and is an instance of RadianceBase. Typically the measurement L1 will be a specialized derived class of RadianceBase. An example is RadianceGridded which specifies that the radiance may be expressed as a 2D array of (wavelength, line of sight), such as what is recorded by a scanning spectrograph. L1 data need not only contain radiance values, it may also contain information on the precision of the measurements, or other things such as field of view.

The format of the measurement L1 is coupled with the choice of retrieval target (see below). For example, one may write a CATSNO2 retrieval target class, that is only compatible with L1 data in a specific form, such as RadianceCATS. Typically each instrument would have it’s own L1 format, unless it falls under one of the generic formats already available.

Measurement L1 could be loaded in from a file, if it is actual data recorded from a instrument. Or it could be created through simulations.

The Forward Model

The ForwardModel is a class which has been presetup to simulate the exact same data specified by the measurement L1 (in the same format). Sometimes it is possible that the data produced by the ForwardModel will have additional fields, such is the case when performing a retrieval that uses weighting functions; the weighting functions are included in the L1 data output by the ForwardModel.

The Retrieval Target

The RetrievalTarget defines the quantity that is to be retrieved. OzoneRetrieval provides an example for a simple ozone retrieval from limb style measurements. The RetrievalTarget is responsible for a few things

  • Defining the state vector, the quantity to be retrieved

  • Defining the measurement vector, a transformation of the input L1 radiances, and the equivalent transformation of weighting functions if necessary

  • Updating the state vector. This must be propagated to the ForwardModel

  • Specifying the a priori state (and covariance).

Typically each RetrievalTarget is instrument specific.

Doing the Retrieval

With the three above concepts defined and available, a retrieval can be performed. The generic class that does this operation is the Minimizer, and a specific implementation can be found in Rodgers. Most limb inverse problem type retrievals operate in a similar fashion:

  1. Simulate measurements using the ForwardModel

  2. Calculate the measurement vector for both the observation and the simulation using the RetrievalTarget

  3. The Minimizer determines how much the quantity to be retrieved should change by

  4. Use the RetrievalTarget to update the ForwardModel with the new parameters

  5. Iterate until convergence