Skip to content

Commit 86bf2b7

Browse files
committed
CCT 1.0.18
Comprehensive updates to how zooming is handled in all Waveform plots to support ‘sticky’ zoom levels Additional toggle included to allow zooming an entire group of Waveform plots to match an index plot’s zoom Additional updates to uncertainty quantification metrics based on continuing iteration with the user community Include a coda start offset parameter in the frequency band table to allow measurement offsets for entire frequency bands; 'CS' picks Implementation of user adjustable start times for coda measurements on an individual waveform basis; 'UCS' picks, overrides 'CS' values, if present Include reference features in several plots to allow comparison against known terms and measurements. Basic tutorial and notes for new users and basic API documentation for developers now included in the help menu Changed the way coda start is calculated to make it a two-step where we find the max vel, then fit the model, then back-prop the expected velocity into the coda start time field. Fix for zoom issues when you go straight to measurement/site and box select without displaying any single waveform first. Bump to TLS 1.3 since support has been backported to Java 8 Changed the map screenshot button to put the icons back onto png Moving picks on waveforms with site measurements will re-measure the measurement and replot it in site automatically. Dynamically update synthetic when you move UCS pick. New top axis option for the Moment vs Energy plot + other updates related. Fixed log_x axis resizing not being taken into acount for the station correction sd plot. New REST endpoint to directly generate a synthetic coda envelope based on the loaded calibration. Fixed a bug where if you had ref/val events loaded not in data set the site tab could blow up a bit. Updates to default table values to increase the default window lengths when no tables are loaded, based on user feedback.
1 parent bdd28f4 commit 86bf2b7

File tree

2,705 files changed

+914204
-21084
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,705 files changed

+914204
-21084
lines changed

README.md

+56-34
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
![Livermore logo](llnl-logo.gif)
22

3-
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.).
3+
**Additional documentation is available at the project [GitHub pages site](https://software.llnl.gov/coda-calibration-tool/).**
4+
5+
---
6+
7+
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.).
48
<br/>These calibrated measurement models can then be used in other tools to generate coda MW measurements, source spectra, estimated stress, and other useful measurements against the rest of the events and any new data collected in the calibrated region.
59

6-
> ***<sub>note</sub>*** <br/>
7-
> The `Coda Calibration Tool` currently only does calibration; it requires data to be pre-processed for loading using other tools.
10+
> **_<sub>note</sub>_** <br/>
11+
> The `Coda Calibration Tool` currently only does calibration; it requires data to be pre-processed for loading using other tools.
12+
13+
---
814

9-
***
1015
## [Demo](#demo)
1116

1217
https://user-images.githubusercontent.com/10851365/179833833-8bc0eadc-abf7-49b1-a831-9555675d3aa8.mp4
1318

1419
<sub>Data courtesy of [Northern California Earthquake Data Center](http://ncedc.org/)</sub>
1520

16-
***
21+
---
22+
1723
## [Structure](#structure)
1824

19-
CCT is split into three basic components.
25+
CCT is split into three basic components.
2026

2127
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.
2228

@@ -26,48 +32,55 @@ And a wrapper project (Standalone) that combines both into a single runnable JAR
2632

2733
CCT is based on [Spring 5.0](https://spring.io/); primarily Boot and Data. By default, it uses a [H2](http://www.h2database.com/html/main.html) in-memory database for storing loaded Waveforms and the resulting calibration artifacts.
2834

29-
***
35+
---
36+
3037
## [Building](#building)
31-
CCT uses [Apache Maven](https://maven.apache.org/) for building and dependency management.
38+
39+
CCT uses [Apache Maven](https://maven.apache.org/) for building and dependency management.
3240

3341
From the top level `coda-calibration` directory you can build the entire project using the parent pom by running:
42+
3443
```shell
35-
mvn clean package
44+
mvn clean install
3645
```
3746

38-
We don't presently deploy versioned artifacts into a public repository like the [Maven Central Repository](https://maven.apache.org/repository/index.html) but we may do so in the future.
39-
***
47+
---
48+
4049
## [Running](#running)
4150

4251
#### **As a single runnable JAR**
4352

4453
```shell
45-
java -jar coda-calibration/calibration-standalone/target/calibration-standalone-1.0.17-runnable.jar
54+
java -jar coda-calibration/calibration-standalone/target/calibration-standalone-1.0.18-runnable.jar
4655
```
4756

4857
#### **GUI alone**
4958

5059
```shell
51-
java -jar coda-calibration/calibration-gui/target/calibration-gui-1.0.17-runnable.jar
60+
java -jar coda-calibration/calibration-gui/target/calibration-gui-1.0.18-runnable.jar
5261
```
62+
5363
#### **Calibration REST service alone**
5464

5565
```shell
56-
java -jar coda-calibration/calibration-service/application/target/application-1.0.17-runnable.jar
66+
java -jar coda-calibration/calibration-service/application/target/application-1.0.18-runnable.jar
5767
```
5868

5969
#### A note about HTTPS
70+
6071
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.
6172

6273
You can use these as-is or use your own by changing these properties using any of the [Spring external configuration](https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html) mechanisms:
6374

64-
* On the client:
75+
- On the client:
76+
6577
```text
6678
webclient.trustStoreName
6779
webclient.trustStorePass
6880
```
6981

70-
* On the REST service:
82+
- On the REST service:
83+
7184
```text
7285
server.ssl.key-alias
7386
server.ssl.key-password
@@ -78,14 +91,15 @@ server.ssl.key-store-type
7891

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

81-
***
94+
---
95+
8296
## [Data Formats](#data)
8397

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

86100
1. Stacked coda envelopes
87101

88-
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](http://ds.iris.edu/ds/nodes/dmc/software/downloads/sac/) files and, as a result, requires the file names to follow a specific format to capture the frequency band information.
102+
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](http://ds.iris.edu/ds/nodes/dmc/software/downloads/sac/) files and, as a result, requires the file names to follow a specific format to capture the frequency band information.
89103

90104
```text
91105
STATION_CHANNEL_EVENTID_LOWFREQ_HIGHFREQ_UNITS_.*.env
@@ -100,7 +114,8 @@ As of 1.0, CCT is capable of loading four basic file types
100114
EVID MW [APPARENT_STRESS_IN_MPA|0.0]
101115
(e.g. 999999 5.1 0.0)
102116
```
103-
> ***<sub>note</sub>*** <br/>
117+
118+
> **_<sub>note</sub>_** <br/>
104119
> 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.
105120
106121
3. Coda model parameters
@@ -110,40 +125,46 @@ As of 1.0, CCT is capable of loading four basic file types
110125

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

113-
> ***<sub>note</sub>*** <br/>
128+
> **_<sub>note</sub>_** <br/>
114129
>
115-
> While CCT supports loading MDAC2 model descriptor files, it presently only uses it for predicted source spectra.
116-
> 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.
130+
> While CCT supports loading MDAC2 model descriptor files, it presently only uses it for predicted source spectra.
131+
> 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.
117132
> See the [additional reading](#references) for more information.
118133
119-
***
134+
---
135+
120136
## [Contributing](#contributing)
121137

122-
Contributing to CCT is easy: just send us a [pull request](https://help.github.com/articles/using-pull-requests/).
138+
Contributing to CCT is easy: just send us a [pull request](https://help.github.com/articles/using-pull-requests/).
123139

124-
When you send your request, make ``develop`` the destination branch.
140+
When you send your request, make `develop` the destination branch.
125141

126-
The ``develop`` branch contains the latest contributions, and ``master`` always points to the latest stable.
142+
The `develop` branch contains the latest contributions, and `master` always points to the latest stable.
127143

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

130-
***
146+
Any contributions are assumed to also be licensed for release as Apache V2.
147+
148+
---
149+
131150
## [Additional Reading](#references)
132151

133152
[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.](http://bssa.geoscienceworld.org/content/93/1/224)
134153

135-
***
154+
---
155+
136156
## [Versioning](#versioning)
137157

138-
We use [Semantic Versioning](http://semver.org/) for versioning. For the versions available, see the tags on this repository.
158+
We use [Semantic Versioning](http://semver.org/) for versioning. For the versions available, see the tags on this repository.
159+
160+
---
139161

140-
***
141162
## [License](#license)
142163

143164
The `Coda Calibration Tool` is provided under the [Apache License](LICENSE.txt).
144165

145166
```text
146-
Copyright 2017 Lawrence Livermore National Laboratory
167+
Copyright 2022 Lawrence Livermore National Laboratory
147168
148169
Licensed under the Apache License, Version 2.0 (the "License");
149170
you may not use this file except in compliance with the License.
@@ -158,12 +179,13 @@ The `Coda Calibration Tool` is provided under the [Apache License](LICENSE.txt).
158179
limitations under the License.
159180
```
160181

161-
***
182+
---
162183

163184
## [Disclaimer](#disclaimer)
185+
164186
```text
165-
This work was performed under the auspices of the U.S. Department of Energy
187+
This work was performed under the auspices of the U.S. Department of Energy
166188
by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344.
167189
```
168190

169-
``LLNL-CODE-743439``
191+
`LLNL-CODE-743439`

calibration-gui/pom.xml

+5-58
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>gov.llnl.gnem.apps.coda.calibration</groupId>
77
<artifactId>coda-calibration</artifactId>
8-
<version>1.0.17</version>
8+
<version>1.0.18</version>
99
</parent>
1010

1111
<artifactId>calibration-gui</artifactId>
@@ -227,69 +227,16 @@
227227
</configuration>
228228
</plugin>
229229
<plugin>
230-
<groupId>org.apache.maven.plugins</groupId>
231-
<artifactId>maven-shade-plugin</artifactId>
232-
<dependencies>
233-
<dependency>
234-
<groupId>org.springframework.boot</groupId>
235-
<artifactId>spring-boot-maven-plugin</artifactId>
236-
<version>${spring.boot.version}</version>
237-
</dependency>
238-
</dependencies>
230+
<groupId>org.springframework.boot</groupId>
231+
<artifactId>spring-boot-maven-plugin</artifactId>
239232
<executions>
240233
<execution>
241-
<phase>package</phase>
242234
<goals>
243-
<goal>shade</goal>
235+
<goal>repackage</goal>
244236
</goals>
245-
<configuration>
246-
<transformers>
247-
<transformer implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
248-
<resource>META-INF/spring.handlers</resource>
249-
</transformer>
250-
<transformer implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
251-
<resource>META-INF/spring.factories</resource>
252-
</transformer>
253-
<transformer implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
254-
<resource>META-INF/spring.schemas</resource>
255-
</transformer>
256-
<transformer implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
257-
<resource>META-INF/spring.tooling</resource>
258-
</transformer>
259-
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
260-
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
261-
<manifestEntries>
262-
<Main-Class>org.springframework.boot.loader.JarLauncher</Main-Class>
263-
<Start-Class>gov.llnl.gnem.apps.coda.calibration.gui.GuiApplication</Start-Class>
264-
</manifestEntries>
265-
</transformer>
266-
</transformers>
267-
</configuration>
268237
</execution>
269238
</executions>
270-
<configuration>
271-
<filters>
272-
<filter>
273-
<artifact>*:*</artifact>
274-
<excludes>
275-
<exclude>**/module-info.*</exclude>
276-
</excludes>
277-
</filter>
278-
<filter>
279-
<!-- filter out signature files from signed dependencies, else repackaging fails with security ex -->
280-
<artifact>*:*</artifact>
281-
<excludes>
282-
<exclude>META-INF/*.SF</exclude>
283-
<exclude>META-INF/*.DSA</exclude>
284-
<exclude>META-INF/*.RSA</exclude>
285-
</excludes>
286-
</filter>
287-
</filters>
288-
<shadedArtifactAttached>true</shadedArtifactAttached>
289-
<shadedClassifierName>runnable</shadedClassifierName>
290-
<createDependencyReducedPom>false</createDependencyReducedPom>
291-
</configuration>
292239
</plugin>
293240
</plugins>
294241
</build>
295-
</project>
242+
</project>

0 commit comments

Comments
 (0)