The tracer mass is (kg) and the air mass is (kg) The mixing ratio is then (kg tracer/kg air).

A tracer field is defined by 1, 4, or 10 three-dimensional arrays:

array |
unit |
description |
---|---|---|

rm | kg | toal tracer mass in cell |

rxm, rym, rzm | kg/(half grid cel) | first order moments (slopes) |

rxxm, ryym, rzzm rxym, rxzm, ryzm |
kg/(half grid cel) | second order moments |

The slopes and moments are properties of the concentration gradient inside the cell.

Consider a cell volumne
.
The convention for the length scales is that a half cell
has lenght , thus .
We would like to know the concentration in a point in the cell.
From equations (7) and (9) in [Prather, 1986] we find that
the tracer mass mixing ratio (kg tracer/kg air) is given by:

(6.1) | |||

(6.2) | |||

(6.3) | |||

(6.4) |

**Coding of slopes and second moments**

The best way to implement slopes/second moments is to have them compiled only if certain preprocessor macro's are defined.

In cy3, at least macro 'slopes' should be defined; in addition, 'secmom' might be defined to.

! at least slopes should be defined: #ifndef slopes stop 'slopes not defined' #endif ! second moments as extension of slopes: #ifdef slopes rxm = 0.0 #ifdef secmom rxxm = 0.0 #endif #endif ! different codes: #ifdef slopes #ifndef secmom call adv_slopes #else call adv_secmom #endif #endif