added static method demeanWFData which simply returns the demeaned waveform stream object while the individual trace data are decreased by the average value of the waveform in a given window
This commit is contained in:
parent
9aa8a5bf13
commit
327a22818a
@ -386,6 +386,30 @@ class PickDlg(QDialog):
|
|||||||
wfdata = self.getWFData().select(component=component)
|
wfdata = self.getWFData().select(component=component)
|
||||||
return wfdata
|
return wfdata
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def demeanWFData(data, t0, win, gap):
|
||||||
|
"""
|
||||||
|
returns the DATA where each trace is demean by the average value within
|
||||||
|
a desired time window WIN before T0 and a GAP
|
||||||
|
:param data: waveform stream object
|
||||||
|
:type data: `~obspy.core.stream.Stream`
|
||||||
|
:param t0: time before which the noise
|
||||||
|
:type t0: float
|
||||||
|
:param win: time window for average calculation
|
||||||
|
:type win: tuple
|
||||||
|
:param gap: gap window to avoid polluting the average
|
||||||
|
:type gap: float
|
||||||
|
:return: data
|
||||||
|
:rtype: `~obspy.core.stream.Stream`
|
||||||
|
"""
|
||||||
|
starttime = getGlobalTimes(data)[0]
|
||||||
|
for tr in data:
|
||||||
|
stime = tr.stats.starttime - starttime
|
||||||
|
t = prepTimeAxis(stime, tr)
|
||||||
|
inoise = getnoisewin(t, t0, win, gap)
|
||||||
|
tr.data -= tr.data[inoise].mean()
|
||||||
|
return data
|
||||||
|
|
||||||
def getPicks(self):
|
def getPicks(self):
|
||||||
return self.picks
|
return self.picks
|
||||||
|
|
||||||
@ -424,14 +448,8 @@ class PickDlg(QDialog):
|
|||||||
|
|
||||||
x_res = getResolutionWindow(snr)
|
x_res = getResolutionWindow(snr)
|
||||||
|
|
||||||
# demean data before plotting
|
data = self.demeanWFData(data=self.getWFData().copy(), t0=ini_pick,
|
||||||
data = self.getWFData().copy()
|
win=noise_win, gap=gap_win)
|
||||||
starttime = getGlobalTimes(data)[0]
|
|
||||||
for tr in data:
|
|
||||||
stime = tr.stats.starttime - starttime
|
|
||||||
t = prepTimeAxis(stime, tr)
|
|
||||||
inoise = getnoisewin(t, ini_pick, noise_win, gap_win)
|
|
||||||
tr.data -= tr.data[inoise].mean()
|
|
||||||
|
|
||||||
self.setXLims([ini_pick - x_res, ini_pick + x_res])
|
self.setXLims([ini_pick - x_res, ini_pick + x_res])
|
||||||
self.setYLims(np.array([-noiselevel * 2.5, noiselevel * 2.5]) +
|
self.setYLims(np.array([-noiselevel * 2.5, noiselevel * 2.5]) +
|
||||||
|
Loading…
Reference in New Issue
Block a user