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

Adding support for CMA-GFS in WPS #236

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

andrewsoong
Copy link

The CMA-GFS grib2 datasets is now able to be ingested by the ungrib program. The GRAPES_GFS(here in after referred to as CMA_GFS), the new generation of Global/Regional Assimilation and Prediction Enhanced System which is independently developped by China Meteorological Administration (CMA), has been put into formal operation. So we are committed to solving the problem of WPS correctly handling CMA_GFS forecast data.

one Vtable files(Vtable.CMA_GFS) has been created with the fields required by the WRF model.
Modifications to the ungrib source code: Adding support for code 738 in rd_grid2.F because model levels of CMA_GFS are on generalized vertical height coordinates.

The CMA_GFS real time data is here:http://data.wis.cma.cn/DCPC_WMC_BJ/open/nwp/gmf_gra/

I've tested the program with an Intel compiler and it passed without errors. CMA_GFS forecast data were also used to test, the results are normal.

This Vtable was created for CMA/CMA_GFS model data from the CMA server.
Developed by Dr. Haiqing SONG from Inner Mongolia Meteorological Service of China Meteorological Administration(CMA).
I modified the rd_grib2.F file to solve the problem that WPS/ungrib can not correctly decode the CMA-GFS model of soil moisture and soil temperature.
Delete SeaIce and LANDDN. 
There are not Seaice and LANDDN in CMA-GFS data.
@mgduda mgduda changed the base branch from master to develop May 10, 2024 16:10
@mgduda mgduda requested review from weiwangncar and jimbresch May 10, 2024 16:14
@jimbresch
Copy link
Collaborator

A test of the modified code on a dataset pulled from that CMA web site segfaulted. I haven't found the cause, but note that CMA uses several vertical level types that aren't decoded by rd_grib2. Their files also cause problems for g2print. So, it will take debugging and mods to get it working.

I also suggest renaming Vtable.CMA_GFS to something else, since it may be confused with the NCEP GFS by some users. Vtable.CMA_GRAPES perhaps? Otherwise we may need to have a naming convention of the form Vtable.center_model and rename all the NCEP Vtables.

Copy link
Collaborator

@jimbresch jimbresch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ungrib failed on derecho. Some debugging and mods may be needed.

@andrewsoong
Copy link
Author

A test of the modified code on a dataset pulled from that CMA web site segfaulted. I haven't found the cause, but note that CMA uses several vertical level types that aren't decoded by rd_grib2. Their files also cause problems for g2print. So, it will take debugging and mods to get it working.

I also suggest renaming Vtable.CMA_GFS to something else, since it may be confused with the NCEP GFS by some users. Vtable.CMA_GRAPES perhaps? Otherwise we may need to have a naming convention of the form Vtable.center_model and rename all the NCEP Vtables.

Hello, Jim.
The China Meteorological Administration(CMA) has changed its name from GRAPES_GFS to CMA_GFS.
To differentiate from NCEP GFS, it is necessary to remind users.
Do you now need to change Vtable.CMA_GFS to Vtable.CMA_GRAPES?
Also, I think we need to have a naming convention of the form Vtable.center_model.
Thanks !

@jimbresch
Copy link
Collaborator

Hi Andrew,
OK, we'll keep the name as Vtable.CMA_GFS. The decoding is failing inside an NCEP g2 library routine. Do you have a dataset that has been successfully ungribbed with WPS? Every file that I've tested from the CMA web site is very large and has failed to be decoded.
The date tag on your code modification is from 2018. If CMA increased the resolution of their GFS since then, it might explain the failure.

@andrewsoong
Copy link
Author

Hi Andrew, OK, we'll keep the name as Vtable.CMA_GFS. The decoding is failing inside an NCEP g2 library routine. Do you have a dataset that has been successfully ungribbed with WPS? Every file that I've tested from the CMA web site is very large and has failed to be decoded. The date tag on your code modification is from 2018. If CMA increased the resolution of their GFS since then, it might explain the failure.

Hi,Jim,
I have just tested the latest CMA-GFS forecast data from:http://data.wis.cma.cn/DCPC_WMC_BJ/open/nwp/gmf_gra/t1200/f0_f240_6h/, WPS-V4.5 runs well, generated normal data. See: hsong_2024-05-21_8_09_45.txt for test information. My Linux platform is Rock Linux 9.2, and the Intel compiler version is 2021.10.0.
By the way, do you need me to mail you any data files for your tests? What's your e-mail address? Feel free to email me.
hsong_2024-05-21_8_09_45.txt

Haiqing Soong (宋海清)
Ph.D, Associate Professor,
Ecological and Agricultural Meteorology Center of Inner Mongolia &
Inner Mongolia Meteorological Satellite Remote Sensing Center,
Building A, Inner Mongolia Meteorological Bureau, Hailaer Road,
Xincheng District, Hohhot, 010051,China
Tel: 0471-3335230
E-Mail: [email protected], and [email protected]

@andrewsoong
Copy link
Author

@jimbresch Do We need to resubmit this PR based on WPS-V4.6.0?

@weiwangncar
Copy link
Collaborator

@andrewsoong You should be able to continue to amend this PR, unless you are addressing a different issue.

@andrewsoong andrewsoong requested a review from jimbresch October 30, 2024 04:31
@andrewsoong
Copy link
Author

Hi Andrew, OK, we'll keep the name as Vtable.CMA_GFS. The decoding is failing inside an NCEP g2 library routine. Do you have a dataset that has been successfully ungribbed with WPS? Every file that I've tested from the CMA web site is very large and has failed to be decoded. The date tag on your code modification is from 2018. If CMA increased the resolution of their GFS since then, it might explain the failure.

Have you solved your problem?

@jimbresch
Copy link
Collaborator

The problem was due to incompatibility of the external libraries compiled with an older version of the compiler on derecho with a new re-compile of WPS. The wrfhelp libraries don't work with a new compile. The problem was hard to track since ungrib fails on some grib2 files and not others. The CMA file was one which caused a failure. The fault is not with this PR.

Copy link
Collaborator

@jimbresch jimbresch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These changes permit ungribbing of the CMA model output. Tests on derecho were successful. Note that the global CMA output files are very large and time-consuming to download.

@andrewsoong
Copy link
Author

These changes permit ungribbing of the CMA model output. Tests on derecho were successful. Note that the global CMA output files are very large and time-consuming to download.

Thanks,Jim!

Dr. Wei Wang,Will these changes work correctly on the NCAR machine? Thanks! @weiwangncar

@weiwangncar
Copy link
Collaborator

@andrewsoong: @jimbresch has tested it on our HPC (Derecho), and it seems to work.

@andrewsoong
Copy link
Author

@andrewsoong: @jimbresch has tested it on our HPC (Derecho), and it seems to work.

@weiwangncar Is the WRF team considering merging this capability in the next release?

@weiwangncar
Copy link
Collaborator

@andrewsoong Yes, we are considering it.

@andrewsoong
Copy link
Author

@andrewsoong Yes, we are considering it.

Thanks,Wei !

@jimbresch
Copy link
Collaborator

@andrewsoong It would be helpful if you or CMA could provide documentation on the grib codes for the fields in the CMA model output files. Some of the fields seem to be non-standard or locally defined. While not needed for initializing WRF, the codes could be added to g2print.

@andrewsoong
Copy link
Author

@andrewsoong It would be helpful if you or CMA could provide documentation on the grib codes for the fields in the CMA model output files. Some of the fields seem to be non-standard or locally defined. While not needed for initializing WRF, the codes could be added to g2print.

I am very sorry, I contacted CMA Technical Staff, but I did not get the relevant documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants