tiebenn.tools.velocity_models module
- class tiebenn.tools.velocity_models.crustModel[source]
Bases:
objectTop level model object to retreive information from the LLNL Crust 1.0 model. Created by J. Leeman and C. Ammon (https://github.com/jrleeman/Crust1.0).
- Parameters:
vp (ndarray)
vs (ndarray)
rho (ndarray)
bnds (ndarray)
layer_names (list)
- get_point(lat, lon)[source]
Returns a model for a given latitude and longitude. Note that the model is only defined on a 1 degree grid starting at 89.5 and -179.5.
Args: lat (float) Latitude of interest lon (float) Longitude of interest
Returns: model_layers (dict): Dictionary of layers with the keys as layer names and the values as a list of vp, vs, density, layer thickness, and the top of the layer with respect to sea level
- tiebenn.tools.velocity_models.load_velmod(name)[source]
Accesses the 1D velocity models in the TieBeNN package for seismic location with NonLinLoc.
- Parameters:
model (int) – The P- and S-wave velocity models to be loaded. The velocity models are read from files in the directory data/velocity_models/. New velocity models can be added following the NLL structure. See velocity models currently available in velmods
- Returns:
Layers of a 1D velocity model as read from TieBeNN’s resources
- Return type:
velmod_list (list)
- tiebenn.tools.velocity_models.select_velmod(ev_lat, ev_lon)[source]
In case the velocity model was set to automatic, this function checks if there is a velocity model for the epicenter region which has demonstrated to produce better hypocenter estimations than the standard 2-layer BGR model. If not, the velocity model will be set as the BGR velocity model for event location.
- Parameters:
ev_lat (float) – Epicenter latitude
ev_lon (float) – Epicenter longitude
- Returns:
The velocity model which will be used for event location within NonLinLoc.
- Return type:
velmod (int)
- tiebenn.tools.velocity_models.velmods(model, ev_lon, ev_lat)[source]
Produces a seismic velocity model to be included in the NonLinLoc control file for hypocenter location.
When no density model is associated to each model, density can be calculated as a function of the P-wave velocity after Gardner et al. (1974) in g/cm^3. The density is, however, a carryover in the layer format from its original use in a waveform modelling code. It is not used in the NLL programs, so any convenient numerical value can be used.
- Parameters:
model (int) –
The P- and S-wave velocity models to be exported. Velocity models are read from files in the directory data/velocity_models/. New models can be added following the NLL structure.
The following model numbers are currently supported:
0 = IASP91 1 = AK135 (for continental structure) 2 = BGR velocity model (by J. Schlittenhardt) 3 = WET: Germany and adjacent regions 4 = WB2012: Vogtland/West Bohemia 1D (P+S) 5 = DEU: 3-layer Germany model (Moho at 28.5 km, vp/vs = 1.68) 6 = Crust1.0: up to 9 layers per lat/lon point 7 = Crust1.0 + AK135 hybrid model 8 = Küperkoch et al. (2018) for Insheim (1D, P+S) 9 = Regional model for LI (J. Borns) 10 = Landau model (1D, P+S) for northern Upper Rhine Graben 11 = Central Alps 1D (Diehl et al. 2021) 12 = Not fully integrated and tested! 3D Central Alps (Diehl, ETH Zürich) 13 = 3D WEG: high-res P model (not functional) 14 = AlpsLocPS (Brazsus et al., 2024) — Greater Alpine Region 15 = BENS (Reamer & Hinzen 2004): Northern Rhine Area 16 = ASZmod1 (Mader et al. 2021): Albstadt Shear Zone 17 = 3D URG (Lengline et al. 2023): Upper Rhine Graben (currently not functional) 18 = (Malek et al. 2023): Novy-Kostel swarm 19 = PO1 + WB2012 from 11 km depth 20 = KIT6 (Ritter et al. 2024): 1D, P+S for East Eifel Volcanic Field
ev_lon (float) – Event longitude. Used when model = 6 or 7.
ev_lat (float) – Event latitude. Used when model = 6 or 7.
- Returns:
velmod – List of 1D velocity/density layers in NonLinLoc format. Each element is a string representing one layer: LAYER depth[km] vp vp_grad vs vs_grad density density_grad
Note: density values are placeholders and not used in NLL itself.
- Return type:
list of str