File indexing completed on 2023-02-03 06:10:35 UTC
view on githubraw file Latest commit edb66560 on 2023-02-02 23:32:31 UTC
2a9474d935 Mart*0001 #include "THSICE_OPTIONS.h"
6b47d550f4 Mart*0002 #ifdef ALLOW_AUTODIFF
0003 # include "AUTODIFF_OPTIONS.h"
0004 #endif
2a9474d935 Mart*0005 #ifdef ALLOW_EXF
0006 #include "EXF_OPTIONS.h"
0007 #endif
0008
0009
0010
0011
0012 SUBROUTINE THSICE_GET_EXF(
a163d11794 Patr*0013 I bi, bj, it2,
9dcf02c6ac Jean*0014 I iMin,iMax, jMin,jMax,
c1c3d0f9d7 Patr*0015 I icFlag, hSnow1, tsfCel,
9dcf02c6ac Jean*0016 O flxExcSw, dFlxdT, evapLoc, dEvdT,
0017 I myTime, myIter, myThid )
0018
2a9474d935 Mart*0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 IMPLICIT NONE
0029
0030
1fbbacd21d Jean*0031 #include "SIZE.h"
0032 #include "EEPARAMS.h"
0033 #include "PARAMS.h"
2a9474d935 Mart*0034 #ifdef ALLOW_EXF
681d55b157 Jean*0035 # include "EXF_CONSTANTS.h"
0036 # include "EXF_PARAM.h"
0037 # include "EXF_FIELDS.h"
2a9474d935 Mart*0038 #endif
77008a74ba Patr*0039 #ifdef ALLOW_AUTODIFF_TAMC
0040 # include "tamc.h"
a163d11794 Patr*0041 # include "THSICE_SIZE.h"
77008a74ba Patr*0042 #endif
2a9474d935 Mart*0043
0044
0045
9dcf02c6ac Jean*0046
a163d11794 Patr*0047
9dcf02c6ac Jean*0048
0049
c1c3d0f9d7 Patr*0050
0051
b20c2a3388 Jean*0052
9dcf02c6ac Jean*0053
0054
2a9474d935 Mart*0055
0056
9dcf02c6ac Jean*0057
0058
0059
0060 INTEGER bi, bj
a163d11794 Patr*0061 INTEGER it2
9dcf02c6ac Jean*0062 INTEGER iMin, iMax
0063 INTEGER jMin, jMax
c1c3d0f9d7 Patr*0064 _RL icFlag (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
a85293d087 Mart*0065 _RL hSnow1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
9dcf02c6ac Jean*0066 _RL tsfCel (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0067 _RL flxExcSw(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0068 _RL dFlxdT (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0069 _RL evapLoc (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0070 _RL dEvdT (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0071 _RL myTime
0072 INTEGER myIter
170766e9fd Jean*0073 INTEGER myThid
2a9474d935 Mart*0074
0075
0076 #ifdef ALLOW_EXF
5465695fc7 Jean*0077 #ifdef ALLOW_ATM_TEMP
bd97d4af55 Jean*0078 #ifdef ALLOW_DOWNWARD_RADIATION
2a9474d935 Mart*0079
0080
0081
a3f1d55259 Jean*0082
5de01d9c5b Jean*0083
0084
0085
5f374c5868 Mart*0086 _RL hsLocal
0087 _RL hlLocal
5de01d9c5b Jean*0088 INTEGER iter
9dcf02c6ac Jean*0089 INTEGER i, j
5de01d9c5b Jean*0090 _RL czol
0091 _RL wsm
0092 _RL t0
6de40c6370 Mart*0093
0094
0095
6575a2505e Jean*0096 _RL tstar (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
6de40c6370 Mart*0097
6575a2505e Jean*0098 _RL qstar (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
6de40c6370 Mart*0099
0100 _RL ustar (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0101
0102 _RL rdn (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0103 _RL rd (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0104 _RL rh (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0105 _RL re (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0106
6575a2505e Jean*0107 _RL delq (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
6de40c6370 Mart*0108 _RL deltap(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
8053a926ae Jean*0109 #ifdef EXF_CALC_ATMRHO
0110
0111 _RL atmrho_loc(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
0112 #endif
6de40c6370 Mart*0113
a85293d087 Mart*0114 _RL ssq
6de40c6370 Mart*0115 _RL ren, rhn
5de01d9c5b Jean*0116 _RL usn, usm
0117 _RL stable
6de40c6370 Mart*0118
6575a2505e Jean*0119 _RL huol
5de01d9c5b Jean*0120 _RL htol
0121 _RL hqol
0122 _RL x
0123 _RL xsq
0124 _RL psimh
0125 _RL psixh
0126 _RL zwln
0127 _RL ztln
0128 _RL tau
0129 _RL tmpbulk
2a9474d935 Mart*0130
0131
0132
0133 _RL flwup
0134
0135 _RL flwNet_dwn
b20c2a3388 Jean*0136
2a9474d935 Mart*0137
5f374c5868 Mart*0138 _RL dflhdT
0139 _RL dfshdT
6de40c6370 Mart*0140 _RL dflwupdT
2a9474d935 Mart*0141
0142 _RL emiss
b20c2a3388 Jean*0143
0144
0145 _RL Tsf
2a9474d935 Mart*0146 _RL Ts2
b20c2a3388 Jean*0147
0148 _RL lath
6de40c6370 Mart*0149 _RL qsat_fac
0150 _RL qsat_exp
7c50f07931 Mart*0151 #ifdef ALLOW_AUTODIFF_TAMC
edb6656069 Mart*0152
0153
0154
0155 INTEGER ikey, nbkey, ijkey
7c50f07931 Mart*0156 #endif
6575a2505e Jean*0157 #ifdef ALLOW_DBUG_THSICE
0158 LOGICAL dBugFlag
0159 INTEGER stdUnit
0160 #endif
2a9474d935 Mart*0161
b20c2a3388 Jean*0162
2a9474d935 Mart*0163
b20c2a3388 Jean*0164
0165
5de01d9c5b Jean*0166
0167
0168
0169
2a9474d935 Mart*0170
b20c2a3388 Jean*0171
2a9474d935 Mart*0172
6575a2505e Jean*0173
0174 #include "THSICE_DEBUG.h"
0175
0176 #ifdef ALLOW_DBUG_THSICE
ae605e558b Jean*0177 dBugFlag = debugLevel.GE.debLevC
6575a2505e Jean*0178 stdUnit = standardMessageUnit
0179 #endif
0180
6de40c6370 Mart*0181
0182 zwln = LOG(hu/zref)
0183 ztln = LOG(ht/zref)
0184 czol = hu*karman*gravity_mks
0185 ren = cDalton
0186
0187 lath = flamb+flami
0188 qsat_fac = cvapor_fac_ice
0189 qsat_exp = cvapor_exp_ice
0190
0191
bd97d4af55 Jean*0192 DO j = 1-OLy,sNy+OLy
0193 DO i = 1-OLx,sNx+OLx
6de40c6370 Mart*0194 tstar(i,j) = 0. _d 0
0195 qstar(i,j) = 0. _d 0
0196 ustar(i,j) = 0. _d 0
0197 rdn(i,j) = 0. _d 0
0198 rd(i,j) = 0. _d 0
0199 rh(i,j) = 0. _d 0
0200 re(i,j) = 0. _d 0
0201 delq(i,j) = 0. _d 0
0202 deltap(i,j) = 0. _d 0
0203 ENDDO
0204 ENDDO
0205
9dcf02c6ac Jean*0206 DO j=jMin,jMax
0207 DO i=iMin,iMax
6575a2505e Jean*0208
0209 #ifdef ALLOW_DBUG_THSICE
8053a926ae Jean*0210 IF ( dBug(i,j,bi,bj) .AND. (icFlag(i,j).GT.0. _d 0) )
c1c3d0f9d7 Patr*0211 & WRITE(stdUnit,'(A,2I4,2I2,2F12.6)')
0212 & 'ThSI_GET_EXF: i,j,atemp,lwd=',
6575a2505e Jean*0213 & i,j,bi,bj, atemp(i,j,bi,bj),lwdown(i,j,bi,bj)
0214 #endif
9dcf02c6ac Jean*0215
0216
8053a926ae Jean*0217 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0218 & (atemp(i,j,bi,bj).NE.0. _d 0) ) THEN
0219 IF ( hSnow1(i,j).GT.3. _d -1 ) THEN
6de40c6370 Mart*0220 emiss = snow_emissivity
0221 ELSE
0222 emiss = ice_emissivity
0223 ENDIF
2a9474d935 Mart*0224
6de40c6370 Mart*0225 Tsf = tsfCel(i,j)+cen2kel
0226 Ts2 = Tsf*Tsf
5de01d9c5b Jean*0227
6de40c6370 Mart*0228 wsm = sh(i,j,bi,bj)
1fbbacd21d Jean*0229
6de40c6370 Mart*0230
a85293d087 Mart*0231
6de40c6370 Mart*0232 tmpbulk = qsat_fac*EXP(-qsat_exp/Tsf)
8053a926ae Jean*0233 #ifdef EXF_CALC_ATMRHO
0234 atmrho_loc(i,j) = apressure(i,j,bi,bj) /
0235 & (287.04 _d 0*atemp(i,j,bi,bj)
0236 & *(1. _d 0 + humid_fac*aqh(i,j,bi,bj)))
a85293d087 Mart*0237 ssq = tmpbulk/atmrho_loc(i,j)
8053a926ae Jean*0238 #else
a85293d087 Mart*0239 ssq = tmpbulk/atmrho
8053a926ae Jean*0240 #endif
6de40c6370 Mart*0241 deltap(i,j) = atemp(i,j,bi,bj) + gamma_blk*ht - Tsf
a85293d087 Mart*0242 delq(i,j) = aqh(i,j,bi,bj) - ssq
6575a2505e Jean*0243
6de40c6370 Mart*0244
0245
0246
a85293d087 Mart*0247 dEvdT(i,j) = ssq*qsat_exp/Ts2
6de40c6370 Mart*0248 flwup = emiss*stefanBoltzmann*Ts2*Ts2
0249 dflwupdT = emiss*stefanBoltzmann*Ts2*Tsf * 4. _d 0
0250
0251
0252 flwNet_dwn = emiss*lwdown(i,j,bi,bj) - flwup
0253
0254 dFlxdT(i,j) = -dflwupdT
0255
0256 flxExcSw(i,j) = flwNet_dwn
0257 ENDIF
0258 ENDDO
0259 ENDDO
2a9474d935 Mart*0260
6575a2505e Jean*0261
0262
6de40c6370 Mart*0263 IF ( useStabilityFct_overIce ) THEN
edb6656069 Mart*0264 #ifdef ALLOW_AUTODIFF_TAMC
0265
0266
0267 ikey = bi + (bj-1)*nSx + (ikey_dynamics-1)*nSx*nSy
0268 ikey = (ikey-1)*(MaxTsf+1) + it2
0269 #endif
6de40c6370 Mart*0270 DO j=jMin,jMax
0271 DO i=iMin,iMax
c1c3d0f9d7 Patr*0272
8053a926ae Jean*0273 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0274 & (atemp(i,j,bi,bj).NE.0. _d 0) ) THEN
1fbbacd21d Jean*0275
0276
b20c2a3388 Jean*0277
0278
2a9474d935 Mart*0279
6de40c6370 Mart*0280 t0 = atemp(i,j,bi,bj)*
0281 & (exf_one + humid_fac*aqh(i,j,bi,bj))
0282 stable = exf_half + SIGN(exf_half, deltap(i,j))
0283
0284 wsm = sh(i,j,bi,bj)
0285 tmpbulk = cdrag_1/wsm + cdrag_2 + cdrag_3*wsm
d4b7a0d2bc Patr*0286 IF (tmpbulk.NE.0.) THEN
0287 rdn(i,j) = SQRT(tmpbulk)
0288 ELSE
0289 rdn(i,j) = 0. _d 0
0290 ENDIF
5de01d9c5b Jean*0291
6de40c6370 Mart*0292
0293 rhn = (exf_one-stable)*cstanton_1 + stable*cstanton_2
5de01d9c5b Jean*0294
6de40c6370 Mart*0295 ustar(i,j) = rdn(i,j)*wsm
0296 tstar(i,j) = rhn*deltap(i,j)
0297 qstar(i,j) = ren*delq(i,j)
0298 ENDIF
0299 ENDDO
0300 ENDDO
c1c3d0f9d7 Patr*0301
6de40c6370 Mart*0302
0303 DO iter = 1,niter_bulk
a85293d087 Mart*0304 #ifdef ALLOW_AUTODIFF_TAMC
edb6656069 Mart*0305 nbkey = (ikey-1)*niter_bulk + iter
0306
0307
0308
a85293d087 Mart*0309 #endif
6de40c6370 Mart*0310 DO j=jMin,jMax
0311 DO i=iMin,iMax
8053a926ae Jean*0312 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0313 & (atemp(i,j,bi,bj).NE.0. _d 0) ) THEN
2a9474d935 Mart*0314
77008a74ba Patr*0315 #ifdef ALLOW_AUTODIFF_TAMC
edb6656069 Mart*0316 ijkey = i + sNx*(j-1) + (nbkey-1)*sNx*sNy
a85293d087 Mart*0317
edb6656069 Mart*0318
77008a74ba Patr*0319 #endif
0320
6de40c6370 Mart*0321 t0 = atemp(i,j,bi,bj)*
0322 & (exf_one + humid_fac*aqh(i,j,bi,bj))
0323 huol = (tstar(i,j)/t0 +
0324 & qstar(i,j)/(exf_one/humid_fac+aqh(i,j,bi,bj))
0325 & )*czol/(ustar(i,j)*ustar(i,j))
0326 #ifdef ALLOW_BULK_LARGEYEAGER04
5de01d9c5b Jean*0327
6de40c6370 Mart*0328 huol = MIN( MAX(-10. _d 0,huol), 10. _d 0 )
0329 #else
0330
0331 huol = MAX(huol,zolmin)
0332 #endif /* ALLOW_BULK_LARGEYEAGER04 */
0333 htol = huol*ht/hu
0334 hqol = huol*hq/hu
0335 stable = exf_half + SIGN(exf_half, huol)
b20c2a3388 Jean*0336
0337
6de40c6370 Mart*0338 #ifdef ALLOW_BULK_LARGEYEAGER04
5de01d9c5b Jean*0339
6de40c6370 Mart*0340 xsq = SQRT( ABS(exf_one - huol*16. _d 0) )
0341 #else
5de01d9c5b Jean*0342
6de40c6370 Mart*0343 xsq = MAX(SQRT(ABS(exf_one - huol*16. _d 0)),exf_one)
0344 #endif /* ALLOW_BULK_LARGEYEAGER04 */
0345 x = SQRT(xsq)
0346 psimh = -psim_fac*huol*stable
5de01d9c5b Jean*0347 & + (exf_one-stable)
6de40c6370 Mart*0348 & *( LOG( (exf_one + exf_two*x + xsq)
0349 & *(exf_one+xsq)*0.125 _d 0 )
0350 & -exf_two*ATAN(x) + exf_half*pi )
0351 #ifdef ALLOW_BULK_LARGEYEAGER04
0352
0353 xsq = SQRT( ABS(exf_one - htol*16. _d 0) )
0354 #else
0355
0356 xsq = MAX(SQRT(ABS(exf_one - htol*16. _d 0)),exf_one)
0357 #endif /* ALLOW_BULK_LARGEYEAGER04 */
0358 psixh = -psim_fac*htol*stable
0359 & + (exf_one-stable)
5de01d9c5b Jean*0360 & *exf_two*LOG( exf_half*(exf_one+xsq) )
b20c2a3388 Jean*0361
0362
6de40c6370 Mart*0363 #ifdef ALLOW_BULK_LARGEYEAGER04
0364
0365 usn = wspeed(i,j,bi,bj)
0366 & /( exf_one + rdn(i,j)*(zwln-psimh)/karman )
0367 #else
0368
0369 usn = sh(i,j,bi,bj)/(exf_one - rdn(i,j)/karman*psimh)
0370 #endif /* ALLOW_BULK_LARGEYEAGER04 */
0371 usm = MAX(usn, umin)
5de01d9c5b Jean*0372
0373
6de40c6370 Mart*0374
0375 tmpbulk= cdrag_1/usm + cdrag_2 + cdrag_3*usm
0376 rdn(i,j) = SQRT(tmpbulk)
0377
0378 rhn = (exf_one-stable)*cstanton_1 + stable*cstanton_2
5de01d9c5b Jean*0379
0380
6de40c6370 Mart*0381 #ifdef ALLOW_BULK_LARGEYEAGER04
0382 rd(i,j)= rdn(i,j)/( exf_one + rdn(i,j)*(zwln-psimh)/karman )
0383 #else
0384 rd(i,j)= rdn(i,j)/( exf_one - rdn(i,j)/karman*psimh )
0385 #endif /* ALLOW_BULK_LARGEYEAGER04 */
0386 rh(i,j)= rhn/( exf_one + rhn*(ztln-psixh)/karman )
0387 re(i,j)= ren/( exf_one + ren*(ztln-psixh)/karman )
5de01d9c5b Jean*0388
0389
6de40c6370 Mart*0390 ustar(i,j) = rd(i,j)*sh(i,j,bi,bj)
0391 qstar(i,j) = re(i,j)*delq(i,j)
0392 tstar(i,j) = rh(i,j)*deltap(i,j)
0393 ENDIF
0394
0395 ENDDO
0396 ENDDO
0397
0398 ENDDO
a85293d087 Mart*0399 #ifdef ALLOW_AUTODIFF_TAMC
0400
0401
edb6656069 Mart*0402
0403
0404
0405
0406
a85293d087 Mart*0407 #endif
6de40c6370 Mart*0408 DO j=jMin,jMax
0409 DO i=iMin,iMax
8053a926ae Jean*0410 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0411 & (atemp(i,j,bi,bj).NE.0. _d 0) ) THEN
8053a926ae Jean*0412 #ifdef EXF_CALC_ATMRHO
0413 tau = atmrho_loc(i,j)*rd(i,j)*wspeed(i,j,bi,bj)
0414 #else
6de40c6370 Mart*0415 tau = atmrho*rd(i,j)*wspeed(i,j,bi,bj)
8053a926ae Jean*0416 #endif
5f374c5868 Mart*0417 evapLoc(i,j) = -tau*qstar(i,j)
0418 hlLocal = -lath*evapLoc(i,j)
0419 hsLocal = atmcp*tau*tstar(i,j)
6de40c6370 Mart*0420
0421
2a9474d935 Mart*0422
0423
6de40c6370 Mart*0424
5f374c5868 Mart*0425 dEvdT(i,j) = (tau*re(i,j))*dEvdT(i,j)
0426 dflhdT = -lath*dEvdT(i,j)
0427 dfshdT = -atmcp*tau*rh(i,j)
0428
0429 dFlxdT(i,j) = dFlxdT(i,j) + dfshdT + dflhdT
0430
0431 flxExcSw(i,j) = flxExcSw(i,j) + hsLocal + hlLocal
2a9474d935 Mart*0432
6de40c6370 Mart*0433 ENDIF
0434 ENDDO
0435 ENDDO
0436 ELSE
6575a2505e Jean*0437
1fbbacd21d Jean*0438
6de40c6370 Mart*0439
0440 DO j=jMin,jMax
0441 DO i=iMin,iMax
8053a926ae Jean*0442 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0443 & (atemp(i,j,bi,bj).NE.0. _d 0) ) THEN
5f374c5868 Mart*0444 wsm = sh(i,j,bi,bj)
8053a926ae Jean*0445 #ifdef EXF_CALC_ATMRHO
0446 tau = atmrho_loc(i,j)*exf_iceCe*wsm
0447 #else
5f374c5868 Mart*0448 tau = atmrho*exf_iceCe*wsm
8053a926ae Jean*0449 #endif
5f374c5868 Mart*0450 evapLoc(i,j) = -tau*delq(i,j)
0451 hlLocal = -lath*evapLoc(i,j)
8053a926ae Jean*0452 #ifdef EXF_CALC_ATMRHO
0453 hsLocal = atmcp*atmrho_loc(i,j)
0454 & *exf_iceCh*wsm*deltap(i,j)
0455 #else
5f374c5868 Mart*0456 hsLocal = atmcp*atmrho*exf_iceCh*wsm*deltap(i,j)
8053a926ae Jean*0457 #endif
6575a2505e Jean*0458 #ifdef ALLOW_DBUG_THSICE
0459 IF ( dBug(i,j,bi,bj) ) WRITE(stdUnit,'(A,4F12.6)')
0460 & 'ThSI_GET_EXF: wsm,hl,hs,Lw=',
0461 & wsm,hlLocal,hsLocal,flxExcSw(i,j)
0462 #endif
1fbbacd21d Jean*0463
6de40c6370 Mart*0464
5f374c5868 Mart*0465 dEvdT(i,j) = tau*dEvdT(i,j)
0466 dflhdT = -lath*dEvdT(i,j)
8053a926ae Jean*0467 #ifdef EXF_CALC_ATMRHO
0468 dfshdT = -atmcp*atmrho_loc(i,j)*exf_iceCh*wsm
0469 #else
5f374c5868 Mart*0470 dfshdT = -atmcp*atmrho*exf_iceCh*wsm
8053a926ae Jean*0471 #endif
5f374c5868 Mart*0472
0473 dFlxdT(i,j) = dFlxdT(i,j) + dfshdT + dflhdT
0474
0475 flxExcSw(i,j) = flxExcSw(i,j) + hsLocal + hlLocal
6575a2505e Jean*0476 #ifdef ALLOW_DBUG_THSICE
0477 IF ( dBug(i,j,bi,bj) ) WRITE(stdUnit,'(A,4F12.6)')
0478 & 'ThSI_GET_EXF: flx,dFlxdT,evap,dEvdT',
0479 & flxExcSw(i,j), dFlxdT(i,j), evapLoc(i,j),dEvdT(i,j)
0480 #endif
6de40c6370 Mart*0481 ENDIF
0482 ENDDO
0483 ENDDO
0484
0485 ENDIF
6575a2505e Jean*0486
6de40c6370 Mart*0487 DO j=jMin,jMax
0488 DO i=iMin,iMax
8053a926ae Jean*0489 IF ( (icFlag(i,j).GT.0. _d 0) .AND.
c1c3d0f9d7 Patr*0490 & (atemp(i,j,bi,bj).LE.0. _d 0) ) THEN
6de40c6370 Mart*0491
0492 flxExcSw(i,j) = 0. _d 0
0493 dFlxdT (i,j) = 0. _d 0
0494 evapLoc (i,j) = 0. _d 0
0495 dEvdT (i,j) = 0. _d 0
1fbbacd21d Jean*0496 ENDIF
9dcf02c6ac Jean*0497 ENDDO
0498 ENDDO
2a9474d935 Mart*0499
bd97d4af55 Jean*0500 #else /* ALLOW_DOWNWARD_RADIATION */
0501 STOP 'ABNORMAL END: S/R THSICE_GET_EXF: DOWNWARD_RADIATION undef'
0502 #endif /* ALLOW_DOWNWARD_RADIATION */
5465695fc7 Jean*0503 #else /* ALLOW_ATM_TEMP */
0504 STOP 'ABNORMAL END: S/R THSICE_GET_EXF: ATM_TEMP undef'
0505 #endif /* ALLOW_ATM_TEMP */
5de01d9c5b Jean*0506 #ifdef EXF_READ_EVAP
0507 STOP 'ABNORMAL END: S/R THSICE_GET_EXF: EXF_READ_EVAP defined'
0508 #endif /* EXF_READ_EVAP */
2a9474d935 Mart*0509 #endif /* ALLOW_EXF */
0510
0511 RETURN
0512 END