Changeset 2132
- Timestamp:
- 2010-09-29T17:31:36+02:00 (14 years ago)
- Location:
- branches/devmercator2010_1
- Files:
-
- 10 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/devmercator2010_1/CONFIG/ORCA2_LIM/EXP00/namelist
r2130 r2132 607 607 nn_ave = 1 ! constant (=0) or profile (=1) background on avt 608 608 / 609 ----------------------------------------------------------------------- 610 &namzdf_gls ! GLS vertical diffusion ("key_zdfgls") 611 !----------------------------------------------------------------------- 612 rn_emin = 1.e-6 ! minimum value of e [m2/s2] 613 rn_epsmin = 1.e-12 ! minimum value of eps [m2/s3] 614 ln_length_lim = .true. ! limit on the dissipation rate under stable stratification (Galperin et al., 1988) 615 clim_galp = 0.53 ! galperin limit 616 ln_crban = .TRUE. ! Use Craig & Banner (1994) surface wave mixing parametrisation 617 ln_sigpsi = .TRUE. ! Activate or not Burchard 2001 mods on psi schmidt number in the wb case 618 rn_crban = 100. ! Craig and Banner 1994 constant for wb tke flux 619 rn_charn = 70000. ! Charnock constant for wb induced roughness length 620 nn_tkebc_surf = 1 ! surface tke condition (0/1/2=Dir/Neum/Dir Mellor-Blumberg) 621 nn_tkebc_bot = 1 ! bottom tke condition (0/1=Dir/Neum) 622 nn_psibc_surf = 1 ! surface psi condition (0/1/2=Dir/Neum/Dir Mellor-Blumberg) 623 nn_psibc_bot = 1 ! bottom psi condition (0/1=Dir/Neum) 624 nn_stab_func = 2 ! stability function (0=Galp, 1= KC94, 2=CanutoA, 3=CanutoB) 625 nn_clos = 1 ! predefined closure type (0=MY82, 1=k-eps, 2=k-w, 3=Gen) 626 / 609 627 !----------------------------------------------------------------------- 610 628 &namzdf_ddm ! double diffusive mixing parameterization ("key_zdfddm") -
branches/devmercator2010_1/DOC/TexFiles/Biblio/Biblio.bib
r1225 r2132 85 85 86 86 @STRING{Tellus = {Tellus}} 87 88 @STRING{RGSP = {Rev. Geophys. Space Phys.} 87 89 88 90 @ARTICLE{Adcroft_Campin_OM04, … … 523 525 } 524 526 527 @ARTICLE{Canuto_2001, 528 author = {V. M. Canuto and A. Howard and Y. Cheng and M. S. Dubovikov}, 529 title = {Ocean turbulence. PartI: One-point closure model-momentum and heat vertical diffusivities}, 530 journal = JPO, 531 year = {2001}, 532 volume = {24, 12}, 533 pages = {2546-2559}, 534 owner = {gr}, 535 timestamp = {2010.09.09} 536 } 537 525 538 @ARTICLE{Cox1987, 526 539 author = {M. Cox}, … … 532 545 owner = {gm}, 533 546 timestamp = {2007.08.03} 547 } 548 549 @ARTICLE{Craig_Banner_1994, 550 author = {P. D. Banner and M. L. Banner}, 551 title = {Modeling wave-enhanced turbulence in the ocean surface layer}, 552 journal = JPO, 553 year = {1994}, 554 volume = {24, 12}, 555 pages = {2546-2559}, 556 owner = {g5}, 557 timestamp = {2010.09.09} 534 558 } 535 559 … … 705 729 owner = {gm}, 706 730 timestamp = {2007.08.04} 731 } 732 733 @ARTICLE{Galperin_1988, 734 author = {B. Galperin and L. H. Kantha and S. Hassid and A. Rosati}, 735 title = {A quasi-equilibrium turbulent energy model for geophysical flows}, 736 journal = JAS, 737 year = {1988}, 738 volume = {45}, 739 pages = {55-62}, 740 owner = {gr}, 741 timestamp = {2010.09.09} 707 742 } 708 743 … … 1083 1118 owner = {gm}, 1084 1119 timestamp = {2008.08.31} 1120 } 1121 1122 @ARTICLE{Kantha_Clayson_1994, 1123 author = {L. H. Kantha and C. A. Clayson}, 1124 title = {An improved mixed layer model for geophysical applications}, 1125 journal = JGR, 1126 year = {1994}, 1127 volume = {99}, 1128 pages = {25235-25266}, 1129 owner = {gr}, 1130 timestamp = {2010.09.09} 1085 1131 } 1086 1132 … … 1584 1630 } 1585 1631 1632 @ARTICLE{Mellor_Yamada_1982, 1633 author = {G. L. Mellor and T. Yamada}, 1634 title = {Development of a turbulence closure model for geophysical fluid problems}, 1635 journal = RGSP, 1636 year = {1982}, 1637 volume = {20}, 1638 pages = {851-875}, 1639 owner = {gr}, 1640 timestamp = {2010.09.09} 1641 } 1642 1586 1643 @ARTICLE{Merryfield1999, 1587 1644 author = {W. J. Merryfield and G. Holloway and A. E. Gargett}, … … 1791 1848 owner = {gm}, 1792 1849 timestamp = {2007.08.04} 1850 } 1851 1852 @ARTICLE{Rodi_1987, 1853 author = {W. Rodi}, 1854 title = {Examples of calculation methods for flow and mixing in stratified fluids}, 1855 journal = JGR, 1856 year = {1987}, 1857 volume = {92, C5}, 1858 pages = {5305-5328}, 1859 owner = {gr}, 1860 timestamp = {2010.09.09} 1793 1861 } 1794 1862 … … 2214 2282 } 2215 2283 2284 @ARTICLE{Umlauf_Burchard_2003, 2285 author = {L. Umlauf and H. Burchard}, 2286 title = {A generic length-scale equation for geophysical turbulence models}, 2287 journal = {Journal of Marine Systems}, 2288 year = {2003}, 2289 volume = {61}, 2290 pages = {235-265}, 2291 number = {2}, 2292 owner = {gr}, 2293 timestamp = {2010.09.09} 2294 } 2295 2216 2296 @BOOK{UNESCO1983, 2217 2297 title = {Algorithms for computation of fundamental property of sea water}, … … 2308 2388 owner = {gm}, 2309 2389 timestamp = {2007.08.04} 2390 } 2391 2392 @ARTICLE{Wilcox_1988, 2393 author = {D. C. Wilcox}, 2394 title = {Reassessment of the scale-determining equation for advanced turbulence models}, 2395 journal = {AIAA journal}, 2396 year = {1988}, 2397 volume = {26, 11}, 2398 pages = {1299-1310}, 2399 owner = {gr}, 2400 timestamp = {2010.09.09} 2310 2401 } 2311 2402 -
branches/devmercator2010_1/DOC/TexFiles/Chapters/Chap_ZDF.tex
r1225 r2132 233 233 234 234 % ------------------------------------------------------------------------------------------------------------- 235 % GLS Generic Length Scale Scheme 236 % ------------------------------------------------------------------------------------------------------------- 237 \subsection{GLS Generic Length Scale (\key{zdfgls})} 238 \label{ZDF_gls} 239 240 %--------------------------------------------namgls--------------------------------------------------------- 241 \namdisplay{namgls} 242 %-------------------------------------------------------------------------------------------------------------- 243 244 The model allows to resolve two prognostic equations for turbulent 245 kinetic energy $\bar {e}$ and a generic length scale \citep{Umlauf_Burchard_2003}. Thanks to the latter, commonly 246 used closures can be retrieved: $k-kl$ \citep{Mellor_Yamada_1982}, $k-{\epsilon }$ \citep{Rodi_1987} and $k-{\omega }$ 247 \citep{Wilcox_1988}. These equations could be written in a generic form with the incorporation 248 of a new variable : ${\psi} = (C^{0}_{\mu})^{p} \ {\bar{e}}^{m} \ l^{n}$. 249 250 \begin{equation} \label{Eq_zdfgls_e} 251 \frac{\partial \bar{e}}{\partial t} = 252 \frac{A^{vm}}{{\sigma_e} {e_3} }\;\left[ {\left( {\frac{\partial u}{\partial k}} \right)^2 253 +\left( {\frac{\partial v}{\partial k}} \right)^2} \right] 254 -A^{vT}\,N^2 255 +\frac{1}{e_3} \;\frac{\partial }{\partial k}\left[ {\frac{A^{vm}}{e_3 } 256 \;\frac{\partial \bar{e}}{\partial k}} \right] 257 - \epsilon \; 258 \end{equation} 259 260 \begin{equation} \label{Eq_zdfgls_psi} 261 \frac{\partial \psi}{\partial t} = \frac{\psi}{\bar{e}} 262 (\frac{{C_1}A^{vm}}{{\sigma_{\psi}} {e_3} }\;\left[ {\left( {\frac{\partial u}{\partial k}} \right)^2 263 +\left( {\frac{\partial v}{\partial k}} \right)^2} \right] 264 -{C_3}A^{vT}\,N^2- C_2{\epsilon}Fw) 265 +\frac{1}{e_3} \;\frac{\partial }{\partial k}\left[ {\frac{A^{vm}}{e_3 } 266 \;\frac{\partial \psi}{\partial k}} \right]\; 267 \end{equation} 268 269 \begin{equation} \label{Eq_zdfgls_kz} 270 \begin{split} 271 A^{vm} &= C_{\mu} \ \sqrt {\bar{e}} \ l \\ 272 A^{vT} &= C_{\mu'}\ \sqrt {\bar{e}} \ l 273 \end{split} 274 \end{equation} 275 276 \begin{equation} \label{Eq_zdfgls_eps} 277 {\epsilon} = (C^{0}_{\mu}) \frac{\bar {e}^{3/2}}{l} \; 278 \end{equation} 279 where $N$ is the local Brunt-Vais\"{a}l\"{a} frequency (see \S\ref{TRA_bn2}) and $\epsilon$ the dissipation rate. 280 In function of the parameters k, m and n, common turbulent closure could be retrieved. 281 The constants C1, C2, C3, ${\sigma_e}$, ${\sigma_{\psi}}$ and the wall function (Fw) depends of the choice of the turbulence model. 282 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 283 \begin{figure}[!h] 284 \centering 285 \includegraphics[scale=0.7]{./TexFiles/Figures/tabgls.png} 286 \caption {Values of the parameters in function of the model of turbulence.} 287 \label{tabgls} 288 \end{figure} 289 %>>>>>>>>>>>>>>>>>>>>>>>>>>>> 290 291 About the Mellor-Yamada model, the negativity of n allows to use a wall function to force 292 the convergence of the mixing length towards Kzb (K: Kappa and zb: rugosity length) value 293 near physical boundaries (logarithmic boundary layer law). $C_{\mu}$ and $C_{\mu'}$ are calculated from stability functions 294 of \citet{Galperin_1988}, \citet{Kantha_Clayson_1994} or \citet{Canuto_2001}. 295 $C^{0}_{\mu}$ depends of the choice of the stability function. 296 297 The boundary condition at the surface and the bottom could be calculated thanks to Diriclet or Neumann condition. 298 The wave effect on the mixing could be also being considered \citep{Craig_Banner_1994}. 299 300 ------------------------------------------------------------------------------------------------------------- 235 301 % K Profile Parametrisation (KPP) 236 302 % ------------------------------------------------------------------------------------------------------------- -
branches/devmercator2010_1/NEMO/OPA_SRC/DYN/dynzdf.F90
r1533 r2132 107 107 USE zdftke_old 108 108 USE zdftke 109 USE zdfgls 109 110 USE zdfkpp 110 111 !!---------------------------------------------------------------------- … … 116 117 117 118 ! Force implicit schemes 118 IF( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdf kpp ) nzdf = 1 ! TKEor KPP physics119 IF( ln_dynldf_iso ) nzdf = 1 ! iso-neutral lateral physics120 IF( ln_dynldf_hor .AND. ln_sco ) nzdf = 1 ! horizontal lateral physics in s-coordinate119 IF( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdfgls .OR. lk_zdfkpp ) nzdf = 1 ! TKE, GLS or KPP physics 120 IF( ln_dynldf_iso ) nzdf = 1 ! iso-neutral lateral physics 121 IF( ln_dynldf_hor .AND. ln_sco ) nzdf = 1 ! horizontal lateral physics in s-coordinate 121 122 122 123 IF( lk_esopa ) nzdf = -1 ! Esopa key: All schemes used -
branches/devmercator2010_1/NEMO/OPA_SRC/DYN/dynzdf_imp.F90
r1662 r2132 24 24 USE phycst ! physical constants 25 25 USE in_out_manager ! I/O manager 26 #if defined key_zdfgls 27 USE zdfbfr, ONLY : bfrua, bfrva, wbotu, wbotv ! bottom stresses 28 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 29 #endif 26 30 27 31 IMPLICIT NONE … … 75 79 REAL(wp) :: zzwi ! temporary scalars 76 80 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zwi ! temporary workspace arrays 81 #if defined key_zdfgls 82 INTEGER :: ikbu, ikbv, ikbum1, ikbvm1 83 REAL(wp) :: zcbcu, zcbcv 84 #endif 77 85 !!---------------------------------------------------------------------- 78 86 … … 173 181 END DO 174 182 END DO 183 184 #if defined key_zdfgls 185 ! Save bottom stress for next time step 186 DO jj = 2, jpjm1 187 DO ji = fs_2, fs_jpim1 ! vector opt. 188 ikbu = MIN( mbathy(ji+1,jj ), mbathy(ji,jj) ) 189 ikbum1 = MAX( ikbu-1, 1 ) 190 wbotu(ji,jj) = bfrua(ji,jj) * ua(ji,jj,ikbum1) * umask(ji,jj,ikbum1) 191 END DO 192 END DO 193 CALL lbc_lnk( wbotu(:,:), 'U', -1. ) 194 #endif 175 195 176 196 ! Normalization to obtain the general momentum trend ua … … 272 292 END DO 273 293 294 #if defined key_zdfgls 295 ! Save bottom stress for next time step 296 DO jj = 2, jpjm1 297 DO ji = fs_2, fs_jpim1 ! vector opt. 298 ikbv = MIN( mbathy(ji,jj+1), mbathy(ji,jj) ) 299 ikbvm1 = MAX( ikbv-1, 1 ) 300 wbotv(ji,jj) = bfrva(ji,jj) * va(ji,jj,ikbvm1) * vmask(ji,jj,ikbvm1) 301 END DO 302 END DO 303 CALL lbc_lnk( wbotv(:,:), 'V', -1. ) 304 #endif 305 274 306 ! Normalization to obtain the general momentum trend va 275 307 DO jk = 1, jpkm1 -
branches/devmercator2010_1/NEMO/OPA_SRC/IOM/restart.F90
r1613 r2132 26 26 USE zdfmxl ! mixed layer depth 27 27 USE trdmld_oce ! ocean active mixed layer tracers trends variables 28 #if defined key_zdfgls 29 USE zdfbfr, ONLY : wbotu, wbotv ! bottom stresses 30 USE zdf_oce 31 #endif 28 32 29 33 IMPLICIT NONE … … 136 140 #endif 137 141 142 #if defined key_zdfgls 143 ! Save bottom stresses 144 CALL iom_rstput( kt, nitrst, numrow, 'wbotu' , wbotu ) 145 CALL iom_rstput( kt, nitrst, numrow, 'wbotv' , wbotv ) 146 #endif 147 138 148 IF( kt == nitrst ) THEN 139 149 CALL iom_close( numrow ) ! close the restart file (only at last time step) -
branches/devmercator2010_1/NEMO/OPA_SRC/TRA/trazdf.F90
r1533 r2132 125 125 USE zdftke_old 126 126 USE zdftke 127 USE zdfgls 127 128 USE zdfkpp 128 129 !!---------------------------------------------------------------------- … … 139 140 140 141 ! Force implicit schemes 141 IF( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdf kpp ) nzdf = 1 ! TKEor KPP physics142 IF( ln_traldf_iso ) nzdf = 1 ! iso-neutral lateral physics143 IF( ln_traldf_hor .AND. ln_sco ) nzdf = 1 ! horizontal lateral physics in s-coordinate142 IF( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdfgls .OR. lk_zdfkpp ) nzdf = 1 ! TKE, GLS or KPP physics 143 IF( ln_traldf_iso ) nzdf = 1 ! iso-neutral lateral physics 144 IF( ln_traldf_hor .AND. ln_sco ) nzdf = 1 ! horizontal lateral physics in s-coordinate 144 145 145 146 IF( ln_zdfexp .AND. nzdf == 1 ) THEN -
branches/devmercator2010_1/NEMO/OPA_SRC/ZDF/zdfbfr.F90
r1708 r2132 29 29 30 30 REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: bfrua , bfrva !: Bottom friction coefficients set in zdfbfr 31 #if defined key_zdfgls 32 REAL(wp), PUBLIC :: rn_hbro = 0.003_wp ! Bottom roughness (m) 33 REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: wbotu, wbotv ! Bottom stresses 34 #endif 31 35 32 36 ! !!* Namelist nambfr: bottom friction namelist * -
branches/devmercator2010_1/NEMO/OPA_SRC/ZDF/zdfini.F90
r1601 r2132 20 20 USE zdftke_old ! TKE vertical mixing (old scheme) 21 21 USE zdftke ! TKE vertical mixing 22 USE zdfgls ! GLS vertical mixing 22 23 USE zdfkpp ! KPP vertical mixing 23 24 USE zdfddm ! double diffusion mixing … … 106 107 ioptio = ioptio+1 107 108 ENDIF 109 IF( lk_zdfgls ) THEN 110 IF(lwp) WRITE(numout,*) ' GLS dependent eddy coefficients' 111 ioptio = ioptio+1 112 ENDIF 108 113 IF( lk_zdfkpp ) THEN 109 114 IF(lwp) WRITE(numout,*) ' KPP dependent eddy coefficients' … … 128 133 IF(lwp) WRITE(numout,*) ' use the 1.5 turbulent closure' 129 134 ENDIF 135 IF( lk_zdfgls ) THEN 136 IF(lwp) WRITE(numout,*) ' use the GLS closure scheme' 137 ENDIF 130 138 IF( lk_zdfkpp ) THEN 131 139 IF(lwp) WRITE(numout,*) ' use the KPP closure scheme' … … 136 144 ENDIF 137 145 IF ( ioptio > 1 .AND. .NOT. lk_esopa ) CALL ctl_stop( ' chose between ln_zdfnpc and ln_zdfevd' ) 138 IF( ioptio == 0 .AND. .NOT.( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdf kpp ) ) &139 CALL ctl_stop( ' except for TKE sor KPP physics, a convection scheme is', &146 IF( ioptio == 0 .AND. .NOT.( lk_zdftke_old .OR. lk_zdftke .OR. lk_zdfgls .OR. lk_zdfkpp ) ) & 147 CALL ctl_stop( ' except for TKE, GLS or KPP physics, a convection scheme is', & 140 148 & ' required: ln_zdfevd or ln_zdfnpc logicals' ) 141 149 -
branches/devmercator2010_1/NEMO/OPA_SRC/step.F90
r1756 r2132 90 90 USE zdftke_old ! old TKE vertical mixing (zdf_tke_old routine) 91 91 USE zdftke ! TKE vertical mixing (zdf_tke routine) 92 USE zdfgls ! GLS vertical mixing (zdf_gls routine) 92 93 USE zdfkpp ! KPP vertical mixing (zdf_kpp routine) 93 94 USE zdfddm ! double diffusion mixing (zdf_ddm routine) … … 204 205 IF( lk_zdftke_old ) CALL zdf_tke_old( kstp ) ! TKE closure scheme for Kz (old scheme) 205 206 IF( lk_zdftke ) CALL zdf_tke ( kstp ) ! TKE closure scheme for Kz 207 IF( lk_zdfgls ) CALL zdf_gls ( kstp ) ! GLS closure scheme for Kz 206 208 IF( lk_zdfkpp ) CALL zdf_kpp ( kstp ) ! KPP closure scheme for Kz 207 209 IF( lk_zdfcst ) THEN ! Constant Kz (reset avt, avm[uv] to the background value) … … 223 225 ! write tke information in the restart file 224 226 IF( lrst_oce .AND. lk_zdftke ) CALL tke_rst( kstp, 'WRITE' ) 227 ! write gls information in the restart file 228 IF( lrst_oce .AND. lk_zdfgls ) CALL gls_rst( kstp, 'WRITE' ) 225 229 ! 226 230 ! LATERAL PHYSICS
Note: See TracChangeset
for help on using the changeset viewer.