Skip to content
Manoch Bahavar edited this page Dec 9, 2021 · 23 revisions

LINKS

BackProjection product page: http://ds.iris.edu/ds/products/backprojection/
BackProjection SPUD repository: http://ds.iris.edu/spud/backprojection

BackProjection Python 3 package

The Back-Projection (BP, http://ds.iris.edu/ds/products/backprojection/) product shows the beamformed time history and location of coherent short period P-wave energy generated by large earthquakes observed at three regional arrays and across the Global Seismic Network. These are generated following all global M6.5+ earthquakes.

This Python package contains the code behind the creation of BackProjection data product's plots and animations (https://ds.iris.edu/spud/backprojection). The main Python code in this package (back_projection_r2.py) can be configured via its parameter file (back_projection_param.py) and through the command line arguments. Currently, the parameters are optimized for use with four preconfigured virtual networks defined in the parameter file as NA, EU, AU, and GSN.

CONTENT:

This package contains the following files:

 src/
   back_projection_r2.py
       This is the main Python code behind the production of plots and animations. Calling 
       the code with -h option displays a list of other options available to tune plot and 
       animation production. It also provides examples to run.
 
 param/
   back_projection_param.py
       A Python file that contains all the BackProjection data product parameters. You may 
       modify this file to customize the virtual networks, plots and animations. All parameter 
       definitions in this file must follow the Python rules. Each parameter group in this file 
       is commented for clarification.
 
 lib/
   - back_projection_lib.py
       A Python utility library used by the main script.

CHANGES.txt
   A text file containing history of changes to this package.

INSTALL.txt
   The installation notes

README.md
   The package README file 

INSTALLATION:

See the INSTALL.txt file or visit the Installation Wiki page (https://github.com/iris-edu/aftershocks/wiki/Package-Installation).

USAGE:

back_projection_r2.py (v.2021.305):

This is the Python 3 code behind the IRIS DMC's BackProjection data product (BP), and can producing the individual plots and animations
that are part of the PackProjection product.


The code can be configured via its parameter file "back_projection_param.py" or via the command line arguments. 

Currently parameters are optimized for use with four preconfigured virtual networks:
	virtual network		name 
	===============		===========
	AU			Australia
	EU			Europe
	GSN			GSN Stations
	NA			North America

Virtual networks could be modified by changing the "virtual_networks" parameter in the parameter file.

command line options:
-h --help		this message
-v --verbose 		[default: False] turns the verbose mode on
-a --anim		[default: True] create animations [True/False]
-l --logscreen		[default: False] send the log messages to screen
-n --vnet		[required] virtual network code (see above) 
-m --emag		[required] event magnitude 
-s --summary		[default: True] create summary plot [True/False]
-t --etime		[required] the event time as "YYYY-MM-DDTHH:MM:SS" 
-x --elon		[required] the event longitude 
-y --elat		[required] the event latitude 
-z --edepth		[required] the event depth (km) 
-d --decimate		[default: 1] the desired animations sample rate in seconds
			The output sample rate will only exactly match the selected
			decimation rate if the ratio of original to final rate is a whole number
			Otherwise, the closest factorable rate will be chosen. 
-f --factor		[default: 1] this parameter could be used for testing. The grid spacing is 
			multiplied by this factor (-f 5 or -f 10 are reasonable choices) 
			and as a result, resolution is reduced, and computation takes place faster.
			You could use this option to test your parameters before a production run.

Examples:
lower resolution (faster, good for tuning parameters):
	python src/back_projection_r2.py -m 7.8 -y 55.030 -x -158.522 -z 28 -n AU -t 2020-07-22T06:12:44 -l -f 5

higher resolution (slower, for final product):
	python src/back_projection_r2.py -m 7.8 -y 55.030 -x -158.522 -z 28 -n AU -t 2020-07-22T06:12:44 -l

EXAMPLES:

Back Projections for the Mw 7.8 Alaska Peninsula, 2020-07-22 06:12:44 event:

low-resolution

Generate a low-resolution BP for testing. The grid spacing is multiplied by the -f value (5) and will result in lower resolution plots, but faster processing. Use the -f option to test your parameters before a production run.

  -m 7.8 (magnitude)
  -y 55.03 (latitude)
  -x -158.522 (longitude)
  -z 28.0 (depth)
  -n AU (desired virtual network)
  -t 020-07-22T06:12:44 (event time)
  -l send log messages to the terminal
  -f 5 use a factor of five for grid reduction (faster computation and lower resolution plots)

back_projection_r2.py -m 7.8 -y 55.030 -x -158.522 -z 28 -n AU -t 2020-07-22T06:12:44 -l -f 5

Check the image, and video directories for the outputs.

high-resolution (no -f 5 parameter)

back_projection_r2.py -m 7.8 -y 55.030 -x -158.522 -z 28 -n AU -t 2020-07-22T06:12:44 -l

This will take longer to run, will produce higher quality plots. Check the image, and video directories and data directories for the outputs.

CITATION:

To cite the use of this software reference:

Hutko, A. R., M. Bahavar, C. Trabant, R. T. Weekly, M. Van Fossen, T. Ahern (2017), Data Products at the IRIS‐DMC:
Growth and Usage, Seismological Research Letters, 88, no. 3, https://doi.org/10.1785/0220160190.

Or cite the following DOI:

doi:10.17611/dp/as.code.1

HISTORY:

  • 2021-11-01: v.2021.305 r2, public release (Python 3)
  • 2011-10-01: r1, initial release (Fortran)

COMMENTS/QUESTIONS:

Please contact manoch@iris.washington.edu