Data Visualisation and Analysis Tool Andy Heath

Data Visualisation and Analysis Tool
Andy Heath
Department of Earth & Ocean Sciences
University of Liverpool
Seismic Data eXplorer
SDX is a (Qt-based) application being developed at Liverpool
Conceptually split into 2 parts:
i) GUI (controls and visualisation)
ii) Processing framework (processing done by plugins)
… plugins created by scientist – scientist prescribes analysis …
•  Could the SDX idea offer a way of visualising and analysing
seismic waveforms on the fly within the portal?
•  Offer the ability to browse and quality control waveform data
before committing time and resources to downloading the data?
Visualisation (2D)
Visualisation (3D)
•  Visualise many waveforms simultaneously
•  Selection of waveforms and picking possible
•  Straight-forward to incorporate other information in 3D scene
Processing framework: plugin execution
Plugin name selected from menu
•  Framework automatically generates dialog box for parameter input
•  Only selected waveforms are processed by plugin
•  If plugin generates new waveforms, these are added to the display
Plugin creation and building
Plugin editor part of GUI:
•  User source code is currently C or C++
•  Simple API to access waveforms
•  Add runtime parameters (default value)
•  “Build” button generates binary plugin
User’s source code
Runtime parameter information
Support code (i.e. plugin template)
Dynamic library
(plugin binary file)
Plugin file is self-contained: runtime parameters, default values, etc are
stored within file. Using this information the plugin execution dialog is
generated on the fly by framework
Workflow editor part of GUI:
•  Simple text script
•  Execute plugins non-interactively
•  Execute multiple plugins sequentially
•  Assign plugin parameter values within workflow script
•  Pass parameter values between plugins
Assign parameter constant
Execute plugin
Pass parameter value
between plugins
SDX within the portal?
Plugin building
Plugin validation
Processing framework
•  Waveform data requested directly by framework – user request or cart
•  Plugin and workflow script files stored using cart mechanism
•  Library of common plugins/workflows available via a shared cart?
•  Parse plugins to validate – disallow some statements/calls (e.g. some i/o)
Liverpool University Computer Services Department are
willing to provide the processing and storage facilities
required to host the webservice and portlet(s)
Could the processing framework/plugin concept be applied
to other portal applications?
A demonstration of the current version of SDX is available here!