3 &tauaerl,fac00,fac01,fac10,fac11,forfac,jp,jt,jt1,&
4 &colh2o,laytrop,selffac,selffrac,indself,pfrac)
29 real_b :: coldry(
jplay)
41 real_b :: fac00(
jplay)
42 real_b :: fac01(
jplay)
43 real_b :: fac10(
jplay)
44 real_b :: fac11(
jplay)
45 real_b :: forfac(
jplay)
48 integer_m :: jp(
jplay)
49 integer_m :: jt(
jplay)
50 integer_m :: jt1(
jplay)
53 real_b :: colh2o(
jplay)
57 real_b :: selffac(
jplay)
58 real_b :: selffrac(
jplay)
59 integer_m :: indself(
jplay)
66 real_b :: fracint(
jplay)
70 integer_m :: ifp, ifrac, ig, jfrac, lay
73 real_b :: fp, h2oparam, water
82 water = 1.e20_jprb * colh2o(lay) / coldry(lay)
83 h2oparam = water/(water +.002_jprb)
104 fracint(lay) = (h2oparam-
refparam(ifrac))/&
110 fp = fac11(lay) + fac01(lay)
111 ifp = 2.e2_jprb*fp+_half_
118 fc00(lay) = fac00(lay) *
corr2(ifp)
119 fc10(lay) = fac10(lay) *
corr2(ifp)
120 fc01(lay) = fac01(lay) *
corr1(ifp)
121 fc11(lay) = fac11(lay) *
corr1(ifp)
122 ind0(lay) = ((jp(lay)-1)*5+(jt(lay)-1))*
nspa(2) + 1
123 ind1(lay) = (jp(lay)*5+(jt1(lay)-1))*
nspa(2) + 1
124 inds(lay) = indself(lay)
133 tau(
ngs1+ig,lay) = colh2o(lay) *&
134 &(fc00(lay) *
absa(ind0(lay) ,ig) +&
135 & fc10(lay) *
absa(ind0(lay)+1,ig) +&
136 & fc01(lay) *
absa(ind1(lay) ,ig) +&
137 & fc11(lay) *
absa(ind1(lay)+1,ig) +&
138 &selffac(lay) * (
selfref(inds(lay),ig) + &
141 &+ forfac(lay) *
forref(ig) ) &
143 pfrac(
ngs1+ig,lay) =
fracrefa(ig,ifrac) + fracint(lay) *&
148 DO lay = laytrop+1,
klev
149 fp = fac11(lay) + fac01(lay)
150 ifp = 2.e2_jprb*fp+_half_
155 fc00(lay) = fac00(lay) *
corr2(ifp)
156 fc10(lay) = fac10(lay) *
corr2(ifp)
157 fc01(lay) = fac01(lay) *
corr1(ifp)
158 fc11(lay) = fac11(lay) *
corr1(ifp)
159 ind0(lay) = ((jp(lay)-13)*5+(jt(lay)-1))*
nspb(2) + 1
160 ind1(lay) = ((jp(lay)-12)*5+(jt1(lay)-1))*
nspb(2) + 1
165 DO lay = laytrop+1,
klev
167 tau(
ngs1+ig,lay) = colh2o(lay) *&
168 &(fc00(lay) *
absb(ind0(lay) ,ig) +&
169 & fc10(lay) *
absb(ind0(lay)+1,ig) +&
170 & fc01(lay) *
absb(ind1(lay) ,ig) +&
171 & fc11(lay) *
absb(ind1(lay)+1,ig)&
172 &+ forfac(lay) *
forref(ig) ) &
real(kind=jprb), dimension(13) refparam
real(kind=jprb), dimension(0:200) corr2
integer(kind=jpim), parameter jpgpt
integer(kind=jpim), parameter jpband
real(kind=jprb), dimension(5, 13, ng2) ka
real(kind=jprb), dimension(ng2) forref
real(kind=jprb), dimension(235, ng2) absb
integer(kind=jpim), dimension(16) nspb
integer(kind=jpim), dimension(16) ng
integer(kind=jpim), dimension(16) nspa
real(kind=jprb), dimension(65, ng2) absa
real(kind=jprb), dimension(5, 13:59, ng2) kb
real(kind=jprb), dimension(ng2, 13) fracrefa
real(kind=jprb), dimension(10, ng2) selfref
integer(kind=jpim), parameter jplay
real(kind=jprb), dimension(ng2) fracrefb
integer(kind=jpim), parameter ng2
subroutine rrtm_taumol2(KLEV, P_TAU, P_COLDRY, P_TAUAERL, P_FAC00, P_FAC01, P_FAC10, P_FAC11, P_FORFAC, K_JP, K_JT, K_JT1, P_COLH2O, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, PFRAC)
integer(kind=jpim), parameter ngs1
real(kind=jprb), dimension(0:200) corr1
integer(kind=jpim), parameter jpxsec