NOAA-EMC / UPP

Other
36 stars 98 forks source link

Add temporal max wind at 10-meter as SFS product #986

Open WenMeng-NOAA opened 3 months ago

WenMeng-NOAA commented 3 months ago

CPC requests temporal max wind at 10-meter as SFS product.

KarinaAsmar-NOAA commented 3 months ago

@WenMeng-NOAA Is this the same max wind output as in RRFS? I see in rrfs_postcntrl.xml the max u,v wind components at 10m (ids 506 and 507 in UPP GRIB2 Table.

KarinaAsmar-NOAA commented 2 months ago

@JesseMeng-NOAA CPC has requested the 10m temporal max wind to be added to SFS products list. The EMC developer team will be adding the feature to the model so that it can be read by UPP. UPP currently has a similar capability for RRFS, with id 422. Can this UPP ID along with its source variable name 'spd10max' in INITPOST_NETCDF.f be used for this SFS application?

HuiyaChuang-NOAA commented 2 months ago

@JesseMeng-NOAA CPC has requested the 10m temporal max wind to be added to SFS products list. The EMC developer team will be adding the feature to the model so that it can be read by UPP. UPP currently has a similar capability for RRFS, with id 422. Can this UPP ID along with its source variable name 'spd10max' in INITPOST_NETCDF.f be used for this SFS application?

Yes I believe so but model needs to add this variables to the output first for UPP to read in. @wzzheng90 @yangfanglin CPC confirmed at SFS meeting today, they are looking for maximum 10 m wind speed over a certain time period. I think we can just output maximum 10 m wind speed over our GFS/SFS bucket of 6 hours and then CPC can find 12 hr and 24 hr max from our 6 hourlu max.

WenMeng-NOAA commented 2 months ago

@KarinaAsmar-NOAA Please provide @wzzheng90 the variable name of maximum 10-m wind speed in the model history files so he can look into it the model code.

KarinaAsmar-NOAA commented 2 months ago

@wzzheng90 The variable name for the max 10m wind speed that UPP is currently reading is 'spd10max', see code here

wzzheng90 commented 2 months ago

@KarinaAsmar-NOAA Yes, the model history files include hourly maximum wind speed 'spd10max'.

KarinaAsmar-NOAA commented 2 months ago

@KarinaAsmar-NOAA Yes, the model history files include hourly maximum wind speed 'spd10max'.

@wzzheng90 Thanks. Is it possible for the model to produce 6-hr max or longer wind speed using the 'spd10max' variable name?

wzzheng90 commented 2 months ago

Need to modify the code in the model, I think.

KarinaAsmar-NOAA commented 2 months ago

Need to modify the code in the model, I think.

Thanks. If you can output 'spd10max' at 6-hour intervals from the model, we should be able to test it with UPP.

wzzheng90 commented 2 months ago

@KarinaAsmar-NOAA It is just hard-wired for hourly maximum wind speed 'spd10max' in the model. If you need 'spd10max' at 6-hour intervals, you'd better to contact the model management to decide what the best solution is about this issue.

KarinaAsmar-NOAA commented 2 months ago

@KarinaAsmar-NOAA It is just hard-wired for hourly maximum wind speed 'spd10max' in the model. If you need 'spd10max' at 6-hour intervals, you'd better to contact the model management to decide what the best solution is about this issue.

Thanks.

@yangfanglin @HuiyaChuang-NOAA @WenMeng-NOAA Would you please advise on the best path forward? It seems the SFS model is hard-wired for hourly outputs of max wind speed. For CPC use, we would need at least 6-hour.

yangfanglin commented 2 months ago

the current hourly spd10max needs to be kept to support regional model application. A new variable needs to be added in the UFS model and UPP to produce and record max wind speed at a 6-hour interval.

@wzzheng90 please proceed forward to add the latter to the ufs_weather_model code, using a different name, for instance, spd10max6hr

wzzheng90 commented 2 months ago

@yangfanglin and all: It seems that adding 'spd10max' at 6-hour intervals is not trivial in the ufs_weather_model code. For the current hourly spd10max, please see: "maximum_hourly_diagnostics.F90" and "maximum_hourly_diagnostics.meta" (https://github.com/ufs-community/ccpp-physics/blob/2a50cccd916cceafaf031f4cd14f2ecef277be8f/physics/Interstitials/UFS_SCM_NEPTUNE/maximum_hourly_diagnostics.F90). So,do you know who manages this kind of code in the ufs_weather_model, so that I can contact him/her to discuss about this issue?

At the same time, is it possible to derive 'spd10max' at 6-hour intervals (spd10max6hr) from the current hourly spd10max in the UPP? Any further suggestions? Thanks!

WenMeng-NOAA commented 2 months ago

The UPP has no capability to save instant/hourly variables to calculate time averaged/accumulated variables. @wzzheng90 @yangfanglin

HuiyaChuang-NOAA commented 2 months ago

Echoing what Wen said, UPP does not read from multiple forecasts.

yangfanglin commented 2 months ago

@wzzheng90 can you follow in the ufs-weatehr-model code how T2m_max and T2m_min etc are computed to set up spd10max6hr ?

wzzheng90 commented 2 months ago

@yangfanglin Just check them. Similar to T2m_max or T2m_min, the ufs-weatehr-model code also outputs the maximum wind speed "'wind10mmax". So, can the UPP read this "wind10mmax"?

HuiyaChuang-NOAA commented 2 months ago

@yangfanglin Just check them. Similar to T2m_max or T2m_min, the ufs-weatehr-model code also outputs the maximum wind speed "'wind10mmax". So, can the UPP read this "wind10mmax"?

Is this wind speed max over 6 hour bucket? Yes, UPP can be updated to read any variables from model.

wzzheng90 commented 2 months ago

@HuiyaChuang-NOAA yes. should be the same way as T2m_max or T2m_min.

WenMeng-NOAA commented 2 months ago

@wzzheng90 Thanks for working on this. Could you generate one cycle of model history files for the UPP testing?

wzzheng90 commented 2 months ago

@WenMeng-NOAA Sure. I am going to test one case.

wzzheng90 commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

WenMeng-NOAA commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

@wzzheng90 The model history files look good for me. Thanks!

@KarinaAsmar-NOAA Please working on the UPP updates to read in new fields "u10_max", "v10_max" and "wind10m_max" and write in grib2.

KarinaAsmar-NOAA commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

@wzzheng90 The model history files look good for me. Thanks!

@KarinaAsmar-NOAA Please working on the UPP updates to read in new fields "u10_max", "v10_max" and "wind10m_max" and write in grib2.

Thanks @wzzheng90 for generating the files. @WenMeng-NOAA I'll update UPP to read these fields and notify when ready.

KarinaAsmar-NOAA commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

@wzzheng90 I can no longer access this directory. Would you please generate another copy that I can access? This time I'll make and keep a copy to avoid it being removed. Thanks.

wzzheng90 commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

@wzzheng90 I can no longer access this directory. Would you please generate another copy that I can access? This time I'll make and keep a copy to avoid it being removed. Thanks.

@KarinaAsmar-NOAA The files on stmp (WCOSS2) can not be kept for longer. Anyway, I am going to generate them again, but it may take time.

KarinaAsmar-NOAA commented 2 months ago

I generated the 48-h model history files for the UPP testing with adding 3 fields:

wind10mmax, u10mmax and v10mmax

/lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Please check. Thanks.

@wzzheng90 I can no longer access this directory. Would you please generate another copy that I can access? This time I'll make and keep a copy to avoid it being removed. Thanks.

@KarinaAsmar-NOAA The files on stmp (WCOSS2) can not be kept for longer. Anyway, I am going to generate them again, but it may take time.

Thanks @wzzheng90. It did not occur to me to make a copy. Please let me know when the new files are ready and I'll copy a few into my directories and keep for testing. Thanks!

wzzheng90 commented 2 months ago

@KarinaAsmar-NOAA I re-generated the 48-h model history files for the UPP testing with adding 3 fields (wind10mmax, u10mmax and v10mmax): /lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

KarinaAsmar-NOAA commented 2 months ago

@KarinaAsmar-NOAA I re-generated the 48-h model history files for the UPP testing with adding 3 fields (wind10mmax, u10mmax and v10mmax): /lfs/h2/emc/stmp/weizhong.zheng/HR3_SFS_C96/COMROOT/hr3_2022090100_SFS/gfs.20220901/00/model_data/atmos/history

Thanks @wzzheng90. I'll make a copy for testing.

KarinaAsmar-NOAA commented 1 month ago

Comparison of max winds generated with SFS model vs. UPP is here: Comparison of SFS Max Wind outputs.pptx. Please note that different tools were used for plotting (Python for model netCDF vs. GrADS for UPP GRIB2), therefore the plots are not standardized for comparison. They serve to assess overall similarity between max winds produced with SFS model and UPP.

HuiyaChuang-NOAA commented 1 month ago

Comparison of max winds generated with SFS model vs. UPP is here: Comparison of SFS Max Wind outputs.pptx. Please note that different tools were used for plotting (Python for model netCDF vs. GrADS for UPP GRIB2), therefore the plots are not standardized for comparison. They serve to assess overall similarity between max winds produced with SFS model and UPP.

@KarinaAsmar-NOAA your model and UPP output comparisons look good. Did you make sure UPP output has appropriate time stamps?

KarinaAsmar-NOAA commented 1 month ago

Comparison of max winds generated with SFS model vs. UPP is here: Comparison of SFS Max Wind outputs.pptx. Please note that different tools were used for plotting (Python for model netCDF vs. GrADS for UPP GRIB2), therefore the plots are not standardized for comparison. They serve to assess overall similarity between max winds produced with SFS model and UPP.

@KarinaAsmar-NOAA your model and UPP output comparisons look good. Did you make sure UPP output has appropriate time stamps?

@HuiyaChuang-NOAA Are you referring to the valid date and the forecast time as below? Or the actual time values for the time series? image

WenMeng-NOAA commented 1 month ago

@JesseMeng-NOAA @KarinaAsmar-NOAA It appears to me, that UPP IDs 422, 783 and 784 can be used to output max wind speed, and relevant U/V components in UPP code. There are no need to assign new UPP IDd or new grib2 name.

max wind speed: 422, grib2 name -- WIND
max wind speed U component: 783, grib2 name -- WAXUW
max wind peed V component 784: grib2 name -- WAXVW
KarinaAsmar-NOAA commented 1 month ago

@JesseMeng-NOAA @KarinaAsmar-NOAA It appears to me, that UPP IDs 422, 783 and 784 can be used to output max wind speed, and relevant U/V components in UPP code. There are no need to assign new UPP IDd or new grib2 name.

max wind speed: 422, grib2 name -- WIND
max wind speed U component: 783, grib2 name -- WAXUW
max wind peed V component 784: grib2 name -- WAXVW

@WenMeng-NOAA Those IDs (422,783,784) read different variable names the netCDF files than the ones provided for SFS. Also, from the documentation and the code it seems that these IDs are meant for hourly products. An example of the GRIB2 product for 783 and 784 is below, which shows hourly products:

image

Do you suggest we try using these IDs for the 6-hourly max winds?

WenMeng-NOAA commented 1 month ago

@KarinaAsmar-NOAA

max wind speed: 422, grib2 name -- WIND max wind speed U component: 783, grib2 name -- WAXUW max wind peed V component 784: grib2 name -- WAXVW

WenMeng-NOAA commented 1 month ago

@KarinaAsmar-NOAA You might modify these products in UPP to be universal for all UFS-based model outputs (e.g. GFS, GEFS, SFS), rather than hard-wired to 6-hourly max.

KarinaAsmar-NOAA commented 1 month ago

@KarinaAsmar-NOAA You might modify these products in UPP to be universal for all UFS-based model outputs (e.g. GFS, GEFS, SFS), rather than hard-wired to 6-hourly max.

@WenMeng-NOAA Ok I'll give that a try. Thanks!

KarinaAsmar-NOAA commented 1 month ago

@WenMeng-NOAA The branch has been updated to modify existing ids 422, 783, and 784 with ufs time buckets. Comparison of SFS model winds vs. UPP outputs is here: Comparison.of.SFS.Max.Wind.outputs.pptx. The slides include a snapshot of the forecast times for 2 models with the new changes: 6-hourly for SFS and 1-hourly for HRRR.