- Timestamp:
- 2021-12-03T20:32:50+01:00 (3 years ago)
- Location:
- NEMO/branches/2021/dev_r14318_RK3_stage1
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14318_RK3_stage1
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette@14244 sette 11 ^/utils/CI/sette@HEAD sette 12
-
- Property svn:externals
-
NEMO/branches/2021/dev_r14318_RK3_stage1/src/OCE/BDY/bdydyn2d.F90
r13226 r15574 18 18 USE bdylib ! BDY library routines 19 19 USE phycst ! physical constants 20 USE lib_mpp 20 21 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 21 22 USE wet_dry ! Use wet dry to get reference ssh level 22 23 USE in_out_manager ! 23 USE lib_mpp, ONLY: ctl_stop24 24 25 25 IMPLICIT NONE … … 49 49 REAL(wp), DIMENSION(jpi,jpj), INTENT(in ) :: pssh 50 50 !! 51 INTEGER :: ib_bdy, ir ! BDY set index, rim index 52 LOGICAL :: llrim0 ! indicate if rim 0 is treated 53 LOGICAL, DIMENSION(4) :: llsend2, llrecv2, llsend3, llrecv3 ! indicate how communications are to be carried out 51 INTEGER :: ib_bdy, ir ! BDY set index, rim index 52 INTEGER, DIMENSION(3) :: idir3 53 INTEGER, DIMENSION(6) :: idir6 54 LOGICAL :: llrim0 ! indicate if rim 0 is treated 55 LOGICAL, DIMENSION(8) :: llsend2, llrecv2, llsend3, llrecv3 ! indicate how communications are to be carried out 56 !!---------------------------------------------------------------------- 54 57 55 58 llsend2(:) = .false. ; llrecv2(:) = .false. … … 86 89 SELECT CASE( cn_dyn2d(ib_bdy) ) 87 90 CASE('flather') 88 llsend2(1:2) = llsend2(1:2) .OR. lsend_bdyint(ib_bdy,2,1:2,ir) ! west/east, U points 89 llsend2(1) = llsend2(1) .OR. lsend_bdyext(ib_bdy,2,1,ir) ! neighbour might search point towards its east bdy 90 llrecv2(1:2) = llrecv2(1:2) .OR. lrecv_bdyint(ib_bdy,2,1:2,ir) ! west/east, U points 91 llrecv2(2) = llrecv2(2) .OR. lrecv_bdyext(ib_bdy,2,2,ir) ! might search point towards bdy on the east 92 llsend3(3:4) = llsend3(3:4) .OR. lsend_bdyint(ib_bdy,3,3:4,ir) ! north/south, V points 93 llsend3(3) = llsend3(3) .OR. lsend_bdyext(ib_bdy,3,3,ir) ! neighbour might search point towards its north bdy 94 llrecv3(3:4) = llrecv3(3:4) .OR. lrecv_bdyint(ib_bdy,3,3:4,ir) ! north/south, V points 95 llrecv3(4) = llrecv3(4) .OR. lrecv_bdyext(ib_bdy,3,4,ir) ! might search point towards bdy on the north 91 idir6 = (/ jpwe, jpea, jpsw, jpse, jpnw, jpne /) 92 llsend2(idir6) = llsend2(idir6) .OR. lsend_bdyint(ib_bdy,2,idir6,ir) ! west/east, U points 93 idir3 = (/ jpwe, jpsw, jpnw /) 94 llsend2(idir3) = llsend2(idir3) .OR. lsend_bdyext(ib_bdy,2,idir3,ir) ! nei might search point towards its east bdy 95 llrecv2(idir6) = llrecv2(idir6) .OR. lrecv_bdyint(ib_bdy,2,idir6,ir) ! west/east, U points 96 idir3 = (/ jpea, jpse, jpne /) 97 llrecv2(idir3) = llrecv2(idir3) .OR. lrecv_bdyext(ib_bdy,2,idir3,ir) ! might search point towards bdy on the east 98 idir6 = (/ jpso, jpno, jpsw, jpse, jpnw, jpne /) 99 llsend3(idir6) = llsend3(idir6) .OR. lsend_bdyint(ib_bdy,3,idir6,ir) ! north/south, V points 100 idir3 = (/ jpso, jpsw, jpse /) 101 llsend3(idir3) = llsend3(idir3) .OR. lsend_bdyext(ib_bdy,3,idir3,ir) ! nei might search point towards its north bdy 102 llrecv3(idir6) = llrecv3(idir6) .OR. lrecv_bdyint(ib_bdy,3,idir6,ir) ! north/south, V points 103 idir3 = (/ jpno, jpnw, jpne /) 104 llrecv3(idir3) = llrecv3(idir3) .OR. lrecv_bdyext(ib_bdy,3,idir3,ir) ! might search point towards bdy on the north 96 105 CASE('orlanski', 'orlanski_npo') 97 llsend2(:) = llsend2(:) .OR. lsend_bdy (ib_bdy,2,:,ir) ! possibly every direction, U points98 llrecv2(:) = llrecv2(:) .OR. lrecv_bdy (ib_bdy,2,:,ir) ! possibly every direction, U points99 llsend3(:) = llsend3(:) .OR. lsend_bdy (ib_bdy,3,:,ir) ! possibly every direction, V points100 llrecv3(:) = llrecv3(:) .OR. lrecv_bdy (ib_bdy,3,:,ir) ! possibly every direction, V points106 llsend2(:) = llsend2(:) .OR. lsend_bdyolr(ib_bdy,2,:,ir) ! possibly every direction, U points 107 llrecv2(:) = llrecv2(:) .OR. lrecv_bdyolr(ib_bdy,2,:,ir) ! possibly every direction, U points 108 llsend3(:) = llsend3(:) .OR. lsend_bdyolr(ib_bdy,3,:,ir) ! possibly every direction, V points 109 llrecv3(:) = llrecv3(:) .OR. lrecv_bdyolr(ib_bdy,3,:,ir) ! possibly every direction, V points 101 110 END SELECT 102 111 END DO … … 309 318 INTEGER :: ibeg, iend ! length of rim to be treated (rim 0 or rim 1) 310 319 LOGICAL :: llrim0 ! indicate if rim 0 is treated 311 LOGICAL, DIMENSION( 4) :: llsend1, llrecv1 ! indicate how communications are to be carried out320 LOGICAL, DIMENSION(8) :: llsend1, llrecv1 ! indicate how communications are to be carried out 312 321 !!---------------------------------------------------------------------- 313 322 llsend1(:) = .false. ; llrecv1(:) = .false.
Note: See TracChangeset
for help on using the changeset viewer.