How to download HYCOM
From Dr. Dan Yu (July 2018):
This HYCOM download tool uses “ferret” as interface.
Please visit ferret web site to see details of the software. Also you'll need nco tool.
Version 7.1 of ferret/pyferret or higher are tested.
ferret/pyferret also can be installed by python conda tool.
conda create -n FERRET -c conda-forge pyferret --yes
source activate FERRET
You can download our tool here.
Once you download and untar, there’re 2 directories (9x.x_exp & 19.x_exp) that correspond to 2 different HYCOM experiment datasets; check HYCOM web site for further details about the description of the datasets.
Main script is listdate.sh in each dir, edit options as you need. For example:
- exp="91.1" HYCOM experiment
- lon_s="120" start longitude (-180 ~ 180)
- lon_e="125" end longitude (-180 ~ 180)
- lat_s="20" start latitude (-90 ~ 90)
- lat_e="25" end latitude (-90 ~ 90)
For 19.x_exp, 1 extra var “yr” has to be defined.
There’re 3 optional vars you can specify, if you have large domain (and want to subsample) or encounter memory problem with ferret.
- lon_i: longitudinal interval, default is 0.08, use larger if needed
- lat_i: latitudinal interval , default is 0.08, use larger if needed
- mem: ferret memory cache, default is 300 (MegaWords), use larger if needed
Once you finish, execute listdate.sh, and it will generate listHYCOM.jnl for whole record list of experiment.
Edit time range in listHYCOM.jnl if you wish.
Then execute dlHYCOM.sh, and all your nc files will be in “output/”.
If any error occurs, such as TMAP error or disconnection,
please check ncfile (including size) in output directory first,
and DELETE the lines in listHYCOM.jnl corresponding to those that have already been successfully downloaded,
and then type: dlHYCOM.sh again!
The download script is designed to get all variables into 3 files (SSH_*.nc, ST_*.nc, UV_*.nc) for SCHISM.
Once you gather all you need, simply use nco command to cat your ncfiles.
For example: ncrcat SSH_*.nc SSH_final.nc
Then you can use "gen_hot_3Dth_from_hycom.f90" to generate your initial & open boundary conditions for SCHISM.
Instead of downloading the whole records, the script is designed to download each record at a time to avoid too many requests to HYCOM server.
Also using OPeNDAP protocol to only request the region you need.
HYCOM server will reject too large a request!
Both minimize the load of HYCOM server, and makes downloading long record possible.
The only drawback is you will need extra disk storage to concatenate all netcdf files.