Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
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
2 changes: 1 addition & 1 deletion physics/GFS_cloud_diagnostics.meta
Original file line number Diff line number Diff line change
Expand Up @@ -160,4 +160,4 @@
dimensions = ()
type = integer
intent = out
optional = F
optional = F
5 changes: 2 additions & 3 deletions physics/GFS_debug.F90
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,8 @@ subroutine GFS_diagtoscreen_run (Model, Statein, Stateout, Sfcprop, Coupling,
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%zorl' , Sfcprop%zorl)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%zorlo' , Sfcprop%zorlo)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%zorll' , Sfcprop%zorll)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%zorli' , Sfcprop%zorli)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%zorlw' , Sfcprop%zorlw)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%fice' , Sfcprop%fice)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%hprime' , Sfcprop%hprime)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Sfcprop%sncovr' , Sfcprop%sncovr)
Expand Down Expand Up @@ -1254,9 +1256,6 @@ subroutine GFS_interstitialtoscreen_run (Model, Statein, Stateout, Sfcprop, Coup
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%xlai1d ', Interstitial%xlai1d )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%xmu ', Interstitial%xmu )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%z01d ', Interstitial%z01d )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%zorl_ice ', Interstitial%zorl_ice )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%zorl_land ', Interstitial%zorl_land )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%zorl_ocean ', Interstitial%zorl_ocean )
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%zt1d ', Interstitial%zt1d )
! UGWP
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Interstitial%tau_mtb ', Interstitial%tau_mtb )
Expand Down
2 changes: 1 addition & 1 deletion physics/GFS_rrtmgp_thompsonmp_pre.meta
Original file line number Diff line number Diff line change
Expand Up @@ -439,4 +439,4 @@
dimensions = ()
type = integer
intent = out
optional = F
optional = F
57 changes: 15 additions & 42 deletions physics/GFS_surface_composites.F90
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,8 @@ end subroutine GFS_surface_composites_pre_finalize
!! \htmlinclude GFS_surface_composites_pre_run.html
!!
subroutine GFS_surface_composites_pre_run (im, lkm, frac_grid, flag_cice, cplflx, cplwav2atm, &
landfrac, lakefrac, lakedepth, oceanfrac, frland, &
dry, icy, lake, ocean, wet, hice, cice, zorl, zorlo, zorll, zorli, zorl_wat, &
zorl_lnd, zorl_ice, snowd, snowd_wat, snowd_lnd, snowd_ice, tprcp, tprcp_wat, &
landfrac, lakefrac, lakedepth, oceanfrac, frland, dry, icy, lake, ocean, wet, &
hice, cice, snowd, snowd_wat, snowd_lnd, snowd_ice, tprcp, tprcp_wat, &
tprcp_lnd, tprcp_ice, uustar, uustar_wat, uustar_lnd, uustar_ice, &
weasd, weasd_wat, weasd_lnd, weasd_ice, ep1d_ice, tsfc, tsfco, tsfcl, tsfc_wat, &
tsfc_lnd, tsfc_ice, tisfc, tice, tsurf, tsurf_wat, tsurf_lnd, tsurf_ice, &
Expand All @@ -45,12 +44,12 @@ subroutine GFS_surface_composites_pre_run (im, lkm, frac_grid, flag_cice, cplflx
real(kind=kind_phys), dimension(im), intent(in ) :: landfrac, lakefrac, lakedepth, oceanfrac
real(kind=kind_phys), dimension(im), intent(inout) :: cice, hice
real(kind=kind_phys), dimension(im), intent( out) :: frland
real(kind=kind_phys), dimension(im), intent(in ) :: zorl, snowd, tprcp, uustar, weasd, qss, hflx
real(kind=kind_phys), dimension(im), intent(in ) :: snowd, tprcp, uustar, weasd, qss, hflx

real(kind=kind_phys), dimension(im), intent(inout) :: zorlo, zorll, zorli, tsfc, tsfco, tsfcl, tisfc, tsurf
real(kind=kind_phys), dimension(im), intent(inout) :: tsfc, tsfco, tsfcl, tisfc, tsurf
real(kind=kind_phys), dimension(im), intent(inout) :: snowd_wat, snowd_lnd, snowd_ice, tprcp_wat, &
tprcp_lnd, tprcp_ice, zorl_wat, zorl_lnd, zorl_ice, tsfc_wat, tsfc_lnd, tsfc_ice, tsurf_wat, &
tsurf_lnd, tsurf_ice, uustar_wat, uustar_lnd, uustar_ice, weasd_wat, weasd_lnd, weasd_ice, &
tprcp_lnd, tprcp_ice, tsfc_wat, tsfc_lnd, tsfc_ice, tsurf_wat,tsurf_lnd, tsurf_ice, &
uustar_wat, uustar_lnd, uustar_ice, weasd_wat, weasd_lnd, weasd_ice, &
qss_wat, qss_lnd, qss_ice, hflx_wat, hflx_lnd, hflx_ice, ep1d_ice, gflx_ice
real(kind=kind_phys), dimension(im), intent( out) :: tice
real(kind=kind_phys), intent(in ) :: tgice
Expand Down Expand Up @@ -169,26 +168,12 @@ subroutine GFS_surface_composites_pre_run (im, lkm, frac_grid, flag_cice, cplflx
enddo
endif

! if (.not. cplflx .or. .not. frac_grid) then
! if (cplwav2atm) then
! do i=1,im
! zorll(i) = zorl(i)
! enddo
! else
! do i=1,im
! zorll(i) = zorl(i)
! zorlo(i) = zorl(i)
! enddo
! endif
! endif

do i=1,im
tprcp_wat(i) = tprcp(i)
tprcp_lnd(i) = tprcp(i)
tprcp_ice(i) = tprcp(i)
if (wet(i)) then ! Water
uustar_wat(i) = uustar(i)
zorl_wat(i) = zorlo(i)
tsfc_wat(i) = tsfco(i)
tsurf_wat(i) = tsfco(i)
! weasd_wat(i) = weasd(i)
Expand All @@ -202,7 +187,6 @@ subroutine GFS_surface_composites_pre_run (im, lkm, frac_grid, flag_cice, cplflx
if (dry(i)) then ! Land
uustar_lnd(i) = uustar(i)
weasd_lnd(i) = weasd(i)
zorl_lnd(i) = zorll(i)
tsfc_lnd(i) = tsfcl(i)
tsurf_lnd(i) = tsfcl(i)
snowd_lnd(i) = snowd(i)
Expand All @@ -213,7 +197,6 @@ subroutine GFS_surface_composites_pre_run (im, lkm, frac_grid, flag_cice, cplflx
if (icy(i)) then ! Ice
uustar_ice(i) = uustar(i)
weasd_ice(i) = weasd(i)
zorl_ice(i) = zorli(i)
tsfc_ice(i) = tisfc(i)
tsurf_ice(i) = tisfc(i)
snowd_ice(i) = snowd(i)
Expand Down Expand Up @@ -345,14 +328,12 @@ end subroutine GFS_surface_composites_post_init
subroutine GFS_surface_composites_post_finalize()
end subroutine GFS_surface_composites_post_finalize

#if 0
!> \section arg_table_GFS_surface_composites_post_run Argument Table
!! \htmlinclude GFS_surface_composites_post_run.html
!!
#endif
subroutine GFS_surface_composites_post_run ( &
im, kice, km, cplflx, cplwav2atm, frac_grid, flag_cice, islmsk, dry, wet, icy, landfrac, lakefrac, oceanfrac, &
zorl, zorlo, zorll, zorli, zorl_wat, zorl_lnd, zorl_ice, &
zorl, zorlo, zorll, zorli, &
cd, cd_wat, cd_lnd, cd_ice, cdq, cdq_wat, cdq_lnd, cdq_ice, rb, rb_wat, rb_lnd, rb_ice, stress, stress_wat, stress_lnd, &
stress_ice, ffmm, ffmm_wat, ffmm_lnd, ffmm_ice, ffhh, ffhh_wat, ffhh_lnd, ffhh_ice, uustar, uustar_wat, uustar_lnd, &
uustar_ice, fm10, fm10_wat, fm10_lnd, fm10_ice, fh2, fh2_wat, fh2_lnd, fh2_ice, tsurf, tsurf_wat, tsurf_lnd, tsurf_ice, &
Expand All @@ -368,7 +349,7 @@ subroutine GFS_surface_composites_post_run (
logical, dimension(im), intent(in) :: flag_cice, dry, wet, icy
integer, dimension(im), intent(in) :: islmsk
real(kind=kind_phys), dimension(im), intent(in) :: landfrac, lakefrac, oceanfrac, &
zorl_wat, zorl_lnd, zorl_ice, cd_wat, cd_lnd, cd_ice, cdq_wat, cdq_lnd, cdq_ice, rb_wat, rb_lnd, rb_ice, stress_wat, &
cd_wat, cd_lnd, cd_ice, cdq_wat, cdq_lnd, cdq_ice, rb_wat, rb_lnd, rb_ice, stress_wat, &
stress_lnd, stress_ice, ffmm_wat, ffmm_lnd, ffmm_ice, ffhh_wat, ffhh_lnd, ffhh_ice, uustar_wat, uustar_lnd, uustar_ice, &
fm10_wat, fm10_lnd, fm10_ice, fh2_wat, fh2_lnd, fh2_ice, tsurf_wat, tsurf_lnd, tsurf_ice, cmm_wat, cmm_lnd, cmm_ice, &
chh_wat, chh_lnd, chh_ice, gflx_wat, gflx_lnd, gflx_ice, ep1d_wat, ep1d_lnd, ep1d_ice, weasd_wat, weasd_lnd, weasd_ice, &
Expand Down Expand Up @@ -408,7 +389,7 @@ subroutine GFS_surface_composites_post_run (
txi = cice(i) * wfrac ! txi = ice fraction wrt whole cell
txo = max(zero, wfrac-txi) ! txo = open water fraction

zorl(i) = txl*zorl_lnd(i) + txi*zorl_ice(i) + txo*zorl_wat(i)
zorl(i) = txl*zorll(i) + txi*zorli(i) + txo*zorlo(i)
cd(i) = txl*cd_lnd(i) + txi*cd_ice(i) + txo*cd_wat(i)
cdq(i) = txl*cdq_lnd(i) + txi*cdq_ice(i) + txo*cdq_wat(i)
rb(i) = txl*rb_lnd(i) + txi*rb_ice(i) + txo*rb_wat(i)
Expand Down Expand Up @@ -443,10 +424,6 @@ subroutine GFS_surface_composites_post_run (
endif
tsfc(i) = txl*tsfc_lnd(i) + txi*tice(i) + txo*tsfc_wat(i)

zorll(i) = zorl_lnd(i)
zorli(i) = zorl_ice(i)
zorlo(i) = zorl_wat(i)

if (dry(i)) then
tsfcl(i) = tsfc_lnd(i) ! over land
elseif (wet(i)) then
Expand Down Expand Up @@ -496,7 +473,7 @@ subroutine GFS_surface_composites_post_run (

do i=1,im
if (islmsk(i) == 1) then
zorl(i) = zorl_lnd(i)
zorl(i) = zorll(i)
cd(i) = cd_lnd(i)
cdq(i) = cdq_lnd(i)
rb(i) = rb_lnd(i)
Expand Down Expand Up @@ -524,7 +501,7 @@ subroutine GFS_surface_composites_post_run (
hice(i) = zero
cice(i) = zero
elseif (islmsk(i) == 0) then
zorl(i) = zorl_wat(i)
zorl(i) = zorlo(i)
cd(i) = cd_wat(i)
cdq(i) = cdq_wat(i)
rb(i) = rb_wat(i)
Expand Down Expand Up @@ -552,7 +529,7 @@ subroutine GFS_surface_composites_post_run (
hice(i) = zero
cice(i) = zero
else ! islmsk(i) == 2
zorl(i) = zorl_ice(i)
zorl(i) = zorli(i)
cd(i) = cd_ice(i)
cdq(i) = cdq_ice(i)
rb(i) = rb_ice(i)
Expand All @@ -578,7 +555,7 @@ subroutine GFS_surface_composites_post_run (
tisfc(i) = tice(i)
if (.not. flag_cice(i)) then
! tisfc(i) = tice(i) ! over lake ice (and sea ice when uncoupled)
zorl(i) = cice(i) * zorl_ice(i) + (one - cice(i)) * zorl_wat(i)
zorl(i) = cice(i) * zorli(i) + (one - cice(i)) * zorlo(i)
tsfc(i) = tsfc_ice(i) ! over lake (and ocean when uncoupled)
elseif (wet(i)) then
if (cice(i) >= min_seaice) then ! this was already done for lake ice in sfc_sice
Expand All @@ -590,15 +567,15 @@ subroutine GFS_surface_composites_post_run (
stress(i) = txi * stress_ice(i) + txo * stress_wat(i)
qss(i) = txi * qss_ice(i) + txo * qss_wat(i)
ep1d(i) = txi * ep1d_ice(i) + txo * ep1d_wat(i)
zorl(i) = txi * zorl_ice(i) + txo * zorl_wat(i)
zorl(i) = txi * zorli(i) + txo * zorlo(i)
else
evap(i) = evap_wat(i)
hflx(i) = hflx_wat(i)
tsfc(i) = tsfc_wat(i)
stress(i) = stress_wat(i)
qss(i) = qss_wat(i)
ep1d(i) = ep1d_wat(i)
zorl(i) = zorl_wat(i)
zorl(i) = zorlo(i)
endif
endif
if (wet(i)) then
Expand All @@ -612,10 +589,6 @@ subroutine GFS_surface_composites_post_run (
end do
endif

zorll(i) = zorl_lnd(i)
zorlo(i) = zorl_wat(i)
zorli(i) = zorl_ice(i)

enddo

endif ! if (frac_grid)
Expand Down
90 changes: 0 additions & 90 deletions physics/GFS_surface_composites.meta
Original file line number Diff line number Diff line change
Expand Up @@ -158,69 +158,6 @@
kind = kind_phys
intent = inout
optional = F
[zorl]
standard_name = surface_roughness_length
long_name = surface roughness length
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = in
optional = F
[zorlo]
standard_name = surface_roughness_length_over_ocean
long_name = surface roughness length over ocean
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[zorll]
standard_name = surface_roughness_length_over_land
long_name = surface roughness length over land
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[zorli]
standard_name = surface_roughness_length_over_ice
long_name = surface roughness length over ice
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[zorl_wat]
standard_name = surface_roughness_length_over_ocean_interstitial
long_name = surface roughness length over ocean (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[zorl_lnd]
standard_name = surface_roughness_length_over_land_interstitial
long_name = surface roughness length over land (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[zorl_ice]
standard_name = surface_roughness_length_over_ice_interstitial
long_name = surface roughness length over ice (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = inout
optional = F
[snowd]
standard_name = surface_snow_thickness_water_equivalent
long_name = water equivalent snow depth
Expand Down Expand Up @@ -980,33 +917,6 @@
kind = kind_phys
intent = inout
optional = F
[zorl_wat]
standard_name = surface_roughness_length_over_ocean_interstitial
long_name = surface roughness length over ocean (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = in
optional = F
[zorl_lnd]
standard_name = surface_roughness_length_over_land_interstitial
long_name = surface roughness length over land (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = in
optional = F
[zorl_ice]
standard_name = surface_roughness_length_over_ice_interstitial
long_name = surface roughness length over ice (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
intent = in
optional = F
[cd]
standard_name = surface_drag_coefficient_for_momentum_in_air
long_name = surface exchange coeff for momentum
Expand Down
6 changes: 3 additions & 3 deletions physics/gfdl_sfc_layer.meta
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@
intent = inout
optional = F
[znt_ocn]
standard_name = surface_roughness_length_over_ocean_interstitial
standard_name = surface_roughness_length_over_ocean
long_name = surface roughness length over ocean (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand All @@ -543,7 +543,7 @@
intent = inout
optional = F
[znt_lnd]
standard_name = surface_roughness_length_over_land_interstitial
standard_name = surface_roughness_length_over_land
long_name = surface roughness length over land (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand All @@ -552,7 +552,7 @@
intent = inout
optional = F
[znt_ice]
standard_name = surface_roughness_length_over_ice_interstitial
standard_name = surface_roughness_length_over_ice
long_name = surface roughness length over ice (temporary use as interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand Down
2 changes: 1 addition & 1 deletion physics/h2o_def.meta
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,4 @@
dimensions = (vertical_dimension_of_h2o_forcing_data)
type = real
kind = kind_phys
active = (flag_for_stratospheric_water_vapor_physics)
active = (flag_for_stratospheric_water_vapor_physics)
6 changes: 3 additions & 3 deletions physics/module_MYJSFC_wrapper.meta
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,7 @@
intent = inout
optional = F
[z0rl_wat]
standard_name = surface_roughness_length_over_ocean_interstitial
standard_name = surface_roughness_length_over_ocean
long_name = surface roughness length over ocean (interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand All @@ -481,7 +481,7 @@
intent = inout
optional = F
[z0rl_lnd]
standard_name = surface_roughness_length_over_land_interstitial
standard_name = surface_roughness_length_over_land
long_name = surface roughness length over land (interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand All @@ -490,7 +490,7 @@
intent = inout
optional = F
[z0rl_ice]
standard_name = surface_roughness_length_over_ice_interstitial
standard_name = surface_roughness_length_over_ice
long_name = surface roughness length over ice (interstitial)
units = cm
dimensions = (horizontal_loop_extent)
Expand Down
Loading