Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 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
6 changes: 3 additions & 3 deletions physics/GFS_phys_time_vary.fv3.F90
Original file line number Diff line number Diff line change
Expand Up @@ -79,14 +79,14 @@ subroutine GFS_phys_time_vary_init (
albdnir_ice, albivis_ice, albinir_ice, emiss_lnd, emiss_ice, taussxy, waxy, wtxy, &
zwtxy, xlaixy, xsaixy, lfmassxy, stmassxy, rtmassxy, woodxy, stblcpxy, fastcpxy, &
smcwtdxy, deeprechxy, rechxy, snowxy, snicexy, snliqxy, tsnoxy , smoiseq, zsnsoxy, &
slc, smc, stc, tsfcl, snowd, canopy, tg3, stype, con_t0c, flag_restart, nthrds, &
slc, smc, stc, tsfcl, snowd, canopy, tg3, stype, con_t0c, lsm_cold_start, nthrds, &
errmsg, errflg)

implicit none

! Interface variables
integer, intent(in) :: me, master, ntoz, iccn, iflip, im, nx, ny
logical, intent(in) :: h2o_phys, iaerclm, flag_restart
logical, intent(in) :: h2o_phys, iaerclm, lsm_cold_start
integer, intent(in) :: idate(:)
real(kind_phys), intent(in) :: fhour
real(kind_phys), intent(in) :: xlat_d(:), xlon_d(:)
Expand Down Expand Up @@ -394,7 +394,7 @@ subroutine GFS_phys_time_vary_init (

!--- For Noah MP or RUC LSMs: initialize four components of albedo for
!--- land and ice - not for restart runs
lsm_init: if (.not.flag_restart) then
lsm_init: if (lsm_cold_start) then
if (lsm == lsm_noahmp .or. lsm == lsm_ruc) then
if (me == master ) write(*,'(a)') 'GFS_phys_time_vary_init: initialize albedo for land and ice'
do ix=1,im
Expand Down
6 changes: 3 additions & 3 deletions physics/GFS_phys_time_vary.fv3.meta
Original file line number Diff line number Diff line change
Expand Up @@ -874,9 +874,9 @@
type = real
kind = kind_phys
intent = in
[flag_restart]
standard_name = flag_for_restart
long_name = flag for restart (warmstart) or coldstart
[lsm_cold_start]
standard_name = do_lsm_cold_start
long_name = flag to signify LSM is cold-started
units = flag
dimensions = ()
type = logical
Expand Down
6 changes: 3 additions & 3 deletions physics/GFS_phys_time_vary.scm.F90
Original file line number Diff line number Diff line change
Expand Up @@ -73,14 +73,14 @@ subroutine GFS_phys_time_vary_init (
albdnir_ice, albivis_ice, albinir_ice, emiss_lnd, emiss_ice, taussxy, waxy, wtxy, &
zwtxy, xlaixy, xsaixy, lfmassxy, stmassxy, rtmassxy, woodxy, stblcpxy, fastcpxy, &
smcwtdxy, deeprechxy, rechxy, snowxy, snicexy, snliqxy, tsnoxy , smoiseq, zsnsoxy, &
slc, smc, stc, tsfcl, snowd, canopy, tg3, stype, con_t0c, flag_restart, nthrds, &
slc, smc, stc, tsfcl, snowd, canopy, tg3, stype, con_t0c, lsm_cold_start, nthrds, &
errmsg, errflg)

implicit none

! Interface variables
integer, intent(in) :: me, master, ntoz, iccn, iflip, im, nx, ny
logical, intent(in) :: h2o_phys, iaerclm, flag_restart
logical, intent(in) :: h2o_phys, iaerclm, lsm_cold_start
integer, intent(in) :: idate(:)
real(kind_phys), intent(in) :: fhour
real(kind_phys), intent(in) :: xlat_d(:), xlon_d(:)
Expand Down Expand Up @@ -348,7 +348,7 @@ subroutine GFS_phys_time_vary_init (

!--- For Noah MP or RUC LSMs: initialize four components of albedo for
!--- land and ice - not for restart runs
lsm_init: if (.not.flag_restart) then
lsm_init: if (lsm_cold_start) then
if (lsm == lsm_noahmp .or. lsm == lsm_ruc) then
if (me == master ) write(*,'(a)') 'GFS_phys_time_vary_init: initialize albedo for land and ice'
do ix=1,im
Expand Down
6 changes: 3 additions & 3 deletions physics/GFS_phys_time_vary.scm.meta
Original file line number Diff line number Diff line change
Expand Up @@ -874,9 +874,9 @@
type = real
kind = kind_phys
intent = in
[flag_restart]
standard_name = flag_for_restart
long_name = flag for restart (warmstart) or coldstart
[lsm_cold_start]
standard_name = do_lsm_cold_start
long_name = flag to signify LSM is cold-started
units = flag
dimensions = ()
type = logical
Expand Down
8 changes: 4 additions & 4 deletions physics/module_sf_ruclsm.F90
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ MODULE module_sf_ruclsm
!>\section gen_lsmruc GSD RUC LSM General Algorithm
!! @{
SUBROUTINE LSMRUC( &
DT,init,restart,KTAU,iter,NSL, &
DT,init,lsm_cold_start,KTAU,iter,NSL, &
graupelncv,snowncv,rainncv,raincv, &
ZS,RAINBL,SNOW,SNOWH,SNOWC,FRZFRAC,frpcpn, &
rhosnf,precipfr, &
Expand Down Expand Up @@ -97,7 +97,7 @@ SUBROUTINE LSMRUC( &
!-----------------------------------------------------------------
!-- DT time step (second)
! init - flag for initialization
! restart - flag for restart run
!lsm_cold_start - flag for cold start run
! ktau - number of time step
! NSL - number of soil layers
! NZS - number of levels in soil
Expand Down Expand Up @@ -166,7 +166,7 @@ SUBROUTINE LSMRUC( &
! INTEGER, PARAMETER :: nddzs=2*(nzss-2)

REAL, INTENT(IN ) :: DT
LOGICAL, INTENT(IN ) :: myj,frpcpn,init,restart
LOGICAL, INTENT(IN ) :: myj,frpcpn,init,lsm_cold_start
INTEGER, INTENT(IN ) :: NLCAT, NSCAT ! , mosaic_lu, mosaic_soil
INTEGER, INTENT(IN ) :: ktau, iter, nsl, isice, iswater, &
ims,ime, jms,jme, kms,kme, &
Expand Down Expand Up @@ -423,7 +423,7 @@ SUBROUTINE LSMRUC( &
!> - Initialize soil/vegetation parameters
!--- This is temporary until SI is added to mass coordinate ---!!!!!

if(init .and. (.not. restart) .and. iter == 1) then
if(init .and. (lsm_cold_start) .and. iter == 1) then
DO J=jts,jte
DO i=its,ite
! do k=1,nsl
Expand Down
36 changes: 18 additions & 18 deletions physics/sfc_drv_ruc.F90
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ module lsm_ruc
!! \htmlinclude lsm_ruc_init.html
!!
subroutine lsm_ruc_init (me, master, isot, ivegsrc, nlunit, &
flag_restart, flag_init, con_fvirt, con_rd, &
lsm_cold_start, flag_init, con_fvirt, con_rd, &
im, lsoil_ruc, lsoil, kice, nlev, & ! in
lsm_ruc, lsm, slmsk, stype, vtype, landfrac, & ! in
q1, prsl1, tsfc_lnd, tsfc_ice, tsfc_wat, & ! in
Expand All @@ -49,7 +49,7 @@ subroutine lsm_ruc_init (me, master, isot, ivegsrc, nlunit, &
implicit none
! --- in
integer, intent(in) :: me, master, isot, ivegsrc, nlunit
logical, intent(in) :: flag_restart
logical, intent(in) :: lsm_cold_start
logical, intent(in) :: flag_init
integer, intent(in) :: im
integer, intent(in) :: lsoil_ruc
Expand Down Expand Up @@ -155,7 +155,7 @@ subroutine lsm_ruc_init (me, master, isot, ivegsrc, nlunit, &
write (0,*) 'tg3=',tg3(ipr)
write (0,*) 'slmsk=',slmsk(ipr)
write (0,*) 'flag_init =',flag_init
write (0,*) 'flag_restart =',flag_restart
write (0,*) 'lsm_cold_start =',lsm_cold_start
endif

!--- initialize soil vegetation
Expand All @@ -169,7 +169,7 @@ subroutine lsm_ruc_init (me, master, isot, ivegsrc, nlunit, &
!-- initialize background emissivity
semisbase(i) = lemitbl(vtype(i)) ! no snow effect

if (.not.flag_restart) then
if (lsm_cold_start) then
!-- land
semis_lnd(i) = semisbase(i) * (1.-sncovr_lnd(i)) &
+ 0.99 * sncovr_lnd(i)
Expand All @@ -196,21 +196,21 @@ subroutine lsm_ruc_init (me, master, isot, ivegsrc, nlunit, &
sfcqv_lnd(i) = q0
qs1 = rslf(prsl1(i),tsfc_ice(i))
sfcqv_ice(i) = qs1
endif ! .not. restart
endif ! lsm_cold_start

enddo ! i

call init_soil_depth_3 ( zs , dzs , lsoil_ruc )

call rucinit (flag_restart, im, lsoil_ruc, lsoil, nlev, & ! in
call rucinit (lsm_cold_start, im, lsoil_ruc, lsoil, nlev, & ! in
me, master, lsm_ruc, lsm, slmsk, & ! in
stype, vtype, landfrac, fice, & ! in
min_seaice, tsfc_lnd, tsfc_wat, tg3, & ! in
zs, dzs, smc, slc, stc, & ! in
sh2o, smfrkeep, tslb, smois, & ! out
wetness, errmsg, errflg)

if (.not.flag_restart) then
if (lsm_cold_start) then
do i = 1, im ! i - horizontal loop
do k = 1, min(kice,lsoil_ruc)
! - at initial time set sea ice T (tsice)
Expand Down Expand Up @@ -357,7 +357,7 @@ subroutine lsm_ruc_run & ! inputs
& rhosnf, sbsno, &
& cmm_lnd, chh_lnd, cmm_ice, chh_ice, &
!
& flag_iter, flag_guess, flag_init, flag_restart, &
& flag_iter, flag_guess, flag_init, lsm_cold_start, &
& flag_cice, frac_grid, errmsg, errflg &
& )

Expand Down Expand Up @@ -439,7 +439,7 @@ subroutine lsm_ruc_run & ! inputs
& albdvis_lnd, albdnir_lnd, albivis_lnd, albinir_lnd, &
& albdvis_ice, albdnir_ice, albivis_ice, albinir_ice

logical, intent(in) :: flag_init, flag_restart
logical, intent(in) :: flag_init, lsm_cold_start
character(len=*), intent(out) :: errmsg
integer, intent(out) :: errflg

Expand Down Expand Up @@ -589,7 +589,7 @@ subroutine lsm_ruc_run & ! inputs
write (0,*)'vtype=',ipr,vtype(ipr)
write (0,*)'kdt, iter =',kdt,iter
write (0,*)'flag_init =',flag_init
write (0,*)'flag_restart =',flag_restart
write (0,*)'lsm_cold_start =',lsm_cold_start
endif

ims = 1
Expand Down Expand Up @@ -1098,7 +1098,7 @@ subroutine lsm_ruc_run & ! inputs

!> - Call RUC LSM lsmruc() for land.
call lsmruc( &
& delt, flag_init, flag_restart, kdt, iter, nsoil, &
& delt, flag_init, lsm_cold_start, kdt, iter, nsoil, &
& graupelncv(i,j), snowncv(i,j), rainncv(i,j), raincv(i,j), &
& zs, prcp(i,j), sneqv_lnd(i,j), snowh_lnd(i,j), &
& sncovr_lnd(i,j), &
Expand Down Expand Up @@ -1359,7 +1359,7 @@ subroutine lsm_ruc_run & ! inputs

!> - Call RUC LSM lsmruc() for ice.
call lsmruc( &
& delt, flag_init, flag_restart, kdt, iter, nsoil, &
& delt, flag_init, lsm_cold_start, kdt, iter, nsoil, &
& graupelncv(i,j), snowncv(i,j), rainncv(i,j), raincv(i,j), &
& zs, prcp(i,j), sneqv_ice(i,j), snowh_ice(i,j), &
& sncovr_ice(i,j), &
Expand Down Expand Up @@ -1506,17 +1506,17 @@ end subroutine lsm_ruc_run

!>\ingroup lsm_ruc_group
!! This subroutine contains RUC LSM initialization.
subroutine rucinit (restart, im, lsoil_ruc, lsoil, nlev, & ! in
me, master, lsm_ruc, lsm, slmsk, & ! in
subroutine rucinit (lsm_cold_start, im, lsoil_ruc, lsoil, & ! in
nlev, me, master, lsm_ruc, lsm, slmsk, & ! in
stype, vtype, landfrac, fice, & ! in
min_seaice, tskin_lnd, tskin_wat, tg3, & ! in
min_seaice, tskin_lnd, tskin_wat, tg3, & ! in
zs, dzs, smc, slc, stc, & ! in
sh2o, smfrkeep, tslb, smois, & ! out
wetness, errmsg, errflg)

implicit none

logical, intent(in ) :: restart
logical, intent(in ) :: lsm_cold_start
integer, intent(in ) :: lsm
integer, intent(in ) :: lsm_ruc
integer, intent(in ) :: im, nlev
Expand Down Expand Up @@ -1599,7 +1599,7 @@ subroutine rucinit (restart, im, lsoil_ruc, lsoil, nlev, & ! in
else if (debug_print) then
write (0,*) 'Start of RUC LSM initialization'
write (0,*)'lsoil, lsoil_ruc =',lsoil, lsoil_ruc
write (0,*)'restart = ',restart
write (0,*)'lsm_cold_start = ',lsm_cold_start
endif

ipr = 10
Expand Down Expand Up @@ -1627,7 +1627,7 @@ subroutine rucinit (restart, im, lsoil_ruc, lsoil, nlev, & ! in
!! Check if RUC soil data (tslb, ...) is provided or not
!if (minval(tslb)==maxval(tslb)) then
! For restart runs, can assume that RUC soil data is provided
if (.not.restart) then
if (lsm_cold_start) then

flag_sst = 0

Expand Down
12 changes: 6 additions & 6 deletions physics/sfc_drv_ruc.meta
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,9 @@
dimensions = ()
type = integer
intent = in
[flag_restart]
standard_name = flag_for_restart
long_name = flag for restart (warmstart) or coldstart
[lsm_cold_start]
standard_name = do_lsm_cold_start
long_name = flag to signify LSM is cold-started
units = flag
dimensions = ()
type = logical
Expand Down Expand Up @@ -1566,9 +1566,9 @@
dimensions = ()
type = logical
intent = in
[flag_restart]
standard_name = flag_for_restart
long_name = flag for restart (warmstart) or coldstart
[lsm_cold_start]
standard_name = do_lsm_cold_start
long_name = flag to signify LSM is cold-started
units = flag
dimensions = ()
type = logical
Expand Down