[325] | 1 | MODULE ldftra_oce |
---|
| 2 | !!===================================================================== |
---|
| 3 | !! *** MODULE ldftra_oce *** |
---|
| 4 | !! Ocean physics : lateral tracer mixing coefficient defined in memory |
---|
| 5 | !!===================================================================== |
---|
| 6 | !! |
---|
| 7 | !! ** Purpose : - Define in memory lateral tracer mixing coefficients |
---|
| 8 | !! |
---|
| 9 | !! History : |
---|
| 10 | !! 9.0 ! 02-11 (G. Madec) Original code (from common.h) |
---|
| 11 | !!---------------------------------------------------------------------- |
---|
[343] | 12 | !! OPA 9.0 , LOCEAN-IPSL (2005) |
---|
[719] | 13 | !! $Header$ |
---|
[343] | 14 | !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt |
---|
[325] | 15 | !!---------------------------------------------------------------------- |
---|
| 16 | !! * Modules used |
---|
| 17 | USE par_oce ! ocean parameters |
---|
| 18 | |
---|
| 19 | IMPLICIT NONE |
---|
| 20 | PRIVATE |
---|
| 21 | |
---|
| 22 | !!---------------------------------------------------------------------- |
---|
| 23 | !! Lateral eddy diffusivity coefficients (tracers) |
---|
| 24 | !!---------------------------------------------------------------------- |
---|
| 25 | |
---|
| 26 | LOGICAL , PUBLIC :: & !!: ** lateral mixing namelist (nam_traldf) ** |
---|
| 27 | ln_traldf_lap = .TRUE. , & !: laplacian operator |
---|
| 28 | ln_traldf_bilap = .FALSE. , & !: bilaplacian operator |
---|
| 29 | ln_traldf_level = .FALSE. , & !: iso-level direction |
---|
| 30 | ln_traldf_hor = .FALSE. , & !: horizontal (geopotential) direction |
---|
| 31 | ln_traldf_iso = .TRUE. !: iso-neutral direction |
---|
| 32 | |
---|
| 33 | REAL(wp), PUBLIC :: & !!: ** lateral mixing namelist (namldf) ** |
---|
| 34 | aht0 = 2000._wp , & !: lateral eddy diffusivity (m2/s) |
---|
| 35 | ahtb0 = 0._wp , & !: lateral background eddy diffusivity (m2/s) |
---|
| 36 | aeiv0 = 2000._wp !: eddy induced velocity coefficient (m2/s) |
---|
| 37 | |
---|
| 38 | LOGICAL , PUBLIC :: & !: flag of the lateral diff. scheme used |
---|
| 39 | l_traldf_lap , & !: iso-level laplacian operator |
---|
| 40 | l_traldf_bilap , & !: iso-level bilaplacian operator |
---|
| 41 | l_traldf_bilapg , & !: geopotential bilap. (s-coord) |
---|
| 42 | l_traldf_iso , & !: iso-neutral laplacian or horizontal lapacian (s-coord) |
---|
| 43 | l_trazdf_iso , & !: idem for the vertical component |
---|
| 44 | l_trazdf_iso_vo , & !: idem with vectopt_memory |
---|
| 45 | l_traldf_iso_zps !: iso-neutral laplacian (partial steps) |
---|
| 46 | |
---|
[497] | 47 | #if defined key_traldf_c3d || defined key_off_degrad |
---|
[325] | 48 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) :: & !: ** 3D coefficients ** |
---|
| 49 | #elif defined key_traldf_c2d |
---|
| 50 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: & !: ** 2D coefficients ** |
---|
| 51 | #elif defined key_traldf_c1d |
---|
| 52 | REAL(wp), PUBLIC, DIMENSION(jpk) :: & !: ** 1D coefficients ** |
---|
| 53 | #else |
---|
| 54 | REAL(wp), PUBLIC :: & !: ** 0D coefficients ** |
---|
| 55 | #endif |
---|
| 56 | ahtt, ahtu, ahtv, ahtw !: T-, U-, V-, W-points coefficients |
---|
| 57 | |
---|
| 58 | |
---|
| 59 | #if defined key_traldf_eiv |
---|
| 60 | !!---------------------------------------------------------------------- |
---|
| 61 | !! 'key_traldf_eiv' eddy induced velocity |
---|
| 62 | !!---------------------------------------------------------------------- |
---|
| 63 | LOGICAL, PUBLIC, PARAMETER :: lk_traldf_eiv = .TRUE. !: eddy induced velocity flag |
---|
| 64 | |
---|
[497] | 65 | # if defined key_traldf_c3d || defined key_off_degrad |
---|
[325] | 66 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) :: & !: ** 3D coefficients ** |
---|
| 67 | # elif defined key_traldf_c2d |
---|
| 68 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: & !: ** 2D coefficients ** |
---|
| 69 | # elif defined key_traldf_c1d |
---|
| 70 | REAL(wp), PUBLIC, DIMENSION(jpk) :: & !: ** 1D coefficients ** |
---|
| 71 | # else |
---|
| 72 | REAL(wp), PUBLIC :: & !: ** 0D coefficients ** |
---|
| 73 | # endif |
---|
| 74 | aeiu, aeiv, aeiw !: U-, V-, W-points induced velocity coef. (m2/s) |
---|
| 75 | |
---|
| 76 | # if defined key_diaeiv |
---|
| 77 | REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) :: & !: |
---|
| 78 | u_eiv, v_eiv, w_eiv !: The three component of the eddy induced velocity (m/s) |
---|
| 79 | # endif |
---|
| 80 | |
---|
| 81 | #else |
---|
| 82 | !!---------------------------------------------------------------------- |
---|
| 83 | !! Default option : NO eddy induced velocity |
---|
| 84 | !!---------------------------------------------------------------------- |
---|
| 85 | LOGICAL , PUBLIC, PARAMETER :: lk_traldf_eiv = .FALSE. !: eddy induced velocity flag |
---|
| 86 | REAL(wp), PUBLIC :: aeiu, aeiv, aeiw |
---|
| 87 | #endif |
---|
| 88 | |
---|
| 89 | !!---------------------------------------------------------------------- |
---|
| 90 | END MODULE ldftra_oce |
---|