Ignore:
Timestamp:
Jul 28, 2025, 7:23:15 PM (3 weeks ago)
Author:
aborella
Message:

Merge with trunk r5789

Location:
LMDZ6/branches/contrails
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/contrails

  • LMDZ6/branches/contrails/libf/phylmd/ecrad/radiation/radiation_aerosol_optics.F90

    r4853 r5791  
    444444      mapping = transpose(mapping_transp)
    445445      ao%mass_ext_lw_phobic = matmul(mapping, ao_legacy%mass_ext_lw_phobic)
    446       ao%ssa_lw_phobic = matmul(mapping, ao_legacy%mass_ext_lw_phobic*ao_legacy%ssa_lw_phobic) &
    447            &           / ao%mass_ext_lw_phobic
    448       ao%g_lw_phobic = matmul(mapping, ao_legacy%mass_ext_lw_phobic*ao_legacy%ssa_lw_phobic &
    449            &                           *ao_legacy%g_lw_phobic) &
    450            &         / (ao%mass_ext_lw_phobic*ao%ssa_lw_phobic)
     446
     447      where (ao%mass_ext_lw_phobic /= 0)
     448         ao%ssa_lw_phobic = matmul(mapping, ao_legacy%mass_ext_lw_phobic*ao_legacy%ssa_lw_phobic) &
     449              &           / ao%mass_ext_lw_phobic
     450         ao%g_lw_phobic = matmul(mapping, ao_legacy%mass_ext_lw_phobic*ao_legacy%ssa_lw_phobic &
     451              &                           *ao_legacy%g_lw_phobic) &
     452              &         / (ao%mass_ext_lw_phobic*ao%ssa_lw_phobic)
     453      elsewhere
     454         ao%ssa_lw_phobic = 1.
     455         ao%g_lw_phobic = 0.
     456      end where
    451457
    452458      if (ao%use_hydrophilic) then
    453459        do jtype = 1,ao%n_type_philic
    454460          ao%mass_ext_lw_philic(:,:,jtype) = matmul(mapping, ao_legacy%mass_ext_lw_philic(:,:,jtype))
    455           ao%ssa_lw_philic(:,:,jtype) = matmul(mapping, ao_legacy%mass_ext_lw_philic(:,:,jtype) &
    456                &                                        *ao_legacy%ssa_lw_philic(:,:,jtype)) &
    457                &           / ao%mass_ext_lw_philic(:,:,jtype)
    458           ao%g_lw_philic(:,:,jtype) = matmul(mapping, ao_legacy%mass_ext_lw_philic(:,:,jtype) &
    459                &               *ao_legacy%ssa_lw_philic(:,:,jtype)*ao_legacy%g_lw_philic(:,:,jtype)) &
    460                &         / (ao%mass_ext_lw_philic(:,:,jtype)*ao%ssa_lw_philic(:,:,jtype))
     461
     462          where (ao%mass_ext_lw_philic(:,:,jtype) /= 0.)
     463             ao%ssa_lw_philic(:,:,jtype) = matmul(mapping, ao_legacy%mass_ext_lw_philic(:,:,jtype) &
     464                  &                                        *ao_legacy%ssa_lw_philic(:,:,jtype)) &
     465                  &           / ao%mass_ext_lw_philic(:,:,jtype)
     466             ao%g_lw_philic(:,:,jtype) = matmul(mapping, ao_legacy%mass_ext_lw_philic(:,:,jtype) &
     467                  &               *ao_legacy%ssa_lw_philic(:,:,jtype)*ao_legacy%g_lw_philic(:,:,jtype)) &
     468                  &         / (ao%mass_ext_lw_philic(:,:,jtype)*ao%ssa_lw_philic(:,:,jtype))
     469          elsewhere
     470             ao%ssa_lw_philic(:,:,jtype) = 1.
     471             ao%g_lw_philic(:,:,jtype) = 0.
     472          end where
    461473        end do
    462474      end if
Note: See TracChangeset for help on using the changeset viewer.