- Timestamp:
- Mar 14, 2024, 9:32:34 AM (8 months ago)
- Location:
- trunk/LMDZ.GENERIC
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.GENERIC/changelog.txt
r3266 r3268 1881 1881 conditions for the presence of solar flux. 1882 1882 1883 == 13 /03/2024 == MT1883 == 13-14/03/2024 == MT 1884 1884 1885 1885 - Very minor change of max sea ice fraction in ocean model 1886 1886 - Preliminary cleanup+commenting in hydrol.F90 1887 - Changes in computation of snow albedo when ok_slab_ocean is activated -
trunk/LMDZ.GENERIC/libf/phystd/hydrol.F90
r3267 r3268 15 15 USE tracer_h 16 16 ! use slab_ice_h 17 USE ocean_slab_mod, ONLY: alb_ice_max 18 USE ocean_slab_mod, ONLY: alb_ice_min 19 USE ocean_slab_mod, ONLY: h_alb_ice 17 USE ocean_slab_mod, ONLY: alb_ice_max,alb_ice_min,h_alb_ice,snow_min 20 18 use callkeys_mod, only: albedosnow,alb_ocean,albedoco2ice,ok_slab_ocean,Tsaldiff,maxicethick,co2cond 21 19 use radinc_h, only : L_NSPECTV … … 102 100 real ztsurf(ngrid) 103 101 real albedo_sic, alb_ice 104 real zfra102 real frac_snow 105 103 106 104 integer, save :: ivap, iliq, iice … … 221 219 if(ok_slab_ocean) then ! if ocean heat transport param activated 222 220 223 zfra = MAX(0.0,MIN(1.0,zqsurf(ig,iice)/45.0)) ! Snow Fraction (Critical height 45kg/m2~15cm) 224 alb_ice=alb_ice_max-(alb_ice_max-alb_ice_min) & ! Ice Albedo 221 frac_snow = MAX(0.0,MIN(1.0,zqsurf(ig,iice)/snow_min)) ! Critical snow height (in kg/m2) from ocean_slab_ice routine. 222 ! Standard value should be 15kg/m2 (i.e. about 5 cm). Note that in the previous ocean param. (from BC2014), this value was 45kg/m2 (i.e. about 15cm). 223 alb_ice=alb_ice_max-(alb_ice_max-alb_ice_min) & ! Ice Albedo 225 224 *exp(-sea_ice(ig)/h_alb_ice) 226 225 ! Albedo final calculation : 227 226 do nw=1,L_NSPECTV 228 227 albedo(ig,nw) = pctsrf_sic(ig)* & 229 (albedo_snow_SPECTV(nw)* zfra + alb_ice*(1.0-zfra)) &228 (albedo_snow_SPECTV(nw)*frac_snow + alb_ice*(1.0-frac_snow)) & 230 229 + (1.-pctsrf_sic(ig))*alb_ocean 231 230 enddo -
trunk/LMDZ.GENERIC/libf/phystd/ocean_slab_mod.F90
r3265 r3268 112 112 113 113 ! control of snow and ice cover & freeze / melt (heights in m converted to kg/m2) 114 REAL, PARAMETER :: snow_min=0.05*sno_den ! critical snow height [in kg/m2]114 REAL, PARAMETER, PUBLIC :: snow_min=0.05*sno_den ! critical snow height [in kg/m2] 115 115 REAL, PARAMETER :: snow_wfact=0.4 ! max fraction of falling snow blown into ocean [in kg/m2] 116 116 REAL, PARAMETER :: ice_frac_min=0.001 -
trunk/LMDZ.GENERIC/libf/phystd/physiq_mod.F90
r3236 r3268 1928 1928 enddo 1929 1929 1930 !! These two commented functions are from BC2014 (only kept for record) 1931 !! 1930 1932 !! call ocean_slab_ice(ptimestep, & 1931 1933 !! ngrid, knindex, tsea_ice, fluxrad, & … … 1934 1936 !! flux_sens_lat,tsea_ice, pctsrf_sic, & 1935 1937 !! taux,tauy,icount) 1936 1937 1938 1938 !! call ocean_slab_get_vars(ngrid,tslab, & 1939 1939 !! sea_ice, flux_o, & … … 1955 1955 call ocean_slab_get_vars(ngrid, tslab, sea_ice, flux_g, & 1956 1956 dt_hdiff, dt_ekman) 1957 1958 !! sea_ice defines the sea ice thickness in kg/m2 1959 !! pctsrf_sic defines the percentage of the oceanic grid that is covered by sea ice (between 0 and **almost** 1) 1960 !! qsurf(:,igcm_h2o_ice) defines the amount of snow that accumulates on top of the sea ice (in kg/m2) ; note that the snow fraction depends on the amount of snow. 1961 !! therefore, beware that qsurf(:,igcm_h2o_ice) has its own meaning for oceanic grid points (when ok_slab_ocean activated) 1962 1957 1963 1958 1964 do ig=1,ngrid
Note: See TracChangeset
for help on using the changeset viewer.