LLNL/coda-calibration-tool

Name: coda-calibration-tool

Owner: Lawrence Livermore National Laboratory

Description: Tool for calibrating body wave coda seismic models

Created: 2017-12-18 17:42:33.0

Updated: 2018-03-14 18:26:55.0

Pushed: 2018-03-14 18:27:07.0

Homepage: null

Size: 11832

Language: Java

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Livermore logo

The Coda Calibration Tool (CCT) is a Java based application for calibrating 1D shear wave coda measurement models to observed data using a much smaller set of reference MWs calculated from other means (waveform modeling, etc.).
These calibrated measurement models can then be used in other tools to generate coda MW measurements, source spectra, estimated stress drop, and other useful measurements against the rest of the events and any new data collected in the calibrated region.

note
The Coda Calibration Tool currently only does calibration; it requires data to be pre-processed for loading using other tools.


Demo

CCT

Data courtesy of Northern California Earthquake Data Center


Structure

CCT is split into three basic components.

A REST service that consumes Waveform objects containing stacked coda envelope segments and information about the station and event locations. This service does all the actual calculations to calibrate the model.

A JavaFX/HTML5/Swing GUI application that understands how to convert stack files (see Data) to Waveform objects, interact with the REST Calibration service, and display useful diagnostic plots with the resulting data.

And a wrapper project (Standalone) that combines both into a single runnable JAR file to allow end users to run the GUI and Service together the same way they would run any other desktop application.

CCT is based on Spring 5.0; primarily Boot and Data. By default, it uses a H2 in-memory database for storing loaded Waveforms and the resulting calibration artifacts.


Building

CCT uses Apache Maven for building and dependency management.

From the top level coda-calibration directory you can build the entire project using the parent pom by running:

clean package

We don't presently deploy versioned artifacts into a public repository like the Maven Central Repository but we may do so in the future.


Running
As a single runnable JAR
 -jar coda-calibration/calibration-standalone/target/calibration-standalone-1.0.1-runnable.jar
GUI alone
 -jar coda-calibration/calibration-gui/target/calibration-gui-1.0.1-runnable.jar
Calibration REST service alone
 -jar coda-calibration/calibration-service/application/target/application-1.0.1-runnable.jar
A note about HTTPS

If you look at the REST service and the GUI client packages you might have noticed 'selfsigned.crt' and 'coda-truststore.jks' in the resources directory. CCT uses HTTPS by default and these are the default certificates we include for the handshake between the client and the GUI.

You can use these as-is or use your own by changing these properties using any of the Spring external configuration mechanisms:

This additional step is recommended for deployments where the REST service is bound to a non-loopback adapter.


Data Formats

As of 1.0, CCT is capable of loading four basic file types

  1. Stacked coda envelopes

    These stacked envelopes are filtered into the same frequency ranges as those defined in the coda model parameters (3). Presently, the CCT GUI only has converters for SAC files and, as a result, requires the file names to follow a specific format to capture the frequency band information.

    ION_CHANNEL_EVENTID_LOWFREQ_HIGHFREQ_UNITS_.*.env
    . ANMO.STACK.999999_1.0_1.5_VEL_.env)
    
  2. Reference events

    A simple space delimited text file of format:

     MW [STRESS_DROP_IN_MPA|0.0]
    . 999999 5.1 0.0)
    

    note
    The EVID here should match the one defined in either the KEVNM or NEVID (tested in that order) fields of the SAC files being loaded so the envelope waveforms can be associated correctly during calibration.

  3. Coda model parameters

    This defines the frequency bands and some corresponding frequency dependent parameters to be used during calibration. ?

  4. Phase and frequency model parameters for distance amplitude correction curves

    note

    While CCT supports loading MDAC2 model descriptor files, it presently only uses it for predicted source spectra. As a result, the two parameters of most interest for calibration purposes are Psi and Sigma. These correspond to apparent or actual stress drop of the spectra depending on their values. See the additional reading for more information.


Contributing

Contributing to CCT is easy: just send us a pull request.

When you send your request, make develop the destination branch.

The develop branch contains the latest contributions, and master always points to the latest stable.

Issues, suggestions, discussion, documentation, general code cleanup, and automated tests are also all valuable ways to contribute and are more than welcome!


Additional Reading

Mayeda, K.M., A. Hofstetter, J.L. O Boyle, W.R. Walter (2003). Stable and transportable regional magnitudes based on coda-derived moment-rate spectra, Bull. Seism. Soc. Am., 93, 224-239.


Versioning

We use Semantic Versioning for versioning. For the versions available, see the tags on this repository.


License

The Coda Calibration Tool is provided under the Apache License.

yright 2017 Lawrence Livermore National Laboratory

icensed under the Apache License, Version 2.0 (the "License");
ou may not use this file except in compliance with the License.
ou may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

nless required by applicable law or agreed to in writing, software
istributed under the License is distributed on an "AS IS" BASIS,
ITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ee the License for the specific language governing permissions and
imitations under the License.

Disclaimer
is work was performed under the auspices of the U.S. Department of Energy 
 Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344.

LLNL-CODE-743439


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.