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

Updated land perturbation scheme #176

Merged
merged 45 commits into from
Aug 31, 2020

Conversation

ClaraDraper-NOAA
Copy link
Contributor

@ClaraDraper-NOAA ClaraDraper-NOAA commented Jul 27, 2020

  1. Clean up of the pre-existing land perturbation scheme (was called with do_sfcperts) that was intended for use with GEFS forecasts. This scheme is not being used, and needed some clean-up to work robustly. This scheme has been retained as lndp_type=1 (output is zero diff to old scheme) – think about removing in the future?

  2. Addition of new land surface perturbation option (lndp_type=2), intended for use in cycling DA, and designed to sit outside of the forecast model code.

Regressions tests have passed on hera, and I’ve added a fv3_ccpp_lndp regression test for the lndp_type=2 option.

Detailed list of changes:

In stochastic physics:

  • logical do_sfcperts replaced with integer lndp_type (to enable selection of multiple land pert scheme options)
  • deleted land_sppt namelist entry (land SPPT has not been implemented, and experiments indicate it has minimal impact)
  • changed namelist names for consistent formatting, and to specify land (lnd) rather than more generic surface (sfc)
  • hard-wired npsfc (now nplnd) dimension for old scheme, as was not coded correctly for npsfc >1 (this is the number of patterns used for the surface perturbations)
  • replaced hardwired index in old scheme for the perturbed variables in sfc_wts with scheme to assign indexes according to which variables are specified for perturbations
  • merged run_stochastic_physics_sfc routine into run_stochastic_physics
  • simplified namelist inputs, by replacing individual variables in each namelist with an input vector of variable codes for which perturbations are requested (lndp_var_list), and a vector of perturbation magnitudes (lndp_prt_list)
    *For lndp_type=2, added capacity to apply land perturbations throughout forecast (do_advance_pattern), and to include the land perturbations in the stochini file.

Also, fixed a couple of minor bugs, most notably:
*added missing error trapping in stochastic physics (may not have done this everywhere that is necessary).

In FV3:
*merged run_stochastic_physics_sfc routine into run_stochastic_physics

  • added calls to new land perturbation scheme
  • added error trapping for abnormal exit from run_stochastic_physics
  • added GFS_land_perts module with routines to apply the new perturbations
  • replaced hardwired index in old scheme for the perturbed variables in sfc_wts with scheme to assign indexes according to which variables are specified for perturbations
  • various changes to variables in namelists and type_defs

In ccpp/physics:

*variable name updates

  • replaced hardwired index in old scheme for the perturbed variables in sfc_wts with scheme to assign indexes according to which variables are specified for perturbations

In UFS:
• Updated variable names in namelists
• Addition of lndp test

ASSOCIATED PULL REQUESTS:
stochastic_physics 28
ccpp-physics 480
fv3atm 148
ufs-weather-model 176

… variables are in generic (i.e., variable agnostic) arrays
@pjpegion
Copy link
Collaborator

pjpegion commented Aug 6, 2020

@ClaraDraper-NOAA There are some major changes to the stochastic physics repo (and fv3_atm) that are going in today. I am not sure how much this will affect your PR. But you probably want to take a look soon.

@ClaraDraper-NOAA
Copy link
Contributor Author

ClaraDraper-NOAA commented Aug 6, 2020 via email

@climbfuji climbfuji requested review from climbfuji, junwang-noaa, DusanJovic-NOAA and pjpegion and removed request for climbfuji August 27, 2020 16:27
@climbfuji
Copy link
Collaborator

All regression tests have passed. I will start by merging the ccpp-physics PR.

@@ -17,4 +17,5 @@
[submodule "stochastic_physics"]
path = stochastic_physics
url = https://github.com/noaa-psd/stochastic_physics
branch = master
branch = master
Copy link
Collaborator

Choose a reason for hiding this comment

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

Would you please remove the extra space and extra line below?

Copy link
Collaborator

@climbfuji climbfuji left a comment

Choose a reason for hiding this comment

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

Approved. Since @ClaraDraper-NOAA is out for the rest of the day, I suggest to merge the PR as-is and fix the extra whitespaces / new line in the next commit.

@junwang-noaa
Copy link
Collaborator

junwang-noaa commented Aug 31, 2020 via email

@junwang-noaa junwang-noaa merged commit fd5c310 into ufs-community:develop Aug 31, 2020
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.

4 participants