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.
Changeset 497 for trunk/NEMO/OFF_SRC/DOM/dom_oce.F90 – NEMO

Ignore:
Timestamp:
2006-09-12T13:03:53+02:00 (18 years ago)
Author:
opalod
Message:

nemo_v1_update_064:CE:re-organization of coordinate definition and scale factors

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OFF_SRC/DOM/dom_oce.F90

    r361 r497  
    8383      ff                  !: coriolis factor (2.*omega*sin(yphi) ) (s-1) 
    8484 
     85 
    8586   !!---------------------------------------------------------------------- 
    8687   !! vertical coordinate and scale factors 
    8788   !! -------------------------------------- 
    8889 
    89    REAL(wp), PUBLIC ::   & !!: * namelist namdom * 
    90       e3zps_min = 5.0,   &  !: miminum thickness for partial steps (meters) 
    91       e3zps_rat = 0.1       !: minimum thickness ration for partial steps 
     90   LOGICAL, PUBLIC ::           & !!: namzgr : vertical coordinate 
     91      ln_zco     =  .TRUE.  ,   &  !: z-coordinate - full step 
     92      ln_zps     =  .FALSE. ,   &  !: z-coordinate - partial step 
     93      ln_sco     =  .FALSE.        !: s-coordinate or hybrid z-s coordinate 
    9294 
    93    !! z-coordinate (default option) (also used in the other cases 
    94    !! -----------------------------  as reference z-coordinate) 
     95#if defined key_zco 
     96   LOGICAL, PUBLIC, PARAMETER ::   lk_zco = .TRUE.    !: z-coordinate flag (1D arrays) 
     97#else 
     98   LOGICAL, PUBLIC, PARAMETER ::   lk_zco = .FALSE.   !: z-coordinate flag (3D arrays) 
     99 
     100   !! All coordinates 
     101   !! --------------- 
     102   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   &  !: 
     103      gdep3w        ,    &  !: depth of T-points (sum of e3w) (m) 
     104      gdept , gdepw ,    &  !: analytical depth at T-W  points (m) 
     105      e3v   , e3f   ,    &  !: analytical vertical scale factors at  V--F 
     106      e3t   , e3u   ,    &  !:                                       T--U  points (m) 
     107      e3vw          ,    &  !: analytical vertical scale factors at  VW-- 
     108      e3w   , e3uw          !:                                        W--UW  points (m) 
     109#endif 
     110   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !: 
     111      hur, hvr,          &  !: inverse of u and v-points ocean depth (1/m) 
     112      hu , hv               !: depth at u- and v-points (meters) 
     113 
     114   !! z-coordinate with full steps (also used in the other cases as reference z-coordinate) 
     115   !! =-----------------====------ 
    95116   REAL(wp), PUBLIC, DIMENSION(jpk) ::   &  !: 
    96       gdept, gdepw,    &  !: reference depth of t- and w-points (m) 
    97       e3t, e3w            !: reference vertical scale factors at T- and W-pts (m) 
     117      gdept_0, gdepw_0,       &  !: reference depth of t- and w-points (m) 
     118      e3t_0  , e3w_0             !: reference vertical scale factors at T- and W-pts (m) 
    98119 
    99 #if defined key_partial_steps 
    100    !! Partial steps ('key_partial_steps') 
    101    !! ----------------------------------- 
    102    LOGICAL, PUBLIC, PARAMETER ::   lk_zps = .TRUE.   !: partial steps flag 
    103    LOGICAL, PUBLIC, PARAMETER ::   lk_sco = .FALSE.  !: s-coordinate flag 
    104    LOGICAL, PUBLIC, PARAMETER ::   lk_zco = .FALSE.  !: z-coordinate flag 
    105    REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   &  !: 
    106       gdep3w,                 &  !: ??? 
    107       gdept_ps, gdepw_ps,     &  !: depth of t- and w-points (m) 
    108       e3t_ps, e3u_ps, e3v_ps, &  !: vertical scale factors at t-, u-, w-, 
    109       e3w_ps, e3f_ps,         &  !: w- and f- points (m) 
    110       e3uw_ps, e3vw_ps           !: uw- and vw- points (m) 
     120   !! z-coordinate with partial steps 
     121   !! =-----------------=======------ 
     122   REAL(wp), PUBLIC ::      & !!: * namelist namdom * 
     123      e3zps_min = 5.0_wp,   &  !: miminum thickness for partial steps (meters) 
     124      e3zps_rat = 0.1_wp       !: minimum thickness ration for partial steps 
    111125 
    112126   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &  !: 
    113127      hdept, hdepw, e3tp, e3wp   !: ??? 
    114128 
    115 #elif defined key_s_coord 
    116    !! s-coordinate ('key_s_coord') 
    117    !! ---------------------------- 
    118    LOGICAL, PUBLIC, PARAMETER ::   lk_zps = .FALSE.   !: partial steps flag 
    119    LOGICAL, PUBLIC, PARAMETER ::   lk_sco = .TRUE.    !: s-coordinate flag 
    120    LOGICAL, PUBLIC, PARAMETER ::   lk_zco = .FALSE.   !: z-coordinate flag 
    121    REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !: 
    122       hbatt, hbatu,    &  !: ocean depth at the vertical of  t-, u-, v- 
    123       hbatv               !: and f-point (m) 
    124  
     129   !! s-coordinate and hybrid z-s-coordinate 
     130   !! =----------------======--------------- 
    125131   REAL(wp), PUBLIC, DIMENSION(jpk) ::   &   !: 
    126       gsigt, gsigw ,   &  !: model level depth coefficient at t-, w-levels 
    127       gsi3w,           &  !: model level depth coefficient at w-level 
    128                           !  defined as the sum of e3w scale factors 
     132      gsigt, gsigw ,   &  !: model level depth coefficient at t-, w-levels (analytic) 
     133      gsi3w        ,   &  !: model level depth coefficient at w-level (sum of gsigw) 
    129134      esigt, esigw        !: vertical scale factor coef. at t-, w-levels 
    130135 
    131 #else 
    132    !! z-coordinate (Default option) 
    133    !! ----------------------------- 
    134    LOGICAL, PUBLIC, PARAMETER ::   lk_zps = .FALSE.   !: partial steps flag 
    135    LOGICAL, PUBLIC, PARAMETER ::   lk_sco = .FALSE.   !: s-coordinate flag 
    136    LOGICAL, PUBLIC, PARAMETER ::   lk_zco = .TRUE.    !: s-coordinate flag 
    137 #endif 
     136   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   &   !: 
     137      hbatv , hbatf ,   &  !: ocean depth at the vertical of  V--F 
     138      hbatt , hbatu ,   &  !:                                 T--U  points (m) 
     139      scosrf, scobot,   &  !:  ocean surface and bottom topographies (if deviating from coordinate surfaces in HYBRID) 
     140      hifv  , hiff  ,   &  !: interface depth between stretching    at  V--F 
     141      hift  , hifu         !: and quasi-uniform spacing                 T--U  points (m) 
     142 
     143 
    138144   !!---------------------------------------------------------------------- 
    139145   !! masks, bathymetry 
     
    180186      !                        ! parameterize exchanges through straits 
    181187 
     188#if defined key_off_degrad 
     189   !! ------------------------------------------------ 
     190   !! Degradation method 
     191   !! -------------------------------------------------- 
     192   REAL(wp), PUBLIC, DIMENSION (jpi,jpj,jpk) :: & 
     193      facvol  !! volume for degraded regions 
     194#endif 
     195 
    182196   !!---------------------------------------------------------------------- 
    183197END MODULE dom_oce 
Note: See TracChangeset for help on using the changeset viewer.