1 | ================================ |
---|
2 | = HOW TO COMPILE |
---|
3 | ================================ |
---|
4 | The DOMAINcfg tool can be compiled using the maketools script in the NEMOGCM/TOOLS directory as follows: |
---|
5 | ::::::::::::::::::::::::::::::::: |
---|
6 | ./maketools -m $ARCH -n DOMAINcfg |
---|
7 | ::::::::::::::::::::::::::::::::: |
---|
8 | where $ARCH indicates the arch file to be used from the directory NEMOGCM/ARCH. |
---|
9 | |
---|
10 | DOMAINcfg compiled will create "make_domain_cfg.exe" executable script (the main routine of this tool is make_domain_cfg.f90) |
---|
11 | |
---|
12 | ================================ |
---|
13 | = HOW TO RUN |
---|
14 | ================================ |
---|
15 | and just run according your architecture : |
---|
16 | ::::::::::::::::::::::::::::::::::::::::::::::::: |
---|
17 | run in mpi mode with just 1 proc; example for IBM |
---|
18 | poe ./make_domain_cfg.exe -proc 1 |
---|
19 | ::::::::::::::::::::::::::::::::::::::::::::::::: |
---|
20 | NOTA: it can be run in multiproc mode, but in output there will be domain_cfg_00xx.nc files |
---|
21 | |
---|
22 | ================================ |
---|
23 | = HOW TO USE |
---|
24 | ================================ |
---|
25 | ::: VERY IMPORTANT PRE-REQUIRED ::: |
---|
26 | 0) pre-required: this tool needs xios1 |
---|
27 | |
---|
28 | (download http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/branchs/xios-1.0 |
---|
29 | DOMAINcfg tool is working with revision 703 of xios) |
---|
30 | |
---|
31 | VERY IMPORTANT : keep the namelist_ref committed inchanged!!! |
---|
32 | 1) in DOMAINcfg directory: |
---|
33 | |
---|
34 | - open namelist_cfg |
---|
35 | - copy "namcfg" block from your 3.6_stable namelist |
---|
36 | - copy "domzgr" block (and namzgr_sco block if ln_sco = .true.) from your 3.6_stable namelist |
---|
37 | - copy "namdom" block from your 3.6_stable namelist |
---|
38 | - copy ln_e3_dep from namelist_ref into namelist_cfg in "namcfg" block and set the value you want : |
---|
39 | |
---|
40 | ln_e3_dep = .true. ! =T : e3=dk[depth] in discret sens. |
---|
41 | ! ! ===>>> will become the only possibility in v4.0 |
---|
42 | ! ! =F : e3 analytical derivative of depth function |
---|
43 | ! ! only there for backward compatibility test with v3.6 |
---|
44 | ! |
---|
45 | |
---|
46 | Use ln_e3_dep=.false. : To create same e3[tuvw] like 3.6 (e3 were done like an analytical derivative of depth function) |
---|
47 | |
---|
48 | Use ln_e3_dep=.true. : To create e3=dk[depth] in discret sens |
---|
49 | |
---|
50 | 3) copy in DOMAINcfg directory same input files (of related configuration) required in v3.6_stable. |
---|
51 | |
---|
52 | DOMAINcfg package is EXACTLY what does exist in NEMO version 3.6 to define a model domain (both domain related namelist and initialization). |
---|
53 | DOMAINcfg tool creates a netcdf file "domain_cfg.nc" containing all the ocean domain informations required to define an ocean configuration, |
---|
54 | these files are : |
---|
55 | |
---|
56 | domain size |
---|
57 | domain characteristics (periodic) |
---|
58 | horizontal mesh |
---|
59 | Coriolis parameter |
---|
60 | depth and vertical scale factors |
---|
61 | |
---|
62 | FOR EXAMPLE |
---|
63 | - for AMM12 : |
---|
64 | coordinates.nc |
---|
65 | bathy_meter.nc |
---|
66 | bathy_level.nc |
---|
67 | amm12_rivers.nc |
---|
68 | coordinates.bdy.nc |
---|
69 | amm12_restart_oce.nc |
---|
70 | directories: bdydta/ |
---|
71 | fluxes/ |
---|
72 | - for ORCA2 : |
---|
73 | coordinates.nc |
---|
74 | bathy_meter.nc |
---|
75 | bathy_level.nc |
---|
76 | domain_def.xml |
---|
77 | field_def.xml |
---|
78 | iodef.xml |
---|
79 | |
---|
80 | 4) verify that bathymetry created here (variable "bottom_level" in domain_cfg.nc) and your old bathymetry (variable "mbathy" in mesh_mask.nc) are the same if ln_e3_dep=F: |
---|
81 | ncks -v bottom_level domain_cfg.nc new.nc |
---|
82 | ncks -v mbathy mesh_mask.nc old.nc |
---|
83 | ncrename -v mbathy,bottom_level old.nc |
---|
84 | ncdiff new.nc old.nc test_diff.nc |
---|
85 | |
---|
86 | Nota bene: if ln_e3_dep=T is used, it is ok to have few differences as long as it does not affect the boundaries (in a closed domain) |
---|
87 | |
---|