Skip to content

Commit

Permalink
Merge pull request #1 from climbfuji/first_n_radiation_calls_on_physi…
Browse files Browse the repository at this point in the history
…cs_timestep_for_spinup

Add capability to call radiation on physics timestep for first N time steps
  • Loading branch information
DomHeinzeller authored Dec 12, 2019
2 parents e81ee36 + 73717d2 commit 32e245a
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 4 deletions.
14 changes: 10 additions & 4 deletions physics/GFS_time_vary_pre.fv3.F90
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,9 @@ end subroutine GFS_time_vary_pre_finalize
!> \section arg_table_GFS_time_vary_pre_run Argument Table
!! \htmlinclude GFS_time_vary_pre_run.html
!!
subroutine GFS_time_vary_pre_run (jdat, idat, dtp, lsm, lsm_noahmp, nsswr, &
nslwr, idate, debug, me, master, nscyc, sec, phour, zhour, fhour, kdt, &
julian, yearlen, ipt, lprnt, lssav, lsswr, lslwr, solhr, errmsg, errflg)
subroutine GFS_time_vary_pre_run (jdat, idat, dtp, lsm, lsm_noahmp, nsswr, &
nslwr, nhfrad, idate, debug, me, master, nscyc, sec, phour, zhour, fhour, &
kdt, julian, yearlen, ipt, lprnt, lssav, lsswr, lslwr, solhr, errmsg, errflg)

use machine, only: kind_phys

Expand All @@ -77,7 +77,7 @@ subroutine GFS_time_vary_pre_run (jdat, idat, dtp, lsm, lsm_noahmp, nsswr, &
integer, intent(in) :: jdat(1:8), idat(1:8)
integer, intent(in) :: lsm, lsm_noahmp, &
nsswr, nslwr, me, &
master, nscyc
master, nscyc, nhfrad
logical, intent(in) :: debug
real(kind=kind_phys), intent(in) :: dtp

Expand Down Expand Up @@ -169,6 +169,12 @@ subroutine GFS_time_vary_pre_run (jdat, idat, dtp, lsm, lsm_noahmp, nsswr, &
!--- allow for radiation to be called on every physics time step, if needed
if (nsswr == 1) lsswr = .true.
if (nslwr == 1) lslwr = .true.
!--- allow for radiation to be called on every physics time step
! for the first nhfrad timesteps (for spinup, coldstarts only)
if (kdt<=nhfrad) then
lsswr = .true.
lslwr = .true.
end if

!--- set the solar hour based on a combination of phour and time initial hour
solhr = mod(phour+idate(1),con_24)
Expand Down
8 changes: 8 additions & 0 deletions physics/GFS_time_vary_pre.fv3.meta
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,14 @@
type = integer
intent = in
optional = F
[nhfrad]
standard_name = number_of_timesteps_for_radiation_calls_on_physics_timestep
long_name = number of timesteps for radiation calls on physics timestep (coldstarts only)
units = count
dimensions = ()
type = integer
intent = in
optional = F
[idate]
standard_name = date_and_time_at_model_initialization_reordered
long_name = initial date with different size and ordering
Expand Down

0 comments on commit 32e245a

Please sign in to comment.