From dacd56afa1be0d0bd8d7eb6096aea0b89252c1a6 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Wed, 30 Dec 2020 07:48:05 -0700 Subject: [PATCH] Add code to reset diagnostic buckets to atmos_model.F90 --- atmos_model.F90 | 25 ++++++++++++++++++++++++- ccpp/physics | 2 +- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/atmos_model.F90 b/atmos_model.F90 index 4a7d1043a..31602fdf6 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -253,7 +253,7 @@ subroutine update_atmos_radiation_physics (Atmos) !----------------------------------------------------------------------- type (atmos_data_type), intent(in) :: Atmos !--- local variables--- - integer :: nb, jdat(8), rc + integer :: nb, jdat(8), rc, kdt_rad procedure(IPD_func0d_proc), pointer :: Func0d => NULL() procedure(IPD_func1d_proc), pointer :: Func1d => NULL() ! @@ -300,6 +300,29 @@ subroutine update_atmos_radiation_physics (Atmos) call IPD_step (IPD_Control, IPD_Data(:), IPD_Diag, IPD_Restart, IPD_func1d=Func1d) #endif + !--- determine if radiation diagnostics buckets need to be cleared + if (nint(IPD_Control%fhzero*3600) >= nint(max(IPD_Control%fhswr,IPD_Control%fhlwr))) then + if (mod(IPD_Control%kdt,IPD_Control%nszero) == 1) then + do nb = 1,Atm_block%nblks + call IPD_Data(nb)%Intdiag%rad_zero(IPD_Control) + end do + endif + else + kdt_rad = nint(min(IPD_Control%fhswr,IPD_Control%fhlwr)/IPD_Control%dtp) + if (mod(IPD_Control%kdt,kdt_rad) == 1) then + do nb = 1,Atm_block%nblks + call IPD_Data(nb)%Intdiag%rad_zero(IPD_Control) + enddo + endif + endif + + !--- determine if physics diagnostics buckets need to be cleared + if (mod(IPD_Control%kdt,IPD_Control%nszero) == 1) then + do nb = 1,Atm_block%nblks + call IPD_Data(nb)%Intdiag%phys_zero(IPD_Control) + end do + endif + !--- if coupled, assign coupled fields if( IPD_Control%cplflx .or. IPD_Control%cplwav ) then diff --git a/ccpp/physics b/ccpp/physics index 7107b4970..1eebface8 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 7107b4970af1aa39d4a908030767b5bbaab51efe +Subproject commit 1eebface86c4a134e742bf15c2ce1de3eb6462f3