Compare commits
12 Commits
correlatio
...
0.3
| Author | SHA1 | Date | |
|---|---|---|---|
| 9333ebf7f3 | |||
| 8c46b1ed18 | |||
| c743813446 | |||
| 41c9183be3 | |||
| ae6c4966a9 | |||
| e8a516d16b | |||
| f78315dec4 | |||
| 710ea57503 | |||
| 8aaad643ec | |||
| bc808b66c2 | |||
| 472e5b3b9e | |||
|
|
503ea419c4 |
14
PyLoT.py
Executable file → Normal file
14
PyLoT.py
Executable file → Normal file
@@ -716,14 +716,14 @@ class MainWindow(QMainWindow):
|
||||
self.tabs.addTab(wf_tab, 'Waveform Plot')
|
||||
self.tabs.addTab(array_tab, 'Array Map')
|
||||
self.tabs.addTab(events_tab, 'Eventlist')
|
||||
self.tabs.addTab(spectro_tab, 'Spectro')
|
||||
#self.tabs.addTab(spectro_tab, 'Spectro')
|
||||
|
||||
self.wf_layout.addWidget(self.no_data_label)
|
||||
self.wf_layout.addWidget(self.wf_scroll_area)
|
||||
self.wf_scroll_area.setWidgetResizable(True)
|
||||
self.init_array_tab()
|
||||
self.init_event_table()
|
||||
self.init_spectro_tab()
|
||||
#self.init_spectro_tab()
|
||||
self.tabs.setCurrentIndex(0)
|
||||
|
||||
self.eventLabel = QLabel()
|
||||
@@ -1976,7 +1976,6 @@ class MainWindow(QMainWindow):
|
||||
self.dataPlot.activateObspyDMToptions(self.obspy_dmt)
|
||||
if self.obspy_dmt:
|
||||
self.prepareObspyDMT_data(eventpath)
|
||||
self.dataPlot.activateCompareOptions(True)
|
||||
|
||||
def loadWaveformData(self):
|
||||
'''
|
||||
@@ -2153,10 +2152,11 @@ class MainWindow(QMainWindow):
|
||||
self.wf_scroll_area.setVisible(len(plots) > 0)
|
||||
self.no_data_label.setVisible(not len(plots) > 0)
|
||||
for times, data, times_syn, data_syn in plots:
|
||||
self.dataPlot.plotWidget.getPlotItem().plot(times, data,
|
||||
pen=self.dataPlot.pen_linecolor)
|
||||
self.dataPlot.plotWidget.getPlotItem().plot(np.array(times), np.array(data),
|
||||
pen=self.dataPlot.pen_linecolor,
|
||||
skipFiniteCheck=True)
|
||||
if len(data_syn) > 0:
|
||||
self.dataPlot.plotWidget.getPlotItem().plot(times_syn, data_syn,
|
||||
self.dataPlot.plotWidget.getPlotItem().plot(np.array(times_syn), np.array(data_syn),
|
||||
pen=self.dataPlot.pen_linecolor_syn)
|
||||
self.dataPlot.reinitMoveProxy()
|
||||
self.highlight_stations()
|
||||
@@ -3096,7 +3096,7 @@ class MainWindow(QMainWindow):
|
||||
|
||||
if self.pg:
|
||||
if spe:
|
||||
if picks['epp'] and picks['lpp']:
|
||||
if not self.plot_method == 'fast' and picks['epp'] and picks['lpp']:
|
||||
pen = make_pen(picktype, phaseID, 'epp', quality)
|
||||
self.drawnPicks[picktype][station].append(pw.plot([epp, epp], ylims,
|
||||
alpha=.25, pen=pen, name='EPP'))
|
||||
|
||||
28
README.md
28
README.md
@@ -54,33 +54,14 @@ In order to run PyLoT you need to install:
|
||||
|
||||
#### Some handwork:
|
||||
|
||||
PyLoT needs a properties folder on your system to work. It should be situated in your home directory
|
||||
(on Windows usually C:/Users/*username*):
|
||||
|
||||
mkdir ~/.pylot
|
||||
|
||||
In the next step you have to copy some files to this directory:
|
||||
|
||||
*for local distance seismicity*
|
||||
|
||||
cp path-to-pylot/inputs/pylot_local.in ~/.pylot/pylot.in
|
||||
|
||||
*for regional distance seismicity*
|
||||
|
||||
cp path-to-pylot/inputs/pylot_regional.in ~/.pylot/pylot.in
|
||||
|
||||
*for global distance seismicity*
|
||||
|
||||
cp path-to-pylot/inputs/pylot_global.in ~/.pylot/pylot.in
|
||||
|
||||
and some extra information on error estimates (just needed for reading old PILOT data) and the Richter magnitude scaling
|
||||
Some extra information on error estimates (just needed for reading old PILOT data) and the Richter magnitude scaling
|
||||
relation
|
||||
|
||||
cp path-to-pylot/inputs/PILOT_TimeErrors.in path-to-pylot/inputs/richter_scaling.data ~/.pylot/
|
||||
|
||||
You may need to do some modifications to these files. Especially folder names should be reviewed.
|
||||
|
||||
PyLoT has been tested on Mac OSX (10.11), Debian Linux 8 and on Windows 10.
|
||||
PyLoT has been tested on Mac OSX (10.11), Debian Linux 8 and on Windows 10/11.
|
||||
|
||||
## Release notes
|
||||
|
||||
@@ -89,6 +70,7 @@ PyLoT has been tested on Mac OSX (10.11), Debian Linux 8 and on Windows 10.
|
||||
- event organisation in project files and waveform visualisation
|
||||
- consistent manual phase picking through predefined SNR dependant zoom level
|
||||
- consistent automatic phase picking routines using Higher Order Statistics, AIC and Autoregression
|
||||
- pick correlation correction for teleseismic waveforms
|
||||
- interactive tuning of auto-pick parameters
|
||||
- uniform uncertainty estimation from waveform's properties for automatic and manual picks
|
||||
- pdf representation and comparison of picks taking the uncertainty intrinsically into account
|
||||
@@ -97,7 +79,7 @@ PyLoT has been tested on Mac OSX (10.11), Debian Linux 8 and on Windows 10.
|
||||
|
||||
#### Known issues:
|
||||
|
||||
We hope to solve these with the next release.
|
||||
Current release is still in development progress and has several issues. We are currently lacking manpower, but hope to assess many of the issues in the near future.
|
||||
|
||||
## Staff
|
||||
|
||||
@@ -110,4 +92,4 @@ Others: A. Bruestle, T. Meier, W. Friederich
|
||||
|
||||
[ObsPy]: http://github.com/obspy/obspy/wiki
|
||||
|
||||
August 2024
|
||||
September 2024
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
import os
|
||||
from functools import lru_cache
|
||||
|
||||
try:
|
||||
import pyqtgraph as pg
|
||||
@@ -25,14 +26,14 @@ def pick_linestyle_pg(picktype, key):
|
||||
:return: Qt line style parameters
|
||||
:rtype:
|
||||
"""
|
||||
linestyles_manu = {'mpp': (QtCore.Qt.SolidLine, 2.),
|
||||
'epp': (QtCore.Qt.DashLine, 1.),
|
||||
'lpp': (QtCore.Qt.DashLine, 1.),
|
||||
'spe': (QtCore.Qt.DashLine, 1.)}
|
||||
linestyles_auto = {'mpp': (QtCore.Qt.DotLine, 2.),
|
||||
'epp': (QtCore.Qt.DashDotLine, 1.),
|
||||
'lpp': (QtCore.Qt.DashDotLine, 1.),
|
||||
'spe': (QtCore.Qt.DashDotLine, 1.)}
|
||||
linestyles_manu = {'mpp': (QtCore.Qt.SolidLine, 2),
|
||||
'epp': (QtCore.Qt.DashLine, 1),
|
||||
'lpp': (QtCore.Qt.DashLine, 1),
|
||||
'spe': (QtCore.Qt.DashLine, 1)}
|
||||
linestyles_auto = {'mpp': (QtCore.Qt.DotLine, 2),
|
||||
'epp': (QtCore.Qt.DashDotLine, 1),
|
||||
'lpp': (QtCore.Qt.DashDotLine, 1),
|
||||
'spe': (QtCore.Qt.DashDotLine, 1)}
|
||||
linestyles = {'manual': linestyles_manu,
|
||||
'auto': linestyles_auto}
|
||||
return linestyles[picktype][key]
|
||||
@@ -80,6 +81,7 @@ def which(program, parameter):
|
||||
return None
|
||||
|
||||
|
||||
@lru_cache(maxsize=128)
|
||||
def make_pen(picktype, phase, key, quality):
|
||||
"""
|
||||
Make PyQtGraph.QPen
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user