3 &tauaerl,fac00,fac01,fac10,fac11,jp,jt,jt1,oneminus,&
4 &colh2o,colo3,co2mult,laytrop,selffac,selffrac,indself,pfrac)
38 real_b :: fac00(
jplay)
39 real_b :: fac01(
jplay)
40 real_b :: fac10(
jplay)
41 real_b :: fac11(
jplay)
44 integer_m :: jp(
jplay)
45 integer_m :: jt(
jplay)
46 integer_m :: jt1(
jplay)
52 real_b :: colh2o(
jplay)
53 real_b :: colo3(
jplay)
54 real_b :: co2mult(
jplay)
58 real_b :: selffac(
jplay)
59 real_b :: selffrac(
jplay)
60 integer_m :: indself(
jplay)
65 integer_m :: ijs(
jplay)
70 integer_m :: ig, js, lay
73 real_b :: fac000, fac001, fac010, fac011, fac100, fac101,&
74 &fac110, fac111, fs, specmult, specparm
84 speccomb(lay) = colh2o(lay) +
strrat*colo3(lay)
85 specparm = colh2o(lay)/speccomb(lay)
86 specparm=min(oneminus,specparm)
87 specmult = 8._jprb*specparm
88 js = 1 + int(specmult)
89 fs = mod(specmult,_one_)
90 ind0(lay) = ((jp(lay)-1)*5+(jt(lay)-1))*
nspa(7) + js
91 ind1(lay) = (jp(lay)*5+(jt1(lay)-1))*
nspa(7) + js
92 inds(lay) = indself(lay)
116 tau(
ngs6+ig,lay) = speccomb(lay) *&
126 &( (1. - fs) *(fac00(lay) *
absa(ind0(lay) ,ig) + &
127 & fac10(lay) *
absa(ind0(lay)+ 9,ig) + &
128 & fac01(lay) *
absa(ind1(lay) ,ig) + &
129 & fac11(lay) *
absa(ind1(lay)+ 9,ig))+ &
130 & fs *(fac00(lay) *
absa(ind0(lay)+ 1,ig) + &
131 & fac10(lay) *
absa(ind0(lay)+10,ig) + &
132 & fac01(lay) *
absa(ind1(lay)+ 1,ig) + &
133 & fac11(lay) *
absa(ind1(lay)+10,ig))) + &
136 &selffac(lay) * (
selfref(inds(lay),ig) + &
139 &+ co2mult(lay) *
absco2(ig)&
146 DO lay = laytrop+1,
klev
147 ind0(lay) = ((jp(lay)-13)*5+(jt(lay)-1))*
nspb(7) + 1
148 ind1(lay) = ((jp(lay)-12)*5+(jt1(lay)-1))*
nspb(7) + 1
153 DO lay = laytrop+1,
klev
155 tau(
ngs6+ig,lay) = colo3(lay) *&
156 &(fac00(lay) *
absb(ind0(lay) ,ig) +&
157 & fac10(lay) *
absb(ind0(lay)+1,ig) +&
158 & fac01(lay) *
absb(ind1(lay) ,ig) +&
159 & fac11(lay) *
absb(ind1(lay)+1,ig))&
160 &+ co2mult(lay) *
absco2(ig)&
real(kind=jprb), dimension(5, 13:59, ng7) kb
real(kind=jprb), dimension(ng7, 9) fracrefa
integer(kind=jpim), parameter jpgpt
subroutine rrtm_taumol7(KLEV, P_TAU, P_TAUAERL, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLO3, P_CO2MULT, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, PFRAC)
integer(kind=jpim), parameter jpband
real(kind=jprb), dimension(ng7) fracrefb
integer(kind=jpim), dimension(16) nspb
integer(kind=jpim), dimension(16) ng
integer(kind=jpim), parameter ngs6
integer(kind=jpim), dimension(16) nspa
real(kind=jprb), dimension(ng7) absco2
real(kind=jprb), dimension(235, ng7) absb
integer(kind=jpim), parameter jplay
integer(kind=jpim), parameter ng7
real(kind=jprb), dimension(10, ng7) selfref
real(kind=jprb), dimension(9, 5, 13, ng7) ka
real(kind=jprb), dimension(585, ng7) absa
integer(kind=jpim), parameter jpxsec