Changeset 13286 for NEMO/trunk/src/OCE/USR
- Timestamp:
- 2020-07-09T17:48:29+02:00 (4 years ago)
- Location:
- NEMO/trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk
- Property svn:externals
-
old new 2 2 ^/utils/build/makenemo@HEAD makenemo 3 3 ^/utils/build/mk@HEAD mk 4 ^/utils/tools /@HEADtools4 ^/utils/tools@HEAD tools 5 5 ^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM … … 8 8 9 9 # SETTE 10 ^/utils/CI/ sette@12931sette10 ^/utils/CI/r12931_sette_ticket2366@HEAD sette
-
- Property svn:externals
-
NEMO/trunk/src/OCE/USR/usrdef_fmask.F90
r12377 r13286 68 68 ! 69 69 IF(lwp) WRITE(numout,*) ' Gibraltar ' 70 ij0 = 101 ; ij1 = 101 ! Gibraltar strait : partial slip (pfmsk=0.5) 71 ii0 = 139 ; ii1 = 140 ; pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 0.5_wp 72 ij0 = 102 ; ij1 = 102 73 ii0 = 139 ; ii1 = 140 ; pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 0.5_wp 70 ij0 = 101 + nn_hls ; ij1 = 101 + nn_hls ! Gibraltar strait : partial slip (pfmsk=0.5) 71 ii0 = 139 + nn_hls - 1 ; ii1 = 140 + nn_hls - 1 72 pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 0.5_wp 73 ij0 = 102 + nn_hls ; ij1 = 102 + nn_hls 74 ii0 = 139 + nn_hls - 1 ; ii1 = 140 + nn_hls - 1 75 pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 0.5_wp 74 76 ! 75 77 IF(lwp) WRITE(numout,*) ' Bab el Mandeb ' 76 ij0 = 87 ; ij1 = 88 ! Bab el Mandeb : partial slip (pfmsk=1) 77 ii0 = 160 ; ii1 = 160 ; pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 1._wp 78 ij0 = 88 ; ij1 = 88 79 ii0 = 159 ; ii1 = 159 ; pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 1._wp 78 ij0 = 87 + nn_hls ; ij1 = 88 + nn_hls ! Bab el Mandeb : partial slip (pfmsk=1) 79 ii0 = 160 + nn_hls - 1 ; ii1 = 160 + nn_hls - 1 80 pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 1._wp 81 ij0 = 88 + nn_hls ; ij1 = 88 + nn_hls 82 ii0 = 159 + nn_hls - 1 ; ii1 = 159 + nn_hls - 1 83 pfmsk( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 1._wp 80 84 ! 81 85 ! We keep this as an example but it is instable in this case … … 94 98 !!gm ! Currently these hard-wired indices relate to configuration with extend grid (jpjglo=332) 95 99 ! 96 isrow = 332 - jpjglo100 isrow = 332 - (Nj0glo + 1) ! was 332 - jpjglo -> jpjglo_old_version = Nj0glo + 1 97 101 ! 98 102 IF(lwp) WRITE(numout,*) 99 103 IF(lwp) WRITE(numout,*) ' orca_r1: increase friction near the following straits : ' 100 104 IF(lwp) WRITE(numout,*) ' Gibraltar ' 101 ii0 = 282 ; ii1 = 283 ! Gibraltar Strait 102 ij0 = 241 - isrow ; ij1 = 241 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 105 ii0 = 282 + nn_hls - 1 ; ii1 = 283 + nn_hls - 1 ! Gibraltar Strait 106 ij0 = 241 + nn_hls - isrow ; ij1 = 241 + nn_hls - isrow 107 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 103 108 ! 104 109 IF(lwp) WRITE(numout,*) ' Bhosporus ' 105 ii0 = 314 ; ii1 = 315 ! Bhosporus Strait 106 ij0 = 248 - isrow ; ij1 = 248 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 110 ii0 = 314 + nn_hls - 1 ; ii1 = 315 + nn_hls - 1 ! Bhosporus Strait 111 ij0 = 248 + nn_hls - isrow ; ij1 = 248 + nn_hls - isrow 112 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 107 113 ! 108 114 IF(lwp) WRITE(numout,*) ' Makassar (Top) ' 109 ii0 = 48 ; ii1 = 48 ! Makassar Strait (Top) 110 ij0 = 189 - isrow ; ij1 = 190 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 115 ii0 = 48 + nn_hls - 1 ; ii1 = 48 + nn_hls - 1 ! Makassar Strait (Top) 116 ij0 = 189 + nn_hls - isrow ; ij1 = 190 + nn_hls - isrow 117 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 111 118 ! 112 119 IF(lwp) WRITE(numout,*) ' Lombok ' 113 ii0 = 44 ; ii1 = 44 ! Lombok Strait 114 ij0 = 164 - isrow ; ij1 = 165 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 120 ii0 = 44 + nn_hls - 1 ; ii1 = 44 + nn_hls - 1 ! Lombok Strait 121 ij0 = 164 + nn_hls - isrow ; ij1 = 165 + nn_hls - isrow 122 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 115 123 ! 116 124 IF(lwp) WRITE(numout,*) ' Ombai ' 117 ii0 = 53 ; ii1 = 53 ! Ombai Strait 118 ij0 = 164 - isrow ; ij1 = 165 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 125 ii0 = 53 + nn_hls - 1 ; ii1 = 53 + nn_hls - 1 ! Ombai Strait 126 ij0 = 164 + nn_hls - isrow ; ij1 = 165 + nn_hls - isrow 127 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 119 128 ! 120 129 IF(lwp) WRITE(numout,*) ' Timor Passage ' 121 ii0 = 56 ; ii1 = 56 ! Timor Passage 122 ij0 = 164 - isrow ; ij1 = 165 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 130 ii0 = 56 + nn_hls - 1 ; ii1 = 56 + nn_hls - 1 ! Timor Passage 131 ij0 = 164 + nn_hls - isrow ; ij1 = 165 + nn_hls - isrow 132 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 2._wp 123 133 ! 124 134 IF(lwp) WRITE(numout,*) ' West Halmahera ' 125 ii0 = 58 ; ii1 = 58 ! West Halmahera Strait 126 ij0 = 181 - isrow ; ij1 = 182 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 135 ii0 = 58 + nn_hls - 1 ; ii1 = 58 + nn_hls - 1 ! West Halmahera Strait 136 ij0 = 181 + nn_hls - isrow ; ij1 = 182 + nn_hls - isrow 137 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 127 138 ! 128 139 IF(lwp) WRITE(numout,*) ' East Halmahera ' 129 ii0 = 55 ; ii1 = 55 ! East Halmahera Strait 130 ij0 = 181 - isrow ; ij1 = 182 - isrow ; pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 140 ii0 = 55 + nn_hls - 1 ; ii1 = 55 + nn_hls - 1 ! East Halmahera Strait 141 ij0 = 181 + nn_hls - isrow ; ij1 = 182 + nn_hls - isrow 142 pfmsk( mi0(ii0):mi1(ii1),mj0(ij0):mj1(ij1),1:jpk ) = 3._wp 131 143 ! 132 144 CASE DEFAULT -
NEMO/trunk/src/OCE/USR/usrdef_hgr.F90
r13216 r13286 13 13 !! usr_def_hgr : initialize the horizontal mesh 14 14 !!---------------------------------------------------------------------- 15 USE dom_oce , ONLY: nimpp, njmpp! ocean space and time domain15 USE dom_oce ! ocean space and time domain 16 16 USE par_oce ! ocean space and time domain 17 17 USE phycst ! physical constants … … 90 90 zcos_alpha = SQRT( 2._wp ) * 0.5_wp 91 91 ze1deg = ze1 / (ra * rad) 92 zlam0 = zlam1 + zcos_alpha * ze1deg * REAL( jpjglo-2, wp )93 zphi0 = zphi1 + zsin_alpha * ze1deg * REAL( jpjglo-2, wp )92 zlam0 = zlam1 + zcos_alpha * ze1deg * REAL( Ni0glo - 2, wp ) 93 zphi0 = zphi1 + zsin_alpha * ze1deg * REAL( Nj0glo - 2, wp ) 94 94 95 95 #if defined key_agrif … … 97 97 ! Laurent: Should be modify in case of an east-west cyclic parent grid 98 98 IF (.NOT.Agrif_root()) THEN 99 zlam0 = zlam1 + Agrif_irhox() * REAL(Agrif_Parent( jpjglo)-2, wp) * ze1deg * zcos_alpha &99 zlam0 = zlam1 + Agrif_irhox() * REAL(Agrif_Parent(Ni0glo) -2, wp) * ze1deg * zcos_alpha & 100 100 & + ( Agrif_Ix()*Agrif_irhox()-(0.5_wp+nbghostcells)) * ze1deg * zcos_alpha & 101 101 & + ( Agrif_Iy()*Agrif_irhoy()-(0.5_wp+nbghostcells)) * ze1deg * zsin_alpha 102 zphi0 = zphi1 + Agrif_irhoy() * REAL(Agrif_Parent( jpjglo)-2, wp) * ze1deg * zsin_alpha &102 zphi0 = zphi1 + Agrif_irhoy() * REAL(Agrif_Parent(Nj0glo) -2, wp) * ze1deg * zsin_alpha & 103 103 & - ( Agrif_Ix()*Agrif_irhox()-nbghostcells ) * ze1deg * zsin_alpha & 104 104 & + ( Agrif_Iy()*Agrif_irhoy()-nbghostcells ) * ze1deg * zcos_alpha … … 110 110 CALL ctl_warn( ' GYRE used as Benchmark: e1=e2=106km, no need to adjust rn_Dt, ahm,aht ' ) 111 111 ENDIF 112 IF( nprint==1 .AND.lwp ) THEN112 IF( lwp ) THEN 113 113 WRITE(numout,*) 'ze1', ze1, 'cosalpha', zcos_alpha, 'sinalpha', zsin_alpha 114 114 WRITE(numout,*) 'ze1deg', ze1deg, 'zlam0', zlam0, 'zphi0', zphi0 … … 116 116 ! 117 117 DO_2D_11_11 118 zim1 = REAL( ji + nimpp - 1 ) - 1. ; zim05 = REAL( ji + nimpp - 1 ) - 1.5119 zjm1 = REAL( jj + njmpp - 1 ) - 1. ; zjm05 = REAL( jj + njmpp - 1 ) - 1.5118 zim1 = REAL( mig0_oldcmp(ji), wp ) - 1. ; zim05 = REAL( mig0_oldcmp(ji), wp ) - 1.5 119 zjm1 = REAL( mjg0_oldcmp(jj), wp ) - 1. ; zjm05 = REAL( mjg0_oldcmp(jj), wp ) - 1.5 120 120 ! 121 121 !glamt(i,j) longitude at T-point -
NEMO/trunk/src/OCE/USR/usrdef_nam.F90
r13216 r13286 14 14 !! usr_def_hgr : initialize the horizontal mesh 15 15 !!---------------------------------------------------------------------- 16 USE dom_oce , ONLY: nimpp, njmpp ! ocean space and time domain16 USE dom_oce 17 17 USE par_oce ! ocean space and time domain 18 18 USE phycst ! physical constants … … 70 70 kk_cfg = nn_GYRE 71 71 ! 72 kpi = 30 * nn_GYRE + 2 ! Global Domain size72 kpi = 30 * nn_GYRE + 2 ! 73 73 kpj = 20 * nn_GYRE + 2 74 74 #if defined key_agrif 75 IF( .NOT. Agrif_Root() ) THEN 76 kpi = nbcellsx + 2 + 2*nbghostcells_x 77 kpj = nbcellsy + 2 + 2*nbghostcells_y_s 75 IF( .NOT.Agrif_Root() ) THEN ! Global Domain size: add 1 land point on each side 76 kpi = nbcellsx + 2 * ( nbghostcells + 1 ) 77 kpj = nbcellsy + 2 * ( nbghostcells + 1 ) 78 !!$ kpi = nbcellsx + nbghostcells_x + nbghostcells_x + 2 79 !!$ kpj = nbcellsy + nbghostcells_y_s + nbghostcells_y_n + 2 78 80 ENDIF 79 81 #endif … … 93 95 IF( Agrif_Root() ) THEN 94 96 #endif 95 WRITE(numout,*) ' jpiglo = 30*nn_GYRE+2 jpiglo = ', kpi96 WRITE(numout,*) ' jpjglo = 20*nn_GYRE+2 jpjglo = ', kpj97 WRITE(numout,*) ' Ni0glo = 30*nn_GYRE Ni0glo = ', kpi 98 WRITE(numout,*) ' Nj0glo = 20*nn_GYRE Nj0glo = ', kpj 97 99 #if defined key_agrif 98 100 ENDIF 99 101 #endif 100 WRITE(numout,*) ' number of model levels 102 WRITE(numout,*) ' number of model levels jpkglo = ', kpk 101 103 WRITE(numout,*) ' ' 102 WRITE(numout,*) ' Lateral b.c. of the global domain set to closed 104 WRITE(numout,*) ' Lateral b.c. of the global domain set to closed jperio = ', kperio 103 105 ENDIF 104 106 ! -
NEMO/trunk/src/OCE/USR/usrdef_zgr.F90
r13226 r13286 198 198 IF(lwp) WRITE(numout,*) ' GYRE case : closed flat box ocean without ocean cavities' 199 199 ! 200 z2d(:,:) = REAL( jpkm1 , wp ) ! flat bottom 201 ! 202 CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1.0_wp ) ! set surrounding land to zero (here jperio=0 ==>> closed) 200 z2d(:,:) = REAL( jpkm1 , wp ) ! flat bottom 203 201 ! 204 202 k_bot(:,:) = NINT( z2d(:,:) ) ! =jpkm1 over the ocean point, =0 elsewhere
Note: See TracChangeset
for help on using the changeset viewer.