Skip to content

Commit 87f018c

Browse files
authored
Mods needed to run CAM4 F-compset (AMIP) configurations (ESCOMP#437)
Tag name (The PR title should also include the tag name): atmos_phys0_28_001 Originator(s): nusbaume (Claude Opus 5 helped find the issues). Description (include issue title and the keyword ['closes', 'fixes', 'resolves'] and issue number): Added some code modifications needed for the CAM4 + BAM physics/chemistry suite to run stably in an F-compset (i.e. AMIP or prescribed SSTs/sea ice) configuration. List all namelist files that were added or changed: M schemes/rrtmgp/rrtmgp_constituents_namelist.xml - Removed aquaplanet flag when setting radiatively active gases (which should eventually be managed by the chemistry scheme anyways, see ESCOMP#435). List all files eliminated and why: N/A List all files added and what they do: N/A List all existing files that have been modified, and describe the changes: (Helpful git command: `git diff --name-status main...<your_branch_name>`) M schemes/rasch_kristjansson/rk_stratiform.F90 - Add fixer for negative surface precipitation, which matches what is done in CAM. List all automated tests that failed, as well as an explanation for why they weren't fixed: Is this an answer-changing PR? If so, is it a new physics package, algorithm change, tuning change, etc? Yes, the RK precipitation adjustment results in answer differences. If yes to the above question, describe how this code was validated with the new/modified features: I did a five year run and looked at the results.
1 parent 301a456 commit 87f018c

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

schemes/rasch_kristjansson/rk_stratiform.F90

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ module rk_stratiform
55

66
implicit none
77
private
8-
save
98

109
! public CCPP-compliant subroutines
1110
! note: cloud_fraction_perturbation_run calls the compute_cloud_fraction
@@ -460,6 +459,15 @@ subroutine rk_stratiform_prognostic_cloud_water_tendencies_run( &
460459
prec_str(:ncol) = prec_str(:ncol) + prec_pcw(:ncol)
461460
snow_str(:ncol) = snow_str(:ncol) + snow_pcw(:ncol)
462461

462+
! RK can occassionally produce negative precipitation fluxes, so force
463+
! it to be greater than or equal to zero. Also ensure that snow is not
464+
! greater than the total precipitation. This is a non-physical adjustment,
465+
! but is the same technique that the original CAM4 model used:
466+
do i = 1, ncol
467+
if (prec_str(i) < 0._kind_phys) prec_str(i) = 0._kind_phys
468+
if (snow_str(i) > prec_str(i)) snow_str(i) = prec_str(i)
469+
end do
470+
463471
end subroutine rk_stratiform_prognostic_cloud_water_tendencies_run
464472

465473
! Save Q, T, cloud water at end of stratiform microphysics for use in next timestep

schemes/rrtmgp/rrtmgp_constituents_namelist.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
'N:CFC11STAR:CFC11',
9696
'A:CFC12:CFC12'
9797
</value>
98-
<value aquaplanet="1" phys_suite="cam4">
98+
<value phys_suite="cam4">
9999
'N:O2:O2',
100100
'N:CO2:CO2',
101101
'N:ozone:O3',

0 commit comments

Comments
 (0)