Radiances

By default (empty functionals.conf file) McArtim calculates absolute radiances L (dep. on the solar_irradiance.txt file that is supplied). The output will be

L[TAB]eL

where eL is the error of the radiance L. To abbreviate the notation in the following text, a comma (,) is used instead of [TAB] and eX will denote the (MC noise) error of the quantity X.

Radiance Derivatives

When defining the "constituents" variable, 1st derivatives of the radiance dL/dx are calculated, where x is a property related to the respective entry in the constituents fn_cluster_data file. The output of these derivatives follows the output of radiances. Three configuration settings are relevant: 1.) the order of gases in the atmosphere.conf file line gases=..., 2.) the order of particles in the particle=... line and 3.) in functionals.conf the line constituents= listing the gases or particles for which functionals shall be calculated.
In the following suppose the gases line is gases=G1,G2,G3, the particle line is particles=P1,P2 and the constituents line in functionals is constituents=P2,G3,P1,G2. The structure of the Jacobian output is then

J(G2), J(G3), J(P1), J(P2)

i.e. the order in the output follows the principles 1.) gases before particles and 2.) amongst the constituents: same order as prescribed in atmosphere.conf. This convention applies to the Hessian output format too. The detailed output or each constituent C (i.e. a detailed format of J(C) in the description above) is clusterwise:
name, N, J1, eJ1, J2, eJ2, ..., JN, eJN

preceeded by the name of the constituent and the number of derivatives N which is the number of clusters of the respective constituent. The indices correspond to clusters.

Radiance Hesse Matrix

If the b_calculate_Hessian flag is enabled, the Hesse matrix H is output row-by-row:

N, H11, ..., H1N, H21,...,H2N, ... ,HN1,...,HNN

preceeded by the number N of rows/columns of H. The output format is the same as for radiance derivatives (see above) except that the name and the number of clusters N is omitted.

Derivatives of Light Path Integrals

For some inversion methods it is desired to have Jacobians of light path integrals such as the the derivatives of the slant column density of the oxygen dimer O4 with respect to aerosol optical properties. This document shows how to calculate these quantities using the radiances, Jacobians and the Hess matrix. Currently Hesse matrix elements containing 2nd derivatives of light path integrals are not output by the program and it is currently unlikely that it will be the case in future.

Accuracy Control and Output Format

The output_format variable can be defined according to the format argument of the standard C function printf. If the b_use_precision flag is turned on, the program will ignore the no_quadrature_trajectories in raytracer.conf and will continue sampling trajectories until a certain accuracy criterium with a parameter precision is met. If b_precision_major_limit is set, than precision will be the upper limit of the functional precision (slow but precise), else precision will be taken as the lower limit (faster). The program checks (this is a time consuming process in case that a large number of functionals shall be calculated) in intervalls of precision_check_count sample trajectories, whether the accuracy criterium has been met. On typical linux and on windows shells, the output of the functional calculation can be "piped" into a file using the following command line:

McArtim simulation.conf > result.txt