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

Update ice climo, fix option for non-fractional grid, and add cloud fraction for Thompson #902

Merged
merged 2 commits into from
Jul 15, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions parm/config/config.fcst
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,9 @@ export DO_OCN_PERT_EPBL=${DO_OCN_PERT_EPBL:-"NO"}
#coupling settings
export FRAC_GRID=".true."
export cplmode="nems_frac"
if [ $FRAC_GRID = ".false." ]; then
export cplmode="nems_orig"
fi
export psm_bc="1"

export min_lakeice="0.15"
Expand Down
1 change: 1 addition & 0 deletions parm/parm_fv3diag/diag_table
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"gfs_dyn", "ps", "pressfc", "fv3_history", "all", .false., "none", 2
"gfs_dyn", "hs", "hgtsfc", "fv3_history", "all", .false., "none", 2

"gfs_phys", "cldfra", "cldfra", "fv3_history", "all", .false., "none", 2
Copy link
Contributor

Choose a reason for hiding this comment

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

What will happen if we try to run GFDL MP with this new variable? Right now cycling still only works with GFDL.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

What will happen if we try to run GFDL MP with this new variable? Right now cycling still only works with GFDL.

@WalterKolczynski-NOAA This should have no impact on cycling with GFDL MP, but I have not tested.

Copy link
Contributor

@ChunxiZhang-NOAA ChunxiZhang-NOAA Jul 14, 2022

Choose a reason for hiding this comment

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

I did an ATM only test with FV3_GFS_v16 suite and imp_physics=11 (GFDL). The test was successful.

Copy link
Contributor

@aerorahul aerorahul Jul 16, 2022

Choose a reason for hiding this comment

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

This particular change breaks cycling (hybrid EnVar) when trying to compute ensemble mean from the surface files.
The sfcfHHH.nc file now contains a 4D variable cldfra. I am not sure if it is a consequence of this line or elsewhere. I apologize if it was introduced elsewhere.

Screen Shot 2022-07-16 at 10 53 01 AM

As a result, a change in needed in the GSI utility computing surface ensemble mean. Some basic debugging revealed Screen Shot 2022-07-16 at 10 52 32 AM

A test is running with the change in the GSI utility to skip this variable.
The test branch of GSI-utils is here

The test is being performed as part of PR #859.

Q. for possibly @yangfanglin and @RussTreadon-NOAA.
Should the variable be skipped or should the variable be averaged?
The test above is skipping it (easy).
To compute the average with this code will need work.

FYI. @WalterKolczynski-NOAA

Copy link
Contributor

Choose a reason for hiding this comment

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

Add @emilyhcliu since the question at hand pertains to cloud fraction, cldfra.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Q. for possibly @yangfanglin and @RussTreadon-NOAA. Should the variable be skipped or should the variable be averaged? The test above is skipping it (easy). To compute the average with this code will need work.

@aerorahul I think cldfra can be skipped for computing ensemble mean surface file. @emilyhcliu if a cycled experiment is running with GFDL MP, cld_amt is the actual cloud fraction and is saved in atmf . If running with Thompson MP, cldfra is the cloud fraction and saved in sfcf. However, my impression is that even cld_amt was not used in any part of the DA in GFS.v16.

Copy link
Contributor

Choose a reason for hiding this comment

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

Question for @yangfanglin . Why does Thompson MP write cldfra to sfcfXXX? It seems the 3d cloud fraction field should go in atmfXXX. A 3d field is not a surface field.

Copy link
Contributor

Choose a reason for hiding this comment

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

@RussTreadon-NOAA
I was about to ask the same question.
cldfra is neither a "surface" field, nor a 2D field.

Copy link
Contributor Author

@yangfanglin yangfanglin Jul 18, 2022

Choose a reason for hiding this comment

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

@RussTreadon-NOAA I was about to ask the same question. cldfra is neither a "surface" field, nor a 2D field.

@aerorahul @RussTreadon-NOAA The model has two groups of outputs. dyn/atmf and phy/sfc. For GFDL MP, cld_amt is a "prognostic" variable in the dycore group; For Thompson MP, cldfra is a diagnostic variable from CCPP physics in the phy/sfc output group. Placing variables across groups is technically difficult, if not impossible. This is the major reason the 3d cldfra is written in sfc group. I had long discussion with Jun (@junwang-noaa ) about this, but this is the best we can do given the current model infrastructure. Please note @ChunxiZhang-NOAA is going to make a minor change to the diag_table to have cldfra labeled as fv3_history2d

"gfs_phys", "ALBDO_ave", "albdo_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcp_ave", "cprat_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcpb_ave", "cpratb_ave", "fv3_history2d", "all", .false., "none", 2
Expand Down
1 change: 1 addition & 0 deletions parm/parm_fv3diag/diag_table_cpl
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@
"gfs_dyn", "ps", "pressfc", "fv3_history", "all", .false., "none", 2
"gfs_dyn", "hs", "hgtsfc", "fv3_history", "all", .false., "none", 2

"gfs_phys", "cldfra", "cldfra", "fv3_history", "all", .false., "none", 2
"gfs_phys", "ALBDO_ave", "albdo_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcp_ave", "cprat_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcpb_ave", "cpratb_ave", "fv3_history2d", "all", .false., "none", 2
Expand Down
1 change: 1 addition & 0 deletions parm/parm_fv3diag/diag_table_da
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"gfs_dyn", "ps", "pressfc", "fv3_history", "all", .false., "none", 2
"gfs_dyn", "hs", "hgtsfc", "fv3_history", "all", .false., "none", 2

"gfs_phys", "cldfra", "cldfra", "fv3_history", "all", .false., "none", 2
"gfs_phys", "ALBDO_ave", "albdo_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcp_ave", "cprat_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcpb_ave", "cpratb_ave", "fv3_history2d", "all", .false., "none", 2
Expand Down
2 changes: 1 addition & 1 deletion ush/forecast_postdet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -343,7 +343,7 @@ EOF
FNTSFC=${FNTSFC:-"$FIX_AM/RTGSST.1982.2012.monthly.clim.grb"}
FNSNOC=${FNSNOC:-"$FIX_AM/global_snoclim.1.875.grb"}
FNZORC=${FNZORC:-"igbp"}
FNAISC=${FNAISC:-"$FIX_AM/CFSR.SEAICE.1982.2012.monthly.clim.grb"}
FNAISC=${FNAISC:-"$FIX_AM/IMS-NIC.blended.ice.monthly.clim.grb"}
FNALBC2=${FNALBC2:-"${FIX_SFC}/${CASE}.facsf.tileX.nc"}
FNTG3C=${FNTG3C:-"${FIX_SFC}/${CASE}.substrate_temperature.tileX.nc"}
FNVEGC=${FNVEGC:-"${FIX_SFC}/${CASE}.vegetation_greenness.tileX.nc"}
Expand Down