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.
2_quickstart.md in utils/tools/SIREN/src/docsrc – NEMO

source: utils/tools/SIREN/src/docsrc/2_quickstart.md @ 12080

Last change on this file since 12080 was 12080, checked in by jpaul, 4 years ago

update nemo trunk

File size: 26.7 KB
RevLine 
[6393]1# How To Use (Quick Start)
2
3@tableofcontents
4
5SIREN is a software to set up regional configuration with
6 [NEMO](http://www.nemo-ocean.eu).<br/>
7Actually SIREN creates all the input files you need to run a NEMO regional configuration.<br/>
8 
[12080]9SIREN is composed of a set of Fortran programs :
[6393]10<ul>
11 <li>create_coord.f90 to create regional grid coordinates.</li>
12 <li>create_bathy.f90 to create regional grid bathymetry.</li>
13 <li>merge_bathy.f90 to merge regional grid bathymetry with wider grid bathymetry
14 at boundaries.
15 @note the goal of this step is to avoid break in Bathymetry.
16 This break may cause inconsistency between forcing fields  at boundary and regional fields.
17 </li>
[7646]18 <li>create_meshmask.f90 to create meshmask or domain_cfg file(s) which contain(s) all the ocean domain informations.</li>
[12080]19 <li>create_layout.f90 to create/compute the domain layout of your configuration.</li>
[6393]20 <li>create_restart.f90 to create initial state file from coarse grid restart
21 or standard outputs.
22 @note this program could also be used to refined other input fields from a wider
23 configuations (as runoff, chlorophyll etc...)
24 </li>
25 <li>create_boundary.F90 to create boundaries conditions from wider configurations
26 output fields.
27 </li>
28</ul>
29
30@warning SIREN can not:
31<ul>
32<li>create global configuration.</li>
33<li>create configuarion around or close to North pole.</li>
34<li>change number of vertical level.</li>
35</ul>
36
37Here after we briefly describe how to use each programs,
38and so how to create your own regional configuration.
[12080]39@note As demonstrator for a first start a set of GLORYS files (global reanalysis on *ORCA025* grid), as well as examples of namelists are available [here](https://cloud.mercator-ocean.fr/public.php?service=files&t=acf44730538cdda0da548ffc5f99fb55).
[7646]40
[6393]41<!-- ######################################################################  -->
42# Create coordinates file # {#coord}
43
44To create your own configuration, you first have to create a coordinates file on your domain of study.<br/>
45SIREN allows you to create this coordinates file from a wider coordinates file.<br/>
46The coordinates file created could simply be an extraction, or a refinment of
47the wide grid.<br/>
48
49To create this new cooridnates file, you have to run :
50~~~~~~~~~~~~~~~~~~
51./SIREN/create_coord.exe create_coord.nam
52~~~~~~~~~~~~~~~~~~
53
54Here after is an example of namelist for *create_coord.exe*.<br/>
55In this example, you create a coordinates file named *coord_fine.nc*.<br/>
56This new coordinates file is refined from an extraction of *coordinates_ORCA025.nc*.
57~~~~~~~~~~~
58&namlog
59/
60
61&namcfg
62   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
[7646]63   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
[12080]64   cn_dumcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dummy.cfg"
[6393]65/
66
[12080]67&namsrc
[6393]68   cn_coord0 = "PATH/coordinates_ORCA025.nc"
69   in_perio0 = 4
70/
71
72&namvar
73/
74
75&namnst
76   in_imin0 = 1070
77   in_imax0 = 1072
78   in_jmin0 = 607
79   in_jmax0 = 609
80
81   in_rhoi = 2
82   in_rhoj = 3
83/
84
85&namout
86   cn_fileout = "PATH/coord_fine.nc"
87/
88~~~~~~~~~~~
89
[12080]90@note you could define sub domain with coarse grid indices or with coordinates.
91
[6393]92Let's get describe this namelist.<br/>
93First we have the **namlog** sub-namelist. This sub-namelist set parameters of the log
94file.<br/>
95All the parameters of this sub-namelist have default value, so you could let it
96empty, as done here.<br/> This will create a log file named *create_coord.log*
97
[12080]98## namcfg
[7646]99The **namcfg** sub-namelist defines where found SIREN configuration files.<br/>
100- The variable configuration file defines standard name, default interpolation method,
[6393]101axis,... to be used for some known variables.<br/>
102Obviously, you could add other variables to those already list, in this file.
[7646]103- The dimension configuration file defines dimensions allowed.
[12080]104- The dummy configuration file defines useless dimension or variable. these dimension(s) or variable(s) will not be processed.
[6393]105
[12080]106@note You could find the generic version of those configuration files in the directory *SIREN/cfg*.
[6393]107
[12080]108## namsrc
109The **namsrc** sub-namelist set parameters of the coarse/source
110coordinates file name, path to find it, and the NEMO periodicity of the grid.<br/>
[6393]111
112@note the NEMO periodicity could be choose between 0 to 6:
113<dl>
114<dt>in_perio=0</dt>
115<dd>standard regional model</dd>
116<dt>in_perio=1</dt>
117<dd>east-west cyclic model</dd>
118<dt>in_perio=2</dt>
119<dd>model with symmetric boundary condition across the equator</dd>
120<dt>in_perio=3</dt>
121<dd>regional model with North fold boundary and T-point pivot</dd>
122<dt>in_perio=4</dt>
123<dd>global model with a T-point pivot.<br/>
124example: ORCA2, ORCA025, ORCA12</dd>
125<dt>in_perio=5</dt>
126<dd>regional model with North fold boundary and F-point pivot</dd>
127<dt>in_perio=6</dt>
128<dd>global model with a F-point pivot<br/>
129example: ORCA05</dd>
[12080]130</dd>
[6393]131</dl>
[7646]132@sa For more information see @ref md_src_docsrc_6_perio
[6393]133
[12080]134## namvar
[6393]135The **namvar** sub-namelist lists variables to be used.<br/>
[12080]136By default all the variables of the coarse/source coordinates file are used to create
[6393]137the new coordinates file.<br/>
138The interpolation methods to be used are defined in the configuration variables file (see
[12080]139above). So you do not need to fill this sub-namelist too.
[6393]140
[12080]141## namnst
[6393]142The **namnst** sub-namelist defines the subdomain to be used as well as refinment factor.<br/>
143
144<ul>
[12080]145<li> you could define sub domain with coarse grid indices</li>
146
147~~~~~~~~~~~
148&namnst
149   in_imin0 = 1070
150   in_imax0 = 1072
151   in_jmin0 = 607
152   in_jmax0 = 609
153/
154~~~~~~~~~~~
155
156<li>or with coordinates</li>
157
158~~~~~~~~~~~
159&namnst
160   rn_lonmin0 = -97.9
161   rn_lonmax0 = -62.3
162   rn_latmin0 =   7.7
163   rn_latmax0 =  30.8
164/
165~~~~~~~~~~~
166
[6393]167<li>you can select area quite every where (excepted too close from the North
168pole), and use the refinment factor you want.</li>
169
170~~~~~~~~~~~
[12080]171&namnst
[6393]172   in_imin0 = 1070
173   in_imax0 = 1072
174   in_jmin0 = 607
175   in_jmax0 = 609
176
177   in_rhoi = 2
178   in_rhoj = 3
179/
180~~~~~~~~~~~
181@image html grid_zoom_60.png
[7646]182<center>@image latex grid_zoom_40.png
183</center>
[6393]184<!-- @note ghost cells all around the grid are not shown here. -->
185
186<li>you can select area crossing the east-west overlap of the global ORCA grid.</li>
187
188~~~~~~~~~~~
[12080]189&namnst         
[6393]190   in_imin0 = 1402
191   in_imax0 = 62
192   in_jmin0 = 490
193   in_jmax0 = 570
194
195   in_rhoi = 5
196   in_rhoj = 5
197/               
198~~~~~~~~~~~
199@image html grid_glob_over_30.png
[7646]200<center>@image latex grid_glob_over_20.png
201</center>
[6393]202<!-- @note in blue, the east-west overlap band of ORCA grid. -->
203
204<li>you can select east-west cyclic area.</li>
205
206~~~~~~~~~~~
[12080]207&namnst
[6393]208   in_imin0 = 0
209   in_imax0 = 0
210   in_jmin0 = 390
211   in_jmax0 = 450
212
213   in_rhoi = 1
214   in_rhoj = 1
215/
216~~~~~~~~~~~
217@image html grid_glob_band_30.png
[7646]218<center>@image latex grid_glob_band_20.png
219</center>
[6393]220
221</ul>
222
223Finally the **namout** sub-namelist defines the output file.<br/>
224
225@note All the output files created by SIREN include information about NEMO
226periodicity, as well as source file, indices and refinment used.
227
[12080]228@sa For more information and options to create coordinates, see create_coord.f90
[6393]229
230<!-- ######################################################################  -->
231# Create bathymetry file # {#bathy}
232
233Then you need a Bathymetry file.<br/>
234SIREN allows you to create a Bathymetry extracted or refined from a wider
235Bathymetry grid.<br/>
236
237To create this new bathymetry, you have to run :
238~~~~~~~~~~~~~~~~~~
239./SIREN/create_bathy.exe create_bathy.nam
240~~~~~~~~~~~~~~~~~~
241
242Here after is an example of namelist for *create_bathy.exe*.<br/>
243In this example, you create a bathymetry file named *bathy_fine.nc*.<br/>
244This new bathymetry file is refined from an extraction of *bathy_meter_ORCA025.nc*.<br/>
245Moreover a minimum value of 5m is imposed to the output Bathymetry.
246~~~~~~~~~~~~~~~~~~
247&namlog
248/
249
250&namcfg
251   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
[7646]252   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
[6393]253/
254
[12080]255&namsrc
[6393]256   cn_coord0 = "PATH/coordinates_ORCA025.nc"
257   in_perio0 = 4
258/
259
[12080]260&namtgt
[6393]261   cn_coord1 = "PATH/coord_fine.nc"
262/
263
264&namvar
265   cn_varfile = "Bathymetry:PATH/bathy_meter_ORCA025.nc"
266   cn_varinfo = "Bathymetry: min=5"
267/
268
269&namnst
270   in_rhoi = 2
271   in_rhoj = 3
272/
273
274&namout
275   cn_fileout = "PATH/bathy_fine.nc"     
276/
277~~~~~~~~~~~~~~~~~~
278
279Let's get describe this namelist.<br/>
280
[12080]281## namlog, namcfg
[6393]282First as previously, we have the **namlog** and **namcfg** sub-namelist (see above for more
283explanation).<br/>
284
[12080]285## namsrc
286Then the **namsrc** sub-namelist set parameters of the source/wide
[6393]287coordinates file.<br/>
288@note in all SIREN namelist: <br/>
[7646]289**0** referred to the coarse/wide grid.<br/>
290**1** referred to the fine grid.
[6393]291
[12080]292## namtgt
293In the same way, the **namtgt** sub-namelist  set parameters of the target/fine
[6393]294coordinates file.<br/>
295@note in this namelist example, there is no need to set the variable *in_perio1* to define the NEMO
[7646]296periodicity of the fine grid. Indeed, if this variable is not inform, SIREN tries to read it
297in the global attributes of the file. So if you created the fine coordinates with SIREN, you do not have to
[6393]298fill it. In other case, you should add it to the namelist.
299
[12080]300## namvar
[6393]301The **namvar** sub-namelist lists variables to be used:
302<dl>
303   <dt>cn_varfile</dt>
304      <dd> defines the variable name ("Bathymetry" here) and the input file associated with.
305            @warning The domain of the input Bathymetry have to be larger than the output domain.
306         @note
307         <ul>
308            <li>if the input file is at coarse grid resolution (same than *cn_coord0*), the ouptut Bathymetry will be refined on fine grid.</li>
309            <li>if the input file is a wider bathymetry (already at fine grid resolution), the output Bathymetry will be extracted from this one.</li>
310         </ul>
311      </dd>
312   <dt>cn_varinfo</dt>
313      <dd> defines user's requests for a variable.
314         @note Default interpolation method for the Bathymetry, is *cubic* interpolation.<br/>
315         So you may want to specify a minimum value to avoid negative value, or to change interpolation method.<br/>
316         example: <ul><li>cn_varinfo="Bathymetry: min=1"'</li>
317                      <li>cn_varinfo="Bathymetry: int=linear"</li></ul>
318      </dd>
319</dl>
320
[12080]321## namnst
[6393]322The **namnst** sub-namelist defines the subdomain refinment factor.<br/>
323Of course those refinment factors have to be convenient with refinment
324from coarse grid *cn_coord0* to fine grid *cn_coord1*.
325@note subdomain indices are automatically deduced from fine and coarse grid
326coordinates.
327
[12080]328## namout
[6393]329Finally, this **namout** sub-namelist defines the output file.<br/>
330
331@note All the output files create by SIREN include information about
332source file, indices, refinment and interpolation method used.
333
[12080]334@sa For more information and options to create bathymetry, see
[6393]335create_bathy.f90
336
337<!-- ######################################################################  -->
338# Merge bathymetry file # {#merge}
339
[7646]340The Bathymetry you build, may differ from the wider one.<br/>
[6393]341To avoid issue with boundaries forcing fields, you should merge fine and coarse Bathymetry on boundaries.<br/>
342SIREN allows you to do this.<br/>
343
344To create this merged bathymetry, you have to run :
345~~~~~~~~~~~~~~~~~~
346./SIREN/merge_bathy.exe merge_bathy.nam
347~~~~~~~~~~~~~~~~~~
348
349Here after is an example of namelist for *merge_bathy.exe*.<br/>
350~~~~~~~~~~~~~~~~~~
351&namlog
352/
353
354&namcfg
355   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
[7646]356   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
[6393]357/
358
[12080]359&namsrc
[6393]360   cn_bathy0 = "PATH/bathy_meter_ORCA025.nc"
361   in_perio0 = 4
362/
363
[12080]364&namtgt
[6393]365   cn_bathy1 = "PATH/bathy_fine.nc"
366/
367
368&namnst
369   in_rhoi = 3
370   in_rhoj = 3
371/
372
373&nambdy
374/
375
376&namout
377   cn_fileout = "PATH/bathy_merged.nc"     
378/
379~~~~~~~~~~~~~~~~~~
[12080]380
381## namlog, namcfg
[6393]382In this namelist, you find again the **namlog**, **namcfg** describe above.
383
[12080]384## namsrc
385Then the **namsrc** sub-namelist sets parameters of the source/wide grid.
386However this time, this is the source/wide grid Bathymetry wich have to be informed.
[6393]387
[12080]388## namtgt
389The **namtgt** sub-namelist defines parameters of the target/fine grid Bathymetry.
[6393]390@note here again you could add the *in_perio1* parameter if need be i.e. if your
391fine grid Bathymetry was not created by SIREN.
392
[12080]393## namnst
[6393]394The **namnst** sub-namelist defines the subdomain refinment factor.
395
[12080]396## nambdy
[6393]397The **nambdy** sub-namelist defines the subdomain boundaries.<br/>
[7646]398By default SIREN tries to create boundaries for each side. Boundary exist if there is at least one sea point on the second row of each side. So you could let this namelist empty.
[6393]399@sa For more information about boundaries, see @ref boundary
400
[12080]401## namout
[6393]402Finally, this **namout** sub-namelist defines the output file.<br/>
403
[12080]404@sa For more information and options to merge bathymetry, see
[6393]405merge_bathy.f90
406
407<!-- ######################################################################  -->
[7646]408# Create meshmask (ocean domain informations) # {#meshmask}
409
410
411Depending on the vertical grid you choose to use, NEMO may not see the bathymetry exactly as you defined it just before. To get the ocean domain informations as seen by NEMO, SIREN allows you to create the meshmask file(s) which contain(s) all those informations.<br/>
412Morevoer SIREN allows you to create the *domain_cfg* file which is the new input file for NEMO (release 3.7 and upper).<br/>
413
414To create the meshmask file(s), you have to run :
415~~~~~~~~~~~~~~~~~~
416./SIREN/create_meshmask.exe create_meshmask.nam
417~~~~~~~~~~~~~~~~~~
418
419Here after is an example of namelist for *create_meshmask.exe*.<br/>
420In this example, you create one meshmask file named *mesh_mask.nc*.<br/>
421It uses coordinates file *coord_fine.nc* to define horizontal grid.
422and defines z-coordinate with partial steps.
423The minimum depth of the final Bathymetry is 10m.
424~~~~~~~~~~~
425&namlog
426/
427
428&namcfg
429   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
430   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
431/
432
[12080]433&namsrc
[7646]434   cn_bathy = "PATH/bathy_merged.nc"
435   cn_coord = "PATH/coord_fine.nc"
436   in_perio = 4
437/
438
439&namhgr
440   in_mshhgr = 0
441/
442
443&namzgr
444   ln_zps   = .TRUE.
445   in_nlevel= 75
446/
447
448&namdmin
449   dn_hmin=10.
450/
451
452&namzco
453   dn_ppsur   = -3958.951371276829
454   dn_ppa0    =   103.953009600000
455   dn_ppa1    =     2.415951269000
456   dn_ppkth   =    15.351013700000
457   dn_ppacr   =     7.000000000000
458   dn_ppdzmin = 6.
459   dn_pphmax  = 5750.
460   ln_dbletanh= .TRUE.
461   dn_ppa2    =   100.760928500000
462   dn_ppkth2  =    48.029893720000
463   dn_ppacr2  =    13.000000000000
464/
465
466&namzps
467   dn_e3zps_min = 25.
468   dn_e3zps_rat = 0.2
469/
470
471&namsco
472/
473
474&namlbc
475/
476
477&namwd
478/
479
480&namgrd
481/
482
483&namout
484   in_msh = 1
485/
486~~~~~~~~~~~
487
488Let's get describe this namelist more accurately.<br/>
489
[12080]490## namlog, namcfg
[7646]491As previously, we have the **namlog** and **namcfg** describe above.<br/>
492
[12080]493## namsrc
494The **namsrc** sub-namelist defines the Bathymetry to be used.
[7646]495Mainly SIREN need Bathymetry to create meshmask.
496Here we also read coordinates directly on a file.
497@note
498 1. here again you could add the *in_perio* parameter if need be i.e. if your
499Bathymetry was not created by SIREN.
500 2. by default SIREN suppress closed sea/lake from the ORCA domain.
501
[12080]502## namhgr
[7646]503The **namhgr** sub-namelist defines the horizontal grid.
504the type of horizontal mesh is choose between :<ul>
505<li> in_mshhgr=0 : curvilinear coordinate on the sphere read in coordinate.nc</li>
506<li> in_mshhgr=1 : geographical mesh on the sphere with regular grid-spacing</li>
507<li> in_mshhgr=2 : f-plane with regular grid-spacing</li>
508<li> in_mshhgr=3 : beta-plane with regular grid-spacing</li>
509<li> in_mshhgr=4 : Mercator grid with T/U point at the equator</li>
510<li> in_mshhgr=5 : beta-plane with regular grid-spacing and rotated domain (GYRE configuration)</li>
511</ul>
512
[12080]513## namzgr
[7646]514The **namzgr** sub-namelist allows to choose the type of vertical grid (z-coordinate full steps, partial steps, sigma or hybrid coordinates) and the number of level.
515
[12080]516## namdmin
[7646]517The **namdmin** sub-namelist defines the minimum ocean depth. It could be defines in meter (>0) or in number of level (<0).
518
[12080]519## namzco
[7646]520The **namzco** sub-namelist defines parameters to compute z-coordinate vertical grid (**needed for all type of vertical grid**)
521<!-- By default, those parameters are defined the same way than in GLORYS (i.e. 75 vertical levels).<br/> -->
522
[12080]523## namzps
[7646]524The **namzps** sub-namelist defines extra parameters needed to define z-coordinates partial steps.
525
[12080]526## namsco
[7646]527The **namsco** sub-namelist defines extra parameters needed to define sigma or hybrid coordinates (not needed here).
528
529<!--The **namcla** sub-namelist defines cross land advection for exchanges through some straits only used for ORCA2 (see namgrd).-->
530
[12080]531## namlbc
[7646]532The **namlbc** sub-namelist defines lateral boundary conditions at the coast. It is needed to modify the fmask.
533
[12080]534## namwd
[7646]535The **namwd** sub-namelist defines the wetting and drying parameters if activated (see namzgr sub-namelist)
536
[12080]537## namgrd
[7646]538The **namgrd** sub-namelist allows to use configuration 1D or to choose vertical scale factors (e3.=dk or old definition).
539
[12080]540## namout
[7646]541Finally, this **namout** sub-namelist defines the number output file(s).<br/>
542@note To create the domain_cfg file, you should put **in_msh=0**.
543
544@sa For more information about how to create meshmask, see create_meshmask.f90
545
546<!-- ######################################################################  -->
[12080]547# Create layout (domain layout) # {#layout}
548
549To run faster your configuration you may need to run it on multiprocessor. To do so you first need to know on which domain layout and so on how many processor you could do it.
550.<br/>
551
552To create/compute the domain layout, you have to run :
553~~~~~~~~~~~~~~~~~~
554./SIREN/create_layout.exe create_layout.nam
555~~~~~~~~~~~~~~~~~~
556
557Here after is an example of namelist for *create_layout.exe*.<br/>
558In this example, you compute the domain layout on 40 processors.<br/>
559~~~~~~~~~~~
560&namlog
561/
562
563&namcfg
564   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
565   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
566/
567
568&namvar
569   cn_varfile = "Bathymetry:PATH/bathy_merged.nc"
570/
571
572&namout
573   in_nproc = 40
574/
575~~~~~~~~~~~
576
577Let's get describe this namelist more accurately.<br/>
578
579## namlog, namcfg
580As previously, we have the **namlog** and **namcfg** describe above.<br/>
581
582## namvar
583The **namvar** sub-namelist lists variables to be used.
584Mainly SIREN need Bathymetry to compute the domain layout, or at least the mask of your domain.
585
586## namout
587The **namout** sub-namelist defines the number of processor you want to work on.
588
589@sa For more information and options to create layout, see create_layout.f90
590
591<!-- ######################################################################  -->
[6393]592# Create initial state # {#restart}
593
594To run your configuration you need an inital state of the ocean.<br/>
595You could start from a restart file (with all NEMO variables fields at one
596time step). Or you could start from "partial" information about ocean state (Temperature and Salinity for example).
597
[7646]598SIREN allows you to create both of those initial state.<br/>
[6393]599To create the initial state, you have to run:<br/>
600~~~~~~~~~~~~~~~~~~
601./SIREN/create_restart.exe create_restart.nam
602~~~~~~~~~~~~~~~~~~
603
604Here after is an example of namelist for *create_restart.exe*.<br/>
[7646]605In this example, you create an initial state split on 81 "processors", and named restart_out.nc.<br/>
[6393]606The initial state is composed of temperature and salinity refined from an extraction of GLORYS fields.
607~~~~~~~~~~~~~~~~~~
608&namlog
609/
610
611&namcfg
612   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
[7646]613   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
[6393]614/
615
[12080]616&namsrc
[6393]617   cn_coord0 = "PATH/coordinates_ORCA025.nc"
618   in_perio0 = 4
619/
620
[12080]621&namtgt
[6393]622   cn_coord1 = "PATH/coord_fine.nc"
623   cn_bathy1 = "PATH/bathy_merged.nc"
624/
625
626&namzgr
627/
628
629&namzps
630/
631
632&namvar
633   cn_varfile = "votemper:GLORYS_gridT.nc",
634                "vosaline:GLORYS_gridS.nc"
635/
636
637&namnst
638   in_rhoi = 3
639   in_rhoj = 3
640/
641
642&namout
643   cn_fileout = "PATH/restart_out.nc"     
644   in_nproc = 81
645/
646~~~~~~~~~~~~~~~~~~
647Let's get describe this namelist more accurately.<br/>
648
[12080]649## namlog, namcfg
[6393]650As previously, we have the **namlog** and **namcfg** sub-namelists, as well as
[12080]651
652## namsrc
653the **namsrc** sub-namelist to set parameters of the source/wide coordinates file (see above for more
[6393]654explanation).<br/>
655
[12080]656## namtgt
657Then the **namtgt** sub-namelist set parameters of the target/fine
[6393]658grid coordinates and bathymetry.<br/>
659
[12080]660## namzgr, namzps
[6393]661The **namzgr** and **namzps** sub-namelists define respectively parameters for vertical grid
662and partial step.<br>
663By default, those parameters are defined the same way than in GLORYS (i.e. 75 vertical levels).<br/>
664So you could let it empty.
665@note If you use forcing fields other than GLORYS, you have to be sure it uses the same vertical grid. In other case, you need to get information about the parametrisation use, and to put it in those sub-namelist (see create_restart.f90).
666
[12080]667## namvar
[6393]668the **namvar** sub-namelist lists variables to be used.<br/>
669Here we use *votemper* (temperature) get from *GLORYS_gridT.nc* file, and *vosaline*
670(salinity) get from *GLORYS_gridS.nc* file.
671@note To get all variables of a restart file. You have to use:
672~~~~~~~~~~~~~~~~~~
673cn_varfile = "all:PATH/restart.dimg"
674~~~~~~~~~~~~~~~~~~
675
[12080]676## namnst
[6393]677The **namnst** sub-namelist defines the subdomain refinment factor, as seen previously.<br/>
678
[12080]679## namout
[6393]680Finally, this **namout** sub-namelist defines the output files.<br/>
681Here we ask for output on 81 processors, with *restart_out.nc* as file "basename".<br/>
[7646]682So SIREN computes the optimal layout for 81 processors
[6393]683available,<br/>
[7646]684and split restart on output files named *restart_out_num.nc*, where *num* is the proc number.
[6393]685
686@note SIREN could also create the other fields you may need for
687your configuration.<br/>
688To do so, you just have to run *create_restart.exe* with other variable(s) from other input file(s).<br/>
689For example, to get runoff fields, you could use:
690~~~~~~~~~~~~~~~~~~
691cn_varfile = "sorunoff:PATH/runoff_GLORYS.nc"
692...
693cn_fileout = "PATH/runoff_out.nc"
694~~~~~~~~~~~~~~~~~~
695
[12080]696@sa For more information and options to create initial state or other fields, see
[6393]697create_restart.f90
698
699<!-- ######################################################################  -->
700# Create boundaries conditions # {#boundary}
701
702Finally to force your configuration, you may need boundaries conditions.<br/>
703NEMO read physical boundaries conditions from temperature, salinity, currents, and sea
704surface height.
705
706To create the boundaries condition with SIREN, you have to run:<br/>
707~~~~~~~~~~~~~~~~~~
708./SIREN/create_boundary.exe create_boundary.nam
709~~~~~~~~~~~~~~~~~~
710
711Here after is an example of namelist for *create_boundary.exe*.<br/>
712In this example, you create boundaries conditions named *boundary_out.nc* on
713each side of the domain.<br/>
714The boundaries contain information about temperature, salinity, currents and sea surface height refined from an extraction of GLORYS fields.
715~~~~~~~~~~~~~~~~~~
716&namlog
717/
718
719&namcfg
720   cn_varcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/variable.cfg"
[7646]721   cn_dimcfg = "PATH/NEMOGCM/TOOLS/SIREN/cfg/dimension.cfg"
[6393]722/
723
[12080]724&namsrc
[6393]725   cn_coord0 = "PATH/coordinates_ORCA025.nc"
726   in_perio0 = 4
727/
728
[12080]729&namtgt
[6393]730   cn_coord1 = "PATH/coord_fine.nc"
731   cn_bathy1 = "PATH/bathy_fine.nc"
732/
733
734&namzgr
735/
736
737&namzps
738/
739
740&namvar
741   cn_varfile="votemper:GLORYS_gridT.nc",
742              "vosaline:GLORYS_gridS.nc",
743              "vozocrtx:GLORYS_gridU.nc",
744              "vomecrty:GLORYS_gridV.nc",
745              "sossheig:GLORYS_grid2D.nc"
746/
747
748&namnst
749   in_rhoi = 3
750   in_rhoj = 3
751/
752
753&nambdy
754/
755
756&namout
757   cn_fileout = "PATH/boundary_out.nc"     
758/
759~~~~~~~~~~~~~~~~~~
760
761Let's get describe this namelist more accurately.<br/>
762
[12080]763## namlog, namcfg
[6393]764As previously, we have the **namlog** and **namcfg** sub-namelists, as well as
[12080]765
766## namsrc
767the **namcrs** sub-namelist to set parameters of the source/wide coordinates file (see above for more
[6393]768explanation).<br/>
769
[12080]770## namtgt
771Then the **namtgt** sub-namelist set parameters of the target/fine
[6393]772grid coordinates and bathymetry.<br/>
773
[12080]774## namzgr, namzps
[6393]775The **namzgr** and **namzps** sub-namelists define respectively parameters for vertical grid
776and partial step.<br>
777By default, those parameters are defined the same way than in GLORYS (i.e. 75 vertical levels).<br/>
778So you could let it empty.
779@note If you use forcing fields other than GLORYS, you have to be sure it uses the same vertical grid. In other case, you need to get information about the parametrisation use, and to put it in those sub-namelist (see create_boundary.F90).
780
[12080]781## namvar
[6393]782the **namvar** sub-namelist lists variables to be used.<br/>
783Here we get *votemper* (temperature) from *GLORYS_gridT.nc* file, *vosaline*
784(salinity) from *GLORYS_gridS.nc* file, *vozocrtx* (zonal velocity) from
785*GLORYS_gridU.nc*, *vomecrty* (meridional velocity) from *GLORYS_gridV.nc*, and sossheig (sea surface
786height) from *GLORYS_grid2D.nc*.
787
[12080]788## namnst
[6393]789The **namnst** sub-namelist defines the subdomain refinment factor.<br/>
790
[12080]791## nambdy
[6393]792The **nambdy** sub-namelist defines the subdomain boundaries.<br/>
793By default SIREN tries to create boundaries for each side (Boundary is created if sea point exist on the second row of each side).<br/>
794So you could let this namelist empty.
795
796@note SIREN allows you to place boundaries away from the side of the domain.
797To do so you have to define your boundary.<br/>
798That means you have to give on fine
799grid the index of the boundary (how far from the border your boundary is),
800the width of your boundary, and finally first and last point of your boundary (the length of your boundary).<br/>
801So to define a north boundary, you have to add in the sub-namelist *nambdy*, the parameter:
802~~~~~~~~~~~~~~~~~~
803cn_north="index,first:last(width)"
804~~~~~~~~~~~~~~~~~~
805
[12080]806## namout
[6393]807Finally, this **namout** sub-namelist defines the output files.<br/>
808Here we ask for output with *boundary_out.nc* as file "basename".<br/>
809So SIREN creates output files named *boundary_out_west.nc*,
810*boundary_out_east.nc*, *boundary_out_north.nc*, and *boundary_out_south.nc*
811depending if boundary exist or not.
812
[12080]813@sa For more information and options to create boundaries condition, see
[6393]814create_boundary.F90
815
816# Create and run NEMO configuration # {#NEMOconf}
817
818So now you created all the input files you need for your physical configuration, you have to create the "NEMO configuration".<br/>
819To do so, go to the directory *NEMOGCM/CONFIG/*, and run:
820~~~~~~~~~~~~~~~~~~
[12080]821./makenemo -n MY_CONFIG -d "OPA_SRC"
[6393]822~~~~~~~~~~~~~~~~~~
823This creates your configuration "MY_CONFIG" in the directory *NEMOGCM/CONFIG*.<br/>
824you could check the cpp_keys used in file *cpp_MY_CONFIG.fcm*, and re-run *makenemo*
825if need be.
826
827Once *makenemo* has run successfully, the *opa* executable is available in
828directory *NEMOGCM/CONFIG/MY_CONFIG/EXP00*.<br/>
829Then you just have to put all your input files in this directory, fill the namelist *namelist_cfg*, and run:
830~~~~~~~~~~~~~~~~~~
831mpirun ./opa
832~~~~~~~~~~~~~~~~~~
833
834@note no surface forcing here.
835weighted function needed to do interpolation on the fly, could be created by WEIGHT tools already inside NEMO.
836
837@sa For more information about how to create NEMO configuration see [NEMO Quick Start Guide](http://www.nemo-ocean.eu/Using-NEMO/User-Guides/Basics/NEMO-Quick-Start-Guide).
838
839 <HR>
840   <b>
841   - @ref index
[7646]842   - @ref md_src_docsrc_1_install
843   - @ref md_src_docsrc_2_quickstart
844   - @ref md_src_docsrc_3_support_bug
845   - @ref md_src_docsrc_4_codingRules
846   - @ref md_src_docsrc_5_changeLog
[6393]847   - @ref todo
848   </b>
Note: See TracBrowser for help on using the repository browser.