Ignore:
Timestamp:
Feb 17, 2026, 2:45:53 PM (13 days ago)
Author:
jbclement
Message:

PEM:

  • Correct management of H2O ice tendency in 1D when there is not enough ice anymore.
  • Clean initialization of allocatable module arrays (especially needed when no slope)
  • One more renaming for consistency + few small updates thoughout the code.

JBC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.COMMON/libf/evolution/ice_table.F90

    r4065 r4074  
    6767allocate(icetable_thickness(ngrid,nslope))
    6868allocate(ice_porefilling(ngrid,nsoil,nslope))
     69icetable_depth(:,:) = 0._dp
     70icetable_thickness(:,:) = 0._dp
     71ice_porefilling(:,:,:) = 0._dp
    6972
    7073END SUBROUTINE ini_ice_table
     
    303306        do islope = 1,nslope
    304307            call compute_Tice(tsoil(ig,:,islope),tsurf(ig,islope),icetable_depth(ig,islope),Tice)
    305             delta_icetable(ig) = delta_icetable(ig) + porosity*rho_ice(Tice,'h2o')*(icetable_thickness(ig,islope) - icetable_thickness_old(ig,islope)) & ! convention > 0. <=> it condenses
     308            delta_icetable(ig) = delta_icetable(ig) + porosity*rho_ice(Tice,'H2O')*(icetable_thickness(ig,islope) - icetable_thickness_old(ig,islope)) & ! convention > 0. <=> it condenses
    306309                              *subslope_dist(ig,islope)/cos(def_slope_mean(islope)*pi/180._dp)
    307310        end do
     
    313316            do isoil = 1,nsoil
    314317                call compute_Tice(tsoil(ig,:,islope),tsurf(ig,islope),mlayer(isoil - 1),Tice)
    315                 delta_icetable(ig) = delta_icetable(ig) + rho_ice(Tice,'h2o')*(ice_porefilling(ig,isoil,islope) - ice_porefilling_old(ig,isoil,islope)) & ! convention > 0. <=> it condenses
     318                delta_icetable(ig) = delta_icetable(ig) + rho_ice(Tice,'H2O')*(ice_porefilling(ig,isoil,islope) - ice_porefilling_old(ig,isoil,islope)) & ! convention > 0. <=> it condenses
    316319                                  *subslope_dist(ig,islope)/cos(def_slope_mean(islope)*pi/180._dp)
    317320            end do
     
    586589! ----
    587590select case (trim(adjustl(ice)))
    588     case('h2o')
     591    case('H2O')
    589592        rho = -3.5353e-4_dp*T**2 + 0.0351_dp*T + 933.5030_dp ! Rottgers 2012
    590     case('co2')
     593    case('CO2')
    591594        rho = (1.72391_dp - 2.53e-4_dp*T - 2.87_dp*1.e-7_dp*T**2)*1.e3_dp ! Mangan et al. 2017
    592595    case default
Note: See TracChangeset for help on using the changeset viewer.