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 6004 for branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90 – NEMO

Ignore:
Timestamp:
2015-12-04T17:05:58+01:00 (9 years ago)
Author:
gm
Message:

#1613: vvl by default, step III: Merge with the trunk (free surface simplification) (see wiki)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5836_NOC3_vvl_by_default/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90

    r5866 r6004  
    4646   LOGICAL , PUBLIC ::   ln_crs          !: Apply grid coarsening to dynamical model output or online passive tracers 
    4747 
     48   !! Free surface parameters 
     49   !! ======================= 
     50   LOGICAL , PUBLIC :: ln_dynspg_exp     !: Explicit free surface flag 
     51   LOGICAL , PUBLIC :: ln_dynspg_ts      !: Split-Explicit free surface flag 
     52 
    4853   !! Time splitting parameters 
    4954   !! ========================= 
    5055   LOGICAL,  PUBLIC :: ln_bt_fw          !: Forward integration of barotropic sub-stepping 
    5156   LOGICAL,  PUBLIC :: ln_bt_av          !: Time averaging of barotropic variables 
    52    LOGICAL,  PUBLIC :: ln_bt_nn_auto     !: Set number of barotropic iterations automatically 
     57   LOGICAL,  PUBLIC :: ln_bt_auto        !: Set number of barotropic iterations automatically 
    5358   INTEGER,  PUBLIC :: nn_bt_flt         !: Filter choice 
    5459   INTEGER,  PUBLIC :: nn_baro           !: Number of barotropic iterations during one baroclinic step (rdt) 
    55    REAL(wp), PUBLIC :: rn_bt_cmax        !: Maximum allowed courant number (used if ln_bt_nn_auto=T) 
     60   REAL(wp), PUBLIC :: rn_bt_cmax        !: Maximum allowed courant number (used if ln_bt_auto=T) 
    5661 
    5762   !! Horizontal grid parameters for domhgr 
    5863   !! ===================================== 
    59    INTEGER       ::   jphgr_msh        !: type of horizontal mesh 
     64   INTEGER       ::   jphgr_msh          !: type of horizontal mesh 
    6065   !                                       !  = 0 curvilinear coordinate on the sphere read in coordinate.nc 
    6166   !                                       !  = 1 geographical mesh on the sphere with regular grid-spacing 
     
    6469   !                                       !  = 4 Mercator grid with T/U point at the equator 
    6570 
    66    REAL(wp)      ::   ppglam0              !: longitude of first raw and column T-point (jphgr_msh = 1) 
    67    REAL(wp)      ::   ppgphi0              !: latitude  of first raw and column T-point (jphgr_msh = 1) 
     71   REAL(wp)      ::   ppglam0            !: longitude of first raw and column T-point (jphgr_msh = 1) 
     72   REAL(wp)      ::   ppgphi0            !: latitude  of first raw and column T-point (jphgr_msh = 1) 
    6873   !                                                        !  used for Coriolis & Beta parameters (jphgr_msh = 2 or 3) 
    69    REAL(wp)      ::   ppe1_deg             !: zonal      grid-spacing (degrees) 
    70    REAL(wp)      ::   ppe2_deg             !: meridional grid-spacing (degrees) 
    71    REAL(wp)      ::   ppe1_m               !: zonal      grid-spacing (degrees) 
    72    REAL(wp)      ::   ppe2_m               !: meridional grid-spacing (degrees) 
     74   REAL(wp)      ::   ppe1_deg           !: zonal      grid-spacing (degrees) 
     75   REAL(wp)      ::   ppe2_deg           !: meridional grid-spacing (degrees) 
     76   REAL(wp)      ::   ppe1_m             !: zonal      grid-spacing (degrees) 
     77   REAL(wp)      ::   ppe2_m             !: meridional grid-spacing (degrees) 
    7378 
    7479   !! Vertical grid parameter for domzgr 
    7580   !! ================================== 
    76    REAL(wp)      ::   ppsur                !: ORCA r4, r2 and r05 coefficients 
    77    REAL(wp)      ::   ppa0                 !: (default coefficients) 
    78    REAL(wp)      ::   ppa1                 !: 
    79    REAL(wp)      ::   ppkth                !: 
    80    REAL(wp)      ::   ppacr                !: 
     81   REAL(wp)      ::   ppsur              !: ORCA r4, r2 and r05 coefficients 
     82   REAL(wp)      ::   ppa0               !: (default coefficients) 
     83   REAL(wp)      ::   ppa1               !: 
     84   REAL(wp)      ::   ppkth              !: 
     85   REAL(wp)      ::   ppacr              !: 
    8186   ! 
    8287   !  If both ppa0 ppa1 and ppsur are specified to 0, then 
    8388   !  they are computed from ppdzmin, pphmax , ppkth, ppacr in dom_zgr 
    84    REAL(wp)      ::   ppdzmin              !: Minimum vertical spacing 
    85    REAL(wp)      ::   pphmax               !: Maximum depth 
     89   REAL(wp)      ::   ppdzmin            !: Minimum vertical spacing 
     90   REAL(wp)      ::   pphmax             !: Maximum depth 
    8691   ! 
    87    LOGICAL       ::   ldbletanh            !: Use/do not use double tanf function for vertical coordinates 
    88    REAL(wp)      ::   ppa2                 !: Double tanh function parameters 
    89    REAL(wp)      ::   ppkth2               !: 
    90    REAL(wp)      ::   ppacr2               !: 
     92   LOGICAL       ::   ldbletanh          !: Use/do not use double tanf function for vertical coordinates 
     93   REAL(wp)      ::   ppa2               !: Double tanh function parameters 
     94   REAL(wp)      ::   ppkth2             !: 
     95   REAL(wp)      ::   ppacr2             !: 
    9196 
    9297   !                                    !! old non-DOCTOR names still used in the model 
     
    102107   REAL(wp), PUBLIC ::   rdth            !: depth variation of tracer step 
    103108 
    104    !                                                  !!! associated variables 
    105    INTEGER , PUBLIC                 ::   neuler        !: restart euler forward option (0=Euler) 
    106    REAL(wp), PUBLIC                 ::   atfp1         !: asselin time filter coeff. (atfp1= 1-2*atfp) 
     109   !                                   !!! associated variables 
     110   INTEGER , PUBLIC ::   neuler          !: restart euler forward option (0=Euler) 
     111   REAL(wp), PUBLIC ::   atfp1           !: asselin time filter coeff. (atfp1= 1-2*atfp) 
     112    
    107113   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   rdttra  !: vertical profile of tracer time step 
    108114   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   r2dtra  !: = 2*rdttra except at nit000 (=rdttra) if neuler=0 
     
    211217   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e3tp    , e3wp     !: ocean bottom level thickness at T and W points 
    212218 
     219!!gm  This should be removed from here....  ==>>> only used in domzgr at initialization phase 
    213220   !! s-coordinate and hybrid z-s-coordinate 
    214221   !! =----------------======--------------- 
     
    224231   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   hift  , hifu       !: and quasi-uniform spacing             t--u points (m) 
    225232   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   rx1                !: Maximum grid stiffness ratio 
     233!!gm end 
    226234 
    227235   !!---------------------------------------------------------------------- 
     
    229237   !! --------------------------------------------------------------------- 
    230238   INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mbathy             !: number of ocean level (=0, 1, ... , jpk-1) 
    231    INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mbkt               !: vertical index of the bottom last T- ocean level 
    232    INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mbku, mbkv         !: vertical index of the bottom last U- and W- ocean level 
    233    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   bathy                              !: ocean depth (meters) 
     239   INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mbkt, mbku, mbkv   !: vertical index of the bottom last T-, U- & V ocean level 
     240   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   bathy              !: ocean depth (meters) 
    234241   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   tmask_i, umask_i, vmask_i, fmask_i !: interior domain T-point mask 
    235    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   bmask                              !: land/ocean mask of barotropic stream function 
    236242 
    237243   INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   misfdep                 !: top first ocean level                (ISF) 
     
    364370      ALLOCATE( mbathy(jpi,jpj) , bathy(jpi,jpj) ,                                      & 
    365371         &     tmask_i(jpi,jpj) , umask_i(jpi,jpj), vmask_i(jpi,jpj), fmask_i(jpi,jpj), & 
    366          &     bmask  (jpi,jpj) ,                                                       & 
    367372         &     mbkt   (jpi,jpj) , mbku (jpi,jpj) , mbkv(jpi,jpj) , STAT=ierr(9) ) 
    368373 
Note: See TracChangeset for help on using the changeset viewer.