From 08392026f229f35480481ef953a8f00c63686146 Mon Sep 17 00:00:00 2001 From: Zhihong Tan Date: Mon, 30 Oct 2023 15:46:59 -0400 Subject: [PATCH 1/2] ADDED SURFACE VARIABLES REQUIRED BY NCEP TKE-EDMF The shflx, lhflx, wind, thv_atm, thv_surf variables are passed from the surface coupler to the atmospheric model as required by the NCEP TKE-EDMF scheme. --- atmos_model.F90 | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/atmos_model.F90 b/atmos_model.F90 index aaca199..a411de9 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -190,6 +190,9 @@ module atmos_model_mod real, dimension(:,:), pointer :: q_star =>NULL() ! moisture scale real, dimension(:,:), pointer :: shflx =>null() ! sensible heat flux real, dimension(:,:), pointer :: lhflx =>null() ! latent heat flux + real, dimension(:,:), pointer :: wind =>null() ! surface wind + real, dimension(:,:), pointer :: thv_atm =>null() ! surface air theta_v + real, dimension(:,:), pointer :: thv_surf =>null() ! surface theta_v real, dimension(:,:), pointer :: rough_mom =>NULL() ! surface roughness (used for momentum) real, dimension(:,:,:), pointer :: data =>NULL() !collective field for "named" fields above real, dimension(:,:), pointer :: frac_open_sea =>null() ! non-seaice fraction (%) @@ -737,6 +740,13 @@ subroutine lnd_ice_atm_bnd_type_chksum(id, timestep, bnd_type) write(outunit,100) 'lnd_ice_atm_bnd_type%u_star ',mpp_chksum(bnd_type%u_star ) write(outunit,100) 'lnd_ice_atm_bnd_type%b_star ',mpp_chksum(bnd_type%b_star ) write(outunit,100) 'lnd_ice_atm_bnd_type%q_star ',mpp_chksum(bnd_type%q_star ) +#ifndef use_AM3_physics + write(outunit,100) 'lnd_ice_atm_bnd_type%shflx ',mpp_chksum(bnd_type%shflx )!miz + write(outunit,100) 'lnd_ice_atm_bnd_type%lhflx ',mpp_chksum(bnd_type%lhflx )!miz +#endif + write(outunit,100) 'lnd_ice_atm_bnd_type%wind ',mpp_chksum(bnd_type%wind ) + write(outunit,100) 'lnd_ice_atm_bnd_type%thv_atm ',mpp_chksum(bnd_type%thv_atm ) + write(outunit,100) 'lnd_ice_atm_bnd_type%thv_surf ',mpp_chksum(bnd_type%thv_surf ) write(outunit,100) 'lnd_ice_atm_bnd_type%rough_mom ',mpp_chksum(bnd_type%rough_mom ) ! write(outunit,100) 'lnd_ice_atm_bnd_type%data ',mpp_chksum(bnd_type%data ) From b9e2cc75f4a8227ec269f41c51765bf3e97e5442 Mon Sep 17 00:00:00 2001 From: Zhihong Tan Date: Fri, 10 Nov 2023 11:25:58 -0500 Subject: [PATCH 2/2] ADDED IF-STATEMENTS FOR CHECKSUM Two if-associated statements are added before the checksums of bnd_type%shflx and bnd_type%lhflx to pass the null model build. --- atmos_model.F90 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/atmos_model.F90 b/atmos_model.F90 index a411de9..53f2d5a 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -741,8 +741,10 @@ subroutine lnd_ice_atm_bnd_type_chksum(id, timestep, bnd_type) write(outunit,100) 'lnd_ice_atm_bnd_type%b_star ',mpp_chksum(bnd_type%b_star ) write(outunit,100) 'lnd_ice_atm_bnd_type%q_star ',mpp_chksum(bnd_type%q_star ) #ifndef use_AM3_physics - write(outunit,100) 'lnd_ice_atm_bnd_type%shflx ',mpp_chksum(bnd_type%shflx )!miz - write(outunit,100) 'lnd_ice_atm_bnd_type%lhflx ',mpp_chksum(bnd_type%lhflx )!miz + if(associated(bnd_type%shflx)) & + write(outunit,100) 'lnd_ice_atm_bnd_type%shflx ',mpp_chksum(bnd_type%shflx )!miz + if(associated(bnd_type%lhflx)) & + write(outunit,100) 'lnd_ice_atm_bnd_type%lhflx ',mpp_chksum(bnd_type%lhflx )!miz #endif write(outunit,100) 'lnd_ice_atm_bnd_type%wind ',mpp_chksum(bnd_type%wind ) write(outunit,100) 'lnd_ice_atm_bnd_type%thv_atm ',mpp_chksum(bnd_type%thv_atm )