211 | | '''LIM3''' : the modules involved in the change are : (see also the '''revision -''') |
212 | | |
213 | | In LIM3 case, the problem is somewhat different. Indeed, LIM3 is written in an energy conserving way (Bitz & Lipscomb 1999). Therefore the heat exchanged ith both atmosphere and ocean is the internal energy (i.e. the heat flux through the interface + the heat content of the mass flux referenced to rt0). There is no need to introduce rdq_ice and rdq_snw fields. |
214 | | |
215 | | Five key elements have been changed : |
216 | | 1- Addition of internal energy of snowfall over the ice. Reason: Tatm is used inside lim3 to compute the internal energy of snowfall. In coupled mode this will not be possible. Therefore, and in better agreement with SBC philosophy, we introduce qen_snw provided by sbcblk_c.. or sbccpl. |
217 | | |
218 | | 2- Change in the snowfall partition between leads and ice. Reason, in LIM3 part of the snow that fall over ice is transported by the wind and kept in lead area. The parameterisation in coded deeply in LIM3 routine, whereas in coupled mode we need to have the information in sbccpl. Furthermore, with the partitioning at sbc level, LIM2 can also benefite from it. |
219 | | |
220 | | 3- Modify the salt flux computation from an equivalent freshwater flux to a salt flux |
221 | | |
222 | | 4- update the ice-ocean interface to salt flux |
223 | | |
224 | | 5- Add the coupled case in the interface ice-atmos and atmos-ocean |
| 211 | ==== (2) LIM-3 specific changes see '''revision XXXX''' ==== |
| 212 | |
| 213 | In LIM3 case, the problem is somewhat different. Indeed, LIM3 is written in an energy conserving way (Bitz & Lipscomb 1999). Therefore the heat exchanged ith both atmosphere and ocean is the internal energy (i.e. the heat flux through the interface + the heat content of the mass flux referenced to rt0). There is no need to introduce rdq_ice and rdq_snw fields. |
| 214 | |
| 215 | Five key elements have been changed : |
| 216 | |
| 217 | '''1- Addition of internal energy of snowfall over the ice'''. |
| 218 | Reason: Tatm is used inside lim3 to compute the internal energy of snowfall. In coupled mode this will not be possible. Therefore, and in better agreement with SBC philosophy, we introduce qen_snw provided by sbcblk_c.. or sbccpl. |
| 219 | |
| 220 | • '''sbc_ice.F90''' : add the internal energie of snow in both LIM2 and LIM3 cases (even if in lim3 it will not be used) : |
| 221 | {{{ |
| 222 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: qen_snw !: internal energy of snowfall (heat content - Latent) [W/m2] |
| 223 | }}} |
| 224 | idem in thd_ice ( version _1d) |
| 225 | |
| 226 | • '''sbcice_lim.F90, sbcblk_core.F90 and sbcblk_clio.F90''' : add qen_snw to the call argument of blk_ice_c..., and add its computation (p_qen_s) in the 2 bulk formulae module: |
| 227 | {{{ |
| 228 | p_qen_s(:,:) = sf(jp_snow)%fnow(:,:) * ( cpic * ( sf(jp_tair)%fnow(:,:) - rtt - lfus ) |
| 229 | }}} |
| 230 | |
| 231 | • '''sbccpl.F90''' : add the computation of qen_snw |
| 232 | CAUTION : BUG correction snow CP is cpic not rcp.... correction made. |
| 233 | |
| 234 | • '''limthd.F90, limthd_ent.F90 and limthd_dh''' : pass qen_snw from 2D to 1D in limthd, replace the use of tatm by the use of qen_snw in limthd_dh : |
| 235 | {{{ |
| 236 | !!gm p_qen_s(:,:) = sf(jp_snow)%fnow(:,:) * ( cpic * ( sf(jp_tair)%fnow(:,:) - rtt ) - lfus ) |
| 237 | zqprec = - p_qen_s(:,:) * rhosn / MAX( sprecip_1d(ji), 1.e-20 ) |
| 238 | !!gm instead of : |
| 239 | ! zqprec = rhosn * ( cpic * ( rtt - tatm_ice_1d(ji) ) + lfus ) ! energy of fallen snow |
| 240 | !!gm |
| 241 | }}} |
| 242 | and in limthd_ent : |
| 243 | {{{ |
| 244 | !!gm p_qen_s(:,:) = sf(jp_snow)%fnow(:,:) * ( cpic * ( sf(jp_tair)%fnow(:,:) - rtt ) - lfus ) |
| 245 | !!gm so rhosn * ( cpic * ( tatm - rtt ) - lfus ) = - p_qen_s(:,:) * rhosn / MAX( sprecip_1d(ji), 1.e-20 ) |
| 246 | !!gm therefore: |
| 247 | qm0(ji,1) = - ( ( 1. - snswi(ji) ) * p_qen_s(:,:) / MAX( sprecip_1d(ji), 1.e-20 ) |
| 248 | & - snswi(ji) * ( cpic * ( t_s_b(ji,1) - rtt ) - lfus ) ) * rhosn * zthick0(ji,1) |
| 249 | !!gm instead of : |
| 250 | ! qm0(ji,1) = rhosn * ( cpic * ( rtt - ( 1. - snswi(ji) ) * tatm_ice_1d(ji) & |
| 251 | ! & - snswi(ji) * t_s_b(ji,1) ) + lfus ) * zthick0(ji,1) |
| 252 | !!gm |
| 253 | }}} |
| 254 | as a consequence, the declaration of tatm in key_lim3 case is suppressed from sbc_ice, and its initialisation from both sbcblk_core and clio. |
| 255 | |
| 256 | NB: in clio bulk, we replace the 2D ztatm array by a local scalar ztair |
| 257 | |
| 258 | |
| 259 | QUESTION ==> Martin Sublimation in coupled mode !!!! ou comment??? |
| 260 | mettre qen_snw à la valeur du bilan sublim - snow ???? |
| 261 | est-ce que ça marche ou limitation ?? |
| 262 | |
| 263 | Coupled mode check the value of cpic used in the atmosphere as well as rcp !!! :-) |
| 264 | |
| 265 | |
| 266 | |
| 267 | '''2- Change in the snowfall partition between leads and ice'''. |
| 268 | Reason: in LIM3 part of the snow that fall over ice is transported by the wind and kept in lead area. The parameterisation in coded deeply in LIM3 routine, whereas in coupled mode we need to have the information in sbccpl. Furthermore, with the partitioning at sbc level, LIM2 can also benefite from it. |
| 269 | |
| 270 | Introduce betas in the SBC, no more in LIM-3 alone. |
| 271 | |
| 272 | reason: (1) make it also avalable in LIM-2 and ice-IF cases |
| 273 | |
| 274 | (2) make it availablein coupled mode (sbccpl.F90 will have to use it) |
| 275 | |
| 276 | • '''sbc_oce.F90,sbcmod.F90 ''' : in namelist namsbc, add the following variable: |
| 277 | {{{ |
| 278 | REAL(wp), PUBLIC :: rn_psnw = 1.e0 !: coef. of lead/ice partition of snowfall (>0 and <=1) |
| 279 | }}} |
| 280 | add the lecture of the new variable and its print in sbcmod.F90. |
| 281 | |
| 282 | '''namelist ==> DON'T FORGET TO add the new variable in the ref namelists !!! ''' |
| 283 | |
| 284 | |
| 285 | '''3- Modify the salt flux computation from an equivalent freshwater flux to a salt flux''' |
| 286 | |
| 287 | '''4- update the ice-ocean interface to salt flux''' |
| 288 | |
| 289 | '''5- Add the coupled case in the interface ice-atmos and atmos-ocean''' |