-
Notifications
You must be signed in to change notification settings - Fork 9
GOMb0.08
The GOMb0.08 configuration is a regional domain with a Mercator grid of 1/12º horizontal resolution of 263 by 193 points. The grid is a subregion of the Global 1/12º HYCOM grid GLBb0.08. The bottom topography is derived from GSHHS Shoreline, GEBCO 30-sec and NGDC 6-sec Coastal Relief.
Where to find the input data for GOMb0.08?
All the files needed for this configuration can be downloaded from the HYCOM server, see the ~/HYCOM_examples/GOMb0.08/datasets/get_datasets.csh. Note that if you want to re-create the files for practice, you will also need the GLBb0.08 datasets, i.e. see ~/HYCOM_examples/GLBb0.08/datasets/get_datasets.csh.
To run a simulation with tides, the GLBp0.08 datasets are needed, see ~/HYCOM_examples/GLBp0.08/datasets/get_datasets.csh.
What is in GOMb0.08?
In the GOMb0.08 directory, 12 subdirectories are provided:
GOMb0.08/archive contains scripts to manipulate/convert outputs of HYCOM.
GOMb0.08/datasets contains a script to download the domain-dependent atmospheric forcing, initial conditions, topography and grid. (N.B.: you can create most of them from the non domain-dependent files, i.e. ~/HYCOM-examples/datasets, and the scripts provided in the GOMb0.08 directory). To run with tides, uncomment related datasets marked "for tidal simulation".
GOMb0.08/expt_01.0 is an example of running directory with no atmospheric forcing (to create a restart template file).
GOMb0.08/expt_01.1 is an example of running directory starting from a restart, using CFSR atmospheric forcing and nested into the Global HYCOM reanalysis (53X). This experiment is used to create a Montgomery potential offset.
GOMb0.08/expt_01.2 is a twin of expt_01.1, using the Montgomery potential offset created from expt_01.1 in order to convert archive variables montg1 into steric SSH and pbavg/rho_0 = srfhgt-montg1 into non-steric SSH. See section 5 for more details.
GOMb0.08/expt_01.3 is a twin of expt_01.2 with tides. See section 8 for more details.
GOMb0.08/force contains example scripts to create domain-dependent wind-stress offset, rivers and chlorophyll files. (N.B.: requires forcing products downloaded from ~/HYCOM-examples/datasets/get_datasets.csh).
GOMb0.08/meanstd contains scripts to calculate the mean, standard deviation and square of HYCOM archives.
GOMb0.08/ports contains scripts to check the ports position for nesting and create tidal ports files.
GOMb0.08/postproc contains scripts called at the end of simulation to create mean files, converts to Netcdf and other examples.
GOMb0.08/relax contains scripts to create initial conditions, velocity diffusion, bottom drag etc ... files.
GOMb0.08/topo contains scripts to create the grid, topography and the multi-processor partitioning.
For the archive, meanstd and postproc scripts to work automatically after the run, review the paths, OS and PBS queues parameters in each directory.
Topo and grid files are available for this configuration on the HYCOM server at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/topo.tar.gz
Most of them can be recreated with the scripts available in this example.
To create the GOMb0.08 grid, use the regional.grid.csh script in GOMb0.08/topo. Edit the dataset path (DS) and the HYCOM-tools path (TOOLS) then run the script.
It is advisable to make the sub-region bathymetry and coastline exactly consistent with the coarser enclosing region, both on the open boundary and in the relaxation buffer zone. Everywhere else the bathymetry and coastline can be optimized for the higher resolution. For example, to create the GOMb0.08 bathymetry do the following:
a) Generate the best possible fine grid bathymetry and coastline everywhere, in this case GOMb0.08/datasets/topo/depth_GOMb0.08_04.[ab]. This is from 94m which in turn is depth_GOMb0.01_04bs17m subregioned to GOMb0.08 via isuba_topog. Normally, the best bathymetry is from GEBCO (say) and so we also provide depth_GOMb0.08_19.csh and depth_GOMb0.08_20_fill-shrink-clip-smooth.csh as examples of how to do this. GEBCO_2019 is the last version that provides sub-meter resolution in shallow water, so we don't recommend more recent versions. Note that depth_GOMb0.08_20 may need additional editing (e.g. landfill) and it is provided as an example of the process, it has not been used in a model run.
b) Interpolate the coarse enclosing bathymetry to the nested region using TOOLS/subregion/src/isub_topog. The script is GLBb0.08/subregion/depth_GOMb0.08_09m11s.csh, and it produces GOMb0.08/datasets/topo/depth_GOMb0.08_09m11s.[ab]. N.B.: This bathymetry will be used to produce the nest files.
c) Since the domain is one-way nested into a global domain, HYCOM requires that the last p-point in i and j to be land. To do that, use GOMb0.08/topo/depth_GOMb0.08_09m11_landmask.csh to produce GOMb0.08/datasets/topo/depth_GOMb0.08_09m11.[ab]. Adding these edge points as land may cause issues for other land points very close to the boundary, which are typically fixed by setting them to land as well.
d) Merge the two bathymetries (04,09m11) using TOOLS/topo/src/topo_merge, which selects the coarse depths and coastline in the buffer zone, a combination "near" the buffer zone, and the fine depths and coastline everywhere else. The script is GOMb0.08/topo/depth_GOMb0.08_07_merge.csh and it produces the final bathymetry: GOMb0.08/datasets/topo/depth_GOMb0.08_07.[ab]. It is possible that one of the input bathymetries will need iterating (modifying) to get a good result near the open boundaries.
e) Setup the open boundaries in ports.input (section 5C), and check their position by running GOMb0.08/ports/011/ports_map.csh. Do this now, because some port errors are best fixed by modifying the land/sea boundary, and many of the subsequent files depend on the final depth_GOMb0.08_07.[ab].
Relax and invariants files are available for this configuration on the HYCOM server at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/relax_010.tar.gz
Most of them can be recreated with the scripts available in this example.
To create the initial conditions of your run, as well as the relaxation mask for the nest, go to GOMB0.08/relax/ and edit EXPT.src to your need. Here, we defined the dataset path as DS and the HYCOM-tools path as TOOLS.
The initial condition files (relax_tem.[ab], relax_sal.[ab], and relax_int.[ab]) are 12-month file of the state of the ocean based on a climatology of your choice and interpolated horizontally and vertically on the grid of your domain. The process is divided in two phases: First interpolate (WOA13_HYCOM, WOA18_HYCOM or PHC3_HYCOM see ~/HYCOM-examples/datasets/get_datasets.csh to download) climatology to the HYCOM horizontal grid but keeping the original z-grid in the vertical (see GOMb0.08/relax/z_woa13.csh, GOMb0.08/relax/z_woa18.csh and GOMb0.08/relax/z_levitus.csh). The interpolated climatology is defined at all grid points (including land and below the ocean floor), and the output potential density can be sigma0 or sigma2, but note that we now typically leave the profile unstable (ICTYPE=4) and use the resulting salinity and potential temperature fields in the next step.
Then convert to the hybrid climatology required for a particular HYCOM simulation (see GOMb0.08/relax/relax.csh). The region and simulation specific environment variables are in GOMb0.08/relax/EXPT.src. The required input file, GOMb0.08/relax/blkdat.input, can be created from GOMb0.08/expt_01.0/blkdat.input. The output data sets are climatological interface depth (relax_int.[ab]), potential temperature (relax_tem.[ab]) and salinity (relax_sal.[ab]) fields for the specified set of isopycnal layers and the specified set of minimum near-surface layer thicknesses.
To create spatially varying velocity diffusion (veldf2.[ab]), edit and run the veldf2.csh to produce veldf2_20.[ab]; link these files to veldf2.[ab]. Additional scripts such as iso_sigma.csh (spacially varying target density, iso_sigma.[ab], to be produced before running relax.csh if needed), sefold.csh (spatially varying SSS relaxation e-folding time files, sefold.[ab]), tbaric.csh(thermobaricity correction files, tbaric.[ab]) and spatially varying thickness diffusion (thkdf4.[ab]) are available in this example but not used.
A 2-D relaxation mask is also required for any HYCOM simulation that uses lateral boundary nudging or nesting. It is typically zero everywhere except the boundary regions where relaxation is to be applied. In the boundary regions it is the relaxation scale factor (1/seconds). The program TOOLS/relax/src/rmu_linear.f can be used to specify the boundary relaxation zones, see GOMb0.08/relax/nest_rmu_linear.csh. Input is up to 99 individual patches and the associated e-folding time in days (which is converted internally to 1/e-folding-time-in-seconds for assignment to rmu). Similarly to the previous scripts, edit nest_rmu_linear.csh and run it to produce DS/relax/010/nest_rmu.[ab]. It is easy to get the patches wrong, so nest_rmu_invday.[ab] is also produced with the e-folding time in days. This can be plotted to confirm the relaxation zones.
For this particular example, we also provided the script to create spatially varying bottom drag (cb.[ab]) and the surface salinity limiter (relax.sssrmx.[ab]). See GOMb0.08/relax/DRAG and GOMb0.08/relax/SSSRMX, edit the respective scripts and run them to get cb_07_10mm.[ab] and sssrmx_m0p5psu.[ab] in DS/relax/DRAG and DS/relax/SSSRMX, respectively. These files are also available on the HYCOM server at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/relax_DRAG.tar.gz
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/relax_SSSRMX.tar.gz
Invariants forcing files are available for this configuration on the HYCOM server at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/force_offset.tar.gz
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/force_rivers.tar.gz
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/force_seawifs.tar.gz
All of them can be recreated with the scripts available in GOMb0.08/force/offset, GOMb0.08/force/rivers and GOMb0.08/force/seawifs. N.B. the seawifs scripts requires the download of a chlorophyll observation file, see ~/HYCOM-examples/datasets/get_datasets.csh. For all scripts, edit the paths and run the scripts.
In this example, we provide CFSR and CFSv2 forcing from the HYCOM server but subregioned to an extended Gulf of Mexico region. The interpolation to the GOMb0.08 domain is done on-the-fly when running expt_01.1 or expt_01.2 with MAKE_FORCE = 1 in GOMb0.08/expt_01.1/EXPT.src.
See ~/HYCOM-examples/datasets/get_datasets.csh to download these files (CFSR_GOM.tar.gz (1994 to 2010) and CFSv2_GOM.tar.gz (2011-2018)).
The HYCOM sources can be cloned directly from GitHub in ~/HYCOM-examles/GOMb0.08/src_2.3.01_relo_mpi:
git clone --recursive https://github.com/HYCOM/HYCOM-src.git ~/HYCOM-examples/GOMb0.08/src_2.3.01_relo_mpi
For a smooth run, we suggest using these particular CPP flags for compilation in Make.csh (See the HYCOM-src wiki page for more compilation details):
setenv OCN_SIG -DEOS_SIG2 ## Sigma-2
setenv OCN_EOS -DEOS_17T ## EOS 17-term
setenv OCN_MISC "-DMOMTUM4_CFL -DRDNEST_MASK -DLATBDT_NPLINE3"
In this examples, the nest files are created from the monthly global HYCOM reanalysis (https://www.hycom.org/dataserver/gofs-3pt1/reanalysis) files available on the HYCOM server (see ~/HYCOM-examples/datasets/get_datasets.csh) and necessitate the grid and bathymetry of GLBb0.08; see ~/HYCOM-examples/GLBb0.08/datasets/get_datasets.csh).
If you do not want to re-create the nest files, download them directly at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/subregion.tar.gz
The GOMb0.08 configuration is a sub-region of GLBb0.08 at the same resolution, and this section illustrates how to nest a subregion in a larger HYCOM model region (Note that this example is also valid for nesting to any finer horizontal resolution).
The GOMb0.08 HYCOM model does not "know" about the GLBb0.08 domain. It expects a sequence of GOMb0.08 input archive files to supply the data needed for the boundary conditions. In fact, there are two distinct sets of boundary conditions:
a) relaxation to T/S/p/u/v in a buffer zone, and b) application of depth averaged flow at the open boundary.
Both are input from archive files, however T/S/p/u/v is only available from full 3-D archive files and depth averaged flow is also available from surface archive files. So, archive input for depth averaged flow could be more frequent than for T/S/p/u/v.
The nested domain must be (the same resolution as or) finer than the original. Don't forget to allow for the fact that the buffer zone (typically at least 10 coarse grid points defined by relax/010/nest_rmu.[ab]) should probably be outside the region of high interest.
To facilitate the interpolation from the coarser to the finer domain, we first create an index map file between the 2 domains. In ~HYCOM-examples/GLBb0.08/subregion, edit gmapi.csh and produce GOMb0.08/datasets/topo/regional.gmapi_GLBb0.08.[ab].
Then create the monthly nest files interpolated on the sub-region grid by editing the different paths of nest.csh and running it. Note that the bathymetry used to produce the nest files is the one with the same mask as GLBb0.08 over the region (i.e. depth_gomb0.08_09m11s.[ab]). You should now have 12 nest files in your scratch:
GOMb0.08/datasets/subregion/archm.1994_??_2015_??.[ab]
To be recognized by HYCOM, these files will be copied in your scratch GOMb0.08/expt_01.1/data/nest and renamed by GOMb0.08/expt_01.1/011_nest_link.csh in GOMb0.08/expt_01.1/011.csh to fit the time period you are running.
Nesting options are turn on by setting the blkdat variable 'lbflag' to 2 (Browning & Kreiss) or 4 (Flather) and the time frequency to update the nest is handled by 2 blkdat input variables, 'bnstfq' and 'nestfq', set in our examples to -30.5 for monthly mean archive files, see GOMb0.08/expt_01.1/blkdat.input:
-30.5 'bnstfq' = number of days between baro nesting archive input
-30.5 'nestfq' = number of days between 3-d nesting archive input
…
2 'lbflag' = lateral barotropic bndy flag (0=none, 1=port, 2=input)
The location of barotropic boundaries must be specified in the file GOMb0.08/expt_01.1/ports.input:
1.1 'sports' = scale factor for nested velocity (typically 1.0)
6 'nports' = number of boundary port sections
3 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
251 'ifport' = first i-index
251 'ilport' = last i-index (=ifport for east/west port)
105 'jfport' = first j-index
116 'jlport' = last j-index (=jfport for north/south port)
2 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
129 'ifport' = first i-index
246 'ilport' = last i-index (=ifport for east/west port)
2 'jfport' = first j-index
2 'jlport' = last j-index (=jfport for north/south port)
3 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
262 'ifport' = first i-index
262 'ilport' = last i-index (=ifport for east/west port)
6 'jfport' = first j-index
24 'jlport' = last j-index (=jfport for north/south port)
3 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
251 'ifport' = first i-index
251 'ilport' = last i-index (=ifport for east/west port)
60 'jfport' = first j-index
84 'jlport' = last j-index (=jfport for north/south port)
3 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
262 'ifport' = first i-index
262 'ilport' = last i-index (=ifport for east/west port)
121 'jfport' = first j-index
192 'jlport' = last j-index (=jfport for north/south port)
1 'kdport' = port orientation (1=N, 2=S, 3=E, 4=W)
226 'ifport' = first i-index
261 'ilport' = last i-index (=ifport for east/west port)
193 'jfport' = first j-index
193 'jlport' = last j-index (=jfport for north/south port)
The 1st line is sports, which specifies a scale factor to be applied to the barotropic velocity on the open boundary. It is optional (not present in most existing ports.input files), with a default of 1.0 (no scaling). We are using 1.1 to get better agreement with Florida Current observed transport. This is for 6 open boundaries, 1 in the northern, 1 in the southern and 4 in the eastern edge of the region rectangle.
These were initially positioned based on GOMb0.08/datasets/topo/depth_GOMb0.08_07_map.log. However this is showing the p-grid (cell centers) but northern and southern boundaries are actually specified on the v-grid (since v-velocity is normal to these boundaries), and similarly eastern and western boundaries are specified on the u-grid.
Each boundary location is a grid point just outside the model region. Correctly positioned open boundaries appear as *'s on the iu and iv maps printed in the model run .log file. You can also check their position by running GOMb0.08/ports/011/ports_map.csh (Note that the 011 corresponds to the experiment number). If the boundary locations are mis-specified the model will stop and the iu and/or iv maps will contain 9's instead of *'s at the locations that are in error. Some errors (e.g. boundaries that are too short) can't be detected by HYCOM, so always check the iu and iv maps when initially configuring a nested domain.
Note that the nesting buffer zone relaxation is completely independent of climatology buffer zone relaxation. Both could be active in the same model run. Nesting barotropic boundary conditions cannot be used in combination with port (lbflag=1), specified inflow/outflow forcing.
To make the subregion simulation is as close as possible from the global one, it is better to start from a global simulation ocean state instead of from rest. In this example, we want to run the GOMb0.08 from year 1994 to 2015 nested in a 12-month climatology of the 1994-2015 HYCOM reanalysis. So we create a restart file for GOMb0.08 derived from January 1994 HYCOM GLBb0.08. A monthly mean initial state isn’t the best option, but it is available on the dataserver. A daily mean archive would be better, and a snapshot archive (an archv file) would be best. Note that a snapshot archive can be extracted from a restart file if you have one for the outer model.
To create the restart file:
a) Download the HYCOM reanalysis for January 1994 (see ~/HYCOM-examples/datasets/get_datasets.csh).
b) Go to GLBb0.08/subregion and edit subregion_jan1.csh. Note that the subregion topography is 07 and not 09m11s to match GOMb0.08 bathymetry. We then produce GOMb0.08/datasets/subregion/archm.1994_01.[ab].
To convert this archive file into a restart file using ~/HYCOM-tools/archive/src/archv2restart.f, an existing restart file is required. If none is available, use the climatological relax files produce in 2) and run without forcing for 1 day to create a restart (see GOMb0.08/expt_01.0). Once a restart is available,
c) Go to GOMb0.08/archive and edit archv2restart_start.csh to produce restart_094a.[ab]. (Note that the restart template is restart_001b.a).
When HYCOM is run with sshflg=2 the Montgomery potential is offset so that montg1 in an archive file represents steric SSH. This makes tidal analysis easier since non-steric SSH (including tides) is srfhgt-montg1.
To create this offset:
a) run the model for 1 to 5 years with sshflg=0 (see GOMb0.08/expt_01.1/).
b) use or produce the yearly or multi-year mean archive of the simulation (Note that the mean is done automatically if mnsqa is set to 1 in GOMb0.08/expt_01.1/EXPT.src).
c) go to GOMb0.08/archive and edit data2d_archm_montg.csh to produce GOMb0.08/datasets/relax/SSH/relax_montg_011_1994.[ab].
To use this new file in your next experiment (see GOMb0.08/expt_01.2), set blkdat variable sshflg to 2. In expt_01.2, variable montg1/g has become the steric-SSH and (ssh-montg1)/g the non-steric SSH.
As in the GLBt0.72 examples, create your partitioning in GOMb0.08/topo/partit/07.
Note that 07 corresponds to the topography number of the bathymetry file (i.e. depth_GOMb0.08_07.[ab] and needs to be in the directory structure for the scripts to work).
a) Run depth_2d_Ssq.csh to generate candidate partitions.
b) Run size_S.csh to list the partitions in MPI task order (size_S.lis).
c) Run ppm1.csh to softlink to the chosen partitions and make image maps.
d) Run resize8.csh to set the partition's 1st dimension for better vector performance.
The resulting partitions are *s8:
-rw-r-----. 1 abozec 0375G018 518 Nov 22 19:01 depth_GOMb0.08_07.016s8
-rw-r-----. 1 abozec 0375G018 614 Nov 22 19:01 depth_GOMb0.08_07.024s8
-rw-r-----. 1 abozec 0375G018 724 Nov 22 19:01 depth_GOMb0.08_07.030s8
-rw-r-----. 1 abozec 0375G018 978 Nov 22 19:01 depth_GOMb0.08_07.047s8
-rw-r-----. 1 abozec 0375G018 1378 Nov 22 19:01 depth_GOMb0.08_07.062s8
-rw-r-----. 1 abozec 0375G018 1934 Nov 22 19:01 depth_GOMb0.08_07.096s8
-rw-r-----. 1 abozec 0375G018 2488 Nov 22 19:01 depth_GOMb0.08_07.122s8
These were chosen for 16, 24, 32, or 48 cores per node, but will also work well with 2/4/8/12 cores per node. Most discard tiles that are entirely over land, and so don't necessarily fill the node. For example 047s8 is a 8x6 partition with 1 discarded tile, so 1 core will be unused on a 48-core node. We typically allocate unused cores to the 1st MPI node, but how to do this varies between MPI libraries.
> head -n 2 depth_GOMb0.08_07.047s8
npes npe mpe idm jdm ibig jbig nreg minsea maxsea avesea
47 8 6 263 193 36 33 0 1 1089 768
For other domains:
- Use partit_arctic instead of partit for global tripole grids.
- Only tripole grids require npe to be an even divisor of idm.
- For larger regions the ppm images from ppmX can be scaled down.
Tidal forcing at the boundaries are derived from the OSU TIDAL PREDICTION Software (OTPS 2020) and its atlas, TPXO9_atlas_v3. The software and Atlas can be downloaded after registration via email at https://www.tpxo.net/tpxo-products-and-registration. For the GOMb0.08, the Atlantic 1/12º atlas was used to create the lateral tidal forcing. Examples of scripts to create ports_[auvz].input are given in GOMb0.08/ports/013:
ports/013/EXPT.src - define region, bathymetry and expt
ports/013/ports_latlon.csh - generate ports_latlon.input from ports.input
ports/013/ports_zuv_AO.csh - generate ports_?.input from ports_latlon.input
First, create a new experiment (here expt_01.3) based on either expt_01.1 or expt_01.2. Then go to ports/013 and edit EXPT.src to point to the right experiment (013) and bathymetry (07). Then (edit and) run successively ports_latlon.csh and ports_zuv_AO.csh. Finally, manually create softlinks to ports_?.input from the expt_ directory. The ports_[azuv].input files are the Real and Imaginary parts for tidal response at open boundary points (from ports_latlon.input).
Note that if ports_latlon.log indicates that two adjacent points are the same, reorder the ports in ports.input to remove the problem. If ports_zuv.log indicates that some points return "Site is out of model grid OR land", these points are not marked as ocean in tpxo9_atlas. The easiest fix (for a few points next to land) is to remove them from ports.input, i.e. close the boundary there. If only on u or v, this might be a point that isn't used - so keep it and see what happens. Otherwise you may have to move the ports further into the ocean by filling one or more rows or columns with land. The script ports_map.csh will produce a map of where the ports are.
The tidal bottom drag and SAL files are given on a 1/12º global grid to be easily interpolated to any regions. Get the different files by editing and running GLBp0.08/datasets/get_datasets.csh. Then to interpolate any files to our GOMb0.08 configuration, a weight file needs to be created. To do so, go to GLBp0.08/subregion and run gmapi_GOMb0.08.csh. The resulting files (regional.gmapi_GLBp0.08.[ab]) are created in GOMb0.08/topo.
To produce the tidal bottom drag file (tidal.rh.[ab]), first interpolate GLBp0.08/relax/DRAG/JSL.[ab] files to the GOMb0.08/relax/DRAG/JSL.[ab] files with GLBp0.08/subregion/jsl_GOMb0.08.csh script. Then in GOMb0.08/relax/DRAG/, run successively:
JSL_lim24.csh - minimum e-folding time of 1 day, zero above 10 days
JSL_lim24_inv.csh - convert from 1/s to e-folding time in hours (24-240)
tidal.JSLH.07.lim24.csh - rh, in m/s, for HYCOM
To produce the SAL tidal file (tidal.salReIm.[ab]), again, interpolate first with GLBp0.08/subregion/tpxo9a_sal_hReIm_GOMb0.08.csh and then GOMb0.08/relax/SAL/tpxo9a_sal_ReIm_07.csh.
These files are also available on the HYCOM server at:
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/relax_DRAG_tides.tar.gz
https://data.hycom.org/pub/GitHub/HYCOM-examples/GOMb0.08/datasets/relax_SAL_tides.tar.gz
To turn on the tides in blkdat.input:
3 'tidflg' = TIDES: tidal forcing flag (0=none,1=open-bdy,2=bdy&body)
2 'tidein' = TIDES: tide field input flag (0=no;1=yes;2=sal)
00011111 'tidcon' = TIDES: 1 digit per (Q1K2P1N2O1K1S2M2), 0=off,1=on
0.0 'tidsal' = TIDES: scalar self attraction and loading factor
1 'tiddrg' = TIDES: tidal drag flag (0=no;1=scalar;2=tensor)
500.0 'thkdrg' = TIDES: thickness of tidal drag bottom boundary layer (m)
0.25 'drgscl' = TIDES: scale factor for tidal drag (0.0 when tiddrg=0)
0 'tidgen' = TIDES: generic time (0=F,1=T)
1.0 'tidrmp' = TIDES: ramp time (days)
33971.0 'tid_t0' = TIDES: origin for ramp time (model day)
Here, we have turn on 5 tidal constituents: M2, S2, K1, O1 and N2. We also set a 1 day ramping time for the tides starting on HYCOM day 33971.0 or Jan, 3rd 1994 at 00Z (calendar yrflag=3). N.B.: use ~/HYCOM-tools/bin/hycom_ymdh_wind to convert date to HYCOM date:
> echo `echo 1994 01 03 00 3 | ~/HYCOM-tools/bin/hycom_ymdh_wind `
> 33971.000 3