Dataset Open Access

Large-N cross-correlation functions of ambient seismic noise recorded in the Vienna basin, Austria.

Schippkus, Sven; Hadziioannou, Céline; Hillers, Gregor


JSON-LD (schema.org) Export

{"@context":"https://schema.org/","@id":"http://doi.org/10.25592/uhhfdm.18152","@type":"Dataset","creator":[{"@id":"https://orcid.org/0000-0002-8504-6811","@type":"Person","affiliation":"University of Hamburg","name":"Schippkus, Sven"},{"@id":"https://orcid.org/0000-0002-5312-2226","@type":"Person","affiliation":"University of Hamburg","name":"Hadziioannou, C\u00e9line"},{"@id":"https://orcid.org/0000-0003-2341-1892","@type":"Person","affiliation":"University of Helsinki","name":"Hillers, Gregor"}],"datePublished":"2025-12-01","description":"<p>This repository contains the C<sub>1&nbsp;</sub>cross-correlation functions of the ambient seismic field and station metadata required to reproduce the results described in the manuscript &quot;Source effects in higher-order ambient seismic field correlations&quot; by Schippkus et al., 2025.</p>\n\n<p>We provide a complete set of Jupyter notebooks that implements all processing described in the manuscript for full reproducibility. They make use of the data provided in this repository. The notebooks are hosted on GitHub at&nbsp;<a href=\"https://github.com/schipp/higher_order_correlations_c2\">https://github.com/schipp/higher_order_correlations_c2</a>.</p>\n\n<p>The files hosted here are:</p>\n\n<ul>\n\t<li><strong>stations_receivers.csv</strong>: List of&nbsp;1990 stations used as receiver&nbsp;stations. Station OMV.GDT is used as the master station in the manuscript.&nbsp;Station names are arbitrary.</li>\n\t<li><strong>stations_auxiliary.csv</strong>: List of 304 stations used as auxiliary stations.</li>\n\t<li><strong>correlations_for_c1_data.pt</strong>: C<sub>1</sub> cross-correlations of all 1990 receiver stations with the master station OMV.GDT in the center. Saved as a PyTorch torch.tensor with shape [1990, 3001]. Sampling rate is 5 Hz, correlation functions are limited to 300 seconds of anti-causal and causal lapse time (=&gt; 3001 samples). First dimension (the receiver stations) is sorted alphabetically by station name.</li>\n\t<li><strong>correlations_for_c2_data.pt</strong>:&nbsp;C<sub>1</sub>&nbsp;cross-correlations of all 1990 receiver stations&nbsp;with the 304 auxiliary stations surrounding them. Saved as a PyTorch torch.tensor&nbsp;with shape [1990, 304, 3001]. Sampling rate is 5 Hz, correlation functions are limited to 300 seconds of anti-causal and causal lapse time (=&gt; 3001 samples). First dimension (the receiver stations) and second dimension (the auxiliary stations) are sorted alphabetically by station name.</li>\n</ul>\n\n<p>The cross-correlations&nbsp;are computed as described in the manuscript: ~4 weeks of continuous recordings are cut into 1-hr windows and spectrally whitened. All windows are cross-correlated and linearly stacked. No additional processing is applied. For more details on&nbsp;these data, please see the manuscript.</p>\n\n<p>We provide a minimal Python code snippet to load the C<sub>1</sub> correlation functions with the master station (&quot;OMV.GDT&quot;), read station locations, filter the correlation functions with a narrowband-filter around 0.3 Hz, and plot the focal spot of the&nbsp;C<sub>1</sub> correlation wavefield in space:</p>\n\n<pre><code class=\"language-python\">import torch\nimport polars as pl\nimport matplotlib.pyplot as plt\nfrom scipy.signal import butter, filtfilt\n\n# load correlation functions\nsampling_rate = 5\nlapse_times = torch.arange(-300, 300 + 1 / sampling_rate, 1 / sampling_rate)\ncorrs = torch.load(\"correlations_for_c1_data.pt\", weights_only=False)\n\n# load metadata\nstations = pl.read_csv(\"stations_receivers.csv\")\nnames = stations.select(\"station\").to_series().to_list()\nx, y = stations.select([\"X\", \"Y\"]).to_numpy().T\nmaster_station = \"OMV.GDT\"\n\n# apply acausal narrowband filter\nfrequency_band = (0.29, 0.31)\na, b = butter(4, frequency_band, btype=\"bandpass\", fs=sampling_rate)\nfiltered_corrs = torch.tensor(filtfilt(a, b, corrs, axis=-1).copy())\n\n# extract focal spot and set master station (=auto-correlation) to zero\nfocal_spot = filtered_corrs[:, torch.argmin(torch.abs(lapse_times))]\nfocal_spot[names.index(master_station)] = 0\n\n# plot focal spot\nfig, ax = plt.subplots()\nax.scatter(\n    x,\n    y,\n    c=focal_spot,\n    cmap=\"RdBu_r\",\n    vmin=-focal_spot.abs().max(),\n    vmax=focal_spot.abs().max(),\n)\nax.set(\n    xlabel=\"Distance (km)\",\n    ylabel=\"Distance (km)\",\n    title=\"Focal spot\",\n    aspect=\"equal\"\n)</code></pre>\n\n<p>&nbsp;</p>","distribution":[{"@type":"DataDownload","contentUrl":"https://www.fdr.uni-hamburg.de/api/files/7cb79144-155c-4551-9f6a-46fbe7b0c1b4/correlations_for_c1_data.pt","encodingFormat":"pt"},{"@type":"DataDownload","contentUrl":"https://www.fdr.uni-hamburg.de/api/files/7cb79144-155c-4551-9f6a-46fbe7b0c1b4/correlations_for_c2_data.pt","encodingFormat":"pt"},{"@type":"DataDownload","contentUrl":"https://www.fdr.uni-hamburg.de/api/files/7cb79144-155c-4551-9f6a-46fbe7b0c1b4/stations_auxiliary.csv","encodingFormat":"csv"},{"@type":"DataDownload","contentUrl":"https://www.fdr.uni-hamburg.de/api/files/7cb79144-155c-4551-9f6a-46fbe7b0c1b4/stations_receivers.csv","encodingFormat":"csv"}],"identifier":"http://doi.org/10.25592/uhhfdm.18152","keywords":["Seismology","Ambient Seismic Noise","Seismic Interferometry","Wave propagation"],"license":"https://creativecommons.org/licenses/by/4.0/legalcode","name":"Large-N cross-correlation functions of ambient seismic noise recorded in the Vienna basin, Austria.","url":"https://www.fdr.uni-hamburg.de/record/18152"}

Cite record as