- Timestamp:
- 2020-09-14T17:40:34+02:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11351_fldread_with_XIOS
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11351_fldread_with_XIOS
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev @HEADext/AGRIF5 ^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL 8 9 # SETTE 10 ^/utils/CI/sette@13382 sette
-
- Property svn:externals
-
NEMO/branches/2019/dev_r11351_fldread_with_XIOS/src/OCE/ZDF/zdfmxl.F90
r10425 r13463 12 12 !!---------------------------------------------------------------------- 13 13 USE oce ! ocean dynamics and tracers variables 14 USE isf_oce ! ice shelf 14 15 USE dom_oce ! ocean space and time domain variables 15 16 USE trc_oce , ONLY: l_offline ! ocean space and time domain variables … … 35 36 REAL(wp), PUBLIC :: avt_c = 5.e-4_wp ! Kz criterion for the turbocline depth 36 37 38 !! * Substitutions 39 # include "do_loop_substitute.h90" 40 # include "domzgr_substitute.h90" 37 41 !!---------------------------------------------------------------------- 38 42 !! NEMO/OCE 4.0 , NEMO Consortium (2018) … … 57 61 58 62 59 SUBROUTINE zdf_mxl( kt )63 SUBROUTINE zdf_mxl( kt, Kmm ) 60 64 !!---------------------------------------------------------------------- 61 65 !! *** ROUTINE zdfmxl *** … … 75 79 !!---------------------------------------------------------------------- 76 80 INTEGER, INTENT(in) :: kt ! ocean time-step index 81 INTEGER, INTENT(in) :: Kmm ! ocean time level index 77 82 ! 78 83 INTEGER :: ji, jj, jk ! dummy loop indices … … 93 98 nmln(:,:) = nlb10 ! Initialization to the number of w ocean point 94 99 hmlp(:,:) = 0._wp ! here hmlp used as a dummy variable, integrating vertically N^2 95 zN2_c = grav * rho_c * r1_rau0 ! convert density criteria into N^2 criteria 96 DO jk = nlb10, jpkm1 97 DO jj = 1, jpj ! Mixed layer level: w-level 98 DO ji = 1, jpi 99 ikt = mbkt(ji,jj) 100 hmlp(ji,jj) = hmlp(ji,jj) + MAX( rn2b(ji,jj,jk) , 0._wp ) * e3w_n(ji,jj,jk) 101 IF( hmlp(ji,jj) < zN2_c ) nmln(ji,jj) = MIN( jk , ikt ) + 1 ! Mixed layer level 102 END DO 103 END DO 104 END DO 100 zN2_c = grav * rho_c * r1_rho0 ! convert density criteria into N^2 criteria 101 DO_3D( 1, 1, 1, 1, nlb10, jpkm1 ) 102 ikt = mbkt(ji,jj) 103 hmlp(ji,jj) = & 104 & hmlp(ji,jj) + MAX( rn2b(ji,jj,jk) , 0._wp ) * e3w(ji,jj,jk,Kmm) 105 IF( hmlp(ji,jj) < zN2_c ) nmln(ji,jj) = MIN( jk , ikt ) + 1 ! Mixed layer level 106 END_3D 105 107 ! 106 108 ! w-level of the turbocline and mixing layer (iom_use) 107 109 imld(:,:) = mbkt(:,:) + 1 ! Initialization to the number of w ocean point 108 DO jk = jpkm1, nlb10, -1 ! from the bottom to nlb10 109 DO jj = 1, jpj 110 DO ji = 1, jpi 111 IF( avt (ji,jj,jk) < avt_c * wmask(ji,jj,jk) ) imld(ji,jj) = jk ! Turbocline 112 END DO 113 END DO 114 END DO 110 DO_3DS( 1, 1, 1, 1, jpkm1, nlb10, -1 ) 111 IF( avt (ji,jj,jk) < avt_c * wmask(ji,jj,jk) ) imld(ji,jj) = jk ! Turbocline 112 END_3D 115 113 ! depth of the mixing and mixed layers 116 DO jj = 1, jpj 117 DO ji = 1, jpi 118 iiki = imld(ji,jj) 119 iikn = nmln(ji,jj) 120 hmld (ji,jj) = gdepw_n(ji,jj,iiki ) * ssmask(ji,jj) ! Turbocline depth 121 hmlp (ji,jj) = gdepw_n(ji,jj,iikn ) * ssmask(ji,jj) ! Mixed layer depth 122 hmlpt(ji,jj) = gdept_n(ji,jj,iikn-1) * ssmask(ji,jj) ! depth of the last T-point inside the mixed layer 123 END DO 124 END DO 114 DO_2D( 1, 1, 1, 1 ) 115 iiki = imld(ji,jj) 116 iikn = nmln(ji,jj) 117 hmld (ji,jj) = gdepw(ji,jj,iiki ,Kmm) * ssmask(ji,jj) ! Turbocline depth 118 hmlp (ji,jj) = gdepw(ji,jj,iikn ,Kmm) * ssmask(ji,jj) ! Mixed layer depth 119 hmlpt(ji,jj) = gdept(ji,jj,iikn-1,Kmm) * ssmask(ji,jj) ! depth of the last T-point inside the mixed layer 120 END_2D 125 121 ! 126 122 IF( .NOT.l_offline ) THEN … … 137 133 ENDIF 138 134 ! 139 IF( ln_ctl) CALL prt_ctl( tab2d_1=REAL(nmln,wp), clinfo1=' nmln : ', tab2d_2=hmlp, clinfo2=' hmlp : ' )135 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=REAL(nmln,wp), clinfo1=' nmln : ', tab2d_2=hmlp, clinfo2=' hmlp : ' ) 140 136 ! 141 137 END SUBROUTINE zdf_mxl
Note: See TracChangeset
for help on using the changeset viewer.