| ... | ... | @@ -23,19 +23,20 @@ Here we show a view of ORCA2/ORCA025 vertical grid with depth and vertical scale |
|
|
|

|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Partial step :
|
|
|
|
--------------------------
|
|
|
|
__Partial step__ :
|
|
|
|
when using z coordinate, we have a problem with depth, in contrast to the sigma coordinate which fit the change of bottom topography.
|
|
|
|
Here, we let the model to vary the scale factor e3t at the bottom so that it can see the variations of fine reliefs, we insert a ratio max, a threshold which gives the percentage of "relief" present in the last mesh.
|
|
|
|
|
|
|
|
```console
|
|
|
|
ln_zps = .true.
|
|
|
|
rn_e3zps_min= 25. ! partial step thickness is set larger than the minimum of
|
|
|
|
rn_e3zps_rat= 0.2 ! rn_e3zps_min and rn_e3zps_rat * e3t, with 0 < rn_e3zps_rat < 1
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Min depth viewed by the model.
|
|
|
|
In case of Tidal cycles, it 's a key parameter to increase to prevent model blowup
|
|
|
|
-------------------------
|
|
|
|
__Hmin value__ : Min depth viewed by the model.
|
|
|
|
In case of Tidal cycles, it 's a key parameter to increase, this is to prevent model blowup, (tricky for runoff to deal with high resolution configuration)
|
|
|
|
|
|
|
|
rn_hmin = -3 ! min depth of the ocean (>0) or min number of ocean level (<0)
|
|
|
|
|
| ... | ... | @@ -47,84 +48,226 @@ rn_hmin = -3 ! min depth of the ocean (>0) or min number of ocean level (<0) |
|
|
|
========================
|
|
|
|
#### Some description of namelist keys
|
|
|
|
|
|
|
|
=====================================
|
|
|
|
| **Domain & Run management namelists** keys | Description | tips | dependency |
|
|
|
|
|:---:|:---:|:---:|:---:|
|
|
|
|
|
|
|
|
| **Domain & Run management** keys | Description | tips | dependency |
|
|
|
|
|:---:|:---:|:---|:---|
|
|
|
|
| namrun | nn_rstctl | 2: read the date on restart file | |
|
|
|
|
| | ln_rstart | T / F | |
|
|
|
|
| namdom | ln_linssh | linear free surface : e3 before, now and after are set equal one for all, and we use exactly the same calculation as in non-linear case (except that update of e3 at each time-step is by-passed) | |
|
|
|
|
| | rn_dt | time step | divisible by 86400s : .. 900/960/1080/1152/1200/1350/1440/1600/1800.. |
|
|
|
|
| | rn_hmin | - | Minimum levels nemo could see (tricky for runoff to deal with high resolution config) |
|
|
|
|
| | nn_leapy | False for clim runs | |
|
|
|
|
| | ln_rstart | if True, nn_rstctl = 2 | |
|
|
|
|
| | ln_rst_list | with nn_stock_list (list of restarts index) | |
|
|
|
|
| namdom | rn_dt | time step | divisible by 86400s : .. 150/160/180/200/240/270/ .../900/960/1080/1152/1200/1350/1440/1600/1800.. |
|
|
|
|
| | ln_linssh | linear free surface e3 before, now and after are set equal one for all, and we use exactly the same calculation as in non-linear case (except that update of e3 at each time-step is by-passed) | importance for tidal forcing |
|
|
|
|
| | ln_meshmask | | jpni!=0 / jpnj!=0 |
|
|
|
|
| namtsd | ln_tsd_init | | if False, it will wait for a restart file (if ln_restart T) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TODO
|
|
|
|
nn_sbc issue
|
|
|
|
rdt & nn_sbc
|
|
|
|
-------------------
|
|
|
|
| **Surface Boundary Condition** keys | Description | tips | dependency |
|
|
|
|
|:---:|:---:|:---|:---|
|
|
|
|
| namsbc | nn_fsbc | ( timestep * nn_fsbc )./60 = frequency in minutes you prescribed the 1h atmo field interpolated in time ) | for instance if you have 1h hour input frequency (ts=150s/nn_fsbc=8) => each 20 min, nemo will interpolate your input data / better if 15,20,30 ... |
|
|
|
|
| | ln_usr | user defined | ln_blk=F |
|
|
|
|
| | ln_blk | bulk flux | ln_usr=F |
|
|
|
|
| | ln_traqsr | for chloro | |
|
|
|
|
| | ln_dm2dc | dependant of frequency of shortwave radiation | if shortwave inputs frequency <24h then ln_dm2dc= .false. |
|
|
|
|
| | ln_apr_dyn | | ln_apr_obc=T |
|
|
|
|
| namsbc_blk | ln_NCAR | often used | |
|
|
|
|
| | ln_ECMWF | prefered | |
|
|
|
|
| | rn_zqt | caution with rhum z value | |
|
|
|
|
| namsbc_rnf | ln_rnf_mouth | add mixing term for runoff | |
|
|
|
|
| | ln_rnf_depth | use of runoff file (ln_rnf_depth_ini=T) and change depth manually for each points / need to be generated with the same number of procs | |
|
|
|
|
| | ln_rnf_tem | use of runoff file and give a given value for each points | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--------------------
|
|
|
|
| **Lateral boundary condition** keys | Description | tips | dependency |
|
|
|
|
|:---:|:---:|:---|:---|
|
|
|
|
| namlbc | rn_shlat | | |
|
|
|
|
| namtide | ln_tide | for SAL ln_tide_pot=T / ln_scal_load=T | |
|
|
|
|
| nambdy (need coordinates files) | (physical) | | if condition "frs" on tracers : cn_tra ='frs' the same for "dyn3d" |
|
|
|
|
| | (physical+tide) | | |
|
|
|
|
| | (runoff) | | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| | ln_vol=T / nn_volctl=0| |
|
|
|
|
| nambdydta | here user give coordinate and file ready to be used by nemo | |
|
|
|
|
| | ln_full_vel | compute full velocity but normally we give Ubar / u on inputs | bn_u2d = 'none' / bn_v2d = 'none' |
|
|
|
|
|
|
|
|
|
|
|
|
===================================
|
|
|
|
| **Surface Boundary Condition namelists** keys | Description | tips | dependency |
|
|
|
|
| namsbc | nn_fsbc | ( timestep * nn_fsbc )./60 = frequency in minutes you prescribed the 1h atmo field interpolated in time ) | for instance if you have 1h hour input frequency (ts=150s/nn_fsbc=8) => each 20 min, nemo will interpolate your input data / better if 15,20,30 ... |
|
|
|
|
### bdy
|
|
|
|
```console
|
|
|
|
nb_bdy=1
|
|
|
|
ln_coords_file = .true. ! =T : read bdy coordinates from file
|
|
|
|
cn_coords_file = 'bdy_coordinates.nc' ! bdy coordinates files
|
|
|
|
ln_mask_file = .false. ! =T : read mask from file
|
|
|
|
cn_mask_file = '' ! name of mask file (if ln_mask_file=.TRUE.)
|
|
|
|
cn_dyn2d = 'flather' !
|
|
|
|
nn_dyn2d_dta = 1 ! = 0, bdy data are equal to the initial state
|
|
|
|
! ! = 1, bdy data are read in 'bdydata .nc' files
|
|
|
|
! ! = 2, use tidal harmonic forcing data from files
|
|
|
|
! ! = 3, use external data AND tidal harmonic forcing
|
|
|
|
cn_dyn3d = 'frs' ! orlanski
|
|
|
|
nn_dyn3d_dta = 1 ! = 0, bdy data are equal to the initial state
|
|
|
|
! ! = 1, bdy data are read in 'bdydata .nc' files
|
|
|
|
cn_tra = 'frs' !
|
|
|
|
nn_tra_dta = 1
|
|
|
|
```
|
|
|
|
------ Open boundary data set 1 ------
|
|
|
|
Boundary definition read from file bdy_coordinates.nc
|
|
|
|
|
|
|
|
nn_fsbc
|
|
|
|
ln_blk
|
|
|
|
ln_traqsr
|
|
|
|
ln_dm2dc
|
|
|
|
ln_rnf
|
|
|
|
Boundary conditions for barotropic solution:
|
|
|
|
Flather radiation condition
|
|
|
|
boundary data taken from file
|
|
|
|
|
|
|
|
Boundary conditions for baroclinic velocities:
|
|
|
|
Flow Relaxation Scheme
|
|
|
|
boundary data taken from file
|
|
|
|
NO relaxation on baroclinic velocities
|
|
|
|
|
|
|
|
ln_NCAR
|
|
|
|
ln_ECMWF
|
|
|
|
Boundary conditions for temperature and salinity:
|
|
|
|
Flow Relaxation Scheme
|
|
|
|
boundary data taken from file
|
|
|
|
NO T/S relaxation
|
|
|
|
|
|
|
|
runoff
|
|
|
|
runoffs (modif a faire ds namelist ou code ?)
|
|
|
|
* mouth mixing
|
|
|
|
* fichier depths
|
|
|
|
attention qd on utilise depths.nc en entree, il doit etre generer avec le mm nombre de procs que la simu lancee
|
|
|
|
|
|
|
|
* fichier tempe
|
|
|
|
* apply bdy
|
|
|
|
|
|
|
|
|
|
|
|
atmospheric pressure forcing
|
|
|
|
### bdy tide
|
|
|
|
```console
|
|
|
|
nb_bdy =1
|
|
|
|
ln_coords_file = .true.
|
|
|
|
cn_coords_file = 'bdy_coordinates.nc',
|
|
|
|
cn_dyn2d = 'flather' !
|
|
|
|
nn_dyn2d_dta = 3
|
|
|
|
cn_dyn3d = 'frs'
|
|
|
|
nn_dyn3d_dta = 1
|
|
|
|
cn_tra = 'frs'
|
|
|
|
nn_tra_dta = 1
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### runoff
|
|
|
|
```console
|
|
|
|
nb_bdy =2
|
|
|
|
ln_coords_file = .true., .true.
|
|
|
|
cn_coords_file = 'bdy_coordinates.nc', 'bdy_runoffs_coordinates.nc'
|
|
|
|
cn_dyn2d = 'flather' , 'frs'
|
|
|
|
nn_dyn2d_dta = 1 , 1
|
|
|
|
cn_dyn3d = 'frs' , 'none'
|
|
|
|
nn_dyn3d_dta = 1 , 1
|
|
|
|
cn_tra = 'frs' , 'runoff'
|
|
|
|
nn_tra_dta = 1 , 1
|
|
|
|
nn_rimwidth = 10 ,1
|
|
|
|
|
|
|
|
|
|
|
|
for 2e set
|
|
|
|
bn_u2d = 'bdyU_u2d_runoffs' , 24 , 'vobtcrtx', .true. , .false., 'yearly' , '' , '' , ''
|
|
|
|
bn_v2d = 'bdyV_u2d_runoffs' , 24 , 'vobtcrty',
|
|
|
|
|
|
|
|
===================================
|
|
|
|
| **Lateral boundary condition** keys | Description | tips | dependency |
|
|
|
|
| nambdy | ln_dm2dc = .false. | | if shortwave inputs frequency <24h then ln_dm2dc = .false. |
|
|
|
|
| nambdy | ln_tra_dmp=.false. | | if condition "frs" on tracers : cn_tra ='frs' the same for "dyn3d" |
|
|
|
|
```
|
|
|
|
Boundary definition read from file bdy_runoffs_coordinates.nc
|
|
|
|
|
|
|
|
Boundary conditions for barotropic solution:
|
|
|
|
Flow Relaxation Scheme
|
|
|
|
boundary data taken from file
|
|
|
|
|
|
|
|
shlat
|
|
|
|
Boundary conditions for baroclinic velocities:
|
|
|
|
no open boundary condition
|
|
|
|
NO relaxation on baroclinic velocities
|
|
|
|
|
|
|
|
ln_full_vel ?
|
|
|
|
Boundary conditions for temperature and salinity:
|
|
|
|
Runoff conditions : Neumann for T and specified to 0.1 for salinity
|
|
|
|
NO T/S relaxation
|
|
|
|
|
|
|
|
bdy
|
|
|
|
* schema flather/ orlanski/ neumann / frs
|
|
|
|
* (2 facon)
|
|
|
|
bdy avec marées
|
|
|
|
|
|
|
|
bdy differentes facon de precrire
|
|
|
|
|
|
|
|
tides
|
|
|
|
|
|
|
|
====================================
|
|
|
|
### exemple slices
|
|
|
|
```console
|
|
|
|
nb_bdy = 5 ! number of open boundary sets
|
|
|
|
!
|
|
|
|
ln_coords_file = .false.,.false.,.false.,.false.,.false. ! =T : read bdy coordinates from file
|
|
|
|
cn_coords_file = 'none','none','none','none','none'
|
|
|
|
!
|
|
|
|
ln_mask_file = .false. ! =T : read mask from file
|
|
|
|
cn_mask_file = 'none'
|
|
|
|
!
|
|
|
|
cn_dyn2d = 'flather','flather','flather','flather','flather'
|
|
|
|
nn_dyn2d_dta = 3,3,3,3,3 ! = 0, bdy data are equal to the initial state
|
|
|
|
! ! = 1, bdy data are read in 'bdydata .nc' files
|
|
|
|
! ! = 2, use tidal harmonic forcing data from files
|
|
|
|
! ! = 3, use external data AND tidal harmonic forcing
|
|
|
|
cn_dyn3d = 'frs','frs','frs','frs','frs' !
|
|
|
|
nn_dyn3d_dta = 1,1,1,1,1 ! = 0, bdy data are equal to the initial state
|
|
|
|
! ! = 1, bdy data are read in 'bdydata .nc' files
|
|
|
|
cn_tra = 'frs','frs','frs','frs','frs' !
|
|
|
|
nn_tra_dta = 1,1,1,1,1
|
|
|
|
|
|
|
|
nn_rimwidth = 10,10,10,10,10 ! width of the relaxation zone
|
|
|
|
ln_vol = .false.
|
|
|
|
nn_volctl = 1
|
|
|
|
|
|
|
|
|
|
|
|
## no coordinates.nc
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
&nambdy_index ! structured open boundaries definition
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
ctypebdy ='S' !! S1 ! Open boundary type (W,E,S or N)
|
|
|
|
nbdyind = 2 ! indice of velocity row or column
|
|
|
|
nbdybeg = 332 ! indice of segment start
|
|
|
|
nbdyend = 1716 ! indice of segment end
|
|
|
|
/
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
&nambdy_index ! structured open boundaries definition
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
ctypebdy ='S' !! S2 ! Open boundary type (W,E,S or N)
|
|
|
|
nbdyind = 57 ! indice of velocity row or column
|
|
|
|
nbdybeg = 69 ! indice of segment start
|
|
|
|
nbdyend = 349 ! indice of segment end
|
|
|
|
/
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
&nambdy_index ! structured open boundaries definition
|
|
|
|
!!-----------------------------------------------------------------------
|
|
|
|
ctypebdy ='W' !! W1 ! Open boundary type (W,E,S or N)
|
|
|
|
nbdyind = 58 ! indice of velocity row or column
|
|
|
|
nbdybeg = 91 ! indice of segment start
|
|
|
|
nbdyend = 139 ! indice of segment end
|
|
|
|
/
|
|
|
|
|
|
|
|
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
&nambdy_dta ! N1 ! open boundaries - external data (see nam_bdy)
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
ln_zinterp = .false.
|
|
|
|
ln_full_vel = .true.
|
|
|
|
cn_dir = './BDY/'
|
|
|
|
...
|
|
|
|
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
&nambdy_tide ! N1 ! tidal forcing at open boundaries (default: OFF)
|
|
|
|
!-----------------------------------------------------------------------
|
|
|
|
filtide = './BDY/bdytide_FES-TROPICO12_N1_' ! file name root of tidal forcing files
|
|
|
|
/
|
|
|
|
....
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
---------------------
|
|
|
|
| **Top/Bottom boundary condition** keys | Description | tips | dependency |
|
|
|
|
|:---:|:---:|:---:|:---:|
|
|
|
|
| ln_lin | | | |
|
|
|
|
| ln_trabbl | | | |
|
|
|
|
|
|
|
|
====================================
|
|
|
|
---------------------
|
|
|
|
| **Tracer (T-S) namelists** keys | Description | tips | dependency |
|
|
|
|
|
|
|
|
|:---:|:---:|:---:|:---:|
|
|
|
|
eos
|
|
|
|
|
|
|
|
Advection scheme tracers
|
| ... | ... | @@ -134,7 +277,7 @@ aht/avt |
|
|
|
ldf
|
|
|
|
mle
|
|
|
|
|
|
|
|
====================================
|
|
|
|
---------------------
|
|
|
|
| **Dynamics namelists** keys | Description | tips | dependency |
|
|
|
|
|
|
|
|
Vertical coordinate :
|
| ... | ... | @@ -158,9 +301,9 @@ lateral diffusion |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
====================================
|
|
|
|
----------------------
|
|
|
|
| **Vertical physics** keys | Description | tips | dependency |
|
|
|
|
|
|
|
|
|:---:|:---:|:---:|:---:|
|
|
|
|
TKE/GLS
|
|
|
|
double diffusive mixing
|
|
|
|
|
| ... | ... | |
| ... | ... | |