- Timestamp:
- 2020-10-19T10:48:19+02:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icecor.F90
r13571 r13630 113 113 ENDIF 114 114 END_2D 115 #if defined key_mpi3 116 CALL lbc_lnk_nc_multi( 'icecor', u_ice, 'U', -1.0_wp, v_ice, 'V', -1.0_wp ) 117 #else 115 118 CALL lbc_lnk_multi( 'icecor', u_ice, 'U', -1.0_wp, v_ice, 'V', -1.0_wp ) 119 #endif 116 120 ENDIF 117 121 -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn.F90
r13571 r13630 161 161 & + e1v(ji,jj) * v_ice(ji,jj) - e1v(ji,jj-1) * v_ice(ji,jj-1) ) * r1_e1e2t(ji,jj) 162 162 END_2D 163 #if defined key_mpi3 164 CALL lbc_lnk_nc_multi( 'icedyn', zdivu_i, 'T', 1.0_wp ) 165 #else 163 166 CALL lbc_lnk( 'icedyn', zdivu_i, 'T', 1.0_wp ) 167 #endif 164 168 ! output 165 169 CALL iom_put( 'icediv' , zdivu_i ) -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn_adv_pra.F90
r13571 r13630 158 158 END_3D 159 159 END DO 160 #if defined key_mpi3 161 CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zei_max, 'T', 1. ) 162 CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zes_max, 'T', 1. ) 163 #else 160 164 CALL lbc_lnk( 'icedyn_adv_pra', zei_max, 'T', 1. ) 161 165 CALL lbc_lnk( 'icedyn_adv_pra', zes_max, 'T', 1. ) 166 #endif 162 167 ! 163 168 ! … … 311 316 & - ( zudy(ji,jj) - zudy(ji-1,jj) + zvdx(ji,jj) - zvdx(ji,jj-1) ) * r1_e1e2t(ji,jj) * zdt 312 317 END_2D 318 #if defined key_mpi3 319 CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', pato_i, 'T', 1.0_wp ) 320 #else 313 321 CALL lbc_lnk( 'icedyn_adv_pra', pato_i, 'T', 1.0_wp ) 322 #endif 314 323 ! 315 324 ! --- Ensure non-negative fields --- ! -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn_adv_umx.F90
r13571 r13630 162 162 END_3D 163 163 END DO 164 #if defined key_mpi3 165 CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zei_max, 'T', 1. ) 166 CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zes_max, 'T', 1. ) 167 #else 164 168 CALL lbc_lnk( 'icedyn_adv_pra', zei_max, 'T', 1. ) 165 169 CALL lbc_lnk( 'icedyn_adv_pra', zes_max, 'T', 1. ) 170 #endif 166 171 ! 167 172 ! … … 384 389 & - ( zudy(ji,jj) - zudy(ji-1,jj) + zvdx(ji,jj) - zvdx(ji,jj-1) ) * r1_e1e2t(ji,jj) * zdt 385 390 END_2D 391 #if defined key_mpi3 392 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pato_i, 'T', 1.0_wp ) 393 #else 386 394 CALL lbc_lnk( 'icedyn_adv_umx', pato_i, 'T', 1.0_wp ) 395 #endif 387 396 ! 388 397 ! … … 518 527 END_2D 519 528 END DO 529 #if defined key_mpi3 530 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zt_ups, 'T', 1.0_wp ) 531 #else 520 532 CALL lbc_lnk( 'icedyn_adv_umx', zt_ups, 'T', 1.0_wp ) 533 #endif 521 534 ! 522 535 IF ( np_limiter == 1 ) THEN … … 601 614 END_2D 602 615 END DO 616 #if defined key_mpi3 617 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 618 #else 603 619 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 620 #endif 604 621 ! 605 622 DO jl = 1, jpl !-- flux in y-direction … … 625 642 END_2D 626 643 END DO 644 #if defined key_mpi3 645 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 646 #else 627 647 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 648 #endif 628 649 ! 629 650 DO jl = 1, jpl !-- flux in x-direction … … 647 668 END_2D 648 669 END DO 670 #if defined key_mpi3 671 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pt_ups, 'T', 1.0_wp ) 672 #else 649 673 CALL lbc_lnk( 'icedyn_adv_umx', pt_ups, 'T', 1.0_wp ) 674 #endif 650 675 651 676 END SUBROUTINE upstream … … 709 734 END_2D 710 735 END DO 736 #if defined key_mpi3 737 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 738 #else 711 739 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 740 #endif 712 741 713 742 DO jl = 1, jpl !-- flux in y-direction … … 735 764 END_2D 736 765 END DO 766 #if defined key_mpi3 767 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 768 #else 737 769 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 770 #endif 738 771 ! 739 772 DO jl = 1, jpl !-- flux in x-direction … … 793 826 END_2D 794 827 END DO 828 #if defined key_mpi3 829 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 830 #else 795 831 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 832 #endif 796 833 ! 797 834 ! !-- ultimate interpolation of pt at v-point --! … … 820 857 END_2D 821 858 END DO 859 #if defined key_mpi3 860 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 861 #else 822 862 CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 863 #endif 823 864 ! 824 865 ! !-- ultimate interpolation of pt at u-point --! … … 873 914 END DO 874 915 END DO 916 #if defined key_mpi3 917 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztu2, 'T', 1.0_wp ) 918 #else 875 919 CALL lbc_lnk( 'icedyn_adv_umx', ztu2, 'T', 1.0_wp ) 920 #endif 876 921 ! 877 922 ! !-- BiLaplacian in i-direction --! … … 887 932 END DO 888 933 END DO 934 #if defined key_mpi3 935 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztu4, 'T', 1.0_wp ) 936 #else 889 937 CALL lbc_lnk( 'icedyn_adv_umx', ztu4, 'T', 1.0_wp ) 938 #endif 890 939 ! 891 940 ! … … 1013 1062 END_2D 1014 1063 END DO 1064 #if defined key_mpi3 1065 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztv2, 'T', 1.0_wp ) 1066 #else 1015 1067 CALL lbc_lnk( 'icedyn_adv_umx', ztv2, 'T', 1.0_wp ) 1068 #endif 1016 1069 ! 1017 1070 ! !-- BiLaplacian in j-direction --! … … 1024 1077 END_2D 1025 1078 END DO 1079 #if defined key_mpi3 1080 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztv4, 'T', 1.0_wp ) 1081 #else 1026 1082 CALL lbc_lnk( 'icedyn_adv_umx', ztv4, 'T', 1.0_wp ) 1083 #endif 1027 1084 ! 1028 1085 ! … … 1163 1220 END_2D 1164 1221 END DO 1222 #if defined key_mpi3 1223 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zti_ups, 'T', 1.0_wp, ztj_ups, 'T', 1.0_wp ) 1224 #else 1165 1225 CALL lbc_lnk_multi( 'icedyn_adv_umx', zti_ups, 'T', 1.0_wp, ztj_ups, 'T', 1.0_wp ) 1226 #endif 1166 1227 1167 1228 DO jl = 1, jpl … … 1185 1246 END_2D 1186 1247 END DO 1248 #if defined key_mpi3 1249 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp, pfv_ho, 'V', -1.0_wp ) ! lateral boundary cond. 1250 #else 1187 1251 CALL lbc_lnk_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp, pfv_ho, 'V', -1.0_wp ) ! lateral boundary cond. 1252 #endif 1188 1253 1189 1254 ENDIF … … 1242 1307 END_2D 1243 1308 END DO 1309 #if defined key_mpi3 1310 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zbetup, 'T', 1.0_wp, zbetdo, 'T', 1.0_wp ) ! lateral boundary cond. (unchanged sign) 1311 #else 1244 1312 CALL lbc_lnk_multi( 'icedyn_adv_umx', zbetup, 'T', 1.0_wp, zbetdo, 'T', 1.0_wp ) ! lateral boundary cond. (unchanged sign) 1313 #endif 1245 1314 1246 1315 … … 1297 1366 END_2D 1298 1367 END DO 1368 #if defined key_mpi3 1369 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zslpx, 'U', -1.0_wp) ! lateral boundary cond. 1370 #else 1299 1371 CALL lbc_lnk( 'icedyn_adv_umx', zslpx, 'U', -1.0_wp) ! lateral boundary cond. 1372 #endif 1300 1373 1301 1374 DO jl = 1, jpl … … 1361 1434 END_2D 1362 1435 END DO 1436 #if defined key_mpi3 1437 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp) ! lateral boundary cond. 1438 #else 1363 1439 CALL lbc_lnk( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp) ! lateral boundary cond. 1440 #endif 1364 1441 ! 1365 1442 END SUBROUTINE limiter_x … … 1388 1465 END_2D 1389 1466 END DO 1467 #if defined key_mpi3 1468 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zslpy, 'V', -1.0_wp) ! lateral boundary cond. 1469 #else 1390 1470 CALL lbc_lnk( 'icedyn_adv_umx', zslpy, 'V', -1.0_wp) ! lateral boundary cond. 1471 #endif 1391 1472 1392 1473 DO jl = 1, jpl … … 1453 1534 END_2D 1454 1535 END DO 1536 #if defined key_mpi3 1537 CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfv_ho, 'V', -1.0_wp) ! lateral boundary cond. 1538 #else 1455 1539 CALL lbc_lnk( 'icedyn_adv_umx', pfv_ho, 'V', -1.0_wp) ! lateral boundary cond. 1540 #endif 1456 1541 ! 1457 1542 END SUBROUTINE limiter_y -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn_rdgrft.F90
r13571 r13630 801 801 strength(ji,jj) = zworka(ji,jj) 802 802 END_2D 803 #if defined key_mpi3 804 CALL lbc_lnk_nc_multi( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 805 #else 803 806 CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 807 #endif 804 808 ! 805 809 CASE( 2 ) !--- Temporal smoothing … … 820 824 ENDIF 821 825 END_2D 826 #if defined key_mpi3 827 CALL lbc_lnk_nc_multi( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 828 #else 822 829 CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 830 #endif 823 831 ! 824 832 END SELECT -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icedyn_rhg_evp.F90
r13571 r13630 322 322 323 323 END_2D 324 #if defined key_mpi3325 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp )326 #else327 324 CALL lbc_lnk_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp ) 328 #endif329 325 ! 330 326 ! !== Landfast ice parameterization ==! … … 408 404 409 405 END_2D 406 #if defined key_mpi3 407 CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zdelta, 'T', 1.0_wp ) 408 #else 410 409 CALL lbc_lnk( 'icedyn_rhg_evp', zdelta, 'T', 1.0_wp ) 411 410 #endif 412 411 ! P/delta at T points 413 412 DO_2D( 1, 1, 1, 1 ) -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icesbc.F90
r13571 r13630 86 86 vtau_ice(ji,jj) = vtau_ice(ji,jj) * xcplmask(ji,jj,0) + zvtau_ice(ji,jj) * ( 1. - xcplmask(ji,jj,0) ) 87 87 END_2D 88 #if defined key_mpi3 89 CALL lbc_lnk_nc_multi( 'icesbc', utau_ice, 'U', -1.0_wp, vtau_ice, 'V', -1.0_wp ) 90 #else 88 91 CALL lbc_lnk_multi( 'icesbc', utau_ice, 'U', -1.0_wp, vtau_ice, 'V', -1.0_wp ) 92 #endif 89 93 ENDIF 90 94 ! -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icethd.F90
r13571 r13630 132 132 END_2D 133 133 ENDIF 134 #if defined key_mpi3 135 CALL lbc_lnk_nc_multi( 'icethd', zfric, 'T', 1.0_wp ) 136 #else 134 137 CALL lbc_lnk( 'icethd', zfric, 'T', 1.0_wp ) 138 #endif 135 139 ! 136 140 !--------------------------------------------------------------------! -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icethd_do.F90
r13571 r13630 191 191 END_2D 192 192 ! 193 #if defined key_mpi3 194 CALL lbc_lnk_nc_multi( 'icethd_do', zvrel, 'T', 1.0_wp, ht_i_new, 'T', 1.0_wp ) 195 #else 193 196 CALL lbc_lnk_multi( 'icethd_do', zvrel, 'T', 1.0_wp, ht_i_new, 'T', 1.0_wp ) 197 #endif 194 198 195 199 ENDIF -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/iceupdate.F90
r13571 r13630 342 342 tmod_io(ji,jj) = zrhoco * SQRT( zmodt ) ! rhoco * |U_ice-U_oce| at T-point 343 343 END_2D 344 #if defined key_mpi3 345 CALL lbc_lnk_nc_multi( 'iceupdate', taum, 'T', 1.0_wp, tmod_io, 'T', 1.0_wp ) 346 #else 344 347 CALL lbc_lnk_multi( 'iceupdate', taum, 'T', 1.0_wp, tmod_io, 'T', 1.0_wp ) 348 #endif 345 349 ! 346 350 utau_oce(:,:) = utau(:,:) !* save the air-ocean stresses at ice time-step … … 371 375 vtau(ji,jj) = ( 1._wp - zat_v ) * vtau_oce(ji,jj) + zat_v * zvtau_ice 372 376 END_2D 377 #if defined key_mpi3 378 CALL lbc_lnk_nc_multi( 'iceupdate', utau, 'U', -1.0_wp, vtau, 'V', -1.0_wp ) ! lateral boundary condition 379 #else 373 380 CALL lbc_lnk_multi( 'iceupdate', utau, 'U', -1.0_wp, vtau, 'V', -1.0_wp ) ! lateral boundary condition 381 #endif 374 382 ! 375 383 IF( ln_timing ) CALL timing_stop('ice_update_tau') -
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icewri.F90
r13571 r13630 137 137 z2d(ji,jj) = 0.5_wp * SQRT( z2da * z2da + z2db * z2db ) 138 138 END_2D 139 #if defined key_mpi3 140 CALL lbc_lnk_nc_multi( 'icewri', z2d, 'T', 1.0_wp ) 141 #else 139 142 CALL lbc_lnk( 'icewri', z2d, 'T', 1.0_wp ) 143 #endif 140 144 CALL iom_put( 'icevel', z2d ) 141 145
Note: See TracChangeset
for help on using the changeset viewer.