## Mathematical overview of RTTOV

[latexpage] Given a state vector,**x**, which describes the atmospheric/surface state and a radiance vector,

**y**, then for all channels required to be simulated:

**y** = *H*(**x**)

where *H* is the radiative transfer model, i.e. RTTOV (also referred to as the observation operator in data assimilation parlance). This is known as the ‘direct’ or ‘forward’ model.

In addition RTTOV also computes the Jacobian matrix **H** which gives the change in radiance **δy** for a change in any element of the state vector **δx** assuming a linear relationship about a given atmospheric state **x _{0}**:

**δy** = **H**(**x _{0}**)

**δx**

The elements, H_{i,j}, of **H** contain the partial derivatives $

\let\oldhat\hat

\renewcommand{\vec}[1]{\mathbf{#1}}

\renewcommand{\hat}[1]{\oldhat{\mathbf{#1}}}

\frac{\partial \vec{y}_i}{\partial \vec{x}_j} $where the subscript **i** refers to channel number and **j** to position in state vector. The Jacobian gives the top of atmosphere radiance change for each channel from each level in the profile given a unit perturbation at any level of the profile vectors or in any of the surface/cloud parameters. It shows clearly, for a given profile, which levels in the atmosphere are most sensitive to changes in temperature and variable gas concentrations for each channel. RTTOV_K (and its associated subroutines ending in K) compute the **H(x _{0})** matrix for each input profile.

It is not always necessary to store and access the full Jacobian matrix **H** and so the RTTOV package also has routines to only output the *tangent linear* values **δy**, i.e. the change in top of atmosphere radiances, for a given change in atmospheric profile, **δx**, about an initial atmospheric state **x _{0}**. The tangent linear routines all have

*TL*as an ending. Conversely the adjoint routines (ending in

*AD*) compute the change in the gradient of any scalar quantity with respect to the atmospheric state,

**x**, given a change in the gradient of that quantity with respect to the radiances,

_{0}**y**. These routines are normally used as part of the variational assimilation of radiances.

For users only interested in the direct or forward model for radiance simulations the TL/AD/K routines are not required.