Changeset 7537 for branches/2016
- Timestamp:
- 2017-01-10T12:09:30+01:00 (7 years ago)
- Location:
- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ice_lim3_ref
r6316 r7537 98 98 ! 0: k = k0 + beta.S/T (Untersteiner, 1964) 99 99 ! 1: k = k0 + beta1.S/T - beta2.T (Pringle et al., 2007) 100 rn_rcdsn = 0.31 ! thermal conductivity of the snow (0.31 W/m/K, Maykut and Untersteiner, 1971). Obs: 0.1-0.5 (Lecomte et al, JAMES 2013) 100 101 nn_monocat = 0 ! virtual ITD mono-category parameterizations (1, jpl = 1 only) or not (0) 101 102 ! 2: simple piling instead of ridging --- temporary option -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ref
r6319 r7537 500 500 &namsbc_alb ! albedo parameters 501 501 !----------------------------------------------------------------------- 502 nn_ice_alb = 0 ! parameterization of ice/snow albedo 503 ! 0: Shine & Henderson-Sellers (JGR 1985) 504 ! 1: "home made" based on Brandt et al. (J. Climate 2005) 505 ! and Grenfell & Perovich (JGR 2004) 506 rn_albice = 0.53 ! albedo of bare puddled ice (values from 0.49 to 0.58) 507 ! 0.53 (default) => if nn_ice_alb=0 508 ! 0.50 (default) => if nn_ice_alb=1 502 nn_ice_alb = 1 ! parameterization of ice/snow albedo 503 ! 0: Shine & Henderson-Sellers (JGR 1985), giving clear-sky albedo 504 ! 1: "home made" based on Brandt et al. (JClim 2005) and Grenfell & Perovich (JGR 2004), 505 ! giving cloud-sky albedo 506 rn_alb_drsno = 0.80 ! dry snow albedo : 0.80 (nn_ice_alb = 0); 0.85 (nn_ice_alb = 1); obs 0.85-0.87 (cloud-sky) 507 rn_alb_mlsno = 0.65 ! melting snow albedo : 0.65 ( '' ) ; 0.75 ( '' ) ; obs 0.72-0.82 ( '' ) 508 rn_alb_drice = 0.72 ! dry ice albedo : 0.72 ( '' ) ; 0.60 ( '' ) ; obs 0.54-0.65 ( '' ) 509 rn_alb_mlice = 0.53 ! bare puddled ice albedo : 0.53 ( '' ) ; 0.50 ( '' ) ; obs 0.49-0.58 ( '' ) 509 510 / 510 511 !----------------------------------------------------------------------- -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/ice.F90
r7517 r7537 212 212 REAL(wp), PUBLIC :: rn_betas !: coef. for partitioning of snowfall between leads and sea ice 213 213 REAL(wp), PUBLIC :: rn_kappa_i !: coef. for the extinction of radiation Grenfell et al. (2006) [1/m] 214 REAL(wp), PUBLIC :: rn_rcdsn !: thermal conductivity of the snow [W/m/K] 214 215 REAL(wp), PUBLIC :: nn_conv_dif !: maximal number of iterations for heat diffusion 215 216 REAL(wp), PUBLIC :: rn_terr_dif !: maximal tolerated error (C) for heat diffusion -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90
r7506 r7537 644 644 INTEGER :: ios ! Local integer output status for namelist read 645 645 NAMELIST/namicethd/ rn_hnewice, ln_frazil, rn_maxfrazb, rn_vfrazb, rn_Cfrazb, & 646 & rn_himin, rn_betas, rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon, &647 & nn_monocat, ln_it_qnsice646 & rn_himin, rn_betas, rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon, & 647 & rn_rcdsn, nn_monocat, ln_it_qnsice 648 648 !!------------------------------------------------------------------- 649 649 ! … … 684 684 WRITE(numout,*)' maximal err. on T for heat diffusion computation rn_terr_dif = ', rn_terr_dif 685 685 WRITE(numout,*)' switch for comp. of thermal conductivity in the ice nn_ice_thcon = ', nn_ice_thcon 686 WRITE(numout,*)' thermal conductivity of the snow rn_rcdsn = ', rn_rcdsn 686 687 WRITE(numout,*)' check heat conservation in the ice/snow con_i = ', con_i 687 688 WRITE(numout,*)' virtual ITD mono-category parameterizations (1) or not nn_monocat = ', nn_monocat -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90
r7506 r7537 376 376 377 377 ! Effective thickness he (zhe) 378 zfac = 1._wp / ( r cdsn + zkimean )379 zratio_s = r cdsn * zfac378 zfac = 1._wp / ( rn_rcdsn + zkimean ) 379 zratio_s = rn_rcdsn * zfac 380 380 zratio_i = zkimean * zfac 381 381 zhe = zratio_s * ht_i_1d(ji) + zratio_i * ht_s_1d(ji) … … 400 400 DO ji = kideb, kiut 401 401 zfac = 1. / MAX( epsi10 , zh_s(ji) ) 402 zkappa_s(ji,0) = zghe(ji) * r cdsn * zfac403 zkappa_s(ji,nlay_s) = zghe(ji) * r cdsn * zfac402 zkappa_s(ji,0) = zghe(ji) * rn_rcdsn * zfac 403 zkappa_s(ji,nlay_s) = zghe(ji) * rn_rcdsn * zfac 404 404 END DO 405 405 406 406 DO jk = 1, nlay_s-1 407 407 DO ji = kideb , kiut 408 zkappa_s(ji,jk) = zghe(ji) * 2.0 * r cdsn / MAX( epsi10, 2.0 * zh_s(ji) )408 zkappa_s(ji,jk) = zghe(ji) * 2.0 * rn_rcdsn / MAX( epsi10, 2.0 * zh_s(ji) ) 409 409 END DO 410 410 END DO … … 422 422 zkappa_i(ji,0) = zghe(ji) * ztcond_i(ji,0) * zfac 423 423 zkappa_i(ji,nlay_i) = zghe(ji) * ztcond_i(ji,nlay_i) * zfac 424 zkappa_s(ji,nlay_s) = zghe(ji) * zghe(ji) * 2.0 * r cdsn * ztcond_i(ji,0) / &425 & MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * r cdsn * zh_i(ji) ) )424 zkappa_s(ji,nlay_s) = zghe(ji) * zghe(ji) * 2.0 * rn_rcdsn * ztcond_i(ji,0) / & 425 & MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * rn_rcdsn * zh_i(ji) ) ) 426 426 zkappa_i(ji,0) = zkappa_s(ji,nlay_s) * isnow(ji) + zkappa_i(ji,0) * ( 1._wp - isnow(ji) ) 427 427 END DO … … 738 738 !--- Snow-ice interfacial temperature (diagnostic SIMIP) 739 739 DO ji = kideb, kiut 740 zfac = 1. / MAX( epsi10 , r cdsn * zh_i(ji) + ztcond_i(ji,1) * zh_s(ji) )741 t_si_1d(ji) = ( r cdsn * zh_i(ji) * t_s_1d(ji,1) + &740 zfac = 1. / MAX( epsi10 , rn_rcdsn * zh_i(ji) + ztcond_i(ji,1) * zh_s(ji) ) 741 t_si_1d(ji) = ( rn_rcdsn * zh_i(ji) * t_s_1d(ji,1) + & 742 742 & ztcond_i(ji,1) * zh_s(ji) * t_i_1d(ji,1) ) * zfac 743 743 END DO -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/DOM/phycst.F90
r5147 r7537 65 65 #if defined key_lim3 || defined key_cice 66 66 REAL(wp), PUBLIC :: rhoic = 917._wp !: volumic mass of sea ice [kg/m3] 67 REAL(wp), PUBLIC :: rcdic = 2.034396_wp !: thermal conductivity of fresh ice 68 REAL(wp), PUBLIC :: rcdsn = 0.31_wp !: thermal conductivity of snow 69 REAL(wp), PUBLIC :: cpic = 2067.0_wp !: specific heat for ice 67 REAL(wp), PUBLIC :: rcdic = 2.034396_wp !: thermal conductivity of fresh ice [W/m/K] 68 REAL(wp), PUBLIC :: cpic = 2067.0_wp !: specific heat of fresh ice [J/kg/K] 70 69 REAL(wp), PUBLIC :: lsub = 2.834e+6_wp !: pure ice latent heat of sublimation [J/kg] 71 70 REAL(wp), PUBLIC :: lfus = 0.334e+6_wp !: latent heat of fusion of fresh ice [J/kg] … … 83 82 REAL(wp), PUBLIC :: xlic = 300.33e+6_wp !: volumetric latent heat fusion of ice [J/m3] 84 83 REAL(wp), PUBLIC :: xsn = 2.8e+6_wp !: volumetric latent heat of sublimation of snow [J/m3] 84 #endif 85 #if defined key_cice 86 REAL(wp), PUBLIC :: rcdsn = 0.31_wp !: thermal conductivity of snow [W/m/K], now namelist parameter for LIM3 85 87 #endif 86 88 #if defined key_lim3 … … 177 179 IF(lwp) THEN 178 180 WRITE(numout,*) 181 #if defined key_cice 179 182 WRITE(numout,*) ' thermal conductivity of the snow = ', rcdsn , ' J/s/m/K' 180 WRITE(numout,*) ' thermal conductivity of the ice = ', rcdic , ' J/s/m/K' 183 #endif 184 WRITE(numout,*) ' thermal conductivity of pure ice = ', rcdic , ' J/s/m/K' 181 185 WRITE(numout,*) ' fresh ice specific heat = ', cpic , ' J/kg/K' 182 186 WRITE(numout,*) ' latent heat of fusion of fresh ice / snow = ', lfus , ' J/kg' -
branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90
r6323 r7537 39 39 ! !!* namelist namsbc_alb 40 40 INTEGER :: nn_ice_alb 41 REAL(wp) :: rn_alb ice41 REAL(wp) :: rn_alb_drsno, rn_alb_mlsno, rn_alb_drice, rn_alb_mlice 42 42 43 43 !!---------------------------------------------------------------------- … … 101 101 IF( albd_init == 0 ) CALL albedo_init ! initialization 102 102 103 ralb_sf = rn_alb_drsno ! dry snow 104 ralb_sm = rn_alb_mlsno ! melting snow 105 ralb_if = rn_alb_drice ! bare frozen ice 106 ralb_im = rn_alb_mlice ! bare puddled ice 103 107 104 108 SELECT CASE ( nn_ice_alb ) … … 109 113 CASE( 0 ) 110 114 111 ralb_sf = 0.80 ! dry snow112 ralb_sm = 0.65 ! melting snow113 ralb_if = 0.72 ! bare frozen ice114 ralb_im = rn_albice! bare puddled ice115 115 !ralb_sf = 0.80 ! dry snow 116 !ralb_sm = 0.65 ! melting snow 117 !ralb_if = 0.72 ! bare frozen ice 118 !ralb_im = ... ! bare puddled ice 119 116 120 ! Computation of ice albedo (free of snow) 117 121 WHERE ( ph_snw == 0._wp .AND. pt_ice >= rt0_ice ) ; zalb(:,:,:) = ralb_im … … 163 167 CASE( 1 ) 164 168 165 ralb_im = rn_albice! bare puddled ice169 ! ralb_im = ... ! bare puddled ice 166 170 ! compilation of values from literature 167 168 169 171 ! ralb_sf = 0.85 ! dry snow 172 ! ralb_sm = 0.75 ! melting snow 173 ! ralb_if = 0.60 ! bare frozen ice 170 174 ! Perovich et al 2002 (Sheba) => the only dataset for which all types of ice/snow were retrieved 171 175 ! ralb_sf = 0.85 ! dry snow … … 248 252 !!---------------------------------------------------------------------- 249 253 INTEGER :: ios ! Local integer output status for namelist read 250 NAMELIST/namsbc_alb/ nn_ice_alb, rn_alb ice254 NAMELIST/namsbc_alb/ nn_ice_alb, rn_alb_drsno, rn_alb_mlsno, rn_alb_drice , rn_alb_mlice 251 255 !!---------------------------------------------------------------------- 252 256 ! … … 268 272 WRITE(numout,*) ' Namelist namsbc_alb : albedo ' 269 273 WRITE(numout,*) ' choose the albedo parameterization nn_ice_alb = ', nn_ice_alb 270 WRITE(numout,*) ' albedo of bare puddled ice rn_albice = ', rn_albice 274 WRITE(numout,*) ' albedo of dry snow rn_alb_drsno = ', rn_alb_drsno 275 WRITE(numout,*) ' albedo of melting snow rn_alb_mlsno = ', rn_alb_mlsno 276 WRITE(numout,*) ' albedo of dry ice rn_alb_drice = ', rn_alb_drice 277 WRITE(numout,*) ' albedo of bare puddled ice rn_alb_mlice = ', rn_alb_mlice 271 278 ENDIF 272 279 !
Note: See TracChangeset
for help on using the changeset viewer.