---------------------------------------------- Implementation of Tdry in ropp_fm_bg2ro_1d.f90 ---------------------------------------------- The program 'ropp_fm_bg2ro_1d' takes a BGR file as input and adds Level 1b (bending angle) and 2a (refractivity) to the file. The forward modelling from model data to bending angle and refractivity is done with the routines 'ropp_fm_refrac_1d' and 'ropp_fm_bangle_1d'. There are several versions of both the 'refrac' and the 'bangle' subroutines. We have now added a new routine 'ropp_fm_tdry_1d' to ROPP which maps model data to dry temperatures on observation levels. An alternative to a separate 'tdry' routine could be to do the tdry calculation in the 'ropp_fm_refrac_1d' routine, but since there are several versions of this, it quickly gets a bit complicated. Another constraint is that ropp_fm and ropp_pp should be kept independent. This means that there must be a Tdry calculation routine available in both ropp_pp and ropp_fm, where ropp_pp handles observational data and ropp_fm handles model data. In case one wants to anyway make ropp_pp routines available in ropp_fm, Ian has provided some instructions. However, after a quick look in the automake/configure settings, I deemed that the risk for introducing errors into the installation and configuration procedures are too large. We have made a stand-alone copy of ropp_pp_tdry called ropp_fm_tdry, which also contains the required subroutines from ropp_pp_spline (as purely internal subroutines). In the future, the ropp_fm_tdry routine could be simplified, perhaps along the lines suggested by Sean. After all, computing dry temps for model data is a more well-defined problem than computing dry temps for observational data. An alternative to separate ropp_fm and ropp_pp versions of the Tdry calculation could be to make a "ropp_utils_tdry", available to both the ropp_pp and ropp_fm modules. This could be discussed for future ROPP versions. In summary, changes have been made in the following 6 files: ropp_fm/common/ropp_fm.f90 ropp_fm/tools/ropp_fm_bg2ro_1d.f90 ropp_fm/refrac_1d/ropp_fm_tdry.f90 (new) ropp_fm/refrac_1d/ropp_fm_tdry_1d.f90 (new) ropp_fm/build/Makefile.am ropp_fm/refrac_1d/Makefile.am ------------------------------ Options for observation levels ------------------------------ There are currently 3 options for defining observation levels: a) observed levels from an ATM file using option '-l'; b) the 247 standard levels using option '-247L'; c) a regular grid using options '-zmin', '-zmax', '-nz'. Default is option c) with zmin=200, zmax=60000, nz=300. Any pre-existing Lev1b or Lev2a structures in the BGR file is now over-written.