You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

From: Helge Goessling
Sent: 10 March 2021 12:07
Subject: Re: Spectral nuding / relaxation code in OpenIFS


Dear Markus and Glenn,


I am coming back to the question of spectral nudging with OpenIFS. In the meantime we have had some discussions with Etienne Tourigny and Vladimir Lapin at BSC (they do grid-point nudging, so far with OpenIFS-cy40 and an earlier IFS cycle in ECEarth3, if I’m not mistaken), and with Lauriane Batté at Météo France where they do spectral nudging, but in ARPEGE. We still have some questions remaining, and maybe you can help us:


1) Do you know anyone that has been doing spectral nudging with OpenIFS (ideally with cy43)?


2) As mentioned in our earlier exchanges (see below), we have identified the files ifs/adiab/spchor.F90, ifs/module/yomnud.F90, ifs/setup/sunud.F90, and the corresponding namelist namnud to be central to the spectral nudging (they are the counterparts to corresponding files that exist for the grid-point nudging). The same set of files is also used in ARPEGE for the spectral nudging. Thus we assume that in principle the spectral nudging should be functioning in OpenIFS. Would you agree, or are there parts of that code that might not have been updated to account for other changes in the code, or similar, so that some extra coding would be required to make this working (again)?


3) Do the spectral nudging and the grid-point nudging require the exact same nudging files (that is, primarily spectral fields in spectral space, and primarily grid-point fields in grid-point space)?


4) Regarding the preparation of the nudging files (from ERA5), the ECMWF confluence page explains a technique involving PrepIFS. In contrast, both the BSC and MF colleagues do this in a different way that involves running the model in a special mode for individual timesteps. To make things even more diverse, we are considering trying to achieve this with CDO, which includes the operator remapeta to interpolate vertically from one set of hybrid model levels to another set of hybrid model levels. That is working fine with ECHAM, so we hope this can be transferred to OpenIFS. We would be very curious to hear from you what you think about these different options.


Any help would be great!!


Cheers,

Helge


--------------------------------------------------------------------------------------------------------
Dr. Helge F. Goessling, Scientist

Alfred Wegener Institute (AWI)

Division Climate Sciences / Section Climate Dynamics

Head of BMBF Research Group Seamless Sea Ice Prediction
eMail / website
--------------------------------------------------------------------------------------------------------



Am 27.07.2020 um 06:33 schrieb Thomas Jung:


Hi all,


yes, that looks very much like the code I was having in mind. I used this as a blueprint for adding grid point nudging or relaxation to the IFS many years ago... ;-)


Best wishes,

Thomas


On 26.07.20 17:25, Glenn Carver wrote:

Hi Jan,


That looks like it. Whether it still works is a question though. Marcus might know better than me.


I think the comments are correct, there is likely a smooth transition between nudged and unnudged wavenumbers.


Cheers, Glenn


From: Jan Streffing
Sent: 26 July 2020 12:41
Subject: Re: Spectral nuding / relaxation code in OpenIFS


Hello toghether,

I went looking for a wavelength limiter for spectral mapping and I found in the code:

ifs/module/yomnud.F90:! NSPNU1 : wave number below which full nudging is applied
ifs/module/yomnud.F90:! NSPNU2 : wave number beyond which no nudging is applied

That seems almost right, although from the wording of the comment they would apprear to do the same thing. I suspect one of the descriptions might be misleading and these are actually what Thomas is looking for. These variables were introduced by MeteoFrance in cycle 32.


These two finally make their way into

ifs/adiab/spchor.F90

Where they are applied as following: (example from Vorticity nudging)

!*       3     NUDGING.
!              --------
IF (LNUDG) THEN
  !     3.1 GMV VARIABLES:
  ! * Vorticity:
  IF(LNUDVO)THEN
    IF(XNUDVO <= 0) THEN
      DO JSP=KSTA,KEND
        ZUSNUD2(JSP)=XNUDVO
        ZUSNUD1(JSP)=1.0_JPRB
      ENDDO
    ELSE
      DO JSP=KSTA,KEND
        ZUSNUD2(JSP)=XNUDVO*XWNUDG*&
         &MIN(1.0_JPRB,MAX(0.0_JPRB,1.0_JPRB*(NSPNU2-YDLAP%NVALUE(JSP))/REAL(NSPNU2-NSPNU1)))
        ZUSNUD1(JSP)=1.0_JPRB/(1.0_JPRB+ZUSNUD2(JSP))
      ENDDO
    ENDIF
    DO JLEV=1,NFLEVL
      ILEV=MYLEVS(JLEV)
      IF (ILEV >= NTNUDG) THEN
        ZREF(:)=0.0_JPRB
        DO JSTEP=1,NFNUDG
          DO JSP=KSTA,KEND
            ZREF(JSP)=ZREF(JSP)+TNUDVO(JSP,JLEV,JSTEP)*XPNUDG(JSTEP)
          ENDDO
        ENDDO
        DO JSP=KSTA,KEND
          PSPVOR(JLEV,JSP)=(PSPVOR(JLEV,JSP)+ZUSNUD2(JSP)*ZREF(JSP))*ZUSNUD1(JSP)
        ENDDO
      ENDIF
    ENDDO
  ENDIF


Cheers, Jan


On 26.07.20 12:39, Thomas Jung wrote:

Dear All,


it is great to see that there is so much interest in the nudging code. From what I can see, this formulation does nudging / relaxation in grid point space. Having this option is great, since it allows to localize nudging regionally. However, there are also good reasons for doing nudging in spectral space, since this will allow to constrain only the longer waves (e.g. the jet stream). From what I can see this is currently not implemented (in this case I would expect to see something in the namelist regarding total wavenumbers). To my understanding, however, there is a spectral nudging version in the IFS (or older cycles) that has been put in by MeteoFrance. In fact, given that OpenIFS is s spectral model, being able to exploit this capability diagnostically would be a major asset.


Best wishes,

Thomas


On 26.07.20 12:30, Glenn Carver wrote:

Hi Jan,


Just to add that no nudging code was removed between IFS and OpenIFS. The changes to the namelist that Marcus mentioned are in the next release of 43r3 which will be in a couple of weeks.


Glenn


From: Jan Streffing
Sent: 25 July 2020 12:45
Subject: Re: Spectral nuding / relaxation code in OpenIFS


Hello Marcus,

thank you for sharing you knowledge. I have included the interested parties from AWI in cc. Maybe Helge can elaborate on his ideas regarding different nudging schemes and whether what OpenIFS 43 inherited from IFS 43 is  what he would like to use.

Best regards, Jan

  • No labels