Changeset 2046 for trunk/LMDZ.TITAN/libf/phytitan
- Timestamp:
- Nov 28, 2018, 12:30:55 PM (6 years ago)
- Location:
- trunk/LMDZ.TITAN/libf/phytitan
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.TITAN/libf/phytitan/callcorrk.F90
r2026 r2046 1 subroutine callcorrk(ngrid,nlayer,pq,nq,qsurf, 1 subroutine callcorrk(ngrid,nlayer,pq,nq,qsurf,zday, & 2 2 albedo,albedo_equivalent,emis,mu0,pplev,pplay,pt, & 3 3 tsurf,fract,dist_star, & … … 15 15 use callkeys_mod, only: global1d, szangle 16 16 use comcstfi_mod, only: pi, mugaz, cpp 17 use callkeys_mod, only: diurnal,tracer, &17 use callkeys_mod, only: diurnal,tracer,seashaze, & 18 18 strictboundcorrk,specOLR 19 use geometry_mod, only: latitude 19 20 20 21 implicit none … … 48 49 INTEGER,INTENT(IN) :: nq ! Number of tracers. 49 50 REAL,INTENT(IN) :: qsurf(ngrid,nq) ! Tracers on surface (kg.m-2). 51 REAL,INTENT(IN) :: zday ! Time elapsed since Ls=0 (sols). 50 52 REAL,INTENT(IN) :: albedo(ngrid,L_NSPECTV) ! Spectral Short Wavelengths Albedo. By MT2015 51 53 REAL,INTENT(IN) :: emis(ngrid) ! Long Wave emissivity. … … 114 116 REAL*8 albedo_temp(L_NSPECTV) ! For equivalent albedo calculation. 115 117 REAL*8 surface_stellar_flux ! Stellar flux reaching the surface. Useful for equivalent albedo calculation. 116 118 119 ! For variable haze 120 REAL*8 seashazefact(L_LEVELS) 117 121 118 122 !======================================================================= … … 281 285 Cmk(:) = 0.01 * 1.0 / (gzlat(ig,:) * mugaz * 1.672621e-27) ! q_main=1.0 assumed. 282 286 gzlat_ig(:) = gzlat(ig,:) 287 288 ! Compute the haze seasonal modulation factor 289 if (seashaze) call season_haze(zday,latitude(ig),plevrad,seashazefact) 283 290 284 291 !----------------------------------------------------------------------- … … 298 305 299 306 call optcv(pq(ig,:,1:nmicro),nlayer,plevrad,tmid,pmid, & 300 dtauv,tauv,taucumv,wbarv,cosbv,tauray,taugsurf )307 dtauv,tauv,taucumv,wbarv,cosbv,tauray,taugsurf,seashazefact) 301 308 302 309 call sfluxv(dtauv,tauv,taucumv,albv,dwnv,wbarv,cosbv, & … … 340 347 341 348 call optci(pq(ig,:,1:nmicro),nlayer,plevrad,tlevrad,tmid,pmid, & 342 dtaui,taucumi,cosbi,wbari,taugsurfi )349 dtaui,taucumi,cosbi,wbari,taugsurfi,seashazefact) 343 350 344 351 call sfluxi(plevrad,tlevrad,dtaui,taucumi,ubari,albi, & -
trunk/LMDZ.TITAN/libf/phytitan/callkeys_mod.F90
r1947 r2046 14 14 logical,save :: strictboundcorrk 15 15 !$OMP THREADPRIVATE(strictboundcorrk) 16 logical,save :: uncoupl_optic_haze17 !$OMP THREADPRIVATE( uncoupl_optic_haze)16 logical,save :: seashaze,uncoupl_optic_haze 17 !$OMP THREADPRIVATE(seashaze,uncoupl_optic_haze) 18 18 19 19 logical,save :: callchim, callmufi, callclouds -
trunk/LMDZ.TITAN/libf/phytitan/inifis_mod.F90
r1947 r2046 366 366 367 367 ! Microphysics 368 369 write(*,*) "Use haze seasonal model from Karkoschka 2016 ?" 370 seashaze=.true. ! default value 371 call getin_p("seashaze",seashaze) 372 write(*,*)" seashaze = ",seashaze 368 373 369 374 write(*,*) "Run with or without microphysics?" -
trunk/LMDZ.TITAN/libf/phytitan/optci.F90
r1947 r2046 1 1 subroutine optci(PQO,NLAY,PLEV,TLEV,TMID,PMID, & 2 DTAUI,TAUCUMI,COSBI,WBARI,TAUGSURF )2 DTAUI,TAUCUMI,COSBI,WBARI,TAUGSURF,SEASHAZEFACT) 3 3 4 4 use radinc_h … … 6 6 use gases_h 7 7 use comcstfi_mod, only: r 8 use callkeys_mod, only: continuum,graybody,callclouds,callmufi, 8 use callkeys_mod, only: continuum,graybody,callclouds,callmufi,seashaze,uncoupl_optic_haze 9 9 use tracer_h, only : nmicro,nice 10 10 use MMP_OPTICS … … 41 41 REAL*8, INTENT(IN) :: PLEV(L_LEVELS), TLEV(L_LEVELS) 42 42 REAL*8, INTENT(IN) :: TMID(L_LEVELS), PMID(L_LEVELS) 43 REAL*8, INTENT(IN) :: SEASHAZEFACT(L_LEVELS) 43 44 44 45 REAL*8, INTENT(OUT) :: DTAUI(L_NLAYRAD,L_NSPECTI,L_NGAUSS) … … 161 162 ! Call fixed vertical haze profile of extinction - same for all columns 162 163 call disr_haze(dz(k),plev(k),wnoi(nw),dhaze_T(k,nw),SSA_T(k,nw),ASF_T(k,nw)) 164 if (seashaze) dhaze_T(k,nw) = dhaze_T(k,nw)*seashazefact(k) 163 165 ENDIF 164 166 -
trunk/LMDZ.TITAN/libf/phytitan/optcv.F90
r1947 r2046 1 1 SUBROUTINE OPTCV(PQO,NLAY,PLEV,TMID,PMID, & 2 DTAUV,TAUV,TAUCUMV,WBARV,COSBV,TAURAY,TAUGSURF )2 DTAUV,TAUV,TAUCUMV,WBARV,COSBV,TAURAY,TAUGSURF,SEASHAZEFACT) 3 3 4 4 use radinc_h … … 6 6 use gases_h 7 7 use comcstfi_mod, only: r 8 use callkeys_mod, only: continuum,graybody,callgasvis,callclouds,callmufi, uncoupl_optic_haze8 use callkeys_mod, only: continuum,graybody,callgasvis,callclouds,callmufi,seashaze,uncoupl_optic_haze 9 9 use tracer_h, only: nmicro,nice 10 10 use MMP_OPTICS … … 48 48 REAL*8, INTENT(IN) :: TMID(L_LEVELS), PMID(L_LEVELS) 49 49 REAL*8, INTENT(IN) :: TAURAY(L_NSPECTV) 50 REAL*8, INTENT(IN) :: SEASHAZEFACT(L_LEVELS) 50 51 51 52 REAL*8, INTENT(OUT) :: DTAUV(L_NLAYRAD,L_NSPECTV,L_NGAUSS) … … 184 185 ! Call fixed vertical haze profile of extinction - same for all columns 185 186 call disr_haze(dz(k),plev(k),wnov(nw),dhaze_T(k,nw),SSA_T(k,nw),ASF_T(k,nw)) 187 if (seashaze) dhaze_T(k,nw) = dhaze_T(k,nw)*seashazefact(k) 186 188 ENDIF 187 189 -
trunk/LMDZ.TITAN/libf/phytitan/physiq_mod.F90
r2002 r2046 854 854 855 855 ! standard callcorrk 856 call callcorrk(ngrid,nlayer,pqo,nq,qsurf, 856 call callcorrk(ngrid,nlayer,pqo,nq,qsurf,zday, & 857 857 albedo,albedo_equivalent,emis,mu0,pplev,pplay,pt, & 858 858 tsurf,fract,dist_star, &
Note: See TracChangeset
for help on using the changeset viewer.