- Timestamp:
- 2016-06-06T07:57:00+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90
r6624 r6667 30 30 !! ---------------------------- 31 31 ! !!* Namelist namdom : time & space domain * 32 INTEGER , PUBLIC :: nn_bathy !: = 0/1 ,compute/read the bathymetry file33 REAL(wp), PUBLIC :: rn_bathy !: depth of flat bottom (active if nn_bathy=0; if =0 depth=jpkm1)34 REAL(wp), PUBLIC :: rn_hmin !: minimum ocean depth (>0) or minimum number of ocean levels (<0)32 LOGICAL , PUBLIC :: ln_linssh !: =T linear free surface ==>> model level are fixed in time 33 INTEGER , PUBLIC :: nn_closea !: =0 suppress closed sea/lake from the ORCA domain or not (=1) 34 INTEGER , PUBLIC :: nn_msh !: >0 create a mesh-mask file (mesh_mask.nc) 35 35 REAL(wp), PUBLIC :: rn_isfhmin !: threshold to discriminate grounded ice to floating ice 36 REAL(wp), PUBLIC :: rn_e3zps_min !: miminum thickness for partial steps (meters) 37 REAL(wp), PUBLIC :: rn_e3zps_rat !: minimum thickness ration for partial steps 38 INTEGER , PUBLIC :: nn_msh !: = 1 create a mesh-mask file 36 REAL(wp), PUBLIC :: rn_rdt !: time step for the dynamics and tracer 39 37 REAL(wp), PUBLIC :: rn_atfp !: asselin time filter parameter 40 REAL(wp), PUBLIC :: rn_rdt !: time step for the dynamics and tracer41 INTEGER , PUBLIC :: nn_closea !: =0 suppress closed sea/lake from the ORCA domain or not (=1)42 38 INTEGER , PUBLIC :: nn_euler !: =0 start with forward time step or not (=1) 43 39 LOGICAL , PUBLIC :: ln_iscpl !: coupling with ice sheet … … 58 54 REAL(wp), PUBLIC :: rn_bt_cmax !: Maximum allowed courant number (used if ln_bt_auto=T) 59 55 60 !! Vertical grid parameter for domzgr61 !! ==================================62 REAL(wp) :: ppsur !: ORCA r4, r2 and r05 coefficients63 REAL(wp) :: ppa0 !: (default coefficients)64 REAL(wp) :: ppa1 !:65 REAL(wp) :: ppkth !:66 REAL(wp) :: ppacr !:67 !68 ! If both ppa0 ppa1 and ppsur are specified to 0, then69 ! they are computed from ppdzmin, pphmax , ppkth, ppacr in dom_zgr70 REAL(wp) :: ppdzmin !: Minimum vertical spacing71 REAL(wp) :: pphmax !: Maximum depth72 !73 LOGICAL :: ldbletanh !: Use/do not use double tanf function for vertical coordinates74 REAL(wp) :: ppa2 !: Double tanh function parameters75 REAL(wp) :: ppkth2 !:76 REAL(wp) :: ppacr2 !:77 56 78 57 ! !! old non-DOCTOR names still used in the model 79 INTEGER , PUBLIC :: ntopo !: = 0/1 ,compute/read the bathymetry file80 REAL(wp), PUBLIC :: e3zps_min !: miminum thickness for partial steps (meters)81 REAL(wp), PUBLIC :: e3zps_rat !: minimum thickness ration for partial steps82 INTEGER , PUBLIC :: nmsh !: = 1 create a mesh-mask file83 58 REAL(wp), PUBLIC :: atfp !: asselin time filter parameter 84 59 REAL(wp), PUBLIC :: rdt !: time step for the dynamics and tracer … … 123 98 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mig !: local ==> global domain i-index 124 99 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mjg !: local ==> global domain j-index 125 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mi0, mi1 !: global ==> local domain i-index !!bug ==> other solution?126 ! ! (mi0=1 and mi1=0 if the global indexis not in the local domain)127 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mj0, mj1 !: global ==> local domain j-index !!bug ==> other solution?128 ! ! (mi0=1 and mi1=0 if the global indexis not in the local domain)100 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mi0, mi1 !: global ==> local domain i-index (mi0=1 and mi1=0 if the global index 101 ! ! is not in the local domain) 102 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: mj0, mj1 !: global ==> local domain j-index (mj0=1 and mj1=0 if the global index 103 ! ! is not in the local domain) 129 104 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: nimppt, njmppt !: i-, j-indexes for each processor 130 105 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: ibonit, ibonjt !: i-, j- processor neighbour existence … … 154 129 !! vertical coordinate and scale factors 155 130 !! --------------------------------------------------------------------- 156 ! !!* Namelist namzgr : vertical coordinate *157 131 LOGICAL, PUBLIC :: ln_zco !: z-coordinate - full step 158 132 LOGICAL, PUBLIC :: ln_zps !: z-coordinate - partial step 159 133 LOGICAL, PUBLIC :: ln_sco !: s-coordinate or hybrid z-s coordinate 160 134 LOGICAL, PUBLIC :: ln_isfcav !: presence of ISF 161 LOGICAL, PUBLIC :: ln_linssh !: variable grid flag162 163 135 ! ! ref. ! before ! now ! after ! 164 136 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: e3t_0 , e3t_b , e3t_n , e3t_a !: t- vert. scale factor [m] … … 192 164 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: e3tp , e3wp !: ocean bottom level thickness at T and W points 193 165 194 !!gm This should be removed from here.... ==>>> only used in domzgr at initialization phase195 !! s-coordinate and hybrid z-s-coordinate196 !! =----------------======---------------197 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: gsigt, gsigw !: model level depth coefficient at t-, w-levels (analytic)198 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: gsi3w !: model level depth coefficient at w-level (sum of gsigw)199 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) :: esigt, esigw !: vertical scale factor coef. at t-, w-levels200 201 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hbatv , hbatf !: ocean depth at the vertical of v--f202 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hbatt , hbatu !: t--u points (m)203 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: scosrf, scobot !: ocean surface and bottom topographies204 ! ! (if deviating from coordinate surfaces in HYBRID)205 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hifv , hiff !: interface depth between stretching at v--f206 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: hift , hifu !: and quasi-uniform spacing t--u points (m)207 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: rx1 !: Maximum grid stiffness ratio208 !!gm end209 166 210 167 !!---------------------------------------------------------------------- 211 168 !! masks, bathymetry 212 169 !! --------------------------------------------------------------------- 213 INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbathy !: number of ocean level (=0, 1, ... , jpk-1)214 INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbkt, mbku, mbkv !: bottom last wet T-, U- and W-level215 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: bathy !: ocean depth (meters)170 !!gm INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbathy !: number of ocean level (=0, 1, ... , jpk-1) 171 INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbkt, mbku, mbkv !: bottom last wet T-, U- and V-level 172 !!gm REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: bathy !: ocean depth (meters) 216 173 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: tmask_i !: interior domain T-point mask 217 174 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: tmask_h !: internal domain T-point mask (Figure 8.5 NEMO book) … … 336 293 ! 337 294 ALLOCATE( gdept_1d(jpk) , gdepw_1d(jpk) , & 338 & e3t_1d (jpk) , e3w_1d (jpk) , e3tp (jpi,jpj), e3wp(jpi,jpj) , & 339 & gsigt (jpk) , gsigw (jpk) , gsi3w(jpk) , & 340 & esigt (jpk) , esigw (jpk) , STAT=ierr(7) ) 341 ! 342 ALLOCATE( hbatv (jpi,jpj) , hbatf (jpi,jpj) , & 343 & hbatt (jpi,jpj) , hbatu (jpi,jpj) , & 344 & scosrf(jpi,jpj) , scobot(jpi,jpj) , & 345 & hifv (jpi,jpj) , hiff (jpi,jpj) , & 346 & hift (jpi,jpj) , hifu (jpi,jpj) , rx1(jpi,jpj) , STAT=ierr(8) ) 347 348 ALLOCATE( mbathy (jpi,jpj) , bathy (jpi,jpj) , & 349 & tmask_i(jpi,jpj) , tmask_h(jpi,jpj) , & 295 & e3t_1d (jpk) , e3w_1d (jpk) , e3tp (jpi,jpj), e3wp(jpi,jpj) , STAT=ierr(7) ) 296 ! 297 ALLOCATE( tmask_i(jpi,jpj) , tmask_h(jpi,jpj) , & 350 298 & ssmask (jpi,jpj) , ssumask(jpi,jpj) , ssvmask(jpi,jpj) , ssfmask(jpi,jpj) , & 351 299 & mbkt (jpi,jpj) , mbku (jpi,jpj) , mbkv (jpi,jpj) , STAT=ierr(9) ) 352 300 ! 353 301 ALLOCATE( misfdep(jpi,jpj) , mikt(jpi,jpj) , miku(jpi,jpj) , & 354 302 & risfdep(jpi,jpj) , mikv(jpi,jpj) , mikf(jpi,jpj) , STAT=ierr(10) ) 355 303 ! 356 304 ALLOCATE( tmask(jpi,jpj,jpk) , umask(jpi,jpj,jpk) , & 357 305 & vmask(jpi,jpj,jpk) , fmask(jpi,jpj,jpk) , STAT=ierr(11) ) 358 306 ! 359 307 ALLOCATE( wmask(jpi,jpj,jpk) , wumask(jpi,jpj,jpk), wvmask(jpi,jpj,jpk) , STAT=ierr(12) ) 360 308 !
Note: See TracChangeset
for help on using the changeset viewer.