12 subroutine gfs_suite_interstitial_1_run (im, levs, ntrac, dtf, dtp, slmsk, area, dxmin, dxinv, pgr, &
13 islmsk, work1, work2, psurf, dudt, dvdt, dtdt, dqdt, errmsg, errflg)
20 integer,
intent(in ) :: im, levs, ntrac
21 real(kind=kind_phys),
intent(in ) :: dtf, dtp, dxmin, dxinv
22 real(kind=kind_phys),
intent(in ),
dimension(:) :: slmsk, area, pgr
24 integer,
intent(out),
dimension(:) :: islmsk
25 real(kind=kind_phys),
intent(out),
dimension(:) :: work1, work2, psurf
26 real(kind=kind_phys),
intent(out),
dimension(:,:) :: dudt, dvdt, dtdt
27 real(kind=kind_phys),
intent(out),
dimension(:,:,:) :: dqdt
29 character(len=*),
intent(out) :: errmsg
30 integer,
intent(out) :: errflg
33 real(kind=kind_phys),
parameter :: zero = 0.0_kind_phys, one = 1.0_kind_phys
41 islmsk(i) = nint(slmsk(i))
43 work1(i) = (log(area(i)) - dxmin) * dxinv
44 work1(i) = max(zero, min(one, work1(i)))
45 work2(i) = one - work1(i)