-
Notifications
You must be signed in to change notification settings - Fork 102
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
Addition of Eddy Diffusivity (Km) and TKE Diagnostic Variables to UPP for HAFS #271
Comments
@AndrewHazelton You might get some guide for adding a new variable in UPP code at Also, the on-going PR #263 might be a good reference for your case. Please let me know if you need further information. Thanks! |
Wen, Thank you for the information! I am reading through the document, and one of the variables I need (TKE) is already in post_avblflds.xml. However, the field gives a constant 0 value when I look at the grb2 output. Where can I confirm that the TKE variable is correctly getting output or processed from the netcdf output files I have from HAFS? Andy |
@AndrewHazelton The UPP internal variable assigned for 3D TKE at hybrid level is "q2". You might make the changes in INITPOST_NETCDF.f for reading "tkediagnostic" from netcdf and assign as q2. |
Wen, the output files I have are on pressure surfaces. That should also be available it looks like:
So would it still need to be "q2" in INITPOST_NETCDF.f, or something else? |
@AndrewHazelton Yes, the q2 is the internal variable for TKE at hybrid level. You need to ensure in the read interface INITPOST_NETCDF.f, TKE is correctly read from the model output and passed into the internal variable for model hybrid level. The UPP has another process to interpolate fields from hybrid level into isobaric level. |
Wen, thanks. I have added "tkediagnostic" to INITPOST_NETCDF.f, and it compiled OK.
I will do a test run and see if that variable works at least. |
Hi Wen, I just wanted to let you know that I have successfully completed adding these variables. Thanks for the guidance! |
@AndrewHazelton Glad to know your issue was solved. |
Hello,
I have a set of PBL experiments that we are performing for the FV3-based Hurricane Analysis and Forecast System (HAFS), and we want to add diagnostic variables of eddy diffusivity (Km) and turbulent kinetic energy (TKE) to the UPP grib2 output. The variables are already output in the netcdf files that FV3 outputs, but we would like to get them on the same post-processed grid as the rest of our data.
The names of the variables output from the subroutine are "dkudiagnostic" and "tkediagnostic".
I have added these to the source code (on Orion) at:
/work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/INITPOST_NETCDF.f
I have also tried to add these to the source code for the requested fields (on Orion) at:
/work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/RQSTFLD.F
TKE is already a requested field.
I also added TDCMOM (the grib2 name for eddy diffusivity) to:
/work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/VRBLS3D_mod.f
However, I am still getting an error when I try to compile:
/work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/INITPOST_NETCDF.f(1287): error #6404: This name does not have a type, and must have an explicit type. [TDCMOM]
------------^
/work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/INITPOST_NETCDF.f(1292): error #6404: This name does not have a type, and must have an explicit type. [TKE]
------------^
compilation aborted for /work/noaa/aoml-hafs1/ahazelto/HAFS2021/HAFS_20210219/HAFS/sorc/hafs_post.fd/sorc/ncep_post.fd/INITPOST_NETCDF.f
I was wondering: what steps would be needed to make sure this diagnostic TKE and eddy diffusivity can be correctly added and compiled?
Thanks!
Andy Hazelton (Andrew.Hazelton@noaa.gov)
The text was updated successfully, but these errors were encountered: