Skip to content

Commit 8616b78

Browse files
committed
Add grid namelist files for finer grids ARC9 and NEA3
1 parent 3595081 commit 8616b78

2 files changed

Lines changed: 734 additions & 0 deletions

File tree

fcoo/ARC9/setup/ww3_grid_ARC9.nml

Lines changed: 340 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,340 @@
1+
! -------------------------------------------------------------------- !
2+
! WAVEWATCH III - ww3_grid.nml - Grid pre-processing !
3+
! -------------------------------------------------------------------- !
4+
5+
! -------------------------------------------------------------------- !
6+
! Define the spectrum parameterization via SPECTRUM_NML namelist
7+
!
8+
! * namelist must be terminated with /
9+
! * definitions & defaults:
10+
! SPECTRUM%XFR = 0. ! frequency increment
11+
! SPECTRUM%FREQ1 = 0. ! first frequency (Hz)
12+
! SPECTRUM%NK = 0 ! number of frequencies (wavenumbers)
13+
! SPECTRUM%NTH = 0 ! number of direction bins
14+
! SPECTRUM%THOFF = 0. ! relative offset of first direction [-0.5,0.5]
15+
! -------------------------------------------------------------------- !
16+
&SPECTRUM_NML
17+
SPECTRUM%XFR = 1.1
18+
SPECTRUM%FREQ1 = 0.030938
19+
SPECTRUM%NK = 31
20+
SPECTRUM%NTH = 24
21+
/
22+
23+
! -------------------------------------------------------------------- !
24+
! Define the run parameterization via RUN_NML namelist
25+
!
26+
! * namelist must be terminated with /
27+
! * definitions & defaults:
28+
! RUN%FLDRY = F ! dry run (I/O only, no calculation)
29+
! RUN%FLCX = F ! x-component of propagation
30+
! RUN%FLCY = F ! y-component of propagation
31+
! RUN%FLCTH = F ! direction shift
32+
! RUN%FLCK = F ! wavenumber shift
33+
! RUN%FLSOU = F ! source terms
34+
! -------------------------------------------------------------------- !
35+
&RUN_NML
36+
RUN%FLCX = T
37+
RUN%FLCY = T
38+
RUN%FLCTH = T
39+
RUN%FLSOU = T
40+
/
41+
42+
! -------------------------------------------------------------------- !
43+
! Define the timesteps parameterization via TIMESTEPS_NML namelist
44+
!
45+
! * It is highly recommended to set up time steps which are multiple
46+
! between them.
47+
!
48+
! * The first time step to calculate is the maximum CFL time step
49+
! which depend on the lowest frequency FREQ1 previously set up and the
50+
! lowest spatial grid resolution in meters DXY.
51+
! reminder : 1 degree=60minutes // 1minute=1mile // 1mile=1.852km
52+
! The formula for the CFL time is :
53+
! Tcfl = DXY / (G / (FREQ1*4*Pi) ) with the constants Pi=3,14 and G=9.8m/s²;
54+
! DTXY ~= 90% Tcfl
55+
! DTMAX ~= 3 * DTXY (maximum global time step limit)
56+
!
57+
! * The refraction time step depends on how strong can be the current velocities
58+
! on your grid :
59+
! DTKTH ~= DTMAX / 2 ! in case of no or light current velocities
60+
! DTKTH ~= DTMAX / 10 ! in case of strong current velocities
61+
!
62+
! * The source terms time step is usually defined between 5s and 60s.
63+
! A common value is 10s.
64+
! DTMIN ~= 10
65+
!
66+
! * namelist must be terminated with /
67+
! * definitions & defaults:
68+
! TIMESTEPS%DTMAX = 0. ! maximum global time step (s)
69+
! TIMESTEPS%DTXY = 0. ! maximum CFL time step for x-y (s)
70+
! TIMESTEPS%DTKTH = 0. ! maximum CFL time step for k-th (s)
71+
! TIMESTEPS%DTMIN = 0. ! minimum source term time step (s)
72+
! -------------------------------------------------------------------- !
73+
&TIMESTEPS_NML
74+
TIMESTEPS%DTMAX = 600.
75+
TIMESTEPS%DTXY = 300.
76+
TIMESTEPS%DTKTH = 300.
77+
TIMESTEPS%DTMIN = 10.
78+
/
79+
80+
! -------------------------------------------------------------------- !
81+
! Define the grid to preprocess via GRID_NML namelist
82+
!
83+
! * the tunable parameters for source terms, propagation schemes, and
84+
! numerics are read using namelists.
85+
! * Any namelist found in the folowing sections is temporarily written
86+
! to param.scratch, and read from there if necessary.
87+
! * The order of the namelists is immaterial.
88+
! * Namelists not needed for the given switch settings will be skipped
89+
! automatically
90+
!
91+
! * grid type can be :
92+
! 'RECT' : rectilinear
93+
! 'CURV' : curvilinear
94+
! 'UNST' : unstructured (triangle-based)
95+
!
96+
! * coordinate system can be :
97+
! 'SPHE' : Spherical (degrees)
98+
! 'CART' : Cartesian (meters)
99+
!
100+
! * grid closure can only be applied in spherical coordinates
101+
!
102+
! * grid closure can be :
103+
! 'NONE' : No closure is applied
104+
! 'SMPL' : Simple grid closure. Grid is periodic in the
105+
! : i-index and wraps at i=NX+1. In other words,
106+
! : (NX+1,J) => (1,J). A grid with simple closure
107+
! : may be rectilinear or curvilinear.
108+
! 'TRPL' : Tripole grid closure : Grid is periodic in the
109+
! : i-index and wraps at i=NX+1 and has closure at
110+
! : j=NY+1. In other words, (NX+1,J<=NY) => (1,J)
111+
! : and (I,NY+1) => (NX-I+1,NY). Tripole
112+
! : grid closure requires that NX be even. A grid
113+
! : with tripole closure must be curvilinear.
114+
!
115+
! * The coastline limit depth is the value which distinguish the sea
116+
! points to the land points. All the points with depth values (ZBIN)
117+
! greater than this limit (ZLIM) will be considered as excluded points
118+
! and will never be wet points, even if the water level grows over.
119+
! It can only overwrite the status of a sea point to a land point.
120+
! The value must have a negative value under the mean sea level
121+
!
122+
! * The minimum water depth allowed to compute the model is the absolute
123+
! depth value (DMIN) used in the model if the input depth is lower to
124+
! avoid the model to blow up.
125+
!
126+
! * namelist must be terminated with /
127+
! * definitions & defaults:
128+
! GRID%NAME = 'unset' ! grid name (30 char)
129+
! GRID%NML = 'namelists.nml' ! namelists filename
130+
! GRID%TYPE = 'unset' ! grid type
131+
! GRID%COORD = 'unset' ! coordinate system
132+
! GRID%CLOS = 'unset' ! grid closure
133+
!
134+
! GRID%ZLIM = 0. ! coastline limit depth (m)
135+
! GRID%DMIN = 0. ! abs. minimum water depth (m)
136+
! -------------------------------------------------------------------- !
137+
&GRID_NML
138+
GRID%NAME = 'ARC9 (N N Atlant - Arctic)'
139+
GRID%NML = 'namelists.nml'
140+
GRID%TYPE = 'RECT'
141+
GRID%COORD = 'SPHE'
142+
GRID%CLOS = 'NONE'
143+
GRID%ZLIM = 0.0
144+
GRID%DMIN = 2.5
145+
/
146+
147+
! -------------------------------------------------------------------- !
148+
! Define the rectilinear grid type via RECT_NML namelist
149+
! - only for RECT grids -
150+
!
151+
! * The minimum grid size is 3x3.
152+
!
153+
! * If the grid increments SX and SY are given in minutes of arc, the scaling
154+
! factor SF must be set to 60. to provide an increment factor in degree.
155+
!
156+
! * If CSTRG='SMPL', then SX is forced to 360/NX.
157+
!
158+
! * value <= value_read / scale_fac
159+
!
160+
! * namelist must be terminated with /
161+
! * definitions & defaults:
162+
! RECT%NX = 0 ! number of points along x-axis
163+
! RECT%NY = 0 ! number of points along y-axis
164+
!
165+
! RECT%SX = 0. ! grid increment along x-axis
166+
! RECT%SY = 0. ! grid increment along y-axis
167+
! RECT%SF = 1. ! scaling division factor for x-y axis
168+
!
169+
! RECT%X0 = 0. ! x-coordinate of lower-left corner (deg)
170+
! RECT%Y0 = 0. ! y-coordinate of lower-left corner (deg)
171+
! RECT%SF0 = 1. ! scaling division factor for x0,y0 coord
172+
! -------------------------------------------------------------------- !
173+
&RECT_NML
174+
RECT%NX = 546
175+
RECT%NY = 412
176+
RECT%SX = 150.
177+
RECT%SY = 150.
178+
RECT%SF = 1000.
179+
RECT%X0 = -60.975
180+
RECT%Y0 = -16.875
181+
RECT%SF0 = 1.
182+
/
183+
184+
! -------------------------------------------------------------------- !
185+
! Define the depth to preprocess via DEPTH_NML namelist
186+
! - for RECT and CURV grids -
187+
!
188+
! * if no obstruction subgrid, need to set &MISC FLAGTR = 0
189+
!
190+
! * The depth value must have negative values under the mean sea level
191+
!
192+
! * value <= value_read * scale_fac
193+
!
194+
! * IDLA : Layout indicator :
195+
! 1 : Read line-by-line bottom to top. (default)
196+
! 2 : Like 1, single read statement.
197+
! 3 : Read line-by-line top to bottom.
198+
! 4 : Like 3, single read statement.
199+
! * IDFM : format indicator :
200+
! 1 : Free format. (default)
201+
! 2 : Fixed format.
202+
! 3 : Unformatted.
203+
! * FORMAT : element format to read :
204+
! '(....)' : auto detected (default)
205+
! '(f10.6)' : float type
206+
!
207+
! * Example :
208+
! IDF SF IDLA IDFM FORMAT FILENAME
209+
! 50 0.001 1 1 '(....)' 'GLOB-30M.bot'
210+
!
211+
! * namelist must be terminated with /
212+
! * definitions & defaults:
213+
! DEPTH%SF = 1. ! scale factor
214+
! DEPTH%FILENAME = 'unset' ! filename
215+
! DEPTH%IDF = 50 ! file unit number
216+
! DEPTH%IDLA = 1 ! layout indicator
217+
! DEPTH%IDFM = 1 ! format indicator
218+
! DEPTH%FORMAT = '(....)' ! formatted read format
219+
! -------------------------------------------------------------------- !
220+
&DEPTH_NML
221+
DEPTH%SF = 1.
222+
DEPTH%FILENAME = 'bathy_FCOO-ARC9.dat'
223+
DEPTH%FORMAT = '(...)'
224+
/
225+
226+
! -------------------------------------------------------------------- !
227+
! Define the obstruction map via OBST_NML namelist
228+
! - only for RECT and CURV grids -
229+
!
230+
! * only used if &MISC FLAGTR = 1 in param.nml
231+
! (transparencies at cell boundaries)
232+
! or if &MISC FLAGTR = 2 in param.nml
233+
! (transparencies at cell centers)
234+
! or if &MISC FLAGTR = 3 in param.nml
235+
! (transparencies at cell boundaries with cont. ice)
236+
! or if &MISC FLAGTR = 4 in param.nml
237+
! (transparencies at cell centers with cont. ice)
238+
!
239+
! * value <= value_read * scale_fac
240+
!
241+
! * IDLA : Layout indicator :
242+
! 1 : Read line-by-line bottom to top. (default)
243+
! 2 : Like 1, single read statement.
244+
! 3 : Read line-by-line top to bottom.
245+
! 4 : Like 3, single read statement.
246+
! * IDFM : format indicator :
247+
! 1 : Free format. (default)
248+
! 2 : Fixed format.
249+
! 3 : Unformatted.
250+
! * FORMAT : element format to read :
251+
! '(....)' : auto detected (default)
252+
! '(f10.6)' : float type
253+
!
254+
! * Example :
255+
! IDF SF IDLA IDFM FORMAT FILENAME
256+
! 70 0.0001 1 1 '(....)' 'GLOB-30M.obst'
257+
!
258+
! * If the file unit number equals 10, then the data is read from this
259+
! file. The data must follow the above record. No comment lines are
260+
! allowed within the data input.
261+
!
262+
! * In the case of unstructured grids, no obstruction file can be added
263+
!
264+
! * namelist must be terminated with /
265+
! * definitions & defaults:
266+
! OBST%SF = 1. ! scale factor
267+
! OBST%FILENAME = 'unset' ! filename
268+
! OBST%IDF = 70 ! file unit number
269+
! OBST%IDLA = 1 ! layout indicator
270+
! OBST%IDFM = 1 ! format indicator
271+
! OBST%FORMAT = '(....)' ! formatted read format
272+
! -------------------------------------------------------------------- !
273+
! &OBST_NML
274+
! OBST%SF = 0.0
275+
! OBST%FILENAME = 'obstruct.dat'
276+
! /
277+
278+
! -------------------------------------------------------------------- !
279+
! Define the output boundary points via OUTBND_COUNT_NML and
280+
! OUTBND_LINE_NML namelist
281+
! - only for RECT and CURV grids -
282+
!
283+
! * It will creates a nest file with output boundaries for a inner grid.
284+
! The prefered way to do it is to use ww3_bounc program.
285+
!
286+
! * These do not need to be defined for data transfer between grids in
287+
! the multi grid driver.
288+
!
289+
! * The number of lines are defined by OUTBND_COUNT
290+
!
291+
! * The lines must start from index 1 to N
292+
!
293+
! * Output boundary points are defined as a number of straight lines,
294+
! defined by its starting point (X0,Y0), increments (DX,DY) and number
295+
! of points. A negative number of points starts a new output file.
296+
!
297+
! * Example for spherical grid in degrees :
298+
! '1.75 1.50 0.25 -0.10 3'
299+
! '2.25 1.50 -0.10 0.00 -6'
300+
! '0.10 0.10 0.10 0.00 -10'
301+
!
302+
! * namelist must be terminated with /
303+
! * definitions & defaults:
304+
! OUTBND_COUNT%N_LINE = 0 ! number of lines
305+
!
306+
! OUTBND_LINE(I)%X0 = 0. ! x index start point
307+
! OUTBND_LINE(I)%Y0 = 0. ! y index start point
308+
! OUTBND_LINE(I)%DX = 0. ! x-along increment
309+
! OUTBND_LINE(I)%DY = 0. ! y-along increment
310+
! OUTBND_LINE(I)%NP = 0 ! number of points
311+
! OR
312+
! OUTBND_LINE(I) = 0. 0. 0. 0. 0 ! included lines
313+
! -------------------------------------------------------------------- !
314+
&OUTBND_COUNT_NML
315+
OUTBND_COUNT%N_LINE = 15
316+
/
317+
318+
&OUTBND_LINE_NML
319+
! nest1.ww3 to GRL9 ! To be modified for GRL3 !
320+
OUTBND_LINE(1) = -37.3 20.4 0.0 -0.15 63
321+
OUTBND_LINE(2) = -37.3 10.95 0.15 -0.15 82
322+
OUTBND_LINE(3) = -25. -1.35 0.15 0.0 141
323+
OUTBND_LINE(4) = -4. -1.2 0.0 0.15 101
324+
OUTBND_LINE(5) = -4. 13.95 -0.15 0.0 12
325+
OUTBND_LINE(6) = -10.3 22.05 -0.15 0.15 3
326+
OUTBND_LINE(7) = -10.75 22.35 -0.15 0.0 1
327+
OUTBND_LINE(8) = -21.4 26.25 -0.15 0.0 15
328+
! nest2.ww3 to NEA3. Minus sign in -203 makes a new (nest2) file.
329+
OUTBND_LINE(9) = -8.98611 41.44167 -0.0833333 0.0 -203 ! 285 2
330+
OUTBND_LINE(10) = -25.90277 41.44167 0.0 0.05 0 ! 82 2
331+
OUTBND_LINE(11) = -25.90277 51.49167 -0.0833333 0.05 80 ! 82 203
332+
OUTBND_LINE(12) = -32.56944 55.49167 0.0 0.05 0 ! 2 283
333+
OUTBND_LINE(13) = -32.56944 64.69167 0.0833333 0.05 81 ! 2 467
334+
OUTBND_LINE(14) = -25.81944 68.74167 0.0833333 0.0 424 ! 83 548
335+
OUTBND_LINE(15) = 9.51388 68.74167 0.0833333 -0.05 41 ! 507 548
336+
/
337+
338+
! -------------------------------------------------------------------- !
339+
! WAVEWATCH III - end of namelist !
340+
! -------------------------------------------------------------------- !

0 commit comments

Comments
 (0)