Skip to content

Commit

Permalink
Merge bogensch/atm/SCM_REPLAY_quasiB4B (PR #3051)
Browse files Browse the repository at this point in the history
Improve accuracy of the SCM "Replay" mode

This PR improves the accuracy of the SCM Replay mode. Previous implementation
allowed the user to "replicate the behavior" of an E3SM run in SCM, but with
temperature errors on the order of ~0.1 K after a day. This PR will provide
the user with capability to produce "quasi-bit-for-bit" results with Replay mode,
with temperature errors on the order of ~1.e-5 K.

The reason why Replay mode is unable to provide fully B4B results is because
the dynamics tendency computed for Replay is not identical to the way that the
full model computes its dynamics tendencies (which involves sub-cycling in the
SE dynamical core). Thus, there is issue with roundoff. Note that in the past,
CAM Replay mode with Eulerian dy-core could produce "B4B" results but only
because if the flag to generate Replay mode output was turned on, they updated
their T and Q based on the tendency computed for Replay purposes. Thus the run
to generate Replay forcing was NOT b4b with a normal production run. We are
working on a truly B4B Replay mode for E3SM and a future PR will support this
which will involve higher precision computation of the dynamical tendencies.

This PR also renames the old "-camiop" flag to "-e3smreplay" flag to be more
current and consistent with E3SM. Other flags are renamed accordingly throughout the code.

Note that in this PR the e3sm_developer test "SMS_R_Ld5.ne4_ne4.FSCM5A97"
is an expected fail when comparing results to baseline. This is because
where the large-scale vertical velocity is read in and updated had to be
moved so that CLUBB could see it at the consistent timestep. It was validated
that results for selected tested cases (ARM97, GOAMAZON, DYCOMS-RF01, BOMEX)
have very minimal impacts with this fix included.

All other e3sm_developer tests pass.

[BFB] except for the SCM test.
  • Loading branch information
wlin7 committed Aug 15, 2019
2 parents 63b8103 + 1fd81a0 commit cf6293d
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion src/drivers/mct/main/cime_comp_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1906,7 +1906,7 @@ subroutine cime_init()
!----------------------------------------------------------

areafact_samegrid = .false.
#if (defined BFB_CAM_SCAM_IOP )
#if (defined E3SM_SCM_REPLAY )
if (.not.samegrid_alo) then
call shr_sys_abort(subname//' ERROR: samegrid_alo is false - Must run with same atm/ocn/lnd grids when configured for scam iop')
else
Expand Down
2 changes: 1 addition & 1 deletion src/drivers/moab/main/cime_comp_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1697,7 +1697,7 @@ subroutine cime_init()
!----------------------------------------------------------

areafact_samegrid = .false.
#if (defined BFB_CAM_SCAM_IOP )
#if (defined E3SM_SCM_REPLAY )
if (.not.samegrid_alo) then
call shr_sys_abort(subname//' ERROR: samegrid_alo is false - Must run with same atm/ocn/lnd grids when configured for scam iop')
else
Expand Down

0 comments on commit cf6293d

Please sign in to comment.