openquake.hmtk.seismicity.smoothing package¶
Subpackages¶
Submodules¶
openquake.hmtk.seismicity.smoothing.smoothed_seismicity module¶
Module :mod: openquake.hmtk.seismicity.smoothing.smoothed_seismicity implements the :class: openquake.hmtk.seismicity.smoothing.smoothed_seismicity.SmoothedSeismicity, a general class for implementing seismicity smoothing algorithms
-
class
openquake.hmtk.seismicity.smoothing.smoothed_seismicity.
Grid
[source]¶ Bases:
dict
-
class
openquake.hmtk.seismicity.smoothing.smoothed_seismicity.
IsotropicGaussianMethod
[source]¶ Bases:
object
-
class
openquake.hmtk.seismicity.smoothing.smoothed_seismicity.
SmoothedSeismicity
(grid_limits, use_3d=False, bvalue=None)[source]¶ Bases:
object
Class to implement an analysis of Smoothed Seismicity, including the grid counting of data and the smoothing.
Parameters: - grid (np.ndarray) – Observed count in each cell [Long., Lat., Depth., Count]
- catalogue – Valid instance of the :class: openquake.hmtk.seismicity.catalogue.Catalogue
- use_3d (bool) – Decide if analysis is 2-D (False) or 3-D (True). If 3-D then distances will use hypocentral distance, otherwise epicentral distance
- bval (float) – b-value
- beta (float) – Beta value for exponential form (beta = bval * log(10.))
- data (np.ndarray) – Smoothed seismicity output
- grid_limits (dict) – Limits ot the grid used for defining the cells
-
create_2D_grid_simple
(longitude, latitude, year, magnitude, completeness_table, t_f=1.0, mag_inc=0.1)[source]¶ Generates the grid from the limits using an approach closer to that of Frankel (1995)
Parameters: - longitude (numpy.ndarray) – Vector of earthquake longitudes
- latitude (numpy.ndarray) – Vector of earthquake latitudes
- year (numpy.ndarray) – Vector of earthquake years
- magnitude (numpy.ndarray) – Vector of earthquake magnitudes
- completeness_table (numpy.ndarray) – Completeness table
- t_f (float) – Weichert adjustment factor
Returns: Two-dimensional spatial grid of observed rates
-
create_3D_grid
(catalogue, completeness_table, t_f=1.0, mag_inc=0.1)[source]¶ Counts the earthquakes observed in a three dimensional grid
Parameters: - catalogue – Instance of the openquake.hmtk.seismicity.catalogue.Catalogue class catalogue.data dictionary containing the following - ‘year’ - numpy.ndarray vector of years ‘longitude’ - numpy.ndarray vector of longitudes ‘latitude’ - numpy.ndarray vector of latitudes ‘depth’ - numpy.ndarray vector of depths
- completeness_table (np.ndarray) – Completeness of the catalogue assuming evenly spaced magnitudes from most recent bin to oldest bin [year, magnitude]
- t_f (float) – Weichert adjustment factor
- mag_inc (float) – Increment of the completeness magnitude (rendered 0.1)
Returns: Three-dimensional spatial grid of observed rates (or two dimensional if only one depth layer is considered)
-
run_analysis
(catalogue, config, completeness_table=None, smoothing_kernel=None)[source]¶ Runs an analysis of smoothed seismicity in the manner originally implemented by Frankel (1995)
Parameters: - catalogue – Instance of the openquake.hmtk.seismicity.catalogue.Catalogue class catalogue.data dictionary containing the following - ‘year’ - numpy.ndarray vector of years ‘longitude’ - numpy.ndarray vector of longitudes ‘latitude’ - numpy.ndarray vector of latitudes ‘depth’ - numpy.ndarray vector of depths
- config (dict) – Configuration settings of the algorithm: * ‘Length_Limit’ - Maximum number of bandwidths for use in smoothing (Float) * ‘BandWidth’ - Bandwidth (km) of the Smoothing Kernel (Float) * ‘increment’ - Output incremental (True) or cumulative a-value (False)
- completeness_table (np.ndarray) – Completeness of the catalogue assuming evenly spaced magnitudes from most recent bin to oldest bin [year, magnitude]
- smoothing_kernel – Smoothing kernel as instance of :class: openquake.hmtk.seismicity.smoothing.kernels.base.BaseSmoothingKernel
Returns: Full smoothed seismicity data as np.ndarray, of the form [Longitude, Latitude, Depth, Observed, Smoothed]
openquake.hmtk.seismicity.smoothing.utils module¶
Module openquake.hmtk.seismicity.smoothing.utils
implements
utility functions for smoothed seismicity analysis
-
openquake.hmtk.seismicity.smoothing.utils.
check_completeness_table
(completeness_table, catalogue)[source]¶ Check to ensure completeness table is in the correct format completeness_table = np.array([[year_, mag_i]]) for i in number of bins
Parameters: - completeness_table (np.ndarray) – Completeness table in format [[year, mag]]
- catalogue – Instance of openquake.hmtk.seismicity.catalogue.Catalogue class
Returns: Correct completeness table
-
openquake.hmtk.seismicity.smoothing.utils.
get_even_magnitude_completeness
(completeness_table, catalogue=None)[source]¶ To make the magnitudes evenly spaced, render to a constant 0.1 magnitude unit
Parameters: - completeness_table (np.ndarray) – Completeness table in format [[year, mag]]
- catalogue – Instance of openquake.hmtk.seismicity.catalogue.Catalogue class
Returns: Correct completeness table
-
openquake.hmtk.seismicity.smoothing.utils.
get_weichert_factor
(beta, cmag, cyear, end_year)[source]¶ Gets the Weichert adjustment factor for each the magnitude bins
Parameters: - beta (float) – Beta value of Gutenberg & Richter parameter (b * log(10.))
- cmag (np.ndarray) – Magnitude values of the completeness table
- cyear (np.ndarray) – Year values of the completeness table
- end_year (float) – Last year for consideration in the catalogue
Returns: Weichert adjustment factor (float)
-
openquake.hmtk.seismicity.smoothing.utils.
hermann_adjustment_factors
(bval, min_mag, mag_inc)[source]¶ Returns the adjustment factors (fval, fival) proposed by Hermann (1978)
Parameters: - bval (float) – Gutenberg & Richter (1944) b-value
- min_mag (np.ndarray) – Minimum magnitude of completeness table
- float mag_inc (non-negative) – Magnitude increment of the completeness table
-
openquake.hmtk.seismicity.smoothing.utils.
incremental_a_value
(bval, min_mag, mag_inc)[source]¶ Incremental a-value from cumulative - using the version of the Hermann (1979) formula described in Wesson et al. (2003)
Parameters: - bval (float) – Gutenberg & Richter (1944) b-value
- min_mag (np.ndarray) – Minimum magnitude of completeness table
- mag_inc (float) – Magnitude increment of the completeness table