"One way to analyse the time-varying frequency content of a signal is to\n",
"apply windows in the time domain to the signal and to calculate a Fourier spectrum\n",
"of the windowed part. The window marches along the signal with defined overlap creating\n",
"a series of Fourier spectra associated with the center times of the windows. The resulting amplitude\n",
"spectra are the plotted versus window center time. In more detail:\n",
"\n",
"1. Choose windowing functions: $w(t,t_m)$ with $t_m$ the center of the window.\n",
"2. Multiply windowing function with time series: $f_m(t) = f(t)w(t,t_m)$\n",
"3. Detrend the windowed signal.\n",
"4. Perform a DFT: $F_{km} = \\Delta t\\sum_{n=0}^N f_m(t)\\exp(-2\\pi i \\frac{kn}{N})$\n",
" and calculate the absolute value, $|F_{km}|$.\n",
"5. Plot the resulting matrix: $|F_{km}|$ in the time-frequency plane."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Borehole Data and Test Site\n",
"\n",
"Within the scope of constructing new buildings for the International Geothermal Center in Bochum in 2013 wells were drilled for the installation of a geothermal heat exchanger. Bore holes were drilled next to the newly constructed building (Station GEO3). A downhole hammer was used with a diameter of 152 mm. The drill bit operates by water flushing through the drill rod. The water flow rate determines the working frequency of the hammer.\n",
"\n",
"To observe the drill bit noise a temporarily operating 2-D seismic network was installed around the drill site. Here, the noise of the used downhole hammer is investigated. An array of 16 seismological stations was installed in the test site. Four Mark L-4C-3D 1 Hz sensors, eight S-13 1 Hz sensors, one GS-13 1 Hz sensor and two Güralp CMG-3ESPC broad-band 120 sec – 50 Hz sensors were in use. Additionally an accelerometer was fixed to the drill rod (GEO11, blue triangle).\n",
"\n",
"Some of the stations were positioned within one of the infrastructure tunnels servicing the university containing water conduits, long-distance heat line and electric cables (e.g. Station GEO4 and GEO05). Thus, noise could be reduced that might disturb the recordings. Other stations are located within buildings (e.g. Station GEO2 and GEO03) ore outside (e.g. Station GEO6 and GEO07).\n",
"\n",
"![Map ot the stations at GZB](../images/karte3.jpg)\n",
"\n",
"Drill bit noise was recorded up to the maximum drilling depth of 200 m. A drilling cycle is characterised by switching on the water pump, followed by the drilling with higher amplitude signals, that lasts several minutes. The water pump\n",
"is stopped about 5 to 15 minutes after the drilling finished depending on the drill depth."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Preparation: load packages\n",
"import os\n",
"from obspy.core import read\n",
"from obspy.core import UTCDateTime\n",
"import numpy as np\n",
"import matplotlib.pylab as plt"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# data from stations, Jan 23 2013\n",
"\n",
"record = '1400' # either use record starting at 1300 or 1400\n",
"station = 'GEO7' # station code\n",
"# available stations are GEO2, GEO3 (only 14:00), GEO4, GEO5, GEO6, GEO7\n",
"\n",
"if record =='1300':\n",
" stime = UTCDateTime('2013-01-23 13:16:00Z') # use record starting at 1300\n",
" etime = UTCDateTime('2013-01-23 13:25:00Z')\n",
" ttitle = ', depth: 36.5 m'\n",
"else:\n",
" stime = UTCDateTime('2013-01-23 14:17:00Z') # use record starting at 1400 (14:14-14:23)\n",