1 | //!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
2 | //!! NEMO/OPA : 1 - run manager (namrun) |
---|
3 | //!! namelists 2 - Domain (nam_zgr, nam_zgr_sco, namdom) |
---|
4 | //!! 3 - Surface boundary (namsbc, namsbc_ana, namsbc_flx, namsbc_clio, namsbc_core |
---|
5 | //!! namsbc_cpl, namqsr, namsbc_rnf, namsbc_ssr, namalb) |
---|
6 | //!! 4 - lateral boundary (namlbc, namcla, namobc, namagrif, nambdy, namtide) |
---|
7 | //!! 5 - bottom boundary (nambfr, nambbc, nambbl) |
---|
8 | //!! 6 - Tracer (nameos, nam_traadv, nam_traldf, namtdp) |
---|
9 | //!! 7 - dynamics (nam_dynadv, nam_dynvor, nam_dynhpg, namflg, nam_dynspg, nam_dynldf) |
---|
10 | //!! 8 - Verical physics (namzdf, namnpc, namric, namtke, namkpp, namddm) |
---|
11 | //!! 9 - diagnostics (namtrd, namgap, namspr, namflo, namptr) |
---|
12 | //!! 9 - miscellaneous (namsol, nam_mpp, nam_mpp_dyndist, namctl) |
---|
13 | //!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
---|
14 | //! CAUTION: some scripts does not support CAPITALs for logical use .true./.false., not .TRUE./.FALSE. |
---|
15 | |
---|
16 | //!----------------------------------------------------------------------- |
---|
17 | //&namrun ! parameters of the run |
---|
18 | //!----------------------------------------------------------------------- |
---|
19 | // no = 0 ! job number |
---|
20 | // cexper = "GYRE" ! experience name |
---|
21 | // cn_ocerst_in = "restart" ! suffix of ocean restart name (input) |
---|
22 | // cn_ocerst_out = "restart" ! suffix of ocean restart name (output) |
---|
23 | // ln_rstart = .false. ! start from rest (F) or from a restart file (T) |
---|
24 | // nrstdt = 0 ! restart control = 0 nit000 is not compared to the restart file value |
---|
25 | // ! = 1 use ndate0 in namelist (not the value in the restart file) |
---|
26 | // ! = 2 calendar parameters read in the restart file |
---|
27 | // nit000 = 1 ! first time step |
---|
28 | // nitend = 10 !4320 ! last time step |
---|
29 | int ndate0 = 010101;// ! initial calendar date yymmdd (used if nrstdt=1) |
---|
30 | // nleapy = 30 ! Leap year calendar (1) or not (0) |
---|
31 | // ninist = 0 ! output the initial state (1) or not (0) |
---|
32 | // nstock = 10 ! 4320 ! frequency of creation of a restart file (modulo referenced to 1) |
---|
33 | // nwrite = 60 ! frequency of write in the output file (modulo referenced to nit000) |
---|
34 | // ln_dimgnnn = .false. ! DIMG file format: 1 file for all processors (F) or by processor (T) |
---|
35 | // ln_mskland = .false. ! mask land points (1.e+20) in NetCDF outputs (costly: + ~15%) |
---|
36 | /// |
---|
37 | //!----------------------------------------------------------------------- |
---|
38 | //&namdom ! space and time domain (bathymetry, mesh, timestep) |
---|
39 | //!----------------------------------------------------------------------- |
---|
40 | // ntopo = 0 ! compute (=0) or read(=1) the bathymetry file |
---|
41 | double e3zps_min = 5.;// ! the thickness of the partial step is set larger than the minimum |
---|
42 | double e3zps_rat = 0.1;// ! of e3zps_min and e3zps_rat * e3t (N.B. 0<e3zps_rat<1) |
---|
43 | // nmsh = 1 ! create (=1) a mesh file (coordinates, scale factors, masks) or not (=0) |
---|
44 | // nacc = 0 ! =1 acceleration of convergence method used, rdt < rdttra(k) |
---|
45 | // ! =0, no acceleration, rdt = rdttra |
---|
46 | double atfp = 0.1;// ! asselin time filter parameter |
---|
47 | double rdt = 7200.; // ! time step for the dynamics (and tracer if nacc=0) |
---|
48 | double rdtmin = 7200.; // ! minimum time step on tracers (used if nacc=1) |
---|
49 | double rdtmax = 7200.; // ! maximum time step on tracers (used if nacc=1) |
---|
50 | double rdth = 800.; // ! depth variation of tracer time step (used if nacc=1) |
---|
51 | // nn_baro = 60 ! number of barotropic time step (for the split explicit algorithm) ("key_dynspg_ts") |
---|
52 | // nclosea = 0 ! = 0 no closed sea in the model domain |
---|
53 | // ! = 1 closed sea (Black Sea, Caspian Sea, Great US Lakes...) |
---|
54 | //!----------------------------------------------------------------------- |
---|
55 | //&namqsr ! penetrative solar radiation |
---|
56 | //!----------------------------------------------------------------------- |
---|
57 | // ln_traqsr = .true. ! penetrative solar radiation (T) or not (F) |
---|
58 | double rabs = 0.58;// ! fraction of qsr associated with xsi1 |
---|
59 | double xsi1 = 0.35;// ! first depth of extinction |
---|
60 | double xsi2 = 23.0;// ! second depth of extinction |
---|
61 | |
---|
62 | //!----------------------------------------------------------------------- |
---|
63 | //&nambfr ! bottom friction |
---|
64 | //!----------------------------------------------------------------------- |
---|
65 | // nbotfr = 2 ! type of bottom friction : = 0 : no slip, = 2 : nonlinear friction |
---|
66 | // ! = 3 : free slip, = 1 : linear friction |
---|
67 | double bfri1 = 4.e-4;// ! bottom drag coefficient (linear case) |
---|
68 | double bfri2 = 1.e-3;// ! bottom drag coefficient (non linear case) |
---|
69 | double bfeb2 = 2.5e-3;// ! bottom turbulent kinetic energy background (m^2/s^2) |
---|
70 | |
---|
71 | //!----------------------------------------------------------------------- |
---|
72 | //&nameos ! ocean physical parameters |
---|
73 | //!----------------------------------------------------------------------- |
---|
74 | // neos = 2 ! type of equation of state and Brunt-Vaisala frequency |
---|
75 | // ! = 0, UNESCO (formulation of Jackett and McDougall (1994) and of McDougall (1987) ) |
---|
76 | // ! = 1, linear: rho(T) = rau0 * ( 1.028 - ralpha * T ) |
---|
77 | // ! = 2, linear: rho(T,S) = rau0 * ( rbeta * S - ralpha * T ) |
---|
78 | double ralpha = 2.e-4;// ! thermal expension coefficient (neos= 1 or 2) |
---|
79 | double rbeta = 7.7e-4;// ! saline expension coefficient (neos= 2) |
---|
80 | //!----------------------------------------------------------------------- |
---|
81 | //&nam_traldf ! lateral diffusion scheme for tracer |
---|
82 | //!----------------------------------------------------------------------- |
---|
83 | double aht0 = 1000.;// ! horizontal eddy diffusivity for tracers [m2/s] |
---|
84 | double ahtb0 = 0.;// ! background eddy diffusivity for ldf_iso [m2/s] |
---|
85 | double aeiv0 = 1000.;// ! eddy induced velocity coefficient [m2/s] (require "key_traldf_eiv") |
---|
86 | |
---|
87 | //!----------------------------------------------------------------------- |
---|
88 | //&nam_dynhpg ! Hydrostatic pressure gradient option |
---|
89 | //!----------------------------------------------------------------------- |
---|
90 | double gamm = 0.e0;// ! weighting coefficient (wdj scheme) |
---|
91 | |
---|
92 | //!----------------------------------------------------------------------- |
---|
93 | //&nam_dynldf ! lateral diffusion on momentum |
---|
94 | //!----------------------------------------------------------------------- |
---|
95 | double ahm0 = 100000.;// ! horizontal eddy viscosity [m2/s] |
---|
96 | double ahmb0 = 0.;// ! background eddy viscosity for ldf_iso [m2/s] |
---|
97 | |
---|
98 | //!----------------------------------------------------------------------- |
---|
99 | //&namzdf ! vertical physics |
---|
100 | //!----------------------------------------------------------------------- |
---|
101 | double avm0 = 1.2e-4;// ! vertical eddy viscosity [m2/s] (background Kz if not "key_zdfcst") |
---|
102 | double avt0 = 1.2e-5;// ! vertical eddy diffusivity [m2/s] (background Kz if not "key_zdfcst") |
---|
103 | double avevd = 100.;// ! vertical coefficient for enhanced diffusion scheme [m2/s] |
---|
104 | |
---|
105 | //!----------------------------------------------------------------------- |
---|
106 | //&namsol ! elliptic solver / island / free surface |
---|
107 | //!----------------------------------------------------------------------- |
---|
108 | // nsolv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg) |
---|
109 | // ! =2 successive-over-relaxation (sor) |
---|
110 | // ! =3 FETI (fet) ("key_feti") |
---|
111 | // ! =4 sor with extra outer halo |
---|
112 | int nsol_arp = 0;// ! absolute/relative (0/1) precision convergence test |
---|
113 | int nmin = 210;// ! minimum of iterations for the SOR solver |
---|
114 | int nmax = 800;// ! maximum of iterations for the SOR solver |
---|
115 | int nmod = 10;// ! frequency of test for the SOR solver |
---|
116 | double eps = 1.e-6;// ! absolute precision of the solver |
---|
117 | double resmax = 1.e-10;// ! absolute precision for the SOR solver |
---|
118 | double sor = 1.96;// ! optimal coefficient for SOR solver (to be adjusted with the domain) |
---|
119 | double epsisl = 1.e-10;// ! absolute precision on stream function solver |
---|
120 | int nmisl = 4000;// ! maximum pcg iterations for island ("key_islands") |
---|
121 | double rnu = 1.;// ! strength of the additional force used in filtered free surface |
---|