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.
oce.F90 in trunk/NEMO/OPA_SRC – NEMO

source: trunk/NEMO/OPA_SRC/oce.F90 @ 450

Last change on this file since 450 was 359, checked in by opalod, 18 years ago

nemo_v1_update_033 : RB + CT : Add new surface pressure gradient algorithms

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.0 KB
Line 
1MODULE oce
2   !!======================================================================
3   !!                      ***  MODULE  oce  ***
4   !! Ocean        :  dynamics and active tracers defined in memory
5   !!======================================================================
6   !! History :
7   !!   8.5  !  02-11  (G. Madec)  F90: Free form and module
8   !!   9.0  !  05-11  (V. Garnier) Surface pressure gradient organization
9   !!----------------------------------------------------------------------
10   !!  OPA 9.0 , LOCEAN-IPSL (2005)
11   !! $Header$
12   !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt
13   !!----------------------------------------------------------------------
14   !! * Modules used
15   USE par_oce      ! ocean parameters
16
17   IMPLICIT NONE
18   PRIVATE
19
20   !! Physics and algorithm flags
21   !! ---------------------------
22   LOGICAL, PUBLIC ::   ln_dynhpg_imp   = .FALSE.  !: semi-implicite hpg flag
23
24   !! dynamics and tracer fields
25   !! --------------------------
26   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   &   !:
27      ! before !  now      !  after  !      ! the after trends becomes the fields
28      ! fields !  fields   !  trends !      ! only in dyn(tra)_zdf and dyn(tra)_nxt
29      ub       ,  un       ,  ua     ,   &  !: i-horizontal velocity (m/s)
30      vb       ,  vn       ,  va     ,   &  !: j-horizontal velocity (m/s)
31                  wn       ,             &  !: vertical velocity (m/s)
32      rotb     ,  rotn     ,             &  !: relative vorticity (1/s)
33      hdivb    ,  hdivn    ,             &  !: horizontal divergence (1/s)
34      tb       ,  tn       ,  ta     ,   &  !: potential temperature (celcius)
35      sb       ,  sn       ,  sa            !: salinity (psu)
36   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   &   !:
37      rhd ,                              &  !: in situ density anomalie rhd=(rho-rau0)/rau0 (no units)
38      rhop,                              &  !: potential volumic mass (kg/m3)
39      rn2                                   !: brunt-vaisala frequency (1/s2)
40
41      !! advection scheme choice
42      !! -----------------------
43      CHARACTER(len=3), PUBLIC  ::   l_adv   !: 'ce2' centre scheme used
44              !                              !: 'tvd' TVD scheme used
45              !                              !: 'mus' MUSCL scheme used
46              !                              !: 'mu2' MUSCL2 scheme used
47
48   !! surface pressure gradient
49   !! -------------------------
50   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !:
51      spgu, spgv             !: horizontal surface pressure gradient
52
53#if defined key_partial_steps     ||   defined key_esopa
54   !! interpolated gradient
55   !! ---------------------
56   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !:
57      gtu, gsu, gru,      &  !: t-, s- and rd horizontal gradient at u- and
58      gtv, gsv, grv          !: v-points at bottom ocean level
59#else
60   REAL(wp), PUBLIC ::   &   !:
61      gtu, gsu, gru,      &  !: dummy scalars
62      gtv, gsv, grv          !:
63#endif
64
65   !! free surface
66   !! ------------
67   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !:
68      sshb, sshn,         &  !: before, now sea surface height (meters)
69      hu  , hv  ,         &  !: depth at u- and v-points (meters)
70      hur , hvr              !: inverse of u and v-points ocean depth (1/m)
71#if defined key_obc
72   REAL(wp), PUBLIC ::    &  !:
73      obcsurftot       !: Total lateral surface of open boundaries
74   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !:
75      obcumask, obcvmask     !: u-, v- Force filtering mask for the open
76      !                      !  boundary condition on grad D
77#endif
78
79#if defined key_dynspg_rl   ||   defined key_esopa
80   !! rigid-lid formulation
81   !! ---------------------
82   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !:
83      bsfb, bsfn,         &  !: before, now barotropic streamfunction (m3/s)
84      bsfd                   !: now trend of barotropic streamfunction (m3/s2)
85#endif
86   !!----------------------------------------------------------------------
87END MODULE oce
Note: See TracBrowser for help on using the repository browser.