Array Response Functions with ArrayGUI Nawa Dahal Robert Martin-Short Sharmin Shamsalsadati Voon Hui Lai IRIS Short Course Aug, 2015 Array Seismology Numerous seismometers placed at discrete points in a well-defined configuration to record ground motions. Applications: • • • • • • Lower the detection threshold of global earthquakes Detect and identify nuclear explosion Detect phases that usually are not detected by single station High-resolution tomographic images on regional scale Detect small-scale structures in the Earth’s mantle Use in ambient noise interferometry studies New trend in seismology Challenges in Array Seismology • Need a good array configuration to ensure wave coherency. • Need an easy way to check station quality for large number of stations. • Need to determine the direction of seismic sources (particularly for ambient noise interferometry) Importance of choosing array configuration to study scattered tsunami waves All stations All stations Dataset: ALBACORE OBS Array 9 selective stations Higher frequency Introducing ArrayGUI One stop to access array and station quality PSD plots Input: ARFs Specify 1. Network / Area of interest 2. Time interval Interactive python GUI Beamforming analysis over time (future development) Screen shots from the example GUI: Polygon drawing tool: select array geometry Look at station metadata; create PSD plots Create response function for stations of interest Note: Assure user already has the data, in future, call use GUI to download this too User inputs network code, time window GUI displays network map User choose array geometry Good ARF User makes ARF User creates beamforming plot Option to view station PFD/PDF plots, and metadata Draw a Bad ARF Set array response function defaults: frequency range of interest, approximate phase velocity. Also set PSD and station metadata defaults. . A Python GUI • Tkinter module (Tk GUI toolkit) • Contains functionality (ex: make buttons, menus, pop-up windows) • Easy to use within code organized in classes: each method can describe a different GUI aspect. Buttons link to commands: - Make new maps on the fly - Allow selection of individual stations - Link to Obspy modules and to IRIS PDF/PSD noise toolkit - Download/analyse waveforms from the selected stations Existing Problem with Existing Toolstools • Open source codes but not integrated. (ref) • Established codes can be optimized • Improve workflow IRIS Tools: • IRIS DMC PSD plot • Plot ARFs using obspy function. • Example of beamforming in backprojection tools. No physical product except personal Matlab scripts. Power Spectral Density plot • Allows analysis of noise characteristics of a selected station over a selected time window • User select station in ‘station options’ window; inputs time range. • Program links to IRIS noise toolkit; produces enhanced PSD plot • Array response function Array Response Function (ARF) • Purpose: Access quality of array configuration (geometry, interstation distance, wave frequencies) • Input: station coordinates, frequencies, limits of wavenumber • Main code: (obspy-array_transff_wavenumber) • Output: plot of ARF, list of parameters, and map Station list. Frequency. Parameters. Future development: Beamforming Analysis Purpose: Determine signal source directivity over time Steps: -Fix slowness, frequencies, stations -Perform beamforming using “delay-and-sum” method across all back-azimuths -Plot relative power for each back-azimuth over time Rewrite existing MATLAB scripts into Python (consider using HPC) Potential Applications/Users • Simplify usage of large array data sets • Detect direction of ambient noise sources • Facilitate education and outreach Thank You!