Changeset 6162 for LMDZ6/trunk/libf/phylmd/mo_simple_plumes.f90
- Timestamp:
- Apr 8, 2026, 7:26:15 PM (3 days ago)
- File:
-
- 1 edited
-
LMDZ6/trunk/libf/phylmd/mo_simple_plumes.f90 (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/mo_simple_plumes.f90
r6149 r6162 579 579 ENDDO 580 580 581 ! lfactor , eq(12) de Stevens et al 2017 inversed (LAMBDA=max(1,lambda/700. therein)582 lfactor = MIN(1.0,700.0/lambda)581 ! lfactor cf Stevens et al 2017, eq (12) 582 lfactor = MAX(1.0,lambda/700.) 583 583 584 584 ! sum contribution from plumes to construct composite profiles of aerosol optical properties … … 587 587 ! 588 588 ! calculate wavelength-dependent scattering properties 589 ! Stevens et al 2017, eqs (11)&(13) 590 ! NOTES ASima : ssa and asy only depend on iplume (via ssa550, asy550) and lfactor(lambda), don't need icol dimension. 591 ! Also, why eq(11) was written in this more complex form than in the paper ? 592 !ssa(icol) = (ssa550(iplume) * lfactor**4) / ((ssa550(iplume) * lfactor**4) + ((1-ssa550(iplume)) * lfactor)) 593 ssa = (ssa550(iplume) * lfactor**4) / ((ssa550(iplume) * lfactor**4) + ((1-ssa550(iplume)) * lfactor)) 594 !ssa = ssa550(iplume) / (ssa550(iplume) + (1-ssa550(iplume)) / lfactor**3) 595 asy = asy550(iplume) * SQRT(lfactor) 589 ! (ASima) Stevens et al 2017, eqs (11)&(13) : 590 ! ssa and asy only depend on iplume (via ssa550, asy550) and lfactor(lambda) 591 ssa = ssa550(iplume) / (ssa550(iplume) + (1-ssa550(iplume)) * lfactor**3) 592 asy = asy550(iplume) / SQRT(lfactor) 596 593 ! 597 594 ! distribute plume optical properties across its vertical profile weighting by optical depth and scaling for … … 602 599 lextinct = EXP(-angstrom(iplume) * LOG(lambda/550.0)) 603 600 604 ! NOTE : lextinct, ssa, asy ne dependent ni de icol, ni de k ; peut-on ptimiser ?601 ! NOTE : lextinct, ssa, asy ne dependent ni de icol, ni de k ; peut-on optimiser ? 605 602 DO k=1,nlevels 606 603 DO icol = 1,ncol 607 aod_lmdz = aod550(icol,k,iplume)* lextinct604 aod_lmdz = aod550(icol,k,iplume) * lextinct 608 605 asy_prof(icol,k) = asy_prof(icol,k) + aod_lmdz * ssa * asy 609 606 ssa_prof(icol,k) = ssa_prof(icol,k) + aod_lmdz * ssa
Note: See TracChangeset
for help on using the changeset viewer.
