- Timestamp:
- 2020-03-05T12:21:05+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/r12377_ticket2386
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/r12377_ticket2386
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev _r11615_ENHANCE-04_namelists_as_internalfiles_agrif@HEAD ext/AGRIF5 ^/vendors/AGRIF/dev@HEAD ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL 8 9 # SETTE 10 ^/utils/CI/sette@HEAD sette
-
- Property svn:externals
-
NEMO/branches/2020/r12377_ticket2386/src/ICE/icedyn_rdgrft.F90
r12377 r12511 250 250 ELSE 251 251 iterate_ridging = 1 252 zdivu (ji) = zfac * r1_ rdtice252 zdivu (ji) = zfac * r1_Dt_ice 253 253 closing_net(ji) = MAX( 0._wp, -zdivu(ji) ) 254 254 opning (ji) = MAX( 0._wp, zdivu(ji) ) … … 455 455 DO jl = 1, jpl 456 456 DO ji = 1, npti 457 zfac = apartf(ji,jl) * closing_gross(ji) * r dt_ice457 zfac = apartf(ji,jl) * closing_gross(ji) * rDt_ice 458 458 IF( zfac > pa_i(ji,jl) .AND. apartf(ji,jl) /= 0._wp ) THEN 459 closing_gross(ji) = pa_i(ji,jl) / apartf(ji,jl) * r1_ rdtice459 closing_gross(ji) = pa_i(ji,jl) / apartf(ji,jl) * r1_Dt_ice 460 460 ENDIF 461 461 END DO … … 467 467 ! Reduce the opening rate in proportion 468 468 DO ji = 1, npti 469 zfac = pato_i(ji) + ( opning(ji) - apartf(ji,0) * closing_gross(ji) ) * r dt_ice469 zfac = pato_i(ji) + ( opning(ji) - apartf(ji,0) * closing_gross(ji) ) * rDt_ice 470 470 IF( zfac < 0._wp ) THEN ! would lead to negative ato_i 471 opning(ji) = apartf(ji,0) * closing_gross(ji) - pato_i(ji) * r1_ rdtice471 opning(ji) = apartf(ji,0) * closing_gross(ji) - pato_i(ji) * r1_Dt_ice 472 472 ELSEIF( zfac > zasum(ji) ) THEN ! would lead to ato_i > asum 473 opning(ji) = apartf(ji,0) * closing_gross(ji) + ( zasum(ji) - pato_i(ji) ) * r1_ rdtice473 opning(ji) = apartf(ji,0) * closing_gross(ji) + ( zasum(ji) - pato_i(ji) ) * r1_Dt_ice 474 474 ENDIF 475 475 END DO … … 515 515 !-------------------------------------------------------- 516 516 DO ji = 1, npti 517 ato_i_1d(ji) = MAX( 0._wp, ato_i_1d(ji) + ( opning(ji) - apartf(ji,0) * closing_gross(ji) ) * r dt_ice )517 ato_i_1d(ji) = MAX( 0._wp, ato_i_1d(ji) + ( opning(ji) - apartf(ji,0) * closing_gross(ji) ) * rDt_ice ) 518 518 END DO 519 519 … … 533 533 534 534 ! area of ridging / rafting ice (airdg1) and of new ridge (airdg2) 535 airdg1 = aridge(ji,jl1) * closing_gross(ji) * r dt_ice536 airft1 = araft (ji,jl1) * closing_gross(ji) * r dt_ice535 airdg1 = aridge(ji,jl1) * closing_gross(ji) * rDt_ice 536 airft1 = araft (ji,jl1) * closing_gross(ji) * rDt_ice 537 537 538 538 airdg2(ji) = airdg1 * hi_hrdg(ji,jl1) … … 575 575 576 576 ! Ice-ocean exchanges associated with ice porosity 577 wfx_dyn_1d(ji) = wfx_dyn_1d(ji) - vsw * rhoi * r1_ rdtice ! increase in ice volume due to seawater frozen in voids578 sfx_dyn_1d(ji) = sfx_dyn_1d(ji) - vsw * sss_1d(ji) * rhoi * r1_ rdtice579 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ersw(ji) * r1_ rdtice ! > 0 [W.m-2]577 wfx_dyn_1d(ji) = wfx_dyn_1d(ji) - vsw * rhoi * r1_Dt_ice ! increase in ice volume due to seawater frozen in voids 578 sfx_dyn_1d(ji) = sfx_dyn_1d(ji) - vsw * sss_1d(ji) * rhoi * r1_Dt_ice 579 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ersw(ji) * r1_Dt_ice ! > 0 [W.m-2] 580 580 581 581 ! Put the snow lost by ridging into the ocean 582 582 ! Note that esrdg > 0; the ocean must cool to melt snow. If the ocean temp = Tf already, new ice must grow. 583 583 wfx_snw_dyn_1d(ji) = wfx_snw_dyn_1d(ji) + ( rhos * vsrdg(ji) * ( 1._wp - rn_fsnwrdg ) & ! fresh water source for ocean 584 & + rhos * vsrft(ji) * ( 1._wp - rn_fsnwrft ) ) * r1_ rdtice584 & + rhos * vsrft(ji) * ( 1._wp - rn_fsnwrft ) ) * r1_Dt_ice 585 585 586 586 ! virtual salt flux to keep salinity constant 587 587 IF( nn_icesal /= 2 ) THEN 588 588 sirdg2(ji) = sirdg2(ji) - vsw * ( sss_1d(ji) - s_i_1d(ji) ) ! ridge salinity = s_i 589 sfx_bri_1d(ji) = sfx_bri_1d(ji) + sss_1d(ji) * vsw * rhoi * r1_ rdtice & ! put back sss_m into the ocean590 & - s_i_1d(ji) * vsw * rhoi * r1_ rdtice ! and get s_i from the ocean589 sfx_bri_1d(ji) = sfx_bri_1d(ji) + sss_1d(ji) * vsw * rhoi * r1_Dt_ice & ! put back sss_m into the ocean 590 & - s_i_1d(ji) * vsw * rhoi * r1_Dt_ice ! and get s_i from the ocean 591 591 ENDIF 592 592 … … 611 611 IF( apartf(ji,jl1) > 0._wp .AND. closing_gross(ji) > 0._wp ) THEN 612 612 ! Compute ridging /rafting fractions 613 afrdg = aridge(ji,jl1) * closing_gross(ji) * r dt_ice * z1_ai(ji)614 afrft = araft (ji,jl1) * closing_gross(ji) * r dt_ice * z1_ai(ji)613 afrdg = aridge(ji,jl1) * closing_gross(ji) * rDt_ice * z1_ai(ji) 614 afrft = araft (ji,jl1) * closing_gross(ji) * rDt_ice * z1_ai(ji) 615 615 ! Compute ridging /rafting ice and new ridges for es 616 616 esrdg(ji,jk) = ze_s_2d (ji,jk,jl1) * afrdg … … 618 618 ! Put the snow lost by ridging into the ocean 619 619 hfx_dyn_1d(ji) = hfx_dyn_1d(ji) + ( - esrdg(ji,jk) * ( 1._wp - rn_fsnwrdg ) & ! heat sink for ocean (<0, W.m-2) 620 & - esrft(ji,jk) * ( 1._wp - rn_fsnwrft ) ) * r1_ rdtice620 & - esrft(ji,jk) * ( 1._wp - rn_fsnwrft ) ) * r1_Dt_ice 621 621 ! 622 622 ! Remove energy of new ridge to each category jl1 … … 632 632 IF( apartf(ji,jl1) > 0._wp .AND. closing_gross(ji) > 0._wp ) THEN 633 633 ! Compute ridging /rafting fractions 634 afrdg = aridge(ji,jl1) * closing_gross(ji) * r dt_ice * z1_ai(ji)635 afrft = araft (ji,jl1) * closing_gross(ji) * r dt_ice * z1_ai(ji)634 afrdg = aridge(ji,jl1) * closing_gross(ji) * rDt_ice * z1_ai(ji) 635 afrft = araft (ji,jl1) * closing_gross(ji) * rDt_ice * z1_ai(ji) 636 636 ! Compute ridging ice and new ridges for ei 637 637 eirdg(ji,jk) = ze_i_2d (ji,jk,jl1) * afrdg + ersw(ji) * r1_nlay_i
Note: See TracChangeset
for help on using the changeset viewer.