Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
df0e6ea
add qdiag3d support
SamuelTrahanNOAA Dec 19, 2019
c7ad1a3
add qdiag3d support
SamuelTrahanNOAA Dec 27, 2019
dc10a75
Further bug fixes to tendency accumulation
SamuelTrahanNOAA Jan 3, 2020
2200678
fix several bugs mentioned in code review
SamuelTrahanNOAA Jan 6, 2020
0d60589
Merge branch 'merge-me' into gsd/develop
SamuelTrahanNOAA Jan 6, 2020
538a1d8
add a pbl_generic_tend flag to tell whether the GFS_PBL_generic modul…
SamuelTrahanNOAA Jan 14, 2020
fbc1826
Move PBL tendencies into the PBL run subroutine.
SamuelTrahanNOAA Jan 14, 2020
ff725de
add ldiag3d and qdiag3d support to physics/module_MYNNPBL_wrapper.F90…
SamuelTrahanNOAA Jan 16, 2020
7b299c5
Point to sam's repo
SamuelTrahanNOAA Jan 16, 2020
e95f8ab
add model and ccpp tendency calculations
SamuelTrahanNOAA Jan 28, 2020
5275fb9
physics-level changes for tendencies
SamuelTrahanNOAA Jan 28, 2020
cf3d933
Correct tendency flag names, implement some more diagnostic tendencie…
SamuelTrahanNOAA Feb 6, 2020
dd8f27e
remove model_tend_pre&post from fast physics, add to stochastic
SamuelTrahanNOAA Feb 7, 2020
9ca064c
merge latest gsd/develop
SamuelTrahanNOAA Feb 7, 2020
f4fecfd
All gfs v15p2 and v16beta 3d diagnostic tendencies look reasonable; a…
SamuelTrahanNOAA Feb 13, 2020
7d4d569
Add timestep_init and timestep_final actions to CCPP. Update code so …
SamuelTrahanNOAA Mar 4, 2020
d46ebe8
Remove debug prints and commented-out code.
SamuelTrahanNOAA Mar 4, 2020
9f8b18f
Add total tendency calculations for gfsv15p2 and gsdv0. Calculate pbl…
SamuelTrahanNOAA Mar 12, 2020
cd2583d
Add some #ifdef CCPP to avoid breaking non-CCPP runs
SamuelTrahanNOAA Mar 17, 2020
2dd765a
merge gsd/develop
SamuelTrahanNOAA Apr 3, 2020
19fb05e
merge gsd/develop submodule ccpp/framework
SamuelTrahanNOAA Apr 3, 2020
fcc27ec
Correction: Diag%hpbl => Tbd%hpbl
SamuelTrahanNOAA Apr 6, 2020
8c8137c
Update .gitmodules and submodule pointer for ccpp-physics for code re…
climbfuji Apr 16, 2020
522342e
Revert unnecessary changes made in original PR
climbfuji Apr 16, 2020
66e9859
gfsphysics/GFS_layer/GFS_physics_driver.F90: change case tbd% -> Tbd%
climbfuji Apr 16, 2020
fed81f9
Bugfix for several suite definition files: rename sgscloud_radpre to …
climbfuji Apr 16, 2020
68d4033
Update standard names and descriptions as per code review, add missin…
climbfuji Apr 16, 2020
00953fd
Calculate non-physics tendencies in atmos_model.F90, configure output…
climbfuji Apr 17, 2020
2f78145
gfsphysics/GFS_layer/GFS_typedefs.F90: qdiag3d requires ldiag3d
climbfuji Apr 17, 2020
9406b7a
Calculate non-physics tendencies before radiation, and physics tenden…
climbfuji Apr 18, 2020
ab8d4dd
Add physics tendency summation scheme to FV3_GFS_v15p2 and FV3_GFS_v1…
climbfuji Apr 20, 2020
ab8e41b
gfsphysics/GFS_layer/GFS_typedefs.F90: bugfix, neet ntqv index for IPD
climbfuji Apr 21, 2020
13928aa
Revert change to .gitmodules and update submodule pointer for ccpp-ph…
climbfuji Apr 22, 2020
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
38 changes: 36 additions & 2 deletions atmos_model.F90
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,28 @@ subroutine update_atmos_radiation_physics (Atmos)
! print *,'in atmos_model, after assign_importdata, rc=',rc
endif

! Calculate total non-physics tendencies by substracting old IPD Stateout
! variables from new/updated IPD Statein variables (gives the tendencies
! due to anything else than physics)
if (IPD_Control%ldiag3d) then
do nb = 1,Atm_block%nblks
IPD_Data(nb)%Intdiag%du3dt(:,:,8) = IPD_Data(nb)%Intdiag%du3dt(:,:,8) &
+ (IPD_Data(nb)%Statein%ugrs - IPD_Data(nb)%Stateout%gu0)
IPD_Data(nb)%Intdiag%dv3dt(:,:,8) = IPD_Data(nb)%Intdiag%dv3dt(:,:,8) &
+ (IPD_Data(nb)%Statein%vgrs - IPD_Data(nb)%Stateout%gv0)
IPD_Data(nb)%Intdiag%dt3dt(:,:,11) = IPD_Data(nb)%Intdiag%dt3dt(:,:,11) &
+ (IPD_Data(nb)%Statein%tgrs - IPD_Data(nb)%Stateout%gt0)
enddo
if (IPD_Control%qdiag3d) then
do nb = 1,Atm_block%nblks
IPD_Data(nb)%Intdiag%dq3dt(:,:,12) = IPD_Data(nb)%Intdiag%dq3dt(:,:,12) &
+ (IPD_Data(nb)%Statein%qgrs(:,:,IPD_Control%ntqv) - IPD_Data(nb)%Stateout%gq0(:,:,IPD_Control%ntqv))
IPD_Data(nb)%Intdiag%dq3dt(:,:,13) = IPD_Data(nb)%Intdiag%dq3dt(:,:,13) &
+ (IPD_Data(nb)%Statein%qgrs(:,:,IPD_Control%ntoz) - IPD_Data(nb)%Stateout%gq0(:,:,IPD_Control%ntoz))
enddo
endif
endif

call mpp_clock_end(setupClock)

if (mpp_pe() == mpp_root_pe() .and. debug) write(6,*) "radiation driver"
Expand Down Expand Up @@ -461,7 +483,7 @@ subroutine atmos_model_init (Atmos, Time_init, Time, Time_step)
integer :: bdat(8), cdat(8)
integer :: ntracers, maxhf, maxh
character(len=32), allocatable, target :: tracer_names(:)
integer :: nthrds
integer :: nthrds, nb

!-----------------------------------------------------------------------

Expand Down Expand Up @@ -678,10 +700,22 @@ subroutine atmos_model_init (Atmos, Time_init, Time, Time_step)
call FV3GFS_restart_read (IPD_Data, IPD_Restart, Atm_block, IPD_Control, Atmos%domain)
#endif

#ifdef CCPP
! Populate the IPD_Data%Statein container with the prognostic state
! in Atm_block, which contains the initial conditions/restart data.
call atmos_phys_driver_statein (IPD_data, Atm_block, flip_vc)

! When asked to calculate 3-dim. tendencies, set Stateout variables to
! Statein variables here in order to capture the first call to dycore
if (IPD_Control%ldiag3d) then
do nb = 1,Atm_block%nblks
IPD_Data(nb)%Stateout%gu0 = IPD_Data(nb)%Statein%ugrs
IPD_Data(nb)%Stateout%gv0 = IPD_Data(nb)%Statein%vgrs
IPD_Data(nb)%Stateout%gt0 = IPD_Data(nb)%Statein%tgrs
IPD_Data(nb)%Stateout%gq0 = IPD_Data(nb)%Statein%qgrs
enddo
endif

#ifdef CCPP
! Initialize the CCPP framework
call CCPP_step (step="init", nblks=Atm_block%nblks, ierr=ierr)
if (ierr/=0) call mpp_error(FATAL, 'Call to CCPP init step failed')
Expand Down
1 change: 1 addition & 0 deletions ccpp/config/ccpp_prebuild_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,7 @@
'FV3/ccpp/physics/physics/ozphys.f' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/ozphys_2015.f' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/precpd.f' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/phys_tend.F90' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/radlw_main.f' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/radsw_main.f' : [ 'slow_physics' ],
'FV3/ccpp/physics/physics/rayleigh_damp.f' : [ 'slow_physics' ],
Expand Down
2 changes: 1 addition & 1 deletion ccpp/physics
2 changes: 1 addition & 1 deletion ccpp/suites/suite_FV3_GFS_v15_mynn.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<scheme>rrtmg_sw_post</scheme>
<scheme>rrtmg_lw_pre</scheme>
<scheme>rrtmg_lw</scheme>
<scheme>sgscloud_radpre</scheme>
<scheme>sgscloud_radpost</scheme>
<scheme>rrtmg_lw_post</scheme>
<scheme>GFS_rrtmg_post</scheme>
</subcycle>
Expand Down
2 changes: 1 addition & 1 deletion ccpp/suites/suite_FV3_GFS_v15_thompson_mynn.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<scheme>rrtmg_sw_post</scheme>
<scheme>rrtmg_lw_pre</scheme>
<scheme>rrtmg_lw</scheme>
<scheme>sgscloud_radpre</scheme>
<scheme>sgscloud_radpost</scheme>
<scheme>rrtmg_lw_post</scheme>
<scheme>GFS_rrtmg_post</scheme>
</subcycle>
Expand Down
1 change: 1 addition & 0 deletions ccpp/suites/suite_FV3_GFS_v15p2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@
<group name="stochastics">
<subcycle loop="1">
<scheme>GFS_stochastics</scheme>
<scheme>phys_tend</scheme>
</subcycle>
</group>
<!-- <finalize></finalize> -->
Expand Down
1 change: 1 addition & 0 deletions ccpp/suites/suite_FV3_GFS_v16beta.xml
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@
<group name="stochastics">
<subcycle loop="1">
<scheme>GFS_stochastics</scheme>
<scheme>phys_tend</scheme>
</subcycle>
</group>
<!-- <finalize></finalize> -->
Expand Down
2 changes: 1 addition & 1 deletion ccpp/suites/suite_FV3_GSD_SAR.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<scheme>rrtmg_sw_post</scheme>
<scheme>rrtmg_lw_pre</scheme>
<scheme>rrtmg_lw</scheme>
<scheme>sgscloud_radpre</scheme>
<scheme>sgscloud_radpost</scheme>
<scheme>rrtmg_lw_post</scheme>
<scheme>GFS_rrtmg_post</scheme>
</subcycle>
Expand Down
3 changes: 2 additions & 1 deletion ccpp/suites/suite_FV3_GSD_v0.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<scheme>rrtmg_sw_post</scheme>
<scheme>rrtmg_lw_pre</scheme>
<scheme>rrtmg_lw</scheme>
<scheme>sgscloud_radpre</scheme>
<scheme>sgscloud_radpost</scheme>
<scheme>rrtmg_lw_post</scheme>
<scheme>GFS_rrtmg_post</scheme>
</subcycle>
Expand Down Expand Up @@ -88,6 +88,7 @@
<group name="stochastics">
<subcycle loop="1">
<scheme>GFS_stochastics</scheme>
<scheme>phys_tend</scheme>
</subcycle>
</group>
<!-- <finalize></finalize> -->
Expand Down
2 changes: 1 addition & 1 deletion ccpp/suites/suite_FV3_GSD_v0_drag_suite.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<scheme>rrtmg_sw_post</scheme>
<scheme>rrtmg_lw_pre</scheme>
<scheme>rrtmg_lw</scheme>
<scheme>sgscloud_radpre</scheme>
<scheme>sgscloud_radpost</scheme>
<scheme>rrtmg_lw_post</scheme>
<scheme>GFS_rrtmg_post</scheme>
</subcycle>
Expand Down
Loading