I'm running relaxation experiments in 43r3 following the namelist changes outlined at How to use OpenIFS in nudged configuration, and I'm trying to work out what the relaxation coefficients and smoothing parameters mean physically. In the trial experiment I've run, I left everything as the default shown on the description page, but changed ALATRLX2=20 and NRLXLMAX=27 (i.e. upwards from lower stratosphere, poleward of 20N). This worked successfully, and did indeed seem rather "tight" with the coefficients at 0.5.

Ideally, I'd like to be able to explain the latitudinal and vertical dependence similar to Figs 1 & 2 in Jung et al 2010 MWR. The furthest I got to was finding relaxgp.F90 subroutine in /src/ifs/transform.

Any insight would be much appreciated. Thank you!

9 Comments

  1. Hi Simon, 

    Thank you very much for posting, but I'm afraid I don't fully understand the question.  Could you briefly clarify what you mean when you say "what the ... parameters mean physically"? Or did you mean how they are implemented in the model?

    I am sure you have seen from the Jeuken et al. 1996 paper that there is a formula which describes how the tendencies are affected by the nudging term, it is also on the Confluence page you cited. The smoothing parameter, as far as I know, ensures a gradual transition from a grid domain where the parameters are nudged to where the model runs unconstrained by the analysis. 

    I haven't used the nudging myself sufficiently yet to be able to recommend reasonable values for the coefficients, but I know that these default values are probably too "tight" for many applications. I would welcome if users could share here if they found values that worked well for their studies.

    Regards,  Marcus

  2. Hi Marcus,

    Thanks for your response! Apologies, I didn't phrase my question particularly well. By physically, I mean - if XRLXVO = 0.5 (for example), what is the unit/order of magnitude? From thinking about Table 1 in the Jeuken et al. paper - is this 0.5x10-4 s^-1? I'm happy to experiment with different values.

    What I'm particularly interested in is, let's say I set NRLXLMAX=27. I'm presuming that this means the nudging is on "fully" through to level 27? (similarly for ALATRLX). In this case, I'd like to then compute/demonstrate at what level there is no longer any nudging - i.e. where it is completely off. As you say it ensures a gradual transition, but over what depth? Primarily, this concerns me because I want to relax sufficiently deep into the lower stratosphere such that it is reasonably constrained there, but not to nudge the upper-tropospheric jets.

    Many thanks -

    Simon.

  3. Hi Simon,

      Maybe I can comment, because I use these code a lot and have also made some recent modifications to it (which are not in 43r3, though).

      How sharp the cut-off is between regions of relaxation and non-relaxation is controlled by the parameters AZRLX  and AZYRLX (which I don't normally use). If you look in the source code in relaxgp.F90, you will see the mathematics of how this sets the transition. There are no units for these numbers, the transition is calcualted in terms of numbers of levels without regard to pressure or height coordinates. For the vertical, it is a 1/(1+exp(a*dz)) relationship, which means that the influence does not ever go strictly to zero, and does extend to some extent for quite a few levels below the nominal edge of the forcing region. It is worth calculting the numbers for the settings you use, to make sure you are OK with it scientifically - it is easy to reproduce the formula in a few lines of code and play around until you are happy.

      For the strength of the relaxation, the namelist values are given in units of "per hour" (with the exception of ozone, which is erroneously per timestep, a bug which has now been fixed but maybe not in your version), and are then converted in setup/surlx.F90 to the "per timestep" units used in relaxgp.F90.  I normally work with a 12h relaxation (XRLXVO=0.0833 etc), which is enough to constrain the simulation and is perhaps consistent with the accuracy of the field being relaxed to (typically a linear interpolation between 6h reanalysis values). A value of 0.5 is equivalent to a 2h timescale, which implies that the fields do change in a fairly straight line between the 6h specified inputs, which doesn't seem right.

      Best regards,

             Tim.

  4. Hi Tim,

    Thanks so much for your very helpful comment - I think I understand this now! 

    Cheers again,

    Simon.

  5. HI Marcus Koehler and Tim Stockdale,

    Here at BSC we would like to test the impact of applying relaxation outside of the time-varying planetary boundary layer. The idea is to let the boundary layer to adjust freely to produce the fluxes that are compatible with the physics of the coupled model.

    As is explained by Tim above, a spatial mask is calculated and applied in relaxgp.F90 to the relaxation tendencies. And the spatial behaviour of this mask can be controlled by namelist parameters, for example,  in the the vertical there are NRLXLMIN and NRLXLMAX.

    It seems to me that it should be straightforward to construct this mask based on the diagnosed height of the planetary boundary layer instead of the analytical formulas. So, I would like to ask for your advice here. Maybe you are aware of similar developments being done by someone. Or maybe you know someone who has done experiments in this direction. Any recommendations would be appreciated.

    1. Hi Vladimir,

      I'm afraid I haven't got experience in regional domain relaxation. In all my previous nudged experiments my relaxation was applied to the entire model domain. Also, I don't know anyone who would have done experiments with dynamically adjusted region for relaxation.

      In principle it should be possible to pass the PBL height at each grid point to the routine, convert it to level number and set this as the lower boundary of the regional relaxation mask. You may want to consider if you would still need to apply a transition zone between the unconstrained PBL and the nudged free troposphere in case a sharp cut-off occurs. Bear in mind that this would also slow the model down. 

      Cheers, Marcus

  6. Just to comment that this might be reasonably possible or it might be difficult. I would start by analysing the code to see if the PBL height is accessible from the memory structures that are passed to or available to the routine. Since PBL height is diagnosed and not a prognostic variable, this may not be true. In general, the IFS memory layouts and passing of values between routines can be very complicated, especially for a novice (which includes me in this area). The refactoring for OOPS has changed things further. Have a look: if you can't understand the code well enough to trace the memory connection between the PBL and the relaxgp routine, then it might not be feasible to attempt the work.

  7. thank you both for the comments. Indeed, it may prove to be difficult to trace the diagnosed PBL height in the code and reliably pass it to relaxgp.F90. I will probably fall back to something simpler. At least for now.

  8. Hi!

    I am running nudging experiments with OpenIFS (43r3v1) and I am interested in understanding how the vertical and horizontal smoothing is done. After reading through the discussion here and the source code (relaxgp.F90), I would like to ask if I have understood the smoothing of the relaxation coefficients correctly.
    Based on the code, I find that z_alpha(model level) = G_x * z_mask * 1/(1+exp(-azrlx*(model level - nrlxlmin)) * 1/(1+exp(-azrlx*(nrlxlmax - model level)), where G_x is the relaxation coefficient for variable x. Is the smoothed relaxation coefficient then z_alpha/(1+z_alpha)?

    The longitude/latitude domain is given in degrees in fort.4, but are then converted to radians in surlx.F90 (l. 186-190). The horizontal smoothing parameters (AXRLX, AYRLX) on the other hand seem to be given in radians in fort.4 as they are converted to degrees in relaxgp.F90 (l. 208-211). Are the smoothing parameters in horizontal directions defining the width/length over the transition between the nudged and non-nudged region?

    Kind regards,

    Madeleine Ekblom