regressionrelloc

A suite of programs for calculating the relative locations of seismic events and the corresponding slowness vectors

https://github.com/stevenjgibbons/regressionrelloc

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.0%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

A suite of programs for calculating the relative locations of seismic events and the corresponding slowness vectors

Basic Info
  • Host: GitHub
  • Owner: stevenjgibbons
  • License: gpl-3.0
  • Language: Fortran
  • Default Branch: main
  • Size: 853 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 5
Created about 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

regressionRelLoc

A suite of programs for calculating the relative locations of seismic events and the corresponding slowness vectors

SQAaaS badge

SQAaaS badge shields.io

Release v1.0.3 is permanently stored on Zenodo with DOI https://doi.org/10.5281/zenodo.11046217

https://zenodo.org/doi/10.5281/zenodo.11046216

DOI

The main program for iterative solution of both locations and slowness vectors, from an initial specification of slowness vectors, is called regressionRelLoc.
The program fixedSlovecsEventSolve solves for a set of events for a given set of fixed slowness vectors.
The program fixedEventsSlovecsSolve solves for the optimal slowness vectors for a given set of event locations.
(regressionRelLoc basically iterates between the operations performed in fixedSlovecsEventSolve and the operations performed in fixedEventsSlovecsSolve.)
There are two additional programs, oneEventPairVectorSolve and oneSlovecPairVectorSolve, which were basically written for unit testing of the operations in regressionRelLoc.
Before we call the codes, we need to define a set of slowness vectors. The program statphase2slowvec (https://github.com/stevenjgibbons/statphase2slowvec) will calculate the slowness vectors for a set of stations and phases using the ak135 model.
The Cartesian output can be transformed back to geographical space using the xy2latlon.py program in this repository.

There are two example cases:

(1) The relative location benchmark study of Gibbons et al. (2020), consisting of 55 surface explosions in northern Finland.

(2) The 6 declared underground nuclear tests conducted by the DPRK between October 2006 and September 2017.

The programs are as follows:

oneEventPairVectorSolve Here we assume a fixed set of slowness vectors and specify two event codes, eventA and eventB.
It will return (rxeventB - rxeventA, ryeventB - ryeventA) given in km.
(See the scripts runFinlandtwo_events.sh and runDPRKtwo_events.sh)

oneSlovecPairVectorSolve Here we assume a fixed set of event coordinates (specified as x and y in km) and specify two slowness vectors, i.e. stationi, phasei, stationj, phasej.
It will return (sxj - sxi, syj - syi ) in seconds per km.
(see the script runFinlandtwo_slovecs.sh).

fixedSlovecsEventSolve Here we assume a fixed set of slowness vectors and specify a reference event. It then solves for the locations of the other events relative to this event. (See the scripts runFinlandabs_events.sh and runDPRKabs_events.sh)

fixedEventsSlovecsSolve Here we assume a fixed set of events and solve for the slowness vectors that best fit these. (See the scripts runFinlandabs_slovecs.sh and runDPRKabs_slovecs.sh)

regressionRelLoc Here we iterate to solve both slowness vectors and event locations. (See the script runFinlandregressionRelLoc.sh)

Compiling instructions

(1) Edit Makefile to sensure that the LAPACK and BLAS libraries exist. e.g.

LAPACK= /usr/lib/x86_64-linux-gnu/liblapack.a BLAS= /usr/lib/x86_64-linux-gnu/libblas.a

(2) Run the script compile_all.sh

sh compile_all.sh

The software has been tested using gfortran Ubuntu 11.4.0-1ubuntu1~22.04.

All programs use only Cartesian coordinates (rx,ry) for the event locations and (sx,sy) for the slowness vectors.

We need to generate the slowness vectors, for example using the program statphase2slowvec (https://github.com/stevenjgibbons/statphase2slowvec) and we provide in this repository a little auxiliary program xy2latlon to transform from the x, y event coordinates to latitude and longitude.

References

Gibbons, S.J., Kvaerna, T., Tiira, T., Kozlovskaya, E., 2020.
A benchmark case study for seismic event relative location,
Geophys J Int, 223, 1313-1326

Owner

  • Name: Steven J. Gibbons
  • Login: stevenjgibbons
  • Kind: user
  • Location: Oslo, Norway
  • Company: NGI

I am an applied geoscientist with expertise in seismology, acoustics, computational fluid dynamics, signal processing, inverse theory, and natural hazards.

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Gibbons"
  given-names: "Steven John"
  orcid: "https://orcid.org/0000-0002-7822-0244"
title: "regressionRelLoc"
version: v1.0.3
DOI: https://doi.org/10.5281/zenodo.11046217
date-released: 2024-04-23
license: gpl-3.0

GitHub Events

Total
Last Year