For details of .srf, .stoch, .info file format, see File Formats Used On GM
Source Types
There are 6 types of SRF files that can be created. (Example SRF maps below were produced by plot_srf_map.py)
Type 1 | |
---|---|
Point source. appears as 1 plane with 1 subfault. Often used for a small mag event. | |
Type 2 | |
finite fault. a single plane created from point source attributes; the plane is determined by a magnitude scaling relation (eg. Leonard 2014 ) | |
Type 3 | |
finite fault. a single plane created with specified parameters. | |
Type 4 | |
finite fault: multiple planar segment contiguous: varying strike, but constant dip; created by projecting to a planar source then 'wrapping' onto nonplanar shape | |
Type 5 | |
(Under development) finite fault: multiple planar segment non-contiguous : This can be seen as multiple SRFs combined. Each can have a delay time to synchronise rupture initiation time between cases. | |
Type 6 | |
(To be developed) Non-planar (curved) surface. Preliminary works done Hikurangi surface geometry |
Common Attributes (always available)
attribute | description |
---|---|
type | 1: point source, 2: finite fault from point source info, 3: single plane, 4: multiple plane |
dt | slip time step (s) |
rake | rake angles (type 1-3: single value, type 4: 2D list for cases, fault planes) |
mag | magnitude (type 1-3: single value, type 4: list for each case) |
hlon | hypocentre longitude for first fault (degrees) |
hlat | hypocentre latitude for first fault (degrees) |
hdepth | hypocentre depth for first fault (km) |
corners | 4 corners (longitude, latitude) for each plane. derived parameter (shape of array is nplane, 4 corners, 2 lonlat values). |
SRF Plane Attributes (lists with a length matching number of fault planes)
naming taken from qcore/srf.py
attribute | description |
---|---|
centre | top centre longitude, latitude |
nstrike | number of subfaults along strike |
ndip | number of subfaults along dip |
length | length (along strike) of fault plane (km) |
width | width (along dip) of fault plane (km) |
strike | strike angle (degrees) |
dip | dip angle (degrees) |
shyp | hypocentre location along strike from top centre (km), -999.9 for plane extentions |
dhyp | hypocentre location along dip from top edge (km), -999.9 for plane extentions |
dtop | depth of top edge (km) |
dbottom | depth to bottom of plane, derived parameter (km) |
Type 1 (point source) Attributes
attribute | description |
---|---|
vs | vs at centroid depth (km/s) |
rho | density |
Type 2 (finite fault from point source data) Attributes
attribute | description |
---|---|
mwsr | magnitude scaling relation name |
Type 2,3,4.. (finite faults) Attributes
attribute | description |
---|---|
vm | velocity model used (basename) |
shyp0 | distance along strike (km) to hypocentre for each case from top left corner (strike = 0, dip = 0) |
dhyp0 | distance along dip (km) to hypocentre for each case from top left corner (strike = 0, dip = 0) |
Optional Attributes (need to check if they exist)
attribute | description |
---|---|
tect_type | tectonic type, taken from the NHM file in nhm2srf.py. known options: ACTIVE_SHALLOW VOLCANIC SUBDUCTION_INTERFACE |
How to create source models
We usually create them in two steps.
Step 1.
We create a realisation file (.csv) either from NSH (future) or CMT (historical)
Example
python $gmsim/Pre-processing/srf_generation/source_parameter_generation/generate_realisations_from_nhm.py list.txt ../NZ_FLTmodel_2010_v18p6.txt
python $gmsim/Pre-processing/srf_generation/source_parameter_generation/generate_realisations_from_gcmt.py list.txt GeoNet_CMT_solutions.csv 2 --vel_mod_1d Cant1D_v3-midQ_OneRay.1d
where, list.txt contains the name of fault (or event) and number of realizations (eg. AlpineF2K 47r) each line.
The latest version of GeoNet_CMT_solutions.csv can be obtained from https://github.com/GeoNet/data/blob/main/moment-tensor/GeoNet_CMT_solutions.csv
Example realisation CSV files
Step 2.
Feed the realisation CSV file from Step 1 to realisation_to_srf.py script.
python $gmsim/Pre-processing/srf_generation/input_file_generation/realisation_to_srf.py $REL_CSV
This produces an .srf and accompanying .stoch and .info file. See File Formats Used On GM for details of these files