- Timestamp:
- 2018-07-13T09:28:50+02:00 (6 years ago)
- Location:
- NEMO/branches/2018/dev_r9838_ENHANCE04_RK3
- Files:
-
- 1 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/ICE/icedyn_rdgrft.F90
r9604 r9939 189 189 ! divergence given by the advection scheme 190 190 ! (which may not be equal to divu as computed from the velocity field) 191 zdivu_adv(ji) = ( 1._wp - ato_i_1d(ji) - SUM( a_i_2d(ji,:) ) ) * r1_ rdtice191 zdivu_adv(ji) = ( 1._wp - ato_i_1d(ji) - SUM( a_i_2d(ji,:) ) ) * r1_Dt_ice 192 192 ! 193 193 IF( zdivu_adv(ji) < 0._wp ) closing_net(ji) = MAX( closing_net(ji), -zdivu_adv(ji) ) ! make sure the closing rate is large enough … … 255 255 ELSE 256 256 iterate_ridging = 1 257 zdivu_adv (ji) = zfac * r1_ rdtice257 zdivu_adv (ji) = zfac * r1_Dt_ice 258 258 closing_net(ji) = MAX( 0._wp, -zdivu_adv(ji) ) 259 259 opning (ji) = MAX( 0._wp, zdivu_adv(ji) ) … … 460 460 zfac = apartf(ji,jl) * closing_gross(ji) * rdt_ice 461 461 IF( zfac > pa_i(ji,jl) ) THEN 462 closing_gross(ji) = pa_i(ji,jl) / apartf(ji,jl) * r1_ rdtice462 closing_gross(ji) = pa_i(ji,jl) / apartf(ji,jl) * r1_Dt_ice 463 463 ENDIF 464 464 END DO … … 472 472 zfac = pato_i(ji) + ( opning(ji) - apartf(ji,0) * closing_gross(ji) ) * rdt_ice 473 473 IF( zfac < 0._wp ) THEN ! would lead to negative ato_i 474 opning(ji) = apartf(ji,0) * closing_gross(ji) - pato_i(ji) * r1_ rdtice474 opning(ji) = apartf(ji,0) * closing_gross(ji) - pato_i(ji) * r1_Dt_ice 475 475 ELSEIF( zfac > zasum(ji) ) THEN ! would lead to ato_i > asum 476 opning(ji) = apartf(ji,0) * closing_gross(ji) + ( zasum(ji) - pato_i(ji) ) * r1_ rdtice476 opning(ji) = apartf(ji,0) * closing_gross(ji) + ( zasum(ji) - pato_i(ji) ) * r1_Dt_ice 477 477 ENDIF 478 478 END DO … … 543 543 ! volume and enthalpy (J/m2, >0) of seawater trapped into ridges 544 544 vsw = v_i_2d(ji,jl1) * afrdg * rn_porordg 545 ersw(ji) = -rhoi c* vsw * rcp * sst_1d(ji) ! clem: if sst>0, then ersw <0 (is that possible?)545 ersw(ji) = -rhoi * vsw * rcp * sst_1d(ji) ! clem: if sst>0, then ersw <0 (is that possible?) 546 546 547 547 ! volume etc of ridging / rafting ice and new ridges (vi, vs, sm, oi, es, ei) … … 570 570 571 571 ! Ice-ocean exchanges associated with ice porosity 572 wfx_dyn_1d(ji) = wfx_dyn_1d(ji) - vsw * rhoic * r1_rdtice ! increase in ice volume due to seawater frozen in voids573 sfx_dyn_1d(ji) = sfx_dyn_1d(ji) - vsw * sss_1d(ji) * rhoi c * r1_rdtice574 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ersw(ji) * r1_rdtice! > 0 [W.m-2]572 wfx_dyn_1d(ji) = wfx_dyn_1d(ji) - vsw * rhoi * r1_Dt_ice ! increase in ice volume due to seawater frozen in voids 573 sfx_dyn_1d(ji) = sfx_dyn_1d(ji) - vsw * sss_1d(ji) * rhoi * r1_Dt_ice 574 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ersw(ji) * r1_Dt_ice ! > 0 [W.m-2] 575 575 576 576 ! Put the snow lost by ridging into the ocean 577 577 ! Note that esrdg > 0; the ocean must cool to melt snow. If the ocean temp = Tf already, new ice must grow. 578 wfx_snw_dyn_1d(ji) = wfx_snw_dyn_1d(ji) + ( rhos n* vsrdg(ji) * ( 1._wp - rn_fsnwrdg ) & ! fresh water source for ocean579 & + rhos n * vsrft(ji) * ( 1._wp - rn_fsnwrft ) ) * r1_rdtice578 wfx_snw_dyn_1d(ji) = wfx_snw_dyn_1d(ji) + ( rhos * vsrdg(ji) * ( 1._wp - rn_fsnwrdg ) & ! fresh water source for ocean 579 & + rhos * vsrft(ji) * ( 1._wp - rn_fsnwrft ) ) * r1_Dt_ice 580 580 581 581 ! Put the melt pond water into the ocean … … 583 583 ! is no net mass flux between melt ponds and the ocean (see icethd_pnd.F90 for ex.) 584 584 !IF ( ln_pnd_fwb ) THEN 585 ! wfx_pnd_1d(ji) = wfx_pnd_1d(ji) + ( rho fw * vprdg(ji) * ( 1._wp - rn_fpndrdg ) & ! fresh water source for ocean586 ! & + rho fw * vprft(ji) * ( 1._wp - rn_fpndrft ) ) * r1_rdtice585 ! wfx_pnd_1d(ji) = wfx_pnd_1d(ji) + ( rhow * vprdg(ji) * ( 1._wp - rn_fpndrdg ) & ! fresh water source for ocean 586 ! & + rhow * vprft(ji) * ( 1._wp - rn_fpndrft ) ) * r1_Dt_ice 587 587 !ENDIF 588 588 … … 590 590 IF( nn_icesal /= 2 ) THEN 591 591 sirdg2(ji) = sirdg2(ji) - vsw * ( sss_1d(ji) - s_i_1d(ji) ) ! ridge salinity = s_i 592 sfx_bri_1d(ji) = sfx_bri_1d(ji) + sss_1d(ji) * vsw * rhoi c * r1_rdtice & ! put back sss_m into the ocean593 & - s_i_1d(ji) * vsw * rhoi c * r1_rdtice ! and get s_i from the ocean592 sfx_bri_1d(ji) = sfx_bri_1d(ji) + sss_1d(ji) * vsw * rhoi * r1_Dt_ice & ! put back sss_m into the ocean 593 & - s_i_1d(ji) * vsw * rhoi * r1_Dt_ice ! and get s_i from the ocean 594 594 ENDIF 595 595 … … 621 621 ! Put the snow lost by ridging into the ocean 622 622 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ( - esrdg(ji,jk) * ( 1._wp - rn_fsnwrdg ) & ! heat sink for ocean (<0, W.m-2) 623 & - esrft(ji,jk) * ( 1._wp - rn_fsnwrft ) ) * r1_ rdtice623 & - esrft(ji,jk) * ( 1._wp - rn_fsnwrft ) ) * r1_Dt_ice 624 624 ! 625 625 ! Remove energy of new ridge to each category jl1
Note: See TracChangeset
for help on using the changeset viewer.