SDS Tools¶
Welcome to SDS tools!
SDS tools is a comprehensive suite of tools designed for the robust analysis of time series shoreline data. It provides functionalities for filtering outliers, conducting in-depth data analysis, and identifying trends, thereby enabling more accurate and reliable shoreline data interpretation.
This website and the code is currently under active development.
SDS analysis/post-processing scripts available for use¶
-
filter_outliers_hampel_spacetime.py
: Removes outliers from time series data using the Hampel filter applicable forraw_transect_time_series.csv
&tidally_corrected_transect_time_series.csv
. This takes a csv file of time (rows) versus transects (columns) and outputs a new csv file in the same format. -
inpaint_spacetime.py
: Use this script to fill in the missing values after using the scriptfilter_outliers_hampel_spacetime.py
to remove outliers from the time series data. This takes a csv file of time (rows) versus transects (columns) and outputs a new csv file in the same format. -
detrend_relstart_transect_timeseries.py
: Use this script to detrend each transect relative to a stable initial value. This takes a csv file of time (rows) versus transects (columns) and outputs a new csv file in the same format. -
analyze_transects.py
: Use this script to statistically analyze data after using the scriptinpaint_spacetime.py
to analyze the time series data. This generates one csv file that contains statistics per transect, and an npz file that contains 2d arrays of linear trend, autocorrelation, etc. This takes a csv file of time (rows) versus transects (columns) and outputs a new csv file in the same format. -
denoise_inpainted_spacetime.py
: Use this script to denoise an inpainted SDS matrix using a Morlet wavelet (experimental). This results in a smoother dataset, but carries out filtering in both space and time.
Auxiliary scripts available for use¶
-
download_era5_dataframe_singlelocation.py
: Use this script to download a time-series of bulk wave statistics at a single point, using a geoJSON polygon as input -
download_era5_dataframe_grid.py
: Use this script to download a time-series of bulk wave statistics over a 2d grid, using a geoJSON polygon as input -
download_topobathymap_geojson.py
: Use this script to download a topobathymetric map at approx ~3m resolution, and store as a geoTIFF. Takes geoJSON polygon as input -
download_topobathymap_geotiff.py
: Use this script to download a topobathymetric map at approx ~3m resolution, and store as a geoTIFF. Takes geoTIFF, e.g. a CoastSeg image, as input -
make_csv_per_transect_tide_crt.py
: Saves the tidally corrected time series for each transect with intersections with the shoreline -
make_csv_per_transect_raw.py
: Saves the raw time series for each transect with intersections with the shoreline
Test script¶
test_scripts.sh
is a utility script for testing all scripts using example datasets