openquake.hmtk.faults package¶
Subpackages¶
Submodules¶
openquake.hmtk.faults.active_fault_model module¶
Module openquake.hmtk.faults.active_fault_model.mtkActiveFaultModel
implements a wrapper class for a set of active fault sources
-
class
openquake.hmtk.faults.active_fault_model.
mtkActiveFaultModel
(identifier=None, name=None, faults=None)[source]¶ Bases:
object
Class to define a compilation of active fault sources
Parameters: - id (str) – Identifier for the model
- name (str) – Fault model name
- faults (list) – Active faults as a list of tuples where each tuple is an instance of (openquake.hmtk.faults.fault_model.mtkActiveFault, [list of MFD configurations for that fault])
- source_model – Instance of openquake.hmtk.source.source_model.mtkSourceModel class
-
build_fault_model
(collapse=False, rendered_msr=<WC1994>, mfd_config=None)[source]¶ Constructs a full fault model with epistemic uncertainty by enumerating all the possible recurrence models of each fault as separate faults, with the recurrence rates multiplied by the corresponding weights.
Parameters: - collapse (bool) – Determines whether or not to collapse the branches
- rendered_msr – If the option is taken to collapse the branches then a recurrence model for rendering must be defined
- mfd_config (list/dict) – Universal list or dictionay of configuration parameters for the magnitude frequency distribution - will overwrite whatever is previously defined for the fault!
openquake.hmtk.faults.fault_geometries module¶
-
class
openquake.hmtk.faults.fault_geometries.
BaseFaultGeometry
[source]¶ Bases:
object
Abstract base class to support geometry parameters and methods
-
class
openquake.hmtk.faults.fault_geometries.
ComplexFaultGeometry
(traces, mesh_spacing=1.0)[source]¶ Bases:
openquake.hmtk.faults.fault_geometries.BaseFaultGeometry
Module openquake.hmtk.faults.fault_model.ComplexFaultGeometry describes the geometrical properties of a complex fault surface
Parameters: - typology (str) – Source typology
- trace – Fault edges as list of instances of :class: openquake.hazardlib.geo.line.Line
- dip (float) – Fault dip (degrees)
- upper_depth (float) – Upper seismogenic depth (km)
- lower_depth (float) – Lower seismogenic depth (km)
- surface – Instance of :class: openquake.hazardlib.geo.surface.complex_fault.ComplexFaultSurface
- length (float) – Along-strike length of fault (km)
- width (float) – Down-dip width of fault (km)
- area (float) – Length of fault (km)
-
class
openquake.hmtk.faults.fault_geometries.
SimpleFaultGeometry
(trace, dip, upper_depth, lower_depth, mesh_spacing=1.0)[source]¶ Bases:
openquake.hmtk.faults.fault_geometries.BaseFaultGeometry
Describes the geometrical propeties of a simple fault surface
Parameters: - typology (str) – Source typology
- trace – Fault trace as instance of :class: openquake.hazardlib.geo.line.Line
- dip (float) – Fault dip (degrees)
- upper_depth (float) – Upper seismogenic depth (km)
- lower_depth (float) – Lower seismogenic depth (km)
- surface – Instance of :class: openquake.hazardlib.geo.surface.simple_fault.SimpleFaultSurface
- length (float) – Along-strike length of fault (km)
- width (float) – Down-dip width of fault (km)
- area (float) – Length of fault (km)
openquake.hmtk.faults.fault_models module¶
Module: openquake.hmtk.faults.fault_model implements the set of classes to allow for a calculation of the magnitude frequency distribution from the geological slip rate
-
class
openquake.hmtk.faults.fault_models.
RecurrenceBranch
(area, slip, msr, rake, shear_modulus, disp_length_ratio=None, msr_sigma=0.0, weight=1.0)[source]¶ Bases:
object
openquake.hmtk.faults.fault_model.RecurrenceBranch
is an object to store a set of parameters for recurrence calculations and the corresponding total weightParameters: - branch_id (str) – Unique branch id
- area (float) – Fault area (km ^ 2)
- slip (float) – Fault slip rate (mm / yr)
- msr – Magnitude scaling relation as instance of :class: openquake.hazardlib.scale_rel.base.BaseASR
- rake (float) – Rake of fault (degrees)
- shear_modulus (float) – Shear modulus of fault (GPa)
- disp_length_ratio (float) – Displacement to length ratio of the fault
- weight (float) – Weight of recurrence model branch
- recurrence – Magnitude frquency distribution as instance of :class: openquake.hmtk.models.IncrementalMFD
- max_mag (float) – Maximum magnitude from the magnitude frequency distribution
- magnitudes (numpy.ndarray) – Magnitudes of MFD
-
class
openquake.hmtk.faults.fault_models.
mtkActiveFault
(identifier, name, geometry, slip_rate, rake, trt, aseismic=0.0, msr_sigma=None, neotectonic_fault=None, scale_rel=None, aspect_ratio=None, shear_modulus=None, disp_length_ratio=None)[source]¶ Bases:
object
Main class to represent fault source
Parameters: - identifier (int) – Identifier Code
- name (str) – Fault Name
- geometry – Instance of
openquake.hmtk.faults.fault_model.SimpleFaultGeometry
oropenquake.hmtk.faults.fault_model.ComplexFaultGeometry
- slip_rate (list) – Slip rate (mm/yr) as list of tuples [(Value, Weight)]
- aseismic (float) – Aseismic slip coefficient
- rake (float) – Rake of the fault slip (degrees)
- neotectonic_fault – Instance of
openquake.hmtk.faults.faulted_earth.NeotectonicFault
- trt (str) – Tectonic region type
- scale_rel – Scaling relation as list of tuples [(:class: openquake.hazardlib.scalerel.base.BaseASR, Weight)]
- aspect_ratio (float) – Aspect ratio on fault
- mfd (tuple) – Tuple ([MFD], [Weight], [Scale_Rel]) defining the magnitude frequency distribution
- shear_modulus (list) – Shear Modulus (GPa) as list of tuples [(Value, Weight)]
- disp_length_ratio (list) – Displacement to length ratio as list of tuples [(Value, Weight)]
- mfd_models (list) – Magnitude frequency distributions as list of instances of :class: openquake.hmtk.faults.fault_model.RecurrenceBranch
- mfd_models – Magnitude frequency distributions as list of instances of :class: openquake.hmtk.models.IncrementalMFD
- area (float) – Area of fault (km ^ 2)
- config (dict) – Dictionary of configuration paramters for magnitude freuency distribution calculation
-
collapse_branches
(mmin, bin_width, mmax)[source]¶ Collapse the logic tree branches into a single IncrementalMFD
Parameters: - mmin (float) – Minimum magnitude of reference mfd
- bin_width (float) – Bin width of reference mfd
- mmax (float) – Maximum magnitude of reference mfd
Returns: class: openquake.hmtk.models.IncrementalMFD
-
generate_config_set
(config)[source]¶ Generates a list of magnitude frequency distributions and renders as a tuple
Parameters: config (dict/list) – Configuration paramters of magnitude frequency distribution
-
generate_fault_source_model
()[source]¶ Creates a resulting openquake.hmtk fault source set.
Returns: source_model - list of instances of either the :class: openquake.hmtk.sources.simple_fault_source.mtkSimpleFaultSource or :class: openquake.hmtk.sources.complex_fault_source.mtkComplexFaultSource model_weight - Corresponding weights for each source model
-
generate_recurrence_models
(collapse=False, bin_width=0.1, config=None, rendered_msr=None)[source]¶ Iterates over the lists of values defining epistemic uncertainty in the parameters and calculates the corresponding recurrence model At present epistemic uncertainty is supported for: 1) slip rate, 2) magnitude scaling relation, 3) shear modulus, 4) displacement to length ratio) and 5) recurrence model.
Parameters: - config (list/dict) – List of MFD model configurations
- collapse (bool) – Boolean flag indicating whether to collapse the logic tree branches
- bin_width (float) – If collapsing the logic tree branches the reference mfd must be defined. The minimum and maximum magnitudes are updated from the model, but the bin width must be specified here
- config – Configuration (or sets of configurations) of the recurrence calculations
- rendered_msr – If collapsing the logic tree branches a resulting magnitude scaling relation must be defined as instance of :class: openquake.hazardlib.scalerel.base.BaseASR
-
get_tectonic_regionalisation
(regionalisation, region_type=None)[source]¶ Defines the tectonic region and updates the shear modulus, magnitude scaling relation and displacement to length ratio using the regional values, if not previously defined for the fault
Parameters: - regionalistion – Instance of the :class: openquake.hmtk.faults.tectonic_regionalisaion.TectonicRegionalisation
- region_type (str) – Name of the region type - if not in regionalisation an error will be raised
openquake.hmtk.faults.tectonic_regionalisation module¶
openquake.hmtk.regionalisation.tectonic_regionalisation
implements
openquake.hmtk.ancillary.tectonic_regionalisation.TectonicRegion
,
defining the methods and attributes associated with a region, and the
openquake.hmtk.ancillary.tectonic_regionalisation.TectonicRegionalisation
defining a regionalisation as a set of regions
-
class
openquake.hmtk.faults.tectonic_regionalisation.
TectonicRegion
(identifier, name, shear_modulus=None, disp_length_ratio=None, scaling_rel=None)[source]¶ Bases:
object
Definition of the tectonic region
-
class
openquake.hmtk.faults.tectonic_regionalisation.
TectonicRegionalisation
[source]¶ Bases:
object
Defines a set of regionalisations
-
populate_regions
(tectonic_region_dict)[source]¶ Populates the tectonic region from the list of dictionaries, where each region is a dictionary of with the following format:
region = {'Shear_Modulus': [(val1, weight1), (val2, weight2), ...], 'Displacement_Length_Ratio': [(val1, weight1), ...], 'Magnitude_Scaling_Relation': [(val1, weight1), ...]}
-