2 SUBROUTINE lwttm ( KIDIA, KFDIA, KLON, PGA , PGB, PUU1 , PUU2 , PTT )
68 INTEGER(KIND=JPIM),
INTENT(IN) :: KLON
69 INTEGER(KIND=JPIM),
INTENT(IN) :: KIDIA
70 INTEGER(KIND=JPIM),
INTENT(IN) :: KFDIA
71 REAL(KIND=JPRB) ,
INTENT(IN) :: PGA(klon,8,2)
72 REAL(KIND=JPRB) ,
INTENT(IN) :: PGB(klon,8,2)
73 REAL(KIND=JPRB) ,
INTENT(IN) :: PUU1(klon,
nua)
74 REAL(KIND=JPRB) ,
INTENT(IN) :: PUU2(klon,
nua)
75 REAL(KIND=JPRB) ,
INTENT(OUT) :: PTT(klon,
ntra)
81 INTEGER(KIND=JPIM) :: JA, JL
83 REAL(KIND=JPRB) :: ZA11, ZA12, ZAERCN, ZEU, ZEU10, ZEU11, ZEU12,&
84 & ZEU13, ZODH41, ZODH42, ZODN21, ZODN22, ZPU, &
85 & ZPU10, ZPU11, ZPU12, ZPU13, ZSQ1, ZSQ2, ZSQH41, &
86 & ZSQH42, ZSQN21, ZSQN22, ZTO1, ZTO2, ZTTF11, &
87 & ZTTF12, ZUU11, ZUU12, ZUXY, ZVXY, ZX, ZXCH4, &
88 & ZXD, ZXN, ZXN2O, ZY, ZYCH4, ZYN2O, ZZ
89 REAL(KIND=JPRB) :: ZHOOK_HANDLE
100 zz = sqrt(puu1(jl,ja) - puu2(jl,ja))
101 zxd = pgb( jl,ja,1) + zz * (pgb( jl,ja,2) + zz )
102 zxn = pga( jl,ja,1) + zz * (pga( jl,ja,2) )
103 ptt(jl,ja) = zxn / zxd
108 ptt(jl,3)=max(ptt(jl,3),0.0_jprb)
116 ptt(jl, 9) = ptt(jl, 8)
120 zpu = (puu1(jl,10) - puu2(jl,10))
125 zeu = (puu1(jl,11) - puu2(jl,11))
133 zx = (puu1(jl,12) - puu2(jl,12))
134 zy = (puu1(jl,13) - puu2(jl,13))
135 zuxy = 4._jprb * zx * zx / (
rpialf0 * zy)
136 zsq1 = sqrt(1.0_jprb +
ro1h * zuxy ) - 1.0_jprb
137 zsq2 = sqrt(1.0_jprb +
ro2h * zuxy ) - 1.0_jprb
138 zvxy =
rpialf0 * zy / (2.0_jprb * zx)
139 zaercn = (puu1(jl,17) -puu2(jl,17)) + zeu12 + zpu12
140 zto1 = exp( - zvxy * zsq1 - zaercn )
141 zto2 = exp( - zvxy * zsq2 - zaercn )
147 zxch4 = (puu1(jl,19) - puu2(jl,19))
148 zych4 = (puu1(jl,20) - puu2(jl,20))
149 zuxy = 4._jprb * zxch4*zxch4/(0.103_jprb*zych4)
150 zsqh41 = sqrt(1.0_jprb + 33.7_jprb * zuxy) - 1.0_jprb
151 zvxy = 0.103_jprb * zych4 / (2.0_jprb * zxch4)
152 zodh41 = zvxy * zsqh41
156 zxn2o = (puu1(jl,21) - puu2(jl,21))
157 zyn2o = (puu1(jl,22) - puu2(jl,22))
158 zuxy = 4._jprb * zxn2o*zxn2o/(0.416_jprb*zyn2o)
159 zsqn21 = sqrt(1.0_jprb + 21.3_jprb * zuxy) - 1.0_jprb
160 zvxy = 0.416_jprb * zyn2o / (2.0_jprb * zxn2o)
161 zodn21 = zvxy * zsqn21
165 zuxy = 4._jprb * zxch4*zxch4/(0.113_jprb*zych4)
166 zsqh42 = sqrt(1.0_jprb + 400._jprb * zuxy) - 1.0_jprb
167 zvxy = 0.113_jprb * zych4 / (2.0_jprb * zxch4)
168 zodh42 = zvxy * zsqh42
172 zuxy = 4._jprb * zxn2o*zxn2o/(0.197_jprb*zyn2o)
173 zsqn22 = sqrt(1.0_jprb + 2000._jprb * zuxy) - 1.0_jprb
174 zvxy = 0.197_jprb * zyn2o / (2.0_jprb * zxn2o)
175 zodn22 = zvxy * zsqn22
179 za11 = (puu1(jl,23) - puu2(jl,23)) * 4.404e+05_jprb
180 zttf11 = 1.0_jprb - za11 * 0.003225_jprb
184 za12 = (puu1(jl,24) - puu2(jl,24)) * 6.7435e+05_jprb
185 zttf12 = 1.0_jprb - za12 * 0.003225_jprb
187 zuu11 = - (puu1(jl,15) - puu2(jl,15)) - zeu10 - zpu10
188 zuu12 = - (puu1(jl,16) - puu2(jl,16)) - zeu11 - zpu11 -zodh41 - zodn21
189 ptt(jl,10) = exp( - (puu1(jl,14)- puu2(jl,14)) )
190 ptt(jl,11) = exp( zuu11 )
191 ptt(jl,12) = exp( zuu12 ) * zttf11 * zttf12
192 ptt(jl,13) = 0.7554_jprb * zto1 + 0.2446_jprb * zto2
193 ptt(jl,14) = ptt(jl,10) * exp( - zeu13 - zpu13 )
194 ptt(jl,15) = exp( - (puu1(jl,14) - puu2(jl,14)) - zodh42-zodn22 )
real(kind=jprb), dimension(4) retype
real(kind=jprb), dimension(4) rptype
subroutine dr_hook(CDNAME, KSWITCH, PKEY)
subroutine lwttm(KIDIA, KFDIA, KLON, PGA, PGB, PUU1, PUU2, PTT)