Changeset 15354 for NEMO/trunk/src/OCE/BDY/bdydyn3d.F90
- Timestamp:
- 2021-10-12T15:44:46+02:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/BDY/bdydyn3d.F90
r14834 r15354 18 18 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 19 19 USE in_out_manager ! 20 USE lib_mpp , ONLY: ctl_stop20 USE lib_mpp 21 21 Use phycst 22 22 … … 45 45 REAL(wp), DIMENSION(jpi,jpj,jpk,jpt), INTENT( inout ) :: puu, pvv ! Ocean velocities (to be updated at open boundaries) 46 46 ! 47 INTEGER :: ib_bdy, ir ! BDY set index, rim index 48 LOGICAL :: llrim0 ! indicate if rim 0 is treated 49 LOGICAL, DIMENSION(4) :: llsend2, llrecv2, llsend3, llrecv3 ! indicate how communications are to be carried out 50 51 !!---------------------------------------------------------------------- 47 INTEGER :: ib_bdy, ir ! BDY set index, rim index 48 INTEGER, DIMENSION(6) :: idir6 49 LOGICAL :: llrim0 ! indicate if rim 0 is treated 50 LOGICAL, DIMENSION(8) :: llsend2, llrecv2, llsend3, llrecv3 ! indicate how communications are to be carried out 51 !!---------------------------------------------------------------------- 52 52 53 llsend2(:) = .false. ; llrecv2(:) = .false. 53 54 llsend3(:) = .false. ; llrecv3(:) = .false. … … 82 83 SELECT CASE( cn_dyn3d(ib_bdy) ) 83 84 CASE('orlanski', 'orlanski_npo') 84 llsend2(:) = llsend2(:) .OR. lsend_bdy (ib_bdy,2,:,ir) ! possibly every direction, U points85 llrecv2(:) = llrecv2(:) .OR. lrecv_bdy (ib_bdy,2,:,ir) ! possibly every direction, U points86 llsend3(:) = llsend3(:) .OR. lsend_bdy (ib_bdy,3,:,ir) ! possibly every direction, V points87 llrecv3(:) = llrecv3(:) .OR. lrecv_bdy (ib_bdy,3,:,ir) ! possibly every direction, V points85 llsend2(:) = llsend2(:) .OR. lsend_bdyolr(ib_bdy,2,:,ir) ! possibly every direction, U points 86 llrecv2(:) = llrecv2(:) .OR. lrecv_bdyolr(ib_bdy,2,:,ir) ! possibly every direction, U points 87 llsend3(:) = llsend3(:) .OR. lsend_bdyolr(ib_bdy,3,:,ir) ! possibly every direction, V points 88 llrecv3(:) = llrecv3(:) .OR. lrecv_bdyolr(ib_bdy,3,:,ir) ! possibly every direction, V points 88 89 CASE('zerograd') 89 llsend2(3:4) = llsend2(3:4) .OR. lsend_bdyint(ib_bdy,2,3:4,ir) ! north/south, U points 90 llrecv2(3:4) = llrecv2(3:4) .OR. lrecv_bdyint(ib_bdy,2,3:4,ir) ! north/south, U points 91 llsend3(1:2) = llsend3(1:2) .OR. lsend_bdyint(ib_bdy,3,1:2,ir) ! west/east, V points 92 llrecv3(1:2) = llrecv3(1:2) .OR. lrecv_bdyint(ib_bdy,3,1:2,ir) ! west/east, V points 90 idir6 = (/ jpso, jpno, jpsw, jpse, jpnw, jpne /) 91 llsend2(idir6) = llsend2(idir6) .OR. lsend_bdyint(ib_bdy,2,idir6,ir) ! north/south, U points 92 llrecv2(idir6) = llrecv2(idir6) .OR. lrecv_bdyint(ib_bdy,2,idir6,ir) ! north/south, U points 93 idir6 = (/ jpwe, jpea, jpsw, jpse, jpnw, jpne /) 94 llsend3(idir6) = llsend3(idir6) .OR. lsend_bdyint(ib_bdy,3,idir6,ir) ! west/east, V points 95 llrecv3(idir6) = llrecv3(idir6) .OR. lrecv_bdyint(ib_bdy,3,idir6,ir) ! west/east, V points 93 96 CASE('neumann') 94 97 llsend2(:) = llsend2(:) .OR. lsend_bdyint(ib_bdy,2,:,ir) ! possibly every direction, U points
Note: See TracChangeset
for help on using the changeset viewer.