This is a simplified explanation of the precision retrieval, for a more detailed explanation please see the JGR-Atmospheres article by A.E. Bourassa <link to final article once published>. It is difficult to measure things like atmospheric ozone and aerosol density directly because rocket and balloon measurements are expensive and localized. Because of this we measure these things indirectly from light that is scattered from the atmosphere. Modelling how light is scattered based on a given set of atmospheric conditions is difficult but possible (this is done using a "forward model" like SASKTRAN) . The inverse problem is more difficult because atmospheric radiative transfer is not a linear problem so the equations are not invertable.

Methods like SaskMART are numeric itterative solutions that use the forward model, and the observations to retrieve the desired state parameter like ozone. SaskMART takes an initial guess at the atmospheric state, runs it through SASKTRAN to predict the observed radiance at a set of wavelengths. The guess is then updated based on the difference between the predicted radiance, and the actual OSIRIS measurements. During this process a weighting matrix '*W*' is used to determine how much the differences in the observation at one altitude affect the state parameter at other altitudes and how important each wavelength is. We have uncertainty values associated with the OSIRIS measurements, and from this we can make a covariance matrix for each wavelength (which is specified by the index 'i'):

The degree to which the uncertainty in our retrieved state parameter (like ozone) affects the predicted radiance given by OSIRIS is described by a kernel matrix where an element at row 'l' and column 'm' is:

Using these things we can calculate the intermediate covariance of our retrieved state parameter based on each wavelength 'i':

To get elements of the total covariance matrix of the retrieved state parameter we use the weighting matrix 'W' from SaskMART: