A synthetic seismic event generator with a graphical user interface for creating and dispatching custom seismic events.
The eventXML-generator is a Python-based tool designed to generate synthetic seismic events and output them in QuakeML format. It features a user-friendly GUI for easy configuration and execution of the event generation process.
- Interactive map for selecting event location
- Customizable event parameters (magnitude, depth, time, etc.)
- Focal mechanism configuration with real-time beachball diagram
- Station inventory management
- Noise and uncertainty modeling
- Multiple origin simulation
- Event dispatch functionality
- Python 3.6+
- PyQt5
- ObsPy
- Folium
- Matplotlib
- NumPy
- Configparser
-
Clone the repository:
git clone [email protected]:comoglu/eventXML-generator.git
-
Navigate to the project directory:
cd eventXML-generator
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the GUI:
python GUI.py
-
Configure the event parameters using the various tabs in the interface.
-
Click "Save Config" to save your configuration to
config.ini
. -
Click "Run Generator" to create the synthetic event.
-
Once the event is generated, you can click "Dispatch Event" to send it to your seismic processing system.
The config.ini
file contains all the parameters for event generation. You can edit this file directly or use the GUI to modify the settings.
GUI.py
: The main graphical user interface for the application.synthetic_seismic_event_generator.py
: The core script for generating synthetic seismic events.config.ini
: Configuration file for event parameters.
Contributions to the eventXML-generator are welcome. Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Mustafa Comoglu
- ObsPy community for their comprehensive seismology toolkit
- PyQt5 for the GUI framework
- Folium for the interactive map functionality