Changeset 8587
 Timestamp:
 20171004T09:46:35+02:00 (7 years ago)
 Location:
 branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO
 Files:

 2 edited
Legend:
 Unmodified
 Added
 Removed

branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/icevar.F90
r8565 r8587 134 134 END DO 135 135 ! 136 ! ! put rt0 where there is no ice 137 WHERE( at_i(:,:)<=epsi20 ) 138 tm_su(:,:) = rt0 139 tm_si(:,:) = rt0 140 tm_i (:,:) = rt0 141 END WHERE 142 136 143 DEALLOCATE( z1_at_i , z1_vt_i ) 137 144 ENDIF 
branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk.F90
r8585 r8587 1076 1076 REAL(wp) :: zChn_skin_ice, zChn_form_ice 1077 1077 REAL(wp) :: z0w, z0i, zfmi, zfmw, zfhi, zfhw 1078 REAL(wp) :: zCdn_form_tmp 1078 1079 !! 1079 ! 1080 1081 ! Momentum Neutral Transfert Coefficients (should be a constant) 1082 zCdn_form_tmp = zce10 * ( LOG( 10._wp / z0_form_ice + 1._wp ) / LOG( rn_zu / z0_form_ice + 1._wp ) )**2 ! Eq. 40 1083 zCdn_skin_ice = ( vkarmn / LOG( rn_zu / z0_skin_ice + 1._wp ) )**2 ! Eq. 7 1084 zCdn_ice = zCdn_skin_ice ! Eq. 7 (cf Lupkes email for details) 1085 !zCdn_ice = 1.89e3 ! old ECHAM5 value (cf Eq. 32) 1086 1087 ! Heat Neutral Transfert Coefficients 1088 zChn_skin_ice = vkarmn**2 / ( LOG( rn_zu / z0_ice + 1._wp ) * LOG( rn_zu * z1_alpha / z0_skin_ice + 1._wp ) ) ! Eq. 50 + Eq. 52 (cf Lupkes email for details) 1089 1080 1090 ! Atmospheric and Surface Variables 1081 1091 zst(:,:) = sst_m(:,:) + rt0 ! convert SST from Celcius to Kelvin … … 1083 1093 zqi_sat(:,:) = 0.98_wp * q_sat( tm_su(:,:), sf(jp_slp)%fnow(:,:,1) ) ! saturation humidity over ice [kg/kg] 1084 1094 ! 1085 DO jj = 2, jpjm1 1086 DO ji = fs_2, fs_jpim1 1095 !! DO jj = 2, jpjm1 1096 !! DO ji = fs_2, fs_jpim1 1097 DO jj = 1, jpj 1098 DO ji = 1, jpi 1087 1099 ! Virtual potential temperature [K] 1088 1100 zthetav_os = zst(ji,jj) * ( 1._wp + rctv0 * zqo_sat(ji,jj) ) ! over ocean … … 1094 1106 zrib_i = grav / zthetav_is * ( zthetav_zu  zthetav_is ) * rn_zu / MAX( 0.5, wndm_ice(ji,jj) )**2 ! over ice 1095 1107 1096 ! Momentum Neutral Transfert Coefficients (should be a constant) 1097 zCdn_skin_ice = ( vkarmn / LOG( rn_zu / z0_skin_ice + 1._wp ) )**2 ! Eq. 7 1098 zCdn_form_ice = zce10 * ( LOG( 10._wp / z0_form_ice + 1._wp ) / LOG( rn_zu / z0_form_ice + 1._wp ) )**2 & ! Eq. 40 1099 & * at_i_b(ji,jj) * ( 1._wp  at_i_b(ji,jj) )**zbeta 1100 zCdn_ice = zCdn_skin_ice ! Eq. 7 (cf Lupkes email for details) 1101 !zCdn_ice = 1.89e3 ! old ECHAM5 value (cf Eq. 32) 1102 1103 ! Heat Neutral Transfert Coefficients 1104 zChn_skin_ice = vkarmn**2 / ( LOG( rn_zu / z0_ice + 1._wp ) * LOG( rn_zu * z1_alpha / z0_skin_ice + 1._wp ) ) ! Eq. 50 + Eq. 52 (cf Lupkes email for details) 1108 ! Momentum and Heat Neutral Transfert Coefficients 1109 zCdn_form_ice = zCdn_form_tmp * at_i_b(ji,jj) * ( 1._wp  at_i_b(ji,jj) )**zbeta ! Eq. 40 1105 1110 zChn_form_ice = zCdn_form_ice / ( 1._wp + ( LOG( z1_alphaf ) / vkarmn ) * SQRT( zCdn_form_ice ) ) ! Eq. 53 1106 1111 … … 1110 1115 IF( zrib_o <= 0._wp ) THEN 1111 1116 zfmw = 1._wp  zam * zrib_o / ( 1._wp + 3._wp * zc2 * Cdn_oce(ji,jj) * SQRT( zrib_o * ( rn_zu / z0w + 1._wp ) ) ) ! Eq. 10 1112 zfhw = ( 1._wp + ( zbetah * ( zthetav_os  zthetav_zu )**r1_3 / ( Chn_oce(ji,jj) * wndm(ji,jj) ) &! Eq. 261117 zfhw = ( 1._wp + ( zbetah * ( zthetav_os  zthetav_zu )**r1_3 / ( Chn_oce(ji,jj) * MAX(0.01, wndm(ji,jj)) ) & ! Eq. 26 1113 1118 & )**zgamma )**z1_gamma 1114 1119 ELSE … … 1135 1140 END DO 1136 1141 END DO 1137 CALL lbc_lnk_multi( Cd, 'T', 1., Ch, 'T', 1. )1142 !! CALL lbc_lnk_multi( Cd, 'T', 1., Ch, 'T', 1. ) 1138 1143 ! 1139 1144 END SUBROUTINE Cdn10_Lupkes2015
Note: See TracChangeset
for help on using the changeset viewer.