Changeset 1788 for trunk/LMDZ.TITAN/libf/phytitan/optcv.F90
- Timestamp:
- Sep 26, 2017, 12:43:42 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.TITAN/libf/phytitan/optcv.F90
r1781 r1788 1 1 SUBROUTINE OPTCV(DTAUV,TAUV,TAUCUMV,PLEV, & 2 QXVAER,QSVAER,GVAER,WBARV,COSBV, & 3 TAURAY,TAUAERO,TMID,PMID,TAUGSURF) 2 WBARV,COSBV,TAURAY,TMID,PMID,TAUGSURF) 4 3 5 4 use radinc_h … … 46 45 real*8 COSBV(L_NLAYRAD,L_NSPECTV,L_NGAUSS) 47 46 real*8 WBARV(L_NLAYRAD,L_NSPECTV,L_NGAUSS) 48 49 ! for aerosols50 real*8 QXVAER(L_LEVELS,L_NSPECTV,NAERKIND)51 real*8 QSVAER(L_LEVELS,L_NSPECTV,NAERKIND)52 real*8 GVAER(L_LEVELS,L_NSPECTV,NAERKIND)53 real*8 TAUAERO(L_LEVELS,NAERKIND)54 real*8 TAUAEROLK(L_LEVELS,L_NSPECTV,NAERKIND)55 real*8 TAEROS(L_LEVELS,L_NSPECTV,NAERKIND)56 47 57 48 ! Titan customisation … … 76 67 77 68 real*8 taugsurf(L_NSPECTV,L_NGAUSS-1) 78 real*8 DCONT ,DAERO69 real*8 DCONT 79 70 real*8 DRAYAER 80 71 double precision wn_cont, p_cont, p_air, T_cont, dtemp, dtempc … … 129 120 end do ! levels 130 121 131 ! Spectral dependance of aerosol absorption132 do iaer=1,naerkind133 do NW=1,L_NSPECTV134 do K=2,L_LEVELS135 TAEROS(K,NW,IAER) = TAUAERO(K,IAER) * QXVAER(K,NW,IAER)136 end do ! levels137 end do138 end do139 140 122 ! Rayleigh scattering 141 123 do NW=1,L_NSPECTV … … 158 140 DRAYAER = TRAY(K,NW) 159 141 ! DRAYAER is Tau RAYleigh scattering, plus AERosol opacity 160 do iaer=1,naerkind161 DRAYAER = DRAYAER + TAEROS(K,NW,IAER)162 end do163 164 142 DRAYAER = DRAYAER + DHAZE_T(K,NW) ! Titan's aerosol 165 143 … … 275 253 ! we need to calculate the scattering albedo and asymmetry factors 276 254 277 do iaer=1,naerkind278 DO NW=1,L_NSPECTV279 DO K=2,L_LEVELS280 TAUAEROLK(K,NW,IAER) = TAUAERO(K,IAER) * QSVAER(K,NW,IAER) ! effect of scattering albedo281 ENDDO282 ENDDO283 end do284 285 255 ! Haze scattering 286 256 DO NW=1,L_NSPECTV … … 294 264 DO L=1,L_NLAYRAD-1 295 265 K = 2*L+1 296 atemp(L,NW) = SUM(GVAER(K,NW,1:naerkind) * TAUAEROLK(K,NW,1:naerkind))+SUM(GVAER(K+1,NW,1:naerkind) * TAUAEROLK(K+1,NW,1:naerkind)) & 297 + ASF_T(K,NW)*DHAZES_T(K,NW) + ASF_T(K+1,NW)*DHAZES_T(K+1,NW) 298 btemp(L,NW) = SUM(TAUAEROLK(K,NW,1:naerkind)) + SUM(TAUAEROLK(K+1,NW,1:naerkind)) & 299 + DHAZES_T(K,NW) + DHAZES_T(K+1,NW) 266 atemp(L,NW) = ASF_T(K,NW)*DHAZES_T(K,NW) + ASF_T(K+1,NW)*DHAZES_T(K+1,NW) 267 btemp(L,NW) = DHAZES_T(K,NW) + DHAZES_T(K+1,NW) 300 268 ctemp(L,NW) = btemp(L,NW) + 0.9999*(TRAY(K,NW) + TRAY(K+1,NW)) ! JVO 2017 : does this 0.999 is really meaningful ? 301 269 btemp(L,NW) = btemp(L,NW) + TRAY(K,NW) + TRAY(K+1,NW) … … 306 274 L = L_NLAYRAD 307 275 K = 2*L+1 308 atemp(L,NW) = SUM(GVAER(K,NW,1:naerkind) * TAUAEROLK(K,NW,1:naerkind)) & 309 + ASF_T(K,NW)*DHAZES_T(K,NW) 310 btemp(L,NW) = SUM(TAUAEROLK(K,NW,1:naerkind)) & 311 + DHAZES_T(K,NW) 276 atemp(L,NW) = ASF_T(K,NW)*DHAZES_T(K,NW) 277 btemp(L,NW) = DHAZES_T(K,NW) 312 278 ctemp(L,NW) = btemp(L,NW) + 0.9999*TRAY(K,NW) ! JVO 2017 : does this 0.999 is really meaningful ? 313 279 btemp(L,NW) = btemp(L,NW) + TRAY(K,NW)
Note: See TracChangeset
for help on using the changeset viewer.