! -------------------------------------------------------------------- ! ! WAVEWATCH III - ww3_grid.nml - Grid pre-processing ! ! -------------------------------------------------------------------- ! ! -------------------------------------------------------------------- ! ! Define the spectrum parameterization via SPECTRUM_NML namelist ! ! * namelist must be terminated with / ! * definitions & defaults: ! SPECTRUM%XFR = 0. ! frequency increment ! SPECTRUM%FREQ1 = 0. ! first frequency (Hz) ! SPECTRUM%NK = 0 ! number of frequencies (wavenumbers) ! SPECTRUM%NTH = 0 ! number of direction bins ! SPECTRUM%THOFF = 0. ! relative offset of first direction [-0.5,0.5] ! -------------------------------------------------------------------- ! &SPECTRUM_NML SPECTRUM%XFR = 1.1 SPECTRUM%FREQ1 = 0.05 SPECTRUM%NK = 40 SPECTRUM%NTH = 36 SPECTRUM%THOFF = .5 / ! -------------------------------------------------------------------- ! ! Define the run parameterization via RUN_NML namelist ! ! * namelist must be terminated with / ! * definitions & defaults: ! RUN%FLDRY = F ! dry run (I/O only, no calculation) ! RUN%FLCX = F ! x-component of propagation ! RUN%FLCY = F ! y-component of propagation ! RUN%FLCTH = F ! direction shift ! RUN%FLCK = F ! wavenumber shift ! RUN%FLSOU = F ! source terms ! -------------------------------------------------------------------- ! &RUN_NML RUN%FLCX = T RUN%FLCY = T RUN%FLCTH = T RUN%FLSOU = T / ! -------------------------------------------------------------------- ! ! Define the timesteps parameterization via TIMESTEPS_NML namelist ! ! * It is highly recommended to set up time steps which are multiple ! between them. ! ! * The first time step to calculate is the maximum CFL time step ! which depend on the lowest frequency FREQ1 previously set up and the ! lowest spatial grid resolution in meters DXY. ! reminder : 1 degree=60minutes // 1minute=1mile // 1mile=1.852km ! The formula for the CFL time is : ! Tcfl = DXY / (G / (FREQ1*4*Pi) ) with the constants Pi=3,14 and G=9.8m/s²; ! DTXY ~= 90% Tcfl ! DTMAX ~= 3 * DTXY (maximum global time step limit) ! ! * The refraction time step depends on how strong can be the current velocities ! on your grid : ! DTKTH ~= DTMAX / 2 ! in case of no or light current velocities ! DTKTH ~= DTMAX / 10 ! in case of strong current velocities ! ! * The source terms time step is usually defined between 5s and 60s. ! A common value is 10s. ! DTMIN ~= 10 ! ! * namelist must be terminated with / ! * definitions & defaults: ! TIMESTEPS%DTMAX = 0. ! maximum global time step (s) ! TIMESTEPS%DTXY = 0. ! maximum CFL time step for x-y (s) ! TIMESTEPS%DTKTH = 0. ! maximum CFL time step for k-th (s) ! TIMESTEPS%DTMIN = 0. ! minimum source term time step (s) ! -------------------------------------------------------------------- ! &TIMESTEPS_NML TIMESTEPS%DTMAX = 900. TIMESTEPS%DTXY = 300. TIMESTEPS%DTKTH = 450. TIMESTEPS%DTMIN = 5. / ! -------------------------------------------------------------------- ! ! Define the grid to preprocess via GRID_NML namelist ! ! * the tunable parameters for source terms, propagation schemes, and ! numerics are read using namelists. ! * Any namelist found in the folowing sections is temporarily written ! to param.scratch, and read from there if necessary. ! * The order of the namelists is immaterial. ! * Namelists not needed for the given switch settings will be skipped ! automatically ! ! * grid type can be : ! 'RECT' : rectilinear ! 'CURV' : curvilinear ! 'UNST' : unstructured (triangle-based) ! ! * coordinate system can be : ! 'SPHE' : Spherical (degrees) ! 'CART' : Cartesian (meters) ! ! * grid closure can only be applied in spherical coordinates ! ! * grid closure can be : ! 'NONE' : No closure is applied ! 'SMPL' : Simple grid closure. Grid is periodic in the ! : i-index and wraps at i=NX+1. In other words, ! : (NX+1,J) => (1,J). A grid with simple closure ! : may be rectilinear or curvilinear. ! 'TRPL' : Tripole grid closure : Grid is periodic in the ! : i-index and wraps at i=NX+1 and has closure at ! : j=NY+1. In other words, (NX+1,J<=NY) => (1,J) ! : and (I,NY+1) => (NX-I+1,NY). Tripole ! : grid closure requires that NX be even. A grid ! : with tripole closure must be curvilinear. ! ! * The coastline limit depth is the value which distinguish the sea ! points to the land points. All the points with depth values (ZBIN) ! greater than this limit (ZLIM) will be considered as excluded points ! and will never be wet points, even if the water level grows over. ! It can only overwrite the status of a sea point to a land point. ! The value must have a negative value under the mean sea level ! ! * The minimum water depth allowed to compute the model is the absolute ! depth value (DMIN) used in the model if the input depth is lower to ! avoid the model to blow up. ! ! * namelist must be terminated with / ! * definitions & defaults: ! GRID%NAME = 'unset' ! grid name (30 char) ! GRID%NML = 'namelists.nml' ! namelists filename ! GRID%TYPE = 'unset' ! grid type ! GRID%COORD = 'unset' ! coordinate system ! GRID%CLOS = 'unset' ! grid closure ! ! GRID%ZLIM = 0. ! coastline limit depth (m) ! GRID%DMIN = 0. ! abs. minimum water depth (m) ! -------------------------------------------------------------------- ! &GRID_NML GRID%NAME = 'ADRIATIC SEA 5km LAMBERT CONFORMAL' GRID%NML = '../input/namelists_5km.nml' GRID%TYPE = 'CURV' GRID%COORD = 'SPHE' GRID%CLOS = 'NONE' GRID%ZLIM = -0.10 GRID%DMIN = 2.50 / ! -------------------------------------------------------------------- ! ! Define the curvilinear grid type via CURV_NML namelist ! - only for CURV grids - ! ! * The minimum grid size is 3x3. ! ! * If CSTRG='SMPL', then SX is forced to 360/NX. ! ! * value <= scale_fac * value_read + add_offset ! ! * IDLA : Layout indicator : ! 1 : Read line-by-line bottom to top. (default) ! 2 : Like 1, single read statement. ! 3 : Read line-by-line top to bottom. ! 4 : Like 3, single read statement. ! * IDFM : format indicator : ! 1 : Free format. (default) ! 2 : Fixed format. ! 3 : Unformatted. ! * FORMAT : element format to read : ! '(....)' : auto detected (default) ! '(f10.6)' : float type ! ! * Example : ! IDF SF OFF IDLA IDFM FORMAT FILENAME ! 21 0.25 -0.5 3 1 '(....)' 'x.inp' ! 22 0.25 0.5 3 1 '(....)' 'y.inp' ! ! * namelist must be terminated with / ! * definitions & defaults: ! CURV%NX = 0 ! number of points along x-axis ! CURV%NY = 0 ! number of points along y-axis ! ! CURV%XCOORD%SF = 1. ! x-coord scale factor ! CURV%XCOORD%OFF = 0. ! x-coord add offset ! CURV%XCOORD%FILENAME = 'unset' ! x-coord filename ! CURV%XCOORD%IDF = 21 ! x-coord file unit number ! CURV%XCOORD%IDLA = 1 ! x-coord layout indicator ! CURV%XCOORD%IDFM = 1 ! x-coord format indicator ! CURV%XCOORD%FORMAT = '(....)' ! x-coord formatted read format ! ! CURV%YCOORD%SF = 1. ! y-coord scale factor ! CURV%YCOORD%OFF = 0. ! y-coord add offset ! CURV%YCOORD%FILENAME = 'unset' ! y-coord filename ! CURV%YCOORD%IDF = 22 ! y-coord file unit number ! CURV%YCOORD%IDLA = 1 ! y-coord layout indicator ! CURV%YCOORD%IDFM = 1 ! y-coord format indicator ! CURV%YCOORD%FORMAT = '(....)' ! y-coord formatted read format ! -------------------------------------------------------------------- ! &CURV_NML CURV%NX = 127 CURV%NY = 126 CURV%XCOORD%FILENAME = '../input/lon_ste_adri_5km.dat' CURV%XCOORD%FORMAT = '(...)' CURV%YCOORD%FILENAME = '../input/lat_ste_adri_5km.dat' CURV%YCOORD%FORMAT = '(...)' / ! -------------------------------------------------------------------- ! ! Define the depth to preprocess via DEPTH_NML namelist ! - for RECT and CURV grids - ! ! * if no obstruction subgrid, need to set &MISC FLAGTR = 0 ! ! * The depth value must have negative values under the mean sea level ! ! * value <= value_read * scale_fac ! ! * IDLA : Layout indicator : ! 1 : Read line-by-line bottom to top. (default) ! 2 : Like 1, single read statement. ! 3 : Read line-by-line top to bottom. ! 4 : Like 3, single read statement. ! * IDFM : format indicator : ! 1 : Free format. (default) ! 2 : Fixed format. ! 3 : Unformatted. ! * FORMAT : element format to read : ! '(....)' : auto detected (default) ! '(f10.6)' : float type ! ! * Example : ! IDF SF IDLA IDFM FORMAT FILENAME ! 50 0.001 1 1 '(....)' 'GLOB-30M.bot' ! ! * namelist must be terminated with / ! * definitions & defaults: ! DEPTH%SF = 1. ! scale factor ! DEPTH%FILENAME = 'unset' ! filename ! DEPTH%IDF = 50 ! file unit number ! DEPTH%IDLA = 1 ! layout indicator ! DEPTH%IDFM = 1 ! format indicator ! DEPTH%FORMAT = '(....)' ! formatted read format ! -------------------------------------------------------------------- ! &DEPTH_NML DEPTH%SF = 0.001000 DEPTH%FILENAME = '../input/ste_adri_5km_etopo1.depth' / ! -------------------------------------------------------------------- ! ! Define the point status map via MASK_NML namelist ! - only for RECT and CURV grids - ! ! * If no mask defined, INBOUND can be used to set active boundaries ! ! * IDLA : Layout indicator : ! 1 : Read line-by-line bottom to top. (default) ! 2 : Like 1, single read statement. ! 3 : Read line-by-line top to bottom. ! 4 : Like 3, single read statement. ! * IDFM : format indicator : ! 1 : Free format. (default) ! 2 : Fixed format. ! 3 : Unformatted. ! * FORMAT : element format to read : ! '(....)' : auto detected (default) ! '(f10.6)' : float type ! ! * Example : ! IDF IDLA IDFM FORMAT FILENAME ! 60 1 1 '(....)' 'GLOB-30M.mask' ! ! * The legend for the input map is : ! -2 : Excluded boundary point (covered by ice) ! -1 : Excluded sea point (covered by ice) ! 0 : Excluded land point ! 1 : Sea point ! 2 : Active boundary point ! 3 : Excluded grid point ! 7 : Ice point ! ! * namelist must be terminated with / ! * definitions & defaults: ! MASK%FILENAME = 'unset' ! filename ! MASK%IDF = 60 ! file unit number ! MASK%IDLA = 1 ! layout indicator ! MASK%IDFM = 1 ! format indicator ! MASK%FORMAT = '(....)' ! formatted read format ! -------------------------------------------------------------------- ! &MASK_NML MASK%FILENAME = '../input/ste_adri_5km_etopo1.mask' MASK%FORMAT = '(...)' / ! -------------------------------------------------------------------- ! ! Define the obstruction map via OBST_NML namelist ! - only for RECT and CURV grids - ! ! * only used if &MISC FLAGTR = 1 in param.nml ! (transparencies at cell boundaries) ! or if &MISC FLAGTR = 2 in param.nml ! (transparencies at cell centers) ! or if &MISC FLAGTR = 3 in param.nml ! (transparencies at cell boundaries with cont. ice) ! or if &MISC FLAGTR = 4 in param.nml ! (transparencies at cell centers with cont. ice) ! ! * value <= value_read * scale_fac ! ! * IDLA : Layout indicator : ! 1 : Read line-by-line bottom to top. (default) ! 2 : Like 1, single read statement. ! 3 : Read line-by-line top to bottom. ! 4 : Like 3, single read statement. ! * IDFM : format indicator : ! 1 : Free format. (default) ! 2 : Fixed format. ! 3 : Unformatted. ! * FORMAT : element format to read : ! '(....)' : auto detected (default) ! '(f10.6)' : float type ! ! * Example : ! IDF SF IDLA IDFM FORMAT FILENAME ! 70 0.0001 1 1 '(....)' 'GLOB-30M.obst' ! ! * If the file unit number equals 10, then the data is read from this ! file. The data must follow the above record. No comment lines are ! allowed within the data input. ! ! * In the case of unstructured grids, no obstruction file can be added ! ! * namelist must be terminated with / ! * definitions & defaults: ! OBST%SF = 1. ! scale factor ! OBST%FILENAME = 'unset' ! filename ! OBST%IDF = 70 ! file unit number ! OBST%IDLA = 1 ! layout indicator ! OBST%IDFM = 1 ! format indicator ! OBST%FORMAT = '(....)' ! formatted read format ! -------------------------------------------------------------------- ! &OBST_NML OBST%SF = 0.010000 OBST%FILENAME = '../input/ste_adri_5km_etopo1.obstr' OBST%FORMAT = '(...)' / ! -------------------------------------------------------------------- ! ! WAVEWATCH III - end of namelist ! ! -------------------------------------------------------------------- !