forked from mom-ocean/MOM6
-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
*Updates in FPMix and Stokes Most (#283)
This PR revises the formulation of the legacy K-profile parameterization (KPP) ocean boundary layer scheme. It incorporates: 1. a non-local momentum flux—the Flux-profile parameterization (`FPMIX`); when the local shear is not aligned with the wind, this scheme adds a non-local momentum flux in the direction of the wind; and 2. mixing with and without waves following the Monin-Obukhov Similarity Theory expanded to include Stokes drift (`STOKES_MOST`). This option provides the transition from waveless to ocean surface waves in any stage of growth or decay. **Summary:** * Uncomment omega w2x entries; * Simplify the nonlocal increments in `vertFPMix`; * In the call to `CVmix_kpp_compute_unresolved_shear`, passes the 2D surface buoyancy flux (`surfBuoyFlux2`) instead of the 1D version (`surfBuoyFlux`), which is preferable. **This is answer changing**; * Remove `uold` and `vold` diagnostics. These were used in an alternative time-stepping scheme that is now obsolete; * Pass boundary layer depths to the RK2 and add consistency check to make sure `FPMix` is always used with `SPLIT`; * Add the capability to mix down the Eulerian gradient instead of the Lagrangian; * Make a minimum set of `FPMix` diagnostics available. This PR relies on CVMix/CVMix-src#94. New diagnostics: ``` "StokesXI" ! modules: {ocean_model,ocean_model_d2} ! long_name: Stokes Similarity Parameter ! units: nondim ! cell_methods: xh:mean yh:mean area:mean "Lam2" ! modules: {ocean_model,ocean_model_d2} ! long_name: Ustk0_ustar ! units: nondim ! cell_methods: xh:mean yh:mean area:mean "uE_h" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: x-zonal Eulerian ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {uE_h,uE_h_xyave} "vE_h" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: y-merid Eulerian ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {vE_h,vE_h_xyave} "uInc_h" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: x-zonal Eulerian ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {uInc_h,uInc_h_xyave} "vInc_h" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: x-zonal Eulerian ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {vInc_h,vInc_h_xyave} "uStk" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: x-FP du increment ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {uStk,uStk_xyave} "vStk" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: y-FP dv increment ! units: m s-1 ! cell_methods: xh:mean yh:mean zl:mean area:mean ! variants: {vStk,vStk_xyave} "Omega_tau2s" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: Stress direction from shear ! units: radians ! cell_methods: xh:mean yh:mean zi:point area:mean ! variants: {Omega_tau2s,Omega_tau2s_xyave} "Omega_tau2w" ! modules: {ocean_model,ocean_model_z,ocean_model_rho2,ocean_model_d2,ocean_model_z_d2,ocean_model_rho2_d2} ! long_name: Stress direction from wind ! units: radians ! cell_methods: xh:mean yh:mean zi:point area:mean ! variants: {Omega_tau2w,Omega_tau2w_xyave} "uStk0" ! modules: {ocean_model,ocean_model_d2} ! long_name: Zonal Surface Stokes ! units: m s-1 ! cell_methods: xh:mean yh:mean area:mean "vStk0" ! modules: {ocean_model,ocean_model_d2} ! long_name: Merid Surface Stokes ! units: m s-1 ! cell_methods: xh:mean yh:mean area:mean ```
- Loading branch information
1 parent
a077a61
commit 15deea4
Showing
8 changed files
with
552 additions
and
476 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule CVMix-src
updated
22 files
+17 −1 | CVMix_tools/code_consistency.py | |
+1 −0 | doc/.gitignore | |
+18 −12 | doc/make_protex_file | |
+1,255 −0 | doc/protex | |
+ − | doc/protex_documentation.pdf | |
+15 −4 | src/cvmix_driver.F90 | |
+3 −57 | src/cvmix_io.F90 | |
+0 −1 | src/drivers/cvmix_bgrnd_BL.F90 | |
+0 −1 | src/drivers/cvmix_ddiff_drv.F90 | |
+0 −1 | src/drivers/cvmix_kpp_drv.F90 | |
+0 −1 | src/drivers/cvmix_shear_drv.F90 | |
+0 −1 | src/drivers/cvmix_tidal_Simmons.F90 | |
+6 −47 | src/shared/cvmix_background.F90 | |
+4 −25 | src/shared/cvmix_convection.F90 | |
+2 −21 | src/shared/cvmix_ddiff.F90 | |
+6 −9 | src/shared/cvmix_kinds_and_types.F90 | |
+866 −154 | src/shared/cvmix_kpp.F90 | |
+0 −3 | src/shared/cvmix_math.F90 | |
+0 −18 | src/shared/cvmix_put_get.F90 | |
+3 −25 | src/shared/cvmix_shear.F90 | |
+16 −64 | src/shared/cvmix_tidal.F90 | |
+0 −6 | src/shared/cvmix_utils.F90 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.