|
| 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