Changeset 12744
- Timestamp:
- 2020-04-12T16:11:29+02:00 (3 years ago)
- Location:
- NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/icedyn_adv_pra.F90
r12720 r12744 163 163 z0ap(:,:,jl) = pa_ip(:,:,jl) * e1e2t(:,:) ! Melt pond fraction 164 164 z0vp(:,:,jl) = pv_ip(:,:,jl) * e1e2t(:,:) ! Melt pond volume 165 z0vl(:,:,jl) = pv_il(:,:,jl) * e1e2t(:,:) ! Melt pond lid volume 165 IF ( ln_pnd_lids ) THEN 166 z0vl(:,:,jl) = pv_il(:,:,jl) * e1e2t(:,:) ! Melt pond lid volume 167 ENDIF 166 168 ENDIF 167 169 END DO … … 199 201 CALL adv_x( zdt , zudy , 1._wp , zarea , z0vp , sxvp , sxxvp , syvp , syyvp , sxyvp ) !--- melt pond volume 200 202 CALL adv_y( zdt , zvdx , 0._wp , zarea , z0vp , sxvp , sxxvp , syvp , syyvp , sxyvp ) 201 CALL adv_x( zdt , zudy , 1._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) !--- melt pond lid volume 202 CALL adv_y( zdt , zvdx , 0._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) 203 IF ( ln_pnd_lids ) THEN 204 CALL adv_x( zdt , zudy , 1._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) !--- melt pond lid volume 205 CALL adv_y( zdt , zvdx , 0._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) 206 ENDIF 203 207 ENDIF 204 208 ! !--------------------------------------------! … … 232 236 CALL adv_y( zdt , zvdx , 1._wp , zarea , z0vp , sxvp , sxxvp , syvp , syyvp , sxyvp ) !--- melt pond volume 233 237 CALL adv_x( zdt , zudy , 0._wp , zarea , z0vp , sxvp , sxxvp , syvp , syyvp , sxyvp ) 234 CALL adv_y( zdt , zvdx , 1._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) 235 CALL adv_x( zdt , zudy , 0._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) !--- melt pond lid volume 238 IF ( ln_pnd_lids ) THEN 239 CALL adv_y( zdt , zvdx , 1._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) !--- melt pond lid volume 240 CALL adv_x( zdt , zudy , 0._wp , zarea , z0vl , sxvl , sxxvl , syvl , syyvl , sxyvl ) 241 ENDIF 236 242 ENDIF 237 243 ! … … 254 260 pa_ip(:,:,jl) = z0ap(:,:,jl) * r1_e1e2t(:,:) * tmask(:,:,1) 255 261 pv_ip(:,:,jl) = z0vp(:,:,jl) * r1_e1e2t(:,:) * tmask(:,:,1) 256 pv_il(:,:,jl) = z0vl(:,:,jl) * r1_e1e2t(:,:) * tmask(:,:,1) 262 IF ( ln_pnd_lids ) THEN 263 pv_il(:,:,jl) = z0vl(:,:,jl) * r1_e1e2t(:,:) * tmask(:,:,1) 264 ENDIF 257 265 ENDIF 258 266 END DO … … 873 881 CALL iom_get( numrir, jpdom_autoglo, 'syyvp', syyvp ) 874 882 CALL iom_get( numrir, jpdom_autoglo, 'sxyvp', sxyvp ) 875 ! ! melt pond lid volume 876 CALL iom_get( numrir, jpdom_autoglo, 'sxvl' , sxvl ) 877 CALL iom_get( numrir, jpdom_autoglo, 'syvl' , syvl ) 878 CALL iom_get( numrir, jpdom_autoglo, 'sxxvl', sxxvl ) 879 CALL iom_get( numrir, jpdom_autoglo, 'syyvl', syyvl ) 880 CALL iom_get( numrir, jpdom_autoglo, 'sxyvl', sxyvl ) 883 ! 884 IF ( ln_pnd_lids ) THEN ! melt pond lid volume 885 CALL iom_get( numrir, jpdom_autoglo, 'sxvl' , sxvl ) 886 CALL iom_get( numrir, jpdom_autoglo, 'syvl' , syvl ) 887 CALL iom_get( numrir, jpdom_autoglo, 'sxxvl', sxxvl ) 888 CALL iom_get( numrir, jpdom_autoglo, 'syyvl', syyvl ) 889 CALL iom_get( numrir, jpdom_autoglo, 'sxyvl', sxyvl ) 890 ENDIF 881 891 ENDIF 882 892 ! … … 893 903 sxe = 0._wp ; sye = 0._wp ; sxxe = 0._wp ; syye = 0._wp ; sxye = 0._wp ! ice layers heat content 894 904 IF( ln_pnd_H12 ) THEN 895 sxap = 0._wp ; syap = 0._wp ; sxxap = 0._wp ; syyap = 0._wp ; sxyap = 0._wp ! melt pond fraction 896 sxvp = 0._wp ; syvp = 0._wp ; sxxvp = 0._wp ; syyvp = 0._wp ; sxyvp = 0._wp ! melt pond volume 897 sxvl = 0._wp ; syvl = 0._wp ; sxxvl = 0._wp ; syyvl = 0._wp ; sxyvl = 0._wp ! melt pond lid volume 905 sxap = 0._wp ; syap = 0._wp ; sxxap = 0._wp ; syyap = 0._wp ; sxyap = 0._wp ! melt pond fraction 906 sxvp = 0._wp ; syvp = 0._wp ; sxxvp = 0._wp ; syyvp = 0._wp ; sxyvp = 0._wp ! melt pond volume 907 IF ( ln_pnd_lids ) THEN 908 sxvl = 0._wp; syvl = 0._wp ; sxxvl = 0._wp ; syyvl = 0._wp ; sxyvl = 0._wp ! melt pond lid volume 909 ENDIF 898 910 ENDIF 899 911 ENDIF … … 970 982 CALL iom_rstput( iter, nitrst, numriw, 'syyvp', syyvp ) 971 983 CALL iom_rstput( iter, nitrst, numriw, 'sxyvp', sxyvp ) 972 ! ! melt pond lid volume 973 CALL iom_rstput( iter, nitrst, numriw, 'sxvl' , sxvl ) 974 CALL iom_rstput( iter, nitrst, numriw, 'syvl' , syvl ) 975 CALL iom_rstput( iter, nitrst, numriw, 'sxxvl', sxxvl ) 976 CALL iom_rstput( iter, nitrst, numriw, 'syyvl', syyvl ) 977 CALL iom_rstput( iter, nitrst, numriw, 'sxyvl', sxyvl ) 984 ! 985 IF ( ln_pnd_lids ) THEN ! melt pond lid volume 986 CALL iom_rstput( iter, nitrst, numriw, 'sxvl' , sxvl ) 987 CALL iom_rstput( iter, nitrst, numriw, 'syvl' , syvl ) 988 CALL iom_rstput( iter, nitrst, numriw, 'sxxvl', sxxvl ) 989 CALL iom_rstput( iter, nitrst, numriw, 'syyvl', syyvl ) 990 CALL iom_rstput( iter, nitrst, numriw, 'sxyvl', sxyvl ) 991 ENDIF 978 992 ENDIF 979 993 ! -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/icedyn_adv_umx.F90
r12720 r12744 336 336 & zhvar, pv_ip, zua_ups, zva_ups ) 337 337 ! lid 338 zamsk = 0._wp 339 zhvar(:,:,:) = pv_il(:,:,:) * z1_aip(:,:,:) 340 CALL adv_umx( zamsk, kn_umx, jt, kt, zdt, zudy , zvdx , zua_ho , zva_ho , zcu_box, zcv_box, & 341 & zhvar, pv_il, zua_ups, zva_ups ) 338 IF ( ln_pnd_lids ) THEN 339 zamsk = 0._wp 340 zhvar(:,:,:) = pv_il(:,:,:) * z1_aip(:,:,:) 341 CALL adv_umx( zamsk, kn_umx, jt, kt, zdt, zudy , zvdx , zua_ho , zva_ho , zcu_box, zcv_box, & 342 & zhvar, pv_il, zua_ups, zva_ups ) 343 ENDIF 342 344 ENDIF 343 345 ! -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/icedyn_rdgrft.F90
r12720 r12744 569 569 aprdg2(ji) = a_ip_2d(ji,jl1) * afrdg * hi_hrdg(ji,jl1) 570 570 vprdg (ji) = v_ip_2d(ji,jl1) * afrdg 571 vlrdg (ji) = v_il_2d(ji,jl1) * afrdg572 571 aprft1 = a_ip_2d(ji,jl1) * afrft 573 572 aprft2(ji) = a_ip_2d(ji,jl1) * afrft * hi_hrft 574 573 vprft (ji) = v_ip_2d(ji,jl1) * afrft 575 vlrft (ji) = v_il_2d(ji,jl1) * afrft 574 IF ( ln_pnd_lids ) THEN 575 vlrdg (ji) = v_il_2d(ji,jl1) * afrdg 576 vlrft (ji) = v_il_2d(ji,jl1) * afrft 577 ENDIF 576 578 ENDIF 577 579 … … 603 605 a_ip_2d(ji,jl1) = a_ip_2d(ji,jl1) - aprdg1 - aprft1 604 606 v_ip_2d(ji,jl1) = v_ip_2d(ji,jl1) - vprdg(ji) - vprft(ji) 605 v_il_2d(ji,jl1) = v_il_2d(ji,jl1) - vlrdg(ji) - vlrft(ji) 607 IF ( ln_pnd_lids ) THEN 608 v_il_2d(ji,jl1) = v_il_2d(ji,jl1) - vlrdg(ji) - vlrft(ji) 609 ENDIF 606 610 ENDIF 607 611 ENDIF … … 700 704 a_ip_2d (ji,jl2) = a_ip_2d(ji,jl2) + ( aprdg2(ji) * rn_fpndrdg * farea & 701 705 & + aprft2(ji) * rn_fpndrft * zswitch(ji) ) 702 v_il_2d (ji,jl2) = v_il_2d(ji,jl2) + ( vlrdg (ji) * rn_fpndrdg * fvol (ji) & 703 & + vlrft (ji) * rn_fpndrft * zswitch(ji) ) 706 IF ( ln_pnd_lids ) THEN 707 v_il_2d (ji,jl2) = v_il_2d(ji,jl2) + ( vlrdg (ji) * rn_fpndrdg * fvol (ji) & 708 & + vlrft (ji) * rn_fpndrft * zswitch(ji) ) 709 ENDIF 704 710 ENDIF 705 711 -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/iceistate.F90
r12728 r12744 277 277 zapnd_ini(:,:) = 0._wp 278 278 zhpnd_ini(:,:) = 0._wp 279 zhlid_ini(:,:) = 0._wp 280 ENDIF 281 282 IF ( .NOT.ln_pnd_lids ) THEN 279 283 zhlid_ini(:,:) = 0._wp 280 284 ENDIF … … 554 558 ENDIF 555 559 ! 560 IF( .NOT.ln_pnd_lids ) THEN 561 rn_hld_ini_n = 0. ; rn_hld_ini_s = 0. 562 ENDIF 563 ! 556 564 END SUBROUTINE ice_istate_init 557 565 -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/iceitd.F90
r12720 r12744 483 483 v_ip_2d(ji,jl1) = v_ip_2d(ji,jl1) - ztrans 484 484 v_ip_2d(ji,jl2) = v_ip_2d(ji,jl2) + ztrans 485 ! 486 ztrans = v_il_2d(ji,jl1) * zworka(ji) ! Pond lid volume 487 v_il_2d(ji,jl1) = v_il_2d(ji,jl1) - ztrans 488 v_il_2d(ji,jl2) = v_il_2d(ji,jl2) + ztrans 485 ! 486 IF ( ln_pnd_lids ) THEN ! Pond lid volume 487 ztrans = v_il_2d(ji,jl1) * zworka(ji) 488 v_il_2d(ji,jl1) = v_il_2d(ji,jl1) - ztrans 489 v_il_2d(ji,jl2) = v_il_2d(ji,jl2) + ztrans 490 ENDIF 489 491 ENDIF 490 492 ! -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/ICE/icevar.F90
r12725 r12744 683 683 WHERE( pa_ip(1:npti,:) < 0._wp .AND. pa_ip(1:npti,:) > -epsi10 ) pa_ip(1:npti,:) = 0._wp ! a_ip must be >= 0 684 684 WHERE( pv_ip(1:npti,:) < 0._wp .AND. pv_ip(1:npti,:) > -epsi10 ) pv_ip(1:npti,:) = 0._wp ! v_ip must be >= 0 685 WHERE( pv_il(1:npti,:) < 0._wp .AND. pv_il(1:npti,:) > -epsi10 ) pv_il(1:npti,:) = 0._wp ! v_il must be >= 0 685 IF( ln_pnd_lids ) THEN 686 WHERE( pv_il(1:npti,:) < 0._wp .AND. pv_il(1:npti,:) > -epsi10 ) pv_il(1:npti,:) = 0._wp ! v_il must be >= 0 687 ENDIF 686 688 ENDIF 687 689 ! -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/OCE/BDY/bdydta.F90
r12720 r12744 321 321 bf_alias(jp_bdyaip)%fnow(:,1,:) = 0._wp 322 322 bf_alias(jp_bdyhip)%fnow(:,1,:) = 0._wp 323 bf_alias(jp_bdyhil)%fnow(:,1,:) = 0._wp 324 ENDIF 325 IF ( .NOT.ln_pnd_lids ) THEN 323 326 bf_alias(jp_bdyhil)%fnow(:,1,:) = 0._wp 324 327 ENDIF … … 459 462 CALL ctl_warn( 'rn_ice_apnd & rn_ice_hpnd = 0 & rn_ice_hlid = 0 when no ponds' ) 460 463 ENDIF 464 IF( .NOT.ln_pnd_lids ) THEN 465 rn_ice_hlid = 0. 466 ENDIF 461 467 #endif 462 468 -
NEMO/branches/2020/r4.0-HEAD_r12713_clem_dan_fixcpl/src/OCE/BDY/bdyice.F90
r12726 r12744 171 171 a_ip(ji,jj,jl) = 0._wp 172 172 h_ip(ji,jj,jl) = 0._wp 173 h_il(ji,jj,jl) = 0._wp 174 ENDIF 175 176 IF( .NOT.ln_pnd_lids ) THEN 173 177 h_il(ji,jj,jl) = 0._wp 174 178 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.