Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revised calculation of wind GUST for UFS applications #637

Conversation

wzzheng90
Copy link
Contributor

This PR is to address the issue "Gust wind weaker than mean wind in GFS" #636 (#636).

@WenMeng-NOAA
Copy link
Collaborator

@wzzheng90 I would suggest to add the following changes:

  • In CALGUST.f: add change log with your name after line 18

  • In CALGUST.f : line 78-79
    change
    CALL EXCH(UH(1,jsta_2l,L))
    CALL EXCH(VH(1,jsta_2l,L))
    into
    CALL EXCH(UH(ista_2l,jsta_2l,L))
    CALL EXCH(VH(ista_2l,jsta_2l,L))
    These changes are for 2D decomposition update and will have no impact on results you finished.

  • In MDLFLD.f: line 3777
    Change
    IF(MODELNAME == 'GFS')THEN
    into
    IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R')THEN
    Also add a change log in this subroutine.

@wzzheng90
Copy link
Contributor Author

@wzzheng90 I would suggest to add the following changes:

* In CALGUST.f: add change log with your name after line 18

* In CALGUST.f :  line 78-79
  change
  CALL EXCH(UH(1,jsta_2l,L))
  CALL EXCH(VH(1,jsta_2l,L))
  into
  CALL EXCH(UH(ista_2l,jsta_2l,L))
  CALL EXCH(VH(ista_2l,jsta_2l,L))
  These changes are for 2D decomposition update and will have no impact on results you finished.

* In MDLFLD.f: line 3777
  Change
  IF(MODELNAME  ==  'GFS')THEN
  into
  IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R')THEN
  Also add a change log in this subroutine.

I added your suggestions for 1) and 2). Thanks!!
However, I am reluctant to add the 3rd change. In fact, in "MDLFLD.f", Line 3777, it needs to compute PBL height based on Richardson number. GFS does use Richardson number to calculate the PBL height (PBLRI) so we can directly use the PBL height from GFS moel. But for other models such as HAFS or RRFS, it needs to re-calculate PBLRI. I did a test and the result is quite different if using the PBL height from HAFS or RRFS.

@WenMeng-NOAA
Copy link
Collaborator

@wzzheng90

However, I am reluctant to add the 3rd change. In fact, in "MDLFLD.f", Line 3777, it needs to compute PBL height based on Richardson number. GFS does use Richardson number to calculate the PBL height (PBLRI) so we can directly use the PBL height from GFS moel. But for other models such as HAFS or RRFS, it needs to re-calculate PBLRI. I did a test and the result is quite different if using the PBL height from HAFS or RRFS.

GFS output PBL height as "hpbl" in netcdf. The UPP read it as pblh (see here) The line 3777 is for assigning gfs's pblh as pblri. I checked rrfs and hafs model history files. The hpbl is included. So I might think the modelname "FV3R" should be added in line 3777 to keep all ufs models consistent.

@wzzheng90
Copy link
Contributor Author

@wzzheng90

However, I am reluctant to add the 3rd change. In fact, in "MDLFLD.f", Line 3777, it needs to compute PBL height based on Richardson number. GFS does use Richardson number to calculate the PBL height (PBLRI) so we can directly use the PBL height from GFS moel. But for other models such as HAFS or RRFS, it needs to re-calculate PBLRI. I did a test and the result is quite different if using the PBL height from HAFS or RRFS.

GFS output PBL height as "hpbl" in netcdf. The UPP read it as pblh (see here) The line 3777 is for assigning gfs's pblh as pblri. I checked rrfs and hafs model history files. The hpbl is included. So I might think the modelname "FV3R" should be added in line 3777 to keep all ufs models consistent.

Maybe I did not explain it clearly. My point is that the PBL height from RRFS or HAFS model would not be derived based on Richardson number (different PBL schemes), so here it needs to re-calculate. I am not clear why here it needs Ri-based PBL height.
So this would be discussed later. Anyway, let's include "FV3R" at present. Thanks.

@WenMeng-NOAA
Copy link
Collaborator

@wzzheng90

However, I am reluctant to add the 3rd change. In fact, in "MDLFLD.f", Line 3777, it needs to compute PBL height based on Richardson number. GFS does use Richardson number to calculate the PBL height (PBLRI) so we can directly use the PBL height from GFS moel. But for other models such as HAFS or RRFS, it needs to re-calculate PBLRI. I did a test and the result is quite different if using the PBL height from HAFS or RRFS.

GFS output PBL height as "hpbl" in netcdf. The UPP read it as pblh (see here) The line 3777 is for assigning gfs's pblh as pblri. I checked rrfs and hafs model history files. The hpbl is included. So I might think the modelname "FV3R" should be added in line 3777 to keep all ufs models consistent.

Maybe I did not explain it clearly. My point is that the PBL height from RRFS or HAFS model would not be derived based on Richardson number (different PBL schemes), so here it needs to re-calculate. I am not clear why here it needs Ri-based PBL height. So this would be discussed later. Anyway, let's include "FV3R" at present. Thanks.

@wzzheng90 Are you meaning at model side, global FV3 and regional FV3 use different schemes to calculate PBL height? In that case, there is no need to add change in line 3777.

@wzzheng90
Copy link
Contributor Author

@WenMeng-NOAA yes, using different PBL schemes. However, it may need to evaluate the results against the Obs to see which one is better in the future.

@WenMeng-NOAA WenMeng-NOAA linked an issue Feb 27, 2023 that may be closed by this pull request
@WenMeng-NOAA WenMeng-NOAA added Ready for Review This PR is ready for code review. Baseline Change The baselines of the UPP regression tests are changed. labels Feb 27, 2023
@WenMeng-NOAA
Copy link
Collaborator

The UPP RT tests were completed on WCOSS2, Hera and Orion. The baselines for gfs and hafs and rrfs will be recreated due to gust calculation update.

gfs: 
    master--
   14:21345016:GUST:surface:rpn_corr=0.996106:rpn_rms=0.706175
hafs: 
    HURPRS--
   3:2977237:GUST:surface:rpn_corr=0.994846:rpn_rms=0.556539
rrfs:  
    NATLEV--
   1286:5456532867:GUST:surface:rpn_corr=0.99558:rpn_rms=0.698341
    PRSLEV--
    51:293497035:GUST:surface:rpn_corr=0.99558:rpn_rms=0.698341   

@WenMeng-NOAA
Copy link
Collaborator

I will proceed to merging this PR and skip the CI failure from intel build. That failure have no impact on UPP performance on WCOSS2 and other HPC platforms. The fix could be implemented later.

@WenMeng-NOAA WenMeng-NOAA merged commit 3e90715 into NOAA-EMC:develop Feb 27, 2023
BinLiu-NOAA pushed a commit that referenced this pull request Feb 28, 2023
* Revised calculation of wind GUST for UFS applications

* Revised calculation of wind GUST for UFS applications

* Revised Calculation of Wind Gust for UFS Applications

* Revised calculation of wind GUST for UFS applications

* Revised calculation of wind GUST for UFS applications
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Baseline Change The baselines of the UPP regression tests are changed. GEFSV13 GFSV17 HAFS Ready for Review This PR is ready for code review. RRFS
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Gust wind weaker than mean wind in GFS
2 participants