New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
ldftra_oce.F90 in branches/DEV_r1924_nocs_latphys/NEMO/OPA_SRC/LDF – NEMO

source: branches/DEV_r1924_nocs_latphys/NEMO/OPA_SRC/LDF/ldftra_oce.F90 @ 2163

Last change on this file since 2163 was 2163, checked in by sga, 14 years ago

NEMO branch DEV_r1924_nocs_latphys. George Nurser

Included code in ldfslp.F90 to limit slopes to slpmax and
linearly decrease slopes towards surface throughout the mixed layer

Corrected minor bug for wslp2 in ldfslp.F90
Introduced rn_slpmax into namelist

Calculate streamfunctions psix_eiv,psiy_eiv

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.2 KB
Line 
1MODULE ldftra_oce
2   !!=====================================================================
3   !!                      ***  MODULE  ldftra_oce  ***
4   !! Ocean physics :  lateral tracer mixing coefficient defined in memory
5   !!=====================================================================
6   !! History :  9.0  !  02-11  (G. Madec)  Original code
7   !!----------------------------------------------------------------------
8   USE par_oce         ! ocean parameters
9
10   IMPLICIT NONE
11   PRIVATE
12
13   !!----------------------------------------------------------------------
14   !! Lateral eddy diffusivity coefficients (tracers)
15   !!----------------------------------------------------------------------
16   !                                                !!* Namelist namtra_ldf : lateral mixing *
17   LOGICAL , PUBLIC ::   ln_traldf_lap   = .TRUE.    !: laplacian operator
18   LOGICAL , PUBLIC ::   ln_traldf_bilap = .FALSE.   !: bilaplacian operator
19   LOGICAL , PUBLIC ::   ln_traldf_level = .FALSE.   !: iso-level direction
20   LOGICAL , PUBLIC ::   ln_traldf_hor   = .FALSE.   !: horizontal (geopotential) direction
21   LOGICAL , PUBLIC ::   ln_traldf_iso   = .TRUE.    !: iso-neutral direction
22   LOGICAL , PUBLIC ::   ln_traldf_grif  = .TRUE.    !: griffies skew flux
23   LOGICAL , PUBLIC ::   ln_traldf_vis   = .FALSE.   !: griffies skew flux
24   REAL(wp), PUBLIC ::   rn_aht_0        = 2000._wp  !: lateral eddy diffusivity (m2/s)
25   REAL(wp), PUBLIC ::   rn_ahtb_0       =    0._wp  !: lateral background eddy diffusivity (m2/s)
26   REAL(wp), PUBLIC ::   rn_aeiv_0       = 2000._wp  !: eddy induced velocity coefficient (m2/s)
27   REAL(wp), PUBLIC ::   rn_slpmax       = 0.01_wp   !: slope limit
28
29   REAL(wp), PUBLIC ::   aht0, ahtb0, aeiv0         !!: OLD namelist names
30
31#if defined key_traldf_c3d
32   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   ahtt, ahtu, ahtv, ahtw   !: ** 3D coefficients ** at T-, U-, V-, W-points
33#elif defined key_traldf_c2d
34   REAL(wp), PUBLIC, DIMENSION(jpi,jpj)     ::   ahtt, ahtu, ahtv, ahtw   !: ** 2D coefficients ** at T-, U-, V-, W-points
35#elif defined key_traldf_c1d
36   REAL(wp), PUBLIC, DIMENSION(jpk)         ::   ahtt, ahtu, ahtv, ahtw   !: ** 1D coefficients ** at T-, U-, V-, W-points
37#else
38   REAL(wp), PUBLIC                         ::   ahtt, ahtu, ahtv, ahtw   !: ** 0D coefficients ** at T-, U-, V-, W-points
39#endif
40
41
42#if defined key_traldf_eiv
43   !!----------------------------------------------------------------------
44   !!   'key_traldf_eiv'                              eddy induced velocity
45   !!----------------------------------------------------------------------
46   LOGICAL, PUBLIC, PARAMETER               ::   lk_traldf_eiv   = .TRUE.   !: eddy induced velocity flag
47   REAL(wp), PUBLIC                         ::   slpmax                     !: slope limit
48     
49# if defined key_traldf_c3d
50   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   aeiu, aeiv, aeiw  !: ** 3D coefficients ** at U-, V-, W-points  [m2/s]
51# elif defined key_traldf_c2d
52   REAL(wp), PUBLIC, DIMENSION(jpi,jpj)     ::   aeiu, aeiv, aeiw  !: ** 2D coefficients ** at U-, V-, W-points  [m2/s]
53# elif defined key_traldf_c1d
54   REAL(wp), PUBLIC, DIMENSION(jpk)         ::   aeiu, aeiv, aeiw  !: ** 1D coefficients ** at U-, V-, W-points  [m2/s]
55# else
56   REAL(wp), PUBLIC                         ::   aeiu, aeiv, aeiw  !: ** 0D coefficients ** at U-, V-, W-points  [m2/s]
57# endif
58# if defined key_diaeiv
59   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   u_eiv, v_eiv, w_eiv   !: eddy induced velocity [m/s]
60# endif
61
62#else
63   !!----------------------------------------------------------------------
64   !!   Default option :                           NO eddy induced velocity
65   !!----------------------------------------------------------------------
66   LOGICAL , PUBLIC, PARAMETER ::   lk_traldf_eiv   = .FALSE.   !: eddy induced velocity flag
67   REAL(wp), PUBLIC            ::   aeiu, aeiv, aeiw            !: eddy induced coef. (not used)
68#endif
69
70   !!----------------------------------------------------------------------
71   !! NEMO/OPA 3.2 , LOCEAN-IPSL (2009)
72   !! $Id$
73   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
74   !!=====================================================================
75END MODULE ldftra_oce
Note: See TracBrowser for help on using the repository browser.