15 swhtr, sfcalb1, sfcalb2, sfcalb3, sfcalb4, htswc, htsw0, &
16 nirbmdi, nirdfdi, visbmdi, visdfdi, nirbmui, nirdfui, visbmui,&
17 visdfui, sfcdsw, sfcnsw, htrsw, swhc, scmpsw, sfcfsw, topfsw, &
18 sfcdswc, errmsg, errflg)
20 use machine,
only: kind_phys
26 integer,
intent(in) :: im, levr, levs, &
28 logical,
intent(in) :: lsswr, swhtr
29 real(kind=kind_phys),
dimension(:),
intent(in) :: sfcalb1, sfcalb2, &
31 real(kind=kind_phys),
dimension(:,:),
intent(in) :: htswc, htsw0
33 real(kind=kind_phys),
dimension(:),
intent(inout) :: nirbmdi, nirdfdi, &
39 real(kind=kind_phys),
dimension(:,:),
intent(inout) :: htrsw, swhc
41 type(
cmpfsw_type),
dimension(:),
intent(inout) :: scmpsw
42 type(
sfcfsw_type),
dimension(:),
intent(inout) :: sfcfsw
43 type(
topfsw_type),
dimension(:),
intent(inout) :: topfsw
45 character(len=*),
intent(out) :: errmsg
46 integer,
intent(out) :: errflg
58 htrsw(1:im,k) = htswc(1:im,k1)
64 htrsw(1:im,k) = htrsw(1:im,lm)
71 swhc(1:im,k) = htsw0(1:im,k1)
76 swhc(1:im,k) = swhc(1:im,lm)
86 nirbmdi(i) = scmpsw(i)%nirbm
87 nirdfdi(i) = scmpsw(i)%nirdf
88 visbmdi(i) = scmpsw(i)%visbm
89 visdfdi(i) = scmpsw(i)%visdf
91 nirbmui(i) = scmpsw(i)%nirbm * sfcalb1(i)
92 nirdfui(i) = scmpsw(i)%nirdf * sfcalb2(i)
93 visbmui(i) = scmpsw(i)%visbm * sfcalb3(i)
94 visdfui(i) = scmpsw(i)%visdf * sfcalb4(i)
103 scmpsw =
cmpfsw_type( 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 )
125 sfcnsw(i) = sfcfsw(i)%dnfxc - sfcfsw(i)%upfxc
126 sfcdsw(i) = sfcfsw(i)%dnfxc
127 sfcdswc(i)= sfcfsw(i)%dnfx0
subroutine rrtmg_sw_post_run(im, levr, levs, ltp, nday, lm, kd, lsswr, swhtr, sfcalb1, sfcalb2, sfcalb3, sfcalb4, htswc, htsw0, nirbmdi, nirdfdi, visbmdi, visdfdi, nirbmui, nirdfui, visbmui, visdfui, sfcdsw, sfcnsw, htrsw, swhc, scmpsw, sfcfsw, topfsw, sfcdswc, errmsg, errflg)
This module contains RRTMG-SW scheme post.