Changeset 10425 for NEMO/trunk/src/OCE/TRA
- Timestamp:
- 2018-12-19T22:54:16+01:00 (5 years ago)
- Location:
- NEMO/trunk/src/OCE/TRA
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/TRA/eosbn2.F90
r10068 r10425 533 533 END DO 534 534 ! 535 CALL lbc_lnk( prd, 'T', 1. ) ! Lateral boundary conditions535 CALL lbc_lnk( 'eosbn2', prd, 'T', 1. ) ! Lateral boundary conditions 536 536 ! 537 537 CASE( np_seos ) !== simplified EOS ==! … … 553 553 END DO 554 554 ! 555 CALL lbc_lnk( prd, 'T', 1. ) ! Lateral boundary conditions555 CALL lbc_lnk( 'eosbn2', prd, 'T', 1. ) ! Lateral boundary conditions 556 556 ! 557 557 END SELECT … … 664 664 ! 665 665 CASE DEFAULT 666 IF(lwp) WRITE(numout,cform_err) 667 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 668 nstop = nstop + 1 666 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 667 CALL ctl_stop( 'rab_3d:', ctmp1 ) 669 668 ! 670 669 END SELECT … … 756 755 END DO 757 756 ! ! Lateral boundary conditions 758 CALL lbc_lnk_multi( pab(:,:,jp_tem), 'T', 1. , pab(:,:,jp_sal), 'T', 1. )757 CALL lbc_lnk_multi( 'eosbn2', pab(:,:,jp_tem), 'T', 1. , pab(:,:,jp_sal), 'T', 1. ) 759 758 ! 760 759 CASE( np_seos ) !== simplified EOS ==! … … 776 775 END DO 777 776 ! ! Lateral boundary conditions 778 CALL lbc_lnk_multi( pab(:,:,jp_tem), 'T', 1. , pab(:,:,jp_sal), 'T', 1. )777 CALL lbc_lnk_multi( 'eosbn2', pab(:,:,jp_tem), 'T', 1. , pab(:,:,jp_sal), 'T', 1. ) 779 778 ! 780 779 CASE DEFAULT 781 IF(lwp) WRITE(numout,cform_err) 782 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 783 nstop = nstop + 1 780 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 781 CALL ctl_stop( 'rab_2d:', ctmp1 ) 784 782 ! 785 783 END SELECT … … 879 877 ! 880 878 CASE DEFAULT 881 IF(lwp) WRITE(numout,cform_err) 882 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 883 nstop = nstop + 1 879 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 880 CALL ctl_stop( 'rab_0d:', ctmp1 ) 884 881 ! 885 882 END SELECT … … 1040 1037 ! 1041 1038 CASE DEFAULT 1042 IF(lwp) WRITE(numout,cform_err) 1043 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 1044 nstop = nstop + 1 1039 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 1040 CALL ctl_stop( 'eos_fzp_2d:', ctmp1 ) 1045 1041 ! 1046 1042 END SELECT … … 1087 1083 ! 1088 1084 CASE DEFAULT 1089 IF(lwp) WRITE(numout,cform_err) 1090 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 1091 nstop = nstop + 1 1085 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 1086 CALL ctl_stop( 'eos_fzp_0d:', ctmp1 ) 1092 1087 ! 1093 1088 END SELECT … … 1213 1208 ! 1214 1209 CASE DEFAULT 1215 IF(lwp) WRITE(numout,cform_err) 1216 IF(lwp) WRITE(numout,*) ' bad flag value for neos = ', neos 1217 nstop = nstop + 1 1210 WRITE(ctmp1,*) ' bad flag value for neos = ', neos 1211 CALL ctl_stop( 'eos_pen:', ctmp1 ) 1218 1212 ! 1219 1213 END SELECT -
NEMO/trunk/src/OCE/TRA/traadv_cen.F90
r10069 r10425 123 123 END DO 124 124 END DO 125 CALL lbc_lnk_multi( ztu, 'U', -1. , ztv, 'V', -1. ) ! Lateral boundary cond.125 CALL lbc_lnk_multi( 'traadv_cen', ztu, 'U', -1. , ztv, 'V', -1. ) ! Lateral boundary cond. 126 126 ! 127 127 DO jk = 1, jpkm1 ! Horizontal advective fluxes -
NEMO/trunk/src/OCE/TRA/traadv_fct.F90
r10068 r10425 169 169 END DO 170 170 END DO 171 CALL lbc_lnk( zwi, 'T', 1. ) ! Lateral boundary conditions on zwi (unchanged sign)172 171 ! 173 172 IF( l_trd .OR. l_hst ) THEN ! trend diagnostics (contribution of upstream fluxes) … … 208 207 END DO 209 208 END DO 210 CALL lbc_lnk_multi( zltu, 'T', 1. , zltv, 'T', 1. ) ! Lateral boundary cond. (unchanged sgn)209 CALL lbc_lnk_multi( 'traadv_fct', zltu, 'T', 1. , zltv, 'T', 1. ) ! Lateral boundary cond. (unchanged sgn) 211 210 ! 212 211 DO jk = 1, jpkm1 ! Horizontal advective fluxes … … 233 232 END DO 234 233 END DO 235 CALL lbc_lnk_multi( ztu, 'U', -1. , ztv, 'V', -1. ) ! Lateral boundary cond. (unchanged sgn)234 CALL lbc_lnk_multi( 'traadv_fct', ztu, 'U', -1. , ztv, 'V', -1. ) ! Lateral boundary cond. (unchanged sgn) 236 235 ! 237 236 DO jk = 1, jpkm1 ! Horizontal advective fluxes … … 279 278 ENDIF 280 279 ! 281 CALL lbc_lnk_multi( zwx, 'U', -1. , zwy, 'V', -1., zwz, 'W', 1. )280 CALL lbc_lnk_multi( 'traadv_fct', zwi, 'T', 1., zwx, 'U', -1. , zwy, 'V', -1., zwz, 'W', 1. ) 282 281 ! 283 282 ! !== monotonicity algorithm ==! … … 399 398 END DO 400 399 END DO 401 CALL lbc_lnk_multi( zbetup, 'T', 1. , zbetdo, 'T', 1. ) ! lateral boundary cond. (unchanged sign)400 CALL lbc_lnk_multi( 'traadv_fct', zbetup, 'T', 1. , zbetdo, 'T', 1. ) ! lateral boundary cond. (unchanged sign) 402 401 403 402 ! 3. monotonic flux in the i & j direction (paa & pbb) … … 425 424 END DO 426 425 END DO 427 CALL lbc_lnk_multi( paa, 'U', -1. , pbb, 'V', -1. ) ! lateral boundary condition (changed sign)426 CALL lbc_lnk_multi( 'traadv_fct', paa, 'U', -1. , pbb, 'V', -1. ) ! lateral boundary condition (changed sign) 428 427 ! 429 428 END SUBROUTINE nonosc -
NEMO/trunk/src/OCE/TRA/traadv_mus.F90
r10068 r10425 140 140 END DO 141 141 ! lateral boundary conditions (changed sign) 142 CALL lbc_lnk_multi( zwx, 'U', -1. , zwy, 'V', -1. )142 CALL lbc_lnk_multi( 'traadv_mus', zwx, 'U', -1. , zwy, 'V', -1. ) 143 143 ! !-- Slopes of tracer 144 144 zslpx(:,:,jpk) = 0._wp ! bottom values … … 188 188 END DO 189 189 END DO 190 CALL lbc_lnk_multi( zwx, 'U', -1. , zwy, 'V', -1. ) ! lateral boundary conditions (changed sign)190 CALL lbc_lnk_multi( 'traadv_mus', zwx, 'U', -1. , zwy, 'V', -1. ) ! lateral boundary conditions (changed sign) 191 191 ! 192 192 DO jk = 1, jpkm1 !-- Tracer advective trend -
NEMO/trunk/src/OCE/TRA/traadv_qck.F90
r10068 r10425 150 150 END DO 151 151 END DO 152 CALL lbc_lnk_multi( zfc(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1. ) ! Lateral boundary conditions152 CALL lbc_lnk_multi( 'traadv_qck', zfc(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1. ) ! Lateral boundary conditions 153 153 154 154 ! … … 176 176 END DO 177 177 !--- Lateral boundary conditions 178 CALL lbc_lnk_multi( zfu(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1., zfc(:,:,:), 'T', 1., zwx(:,:,:), 'T', 1. )178 CALL lbc_lnk_multi( 'traadv_qck', zfu(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1., zfc(:,:,:), 'T', 1., zwx(:,:,:), 'T', 1. ) 179 179 180 180 !--- QUICKEST scheme … … 189 189 END DO 190 190 END DO 191 CALL lbc_lnk( zfu(:,:,:), 'T', 1. ) ! Lateral boundary conditions191 CALL lbc_lnk( 'traadv_qck', zfu(:,:,:), 'T', 1. ) ! Lateral boundary conditions 192 192 193 193 ! … … 207 207 END DO 208 208 ! 209 CALL lbc_lnk( zwx(:,:,:), 'T', 1. ) ! Lateral boundary conditions209 CALL lbc_lnk( 'traadv_qck', zwx(:,:,:), 'T', 1. ) ! Lateral boundary conditions 210 210 ! 211 211 ! Computation of the trend … … 265 265 END DO 266 266 END DO 267 CALL lbc_lnk_multi( zfc(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1. ) ! Lateral boundary conditions267 CALL lbc_lnk_multi( 'traadv_qck', zfc(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1. ) ! Lateral boundary conditions 268 268 269 269 … … 294 294 295 295 !--- Lateral boundary conditions 296 CALL lbc_lnk_multi( zfu(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1., zfc(:,:,:), 'T', 1., zwy(:,:,:), 'T', 1. )296 CALL lbc_lnk_multi( 'traadv_qck', zfu(:,:,:), 'T', 1. , zfd(:,:,:), 'T', 1., zfc(:,:,:), 'T', 1., zwy(:,:,:), 'T', 1. ) 297 297 298 298 !--- QUICKEST scheme … … 307 307 END DO 308 308 END DO 309 CALL lbc_lnk( zfu(:,:,:), 'T', 1. ) !--- Lateral boundary conditions309 CALL lbc_lnk( 'traadv_qck', zfu(:,:,:), 'T', 1. ) !--- Lateral boundary conditions 310 310 ! 311 311 ! Tracer flux on the x-direction … … 324 324 END DO 325 325 ! 326 CALL lbc_lnk( zwy(:,:,:), 'T', 1. ) ! Lateral boundary conditions326 CALL lbc_lnk( 'traadv_qck', zwy(:,:,:), 'T', 1. ) ! Lateral boundary conditions 327 327 ! 328 328 ! Computation of the trend -
NEMO/trunk/src/OCE/TRA/traadv_ubs.F90
r10068 r10425 141 141 ! 142 142 END DO 143 CALL lbc_lnk( zltu, 'T', 1. ) ; CALL lbc_lnk(zltv, 'T', 1. ) ! Lateral boundary cond. (unchanged sgn)143 CALL lbc_lnk( 'traadv_ubs', zltu, 'T', 1. ) ; CALL lbc_lnk( 'traadv_ubs', zltv, 'T', 1. ) ! Lateral boundary cond. (unchanged sgn) 144 144 ! 145 145 DO jk = 1, jpkm1 !== Horizontal advective fluxes ==! (UBS) … … 226 226 END DO 227 227 END DO 228 CALL lbc_lnk( zti, 'T', 1. ) ! Lateral boundary conditions on zti, zsi (unchanged sign)228 CALL lbc_lnk( 'traadv_ubs', zti, 'T', 1. ) ! Lateral boundary conditions on zti, zsi (unchanged sign) 229 229 ! 230 230 ! !* anti-diffusive flux : high order minus low order -
NEMO/trunk/src/OCE/TRA/trabbc.F90
r10068 r10425 92 92 END DO 93 93 ! 94 CALL lbc_lnk( tsa(:,:,:,jp_tem) , 'T', 1. )94 CALL lbc_lnk( 'trabbc', tsa(:,:,:,jp_tem) , 'T', 1. ) 95 95 ! 96 96 IF( l_trdtra ) THEN ! Send the trend for diagnostics -
NEMO/trunk/src/OCE/TRA/trabbl.F90
r10068 r10425 84 84 & e3u_bbl_0(jpi,jpj) , e3v_bbl_0(jpi,jpj) , STAT=tra_bbl_alloc ) 85 85 ! 86 IF( lk_mpp ) CALL mpp_sum (tra_bbl_alloc )86 CALL mpp_sum ( 'trabbl', tra_bbl_alloc ) 87 87 IF( tra_bbl_alloc > 0 ) CALL ctl_warn('tra_bbl_alloc: allocation of arrays failed.') 88 88 END FUNCTION tra_bbl_alloc … … 123 123 & tab3d_2=tsa(:,:,:,jp_sal), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 124 124 ! lateral boundary conditions ; just need for outputs 125 CALL lbc_lnk_multi( ahu_bbl, 'U', 1. , ahv_bbl, 'V', 1. )125 CALL lbc_lnk_multi( 'trabbl', ahu_bbl, 'U', 1. , ahv_bbl, 'V', 1. ) 126 126 CALL iom_put( "ahu_bbl", ahu_bbl ) ! bbl diffusive flux i-coef 127 127 CALL iom_put( "ahv_bbl", ahv_bbl ) ! bbl diffusive flux j-coef … … 136 136 & tab3d_2=tsa(:,:,:,jp_sal), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 137 137 ! lateral boundary conditions ; just need for outputs 138 CALL lbc_lnk_multi( utr_bbl, 'U', 1. , vtr_bbl, 'V', 1. )138 CALL lbc_lnk_multi( 'trabbl', utr_bbl, 'U', 1. , vtr_bbl, 'V', 1. ) 139 139 CALL iom_put( "uoce_bbl", utr_bbl ) ! bbl i-transport 140 140 CALL iom_put( "voce_bbl", vtr_bbl ) ! bbl j-transport … … 525 525 ! converte into REAL to use lbc_lnk ; impose a min value of 1 as a zero can be set in lbclnk 526 526 zmbku(:,:) = REAL( mbku_d(:,:), wp ) ; zmbkv(:,:) = REAL( mbkv_d(:,:), wp ) 527 CALL lbc_lnk_multi( zmbku,'U',1., zmbkv,'V',1.)527 CALL lbc_lnk_multi( 'trabbl', zmbku,'U',1., zmbkv,'V',1.) 528 528 mbku_d(:,:) = MAX( INT( zmbku(:,:) ), 1 ) ; mbkv_d(:,:) = MAX( NINT( zmbkv(:,:) ), 1 ) 529 529 ! … … 548 548 END DO 549 549 END DO 550 CALL lbc_lnk_multi( e3u_bbl_0, 'U', 1. , e3v_bbl_0, 'V', 1. ) ! lateral boundary conditions550 CALL lbc_lnk_multi( 'trabbl', e3u_bbl_0, 'U', 1. , e3v_bbl_0, 'V', 1. ) ! lateral boundary conditions 551 551 ! 552 552 ! !* masked diffusive flux coefficients -
NEMO/trunk/src/OCE/TRA/tradmp.F90
r10351 r10425 66 66 ALLOCATE( resto(jpi,jpj,jpk), STAT= tra_dmp_alloc ) 67 67 ! 68 IF( lk_mpp ) CALL mpp_sum (tra_dmp_alloc )68 CALL mpp_sum ( 'tradmp', tra_dmp_alloc ) 69 69 IF( tra_dmp_alloc > 0 ) CALL ctl_warn('tra_dmp_alloc: allocation of arrays failed') 70 70 ! -
NEMO/trunk/src/OCE/TRA/traldf_lap_blp.F90
r10068 r10425 213 213 END SELECT 214 214 ! 215 CALL lbc_lnk( zlap(:,:,:,:) , 'T', 1. ) ! Lateral boundary conditions (unchanged sign)215 CALL lbc_lnk( 'traldf_lap_blp', zlap(:,:,:,:) , 'T', 1. ) ! Lateral boundary conditions (unchanged sign) 216 216 ! ! Partial top/bottom cell: GRADh( zlap ) 217 217 IF( ln_isfcav .AND. ln_zps ) THEN ; CALL zps_hde_isf( kt, kjpt, zlap, zglu, zglv, zgui, zgvi ) ! both top & bottom -
NEMO/trunk/src/OCE/TRA/traldf_triad.F90
r10068 r10425 98 98 IF( .NOT.ALLOCATED(zdkt3d) ) THEN 99 99 ALLOCATE( zdkt3d(jpi,jpj,0:1) , STAT=ierr ) 100 IF( lk_mpp ) CALL mpp_sum (ierr )100 CALL mpp_sum ( 'traldf_triad', ierr ) 101 101 IF( ierr > 0 ) CALL ctl_stop('STOP', 'tra_ldf_triad: unable to allocate arrays') 102 102 ENDIF -
NEMO/trunk/src/OCE/TRA/tramle.F90
r10105 r10425 321 321 END DO 322 322 END DO 323 CALL lbc_lnk_multi( rfu, 'U', 1. , rfv, 'V', 1. )323 CALL lbc_lnk_multi( 'tramle', rfu, 'U', 1. , rfv, 'V', 1. ) 324 324 ! 325 325 ELSEIF( nn_mle == 1 ) THEN ! MLE array allocation & initialisation -
NEMO/trunk/src/OCE/TRA/tranpc.F90
r10068 r10425 309 309 ENDIF 310 310 ! 311 CALL lbc_lnk_multi( tsa(:,:,:,jp_tem), 'T', 1., tsa(:,:,:,jp_sal), 'T', 1. )311 CALL lbc_lnk_multi( 'tranpc', tsa(:,:,:,jp_tem), 'T', 1., tsa(:,:,:,jp_sal), 'T', 1. ) 312 312 ! 313 313 IF( lwp .AND. l_LB_debug ) THEN -
NEMO/trunk/src/OCE/TRA/tranxt.F90
r10095 r10425 107 107 #endif 108 108 ! ! local domain boundaries (T-point, unchanged sign) 109 CALL lbc_lnk_multi( tsa(:,:,:,jp_tem), 'T', 1., tsa(:,:,:,jp_sal), 'T', 1. )109 CALL lbc_lnk_multi( 'tranxt', tsa(:,:,:,jp_tem), 'T', 1., tsa(:,:,:,jp_sal), 'T', 1. ) 110 110 ! 111 111 IF( ln_bdy ) CALL bdy_tra( kt ) ! BDY open boundaries … … 163 163 ENDIF 164 164 ! 165 CALL lbc_lnk_multi( tsb(:,:,:,jp_tem), 'T', 1., tsb(:,:,:,jp_sal), 'T', 1., &165 CALL lbc_lnk_multi( 'tranxt', tsb(:,:,:,jp_tem), 'T', 1., tsb(:,:,:,jp_sal), 'T', 1., & 166 166 & tsn(:,:,:,jp_tem), 'T', 1., tsn(:,:,:,jp_sal), 'T', 1., & 167 167 & tsa(:,:,:,jp_tem), 'T', 1., tsa(:,:,:,jp_sal), 'T', 1. ) -
NEMO/trunk/src/OCE/TRA/traqsr.F90
r10068 r10425 275 275 END DO 276 276 END DO 277 CALL lbc_lnk( fraqsr_1lev(:,:), 'T', 1._wp )277 CALL lbc_lnk( 'traqsr', fraqsr_1lev(:,:), 'T', 1._wp ) 278 278 ! 279 279 IF( iom_use('qsr3d') ) THEN ! output the shortwave Radiation distribution -
NEMO/trunk/src/OCE/TRA/trazdf.F90
r10364 r10425 92 92 END DO 93 93 !!gm this should be moved in trdtra.F90 and done on all trends 94 CALL lbc_lnk_multi( ztrdt, 'T', 1. , ztrds, 'T', 1. )94 CALL lbc_lnk_multi( 'trazdf', ztrdt, 'T', 1. , ztrds, 'T', 1. ) 95 95 !!gm 96 96 CALL trd_tra( kt, 'TRA', jp_tem, jptra_zdf, ztrdt ) -
NEMO/trunk/src/OCE/TRA/zpshde.F90
r10068 r10425 144 144 END DO 145 145 END DO 146 CALL lbc_lnk_multi( pgtu(:,:,jn), 'U', -1. , pgtv(:,:,jn), 'V', -1. ) ! Lateral boundary cond.147 !148 146 END DO 147 ! 148 CALL lbc_lnk_multi( 'zpshde', pgtu(:,:,:), 'U', -1. , pgtv(:,:,:), 'V', -1. ) ! Lateral boundary cond. 149 149 ! 150 150 IF( PRESENT( prd ) ) THEN !== horizontal derivative of density anomalies (rd) ==! (optional part) … … 183 183 END DO 184 184 END DO 185 CALL lbc_lnk_multi( pgru , 'U', -1. , pgrv , 'V', -1. ) ! Lateral boundary conditions185 CALL lbc_lnk_multi( 'zpshde', pgru , 'U', -1. , pgrv , 'V', -1. ) ! Lateral boundary conditions 186 186 ! 187 187 END IF … … 305 305 END DO 306 306 END DO 307 CALL lbc_lnk_multi( pgtu(:,:,jn), 'U', -1. , pgtv(:,:,jn), 'V', -1. ) ! Lateral boundary cond.308 !309 307 END DO 308 ! 309 CALL lbc_lnk_multi( 'zpshde', pgtu(:,:,:), 'U', -1. , pgtv(:,:,:), 'V', -1. ) ! Lateral boundary cond. 310 310 311 311 ! horizontal derivative of density anomalies (rd) … … 353 353 END DO 354 354 355 CALL lbc_lnk_multi( pgru , 'U', -1. , pgrv , 'V', -1. ) ! Lateral boundary conditions355 CALL lbc_lnk_multi( 'zpshde', pgru , 'U', -1. , pgrv , 'V', -1. ) ! Lateral boundary conditions 356 356 ! 357 357 END IF … … 406 406 ! 407 407 END DO 408 CALL lbc_lnk_multi( pgtui(:,:,:), 'U', -1. , pgtvi(:,:,:), 'V', -1. ) ! Lateral boundary cond.408 CALL lbc_lnk_multi( 'zpshde', pgtui(:,:,:), 'U', -1. , pgtvi(:,:,:), 'V', -1. ) ! Lateral boundary cond. 409 409 410 410 IF( PRESENT( prd ) ) THEN !== horizontal derivative of density anomalies (rd) ==! (optional part) … … 449 449 END DO 450 450 END DO 451 CALL lbc_lnk_multi( pgrui, 'U', -1. , pgrvi, 'V', -1. ) ! Lateral boundary conditions451 CALL lbc_lnk_multi( 'zpshde', pgrui, 'U', -1. , pgrvi, 'V', -1. ) ! Lateral boundary conditions 452 452 ! 453 453 END IF
Note: See TracChangeset
for help on using the changeset viewer.