Changeset 13570
- Timestamp:
- 2020-10-06T16:49:27+02:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn_rhg_evp.F90
r13561 r13570 184 184 zfmask(ji,jj) = tmask(ji,jj,1) * tmask(ji+1,jj,1) * tmask(ji,jj+1,1) * tmask(ji+1,jj+1,1) 185 185 END_2D 186 #if defined key_mpi3 186 187 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zfmask, 'F', 1._wp) 188 #else 189 CALL lbc_lnk( 'icedyn_rhg_evp', zfmask, 'F', 1._wp) 190 #endif 187 191 188 192 ! Lateral boundary conditions on velocity (modify zfmask) … … 209 213 ENDIF 210 214 END DO 215 #if defined key_mpi3 211 216 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zfmask, 'F', 1._wp ) 217 #else 218 CALL lbc_lnk( 'icedyn_rhg_evp', zfmask, 'F', 1._wp ) 219 #endif 212 220 213 221 !------------------------------------------------------------------------------! … … 300 308 301 309 END_2D 310 #if defined key_mpi3 302 311 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp ) 312 #else 313 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp ) 314 #endif 303 315 ! 304 316 ! !== Landfast ice parameterization ==! … … 319 331 tau_icebfr(ji,jj) = - rn_icebfr * MAX( 0._wp, vt_i(ji,jj) - zvCr ) * EXP( -rn_crhg * ( 1._wp - at_i(ji,jj) ) ) 320 332 END_2D 333 #if defined key_mpi3 321 334 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', tau_icebfr(:,:), 'T', 1.0_wp ) 335 #else 336 CALL lbc_lnk( 'icedyn_rhg_evp', tau_icebfr(:,:), 'T', 1.0_wp ) 337 #endif 322 338 ! 323 339 ELSE !-- no landfast … … 395 411 396 412 END_2D 413 #if defined key_mpi3 397 414 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zp_delt, 'T', 1.0_wp ) 415 #else 416 CALL lbc_lnk( 'icedyn_rhg_evp', zp_delt, 'T', 1.0_wp ) 417 #endif 398 418 DO_2D( 1, 0, 1, 0 ) 399 419 … … 483 503 ENDIF 484 504 END_2D 505 #if defined key_mpi3 485 506 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 507 #else 508 CALL lbc_lnk( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 509 #endif 486 510 ! 487 511 #if defined key_agrif … … 532 556 ENDIF 533 557 END_2D 558 #if defined key_mpi3 534 559 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 560 #else 561 CALL lbc_lnk( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 562 #endif 535 563 ! 536 564 #if defined key_agrif … … 583 611 ENDIF 584 612 END_2D 613 #if defined key_mpi3 585 614 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 615 #else 616 CALL lbc_lnk( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 617 #endif 586 618 ! 587 619 #if defined key_agrif … … 632 664 ENDIF 633 665 END_2D 666 #if defined key_mpi3 634 667 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 668 #else 669 CALL lbc_lnk( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 670 #endif 635 671 ! 636 672 #if defined key_agrif … … 693 729 694 730 END_2D 731 #if defined key_mpi3 695 732 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', pshear_i, 'T', 1.0_wp, pdivu_i, 'T', 1.0_wp, pdelta_i, 'T', 1.0_wp ) 733 #else 734 CALL lbc_lnk_multi( 'icedyn_rhg_evp', pshear_i, 'T', 1.0_wp, pdivu_i, 'T', 1.0_wp, pdelta_i, 'T', 1.0_wp ) 735 #endif 696 736 697 737 ! --- Store the stress tensor for the next time step --- ! 738 #if defined key_mpi3 698 739 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zs1, 'T', 1.0_wp, zs2, 'T', 1.0_wp, zs12, 'F', 1.0_wp ) 740 #else 741 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zs1, 'T', 1.0_wp, zs2, 'T', 1.0_wp, zs12, 'F', 1.0_wp ) 742 #endif 699 743 pstress1_i (:,:) = zs1 (:,:) 700 744 pstress2_i (:,:) = zs2 (:,:) … … 713 757 & iom_use('utau_bi') .OR. iom_use('vtau_bi') ) THEN 714 758 ! 759 #if defined key_mpi3 715 760 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', ztaux_oi, 'U', -1.0_wp, ztauy_oi, 'V', -1.0_wp, ztaux_ai, 'U', -1.0_wp, ztauy_ai, 'V', -1.0_wp, & 716 761 & ztaux_bi, 'U', -1.0_wp, ztauy_bi, 'V', -1.0_wp ) 762 #else 763 CALL lbc_lnk_multi( 'icedyn_rhg_evp', ztaux_oi, 'U', -1.0_wp, ztauy_oi, 'V', -1.0_wp, ztaux_ai, 'U', -1.0_wp, ztauy_ai, 'V', -1.0_wp, & 764 & ztaux_bi, 'U', -1.0_wp, ztauy_bi, 'V', -1.0_wp ) 765 #endif 717 766 ! 718 767 CALL iom_put( 'utau_oi' , ztaux_oi * zmsk00 ) … … 751 800 zsig3(ji,jj) = zdum2**2 * ( ( pstress1_i(ji,jj) + strength(ji,jj) )**2 + ( rn_ecc * zshear )**2 ) 752 801 END_2D 802 #if defined key_mpi3 753 803 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zsig1, 'T', 1.0_wp, zsig2, 'T', 1.0_wp, zsig3, 'T', 1.0_wp ) 804 #else 805 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zsig1, 'T', 1.0_wp, zsig2, 'T', 1.0_wp, zsig3, 'T', 1.0_wp ) 806 #endif 754 807 ! 755 808 CALL iom_put( 'isig1' , zsig1 ) … … 768 821 & iom_use('corstrx') .OR. iom_use('corstry') .OR. iom_use('intstrx') .OR. iom_use('intstry') ) THEN 769 822 ! 823 #if defined key_mpi3 770 824 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zspgU, 'U', -1.0_wp, zspgV, 'V', -1.0_wp, & 771 825 & zCorU, 'U', -1.0_wp, zCorV, 'V', -1.0_wp, zfU, 'U', -1.0_wp, zfV, 'V', -1.0_wp ) 826 #else 827 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zspgU, 'U', -1.0_wp, zspgV, 'V', -1.0_wp, & 828 & zCorU, 'U', -1.0_wp, zCorV, 'V', -1.0_wp, zfU, 'U', -1.0_wp, zfV, 'V', -1.0_wp ) 829 #endif 772 830 773 831 CALL iom_put( 'dssh_dx' , zspgU * zmsk00 ) ! Sea-surface tilt term in force balance (x) … … 801 859 END_2D 802 860 861 #if defined key_mpi3 803 862 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zdiag_xmtrp_ice, 'U', -1.0_wp, zdiag_ymtrp_ice, 'V', -1.0_wp, & 804 863 & zdiag_xmtrp_snw, 'U', -1.0_wp, zdiag_ymtrp_snw, 'V', -1.0_wp, & 805 864 & zdiag_xatrp , 'U', -1.0_wp, zdiag_yatrp , 'V', -1.0_wp ) 865 #else 866 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zdiag_xmtrp_ice, 'U', -1.0_wp, zdiag_ymtrp_ice, 'V', -1.0_wp, & 867 & zdiag_xmtrp_snw, 'U', -1.0_wp, zdiag_ymtrp_snw, 'V', -1.0_wp, & 868 & zdiag_xatrp , 'U', -1.0_wp, zdiag_yatrp , 'V', -1.0_wp ) 869 #endif 806 870 807 871 CALL iom_put( 'xmtrpice' , zdiag_xmtrp_ice ) ! X-component of sea-ice mass transport (kg/s) -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/OCE/TRA/traadv_fct.F90
r13561 r13570 237 237 END_2D 238 238 END DO 239 CALL lbc_lnk_nc_multi( 'traadv_fct', zltu, 'T', 1.0_wp , zltv, 'T', 1.0_wp ) ! Lateral boundary cond. (unchanged sgn) 239 #if defined key_mpi3 240 CALL lbc_lnk_nc_multi( 'traadv_fct', zltu, 'T', 1.0_wp , zltv, 'T', 1.0_wp, ncsten=.FALSE. ) ! Lateral boundary cond. (unchanged sgn) 241 #else 242 CALL lbc_lnk_multi( 'traadv_fct', zltu, 'T', 1.0_wp , zltv, 'T', 1.0_wp ) ! Lateral boundary cond. (unchanged sgn) 243 #endif 240 244 ! 241 245 DO_3D( 1, 0, 1, 0, 1, jpkm1 ) … … 254 258 ztv(ji,jj,jk) = ( pt(ji ,jj+1,jk,jn,Kmm) - pt(ji,jj,jk,jn,Kmm) ) * vmask(ji,jj,jk) 255 259 END_3D 256 CALL lbc_lnk_nc_multi( 'traadv_fct', ztu, 'U', -1.0_wp , ztv, 'V', -1.0_wp ) ! Lateral boundary cond. (unchanged sgn) 260 #if defined key_mpi3 261 CALL lbc_lnk_nc_multi( 'traadv_fct', ztu, 'U', -1.0_wp , ztv, 'V', -1.0_wp, ncsten=.FALSE. ) ! Lateral boundary cond. (unchanged sgn) 262 #else 263 CALL lbc_lnk_multi( 'traadv_fct', ztu, 'U', -1.0_wp , ztv, 'V', -1.0_wp ) ! Lateral boundary cond. (unchanged sgn) 264 #endif 257 265 ! 258 266 DO_3D( 0, 0, 0, 0, 1, jpkm1 ) … … 306 314 END IF 307 315 ! 308 CALL lbc_lnk_nc_multi( 'traadv_fct', zwi, 'T', 1.0_wp, zwx, 'U', -1.0_wp , zwy, 'V', -1.0_wp, zwz, 'W', 1.0_wp ) 316 #if defined key_mpi3 317 CALL lbc_lnk_nc_multi( 'traadv_fct', zwi, 'T', 1.0_wp, zwx, 'U', -1.0_wp , zwy, 'V', -1.0_wp, zwz, 'W', 1.0_wp, ncsten=.FALSE. ) 318 #else 319 CALL lbc_lnk_multi( 'traadv_fct', zwi, 'T', 1.0_wp, zwx, 'U', -1.0_wp , zwy, 'V', -1.0_wp, zwz, 'W', 1.0_wp ) 320 #endif 309 321 ! 310 322 ! !== monotonicity algorithm ==! … … 440 452 END_2D 441 453 END DO 442 CALL lbc_lnk_nc_multi( 'traadv_fct', zbetup, 'T', 1.0_wp , zbetdo, 'T', 1.0_wp ) ! lateral boundary cond. (unchanged sign) 454 #if defined key_mpi3 455 CALL lbc_lnk_nc_multi( 'traadv_fct', zbetup, 'T', 1.0_wp , zbetdo, 'T', 1.0_wp, ncsten=.FALSE. ) ! lateral boundary cond. (unchanged sign) 456 #else 457 CALL lbc_lnk_multi( 'traadv_fct', zbetup, 'T', 1.0_wp , zbetdo, 'T', 1.0_wp ) ! lateral boundary cond. (unchanged sign) 458 #endif 443 459 444 460 ! 3. monotonic flux in the i & j direction (paa & pbb) … … 462 478 pcc(ji,jj,jk+1) = pcc(ji,jj,jk+1) * ( zc * za + ( 1._wp - zc) * zb ) 463 479 END_3D 464 CALL lbc_lnk_nc_multi( 'traadv_fct', paa, 'U', -1.0_wp , pbb, 'V', -1.0_wp ) ! lateral boundary condition (changed sign) 480 #if defined key_mpi3 481 CALL lbc_lnk_nc_multi( 'traadv_fct', paa, 'U', -1.0_wp , pbb, 'V', -1.0_wp, ncsten=.FALSE. ) ! lateral boundary condition (changed sign) 482 #else 483 CALL lbc_lnk_multi( 'traadv_fct', paa, 'U', -1.0_wp , pbb, 'V', -1.0_wp ) ! lateral boundary condition (changed sign) 484 #endif 465 485 ! 466 486 END SUBROUTINE nonosc
Note: See TracChangeset
for help on using the changeset viewer.