-
Notifications
You must be signed in to change notification settings - Fork 2
1 SLAM Calculator Overview
Luke Pajer edited this page Oct 28, 2020
·
2 revisions
Import the SLAM calculator as 'slam'.
import geo_slam_calculator_v1 as slam
area = slam.DEM(longitude=-120.160, latitude=39.438, lon_del=0.2, lat_del=0.2)
lat_min, lat_max, lon_min, lon_max = area.get_bounds()
print(lat_min, lat_max, lon_min, lon_max)
(39.238, 39.638000000000005, -119.96, -120.36)
dem_file = area.get_dem(lat_min, lat_max, lon_min, lon_max)
Begin Downloading DEM File...
Downloaded DEM file in 7.6 seconds
Processing...
Complete.
from geo_slam_calculator_v1 import qFaults
qfaults = qFaults.get_qfaults()
Default value for get_qfaults
for the file name of the shape file is 'Qfaults_GIS'. Other files can be found on the qfaults page. However, not all of the files are shapefiles. If the selection is not a shape file, it will return an error.
data = slam.get_data(lat_min=lat_min, lat_max=lat_max, lon_min=lon_min, lon_max=lon_max)
events_1983 = data.event_query(start_time='1983-07-02', end_time='1983-07-04', min_mag=3)
Downloaded Regional Earthquake Data in 0.6760 seconds
focal_data_1983 = data.focal_data(earthquakes=events_1983)
focal_data_1983.focal_data
focal_data_1983.error_data
eq1_1983 = focal_data_1983.data[focal_data_1983.data['ID']=='B2'].reset_index(drop=True)
swaths_init = slam.swaths(elevation=dem_file.elevation)
gridNorthAdjustment_1983 = swaths_init.grid_adjustment(longitude=-120.160, latitude=39.438, zoneMeridian=-123)
Grid North Adjustment: -1.80
focal_data_1983 = swaths_init.focal_metrics(lon=-120.206, lat=39.412, depth=11.05)
Latitude: 39.412
Longitude: -120.206
Depth: -11050.0 meters
nodal_comps_1983 = swaths_init.nodal_comps(strike=eq1_1983.np1_strike, grid_adjust=gridNorthAdjustment_1983,
strike_uncert=eq1_1983.np1S_uncert, plunge=eq1_1983.np1_dip,
dip_ang=eq1_1983.np1D_uncert)
Dip Trend: 300.0
Dip Trend + North Grid Adjustment: 298.2
Dip Trend Uncertainty: 8.0
Dip Plunge: 80.0
Dip Angle Uncertainty: 13.0
err_comps_1983 = swaths_init.err_computations(eh1=300, eh2=300, eh1Az=45, ez=0.8, grid_adjust=gridNorthAdjustment_1983)
eh1: 300.0 meters
eh1 Azimuth: 43.2
eh2: 300.0 meters
ez: 800.0 meters
lightDirection_1983 = swaths_init.light_direction(nodal_comps_1983[1])
Light Direction: 61.80
swaths_1983 = swaths_init.swath_calc(npDipPlunge=nodal_comps_1983[3], npDipAngUncert=nodal_comps_1983[4],
npDipTr=nodal_comps_1983[1], npDipTrendUncert=nodal_comps_1983[2],
widthFactor=1.5, multiplier=1.5, cellsize=dem_file.cellsize,
cellsize_res=30, eh1=err_comps_1983[0], eh1Az=err_comps_1983[1],
eh2=err_comps_1983[2], ez=err_comps_1983[3], lat=focal_data_1983[0],
lon=focal_data_1983[1], focalDepth=focal_data_1983[2],
bounds=dem_file.bounds, thin=False)
swaths_shade_1983 = swaths_init.get_shade(swaths_1983.swaths, corners_fill=['NE', 'SW'])
Begin computing Seismo-Lineament boundary area
Finished assessment of Seismo-Lineament boundary area in 10.39 seconds
maps = slam.SLAM_viz(elevation=dem_file.elevation)
maps.elevation_map(middle_road=swaths_1983.middle_road, swaths_shade=swaths_shade_1983,
lightDirection=lightDirection_1983, altDeg=12.5, lon=-120.206, lat=39.412,
lon_max=lon_max, lon_min=lon_min, lat_max=lat_max, lat_min=lat_min,
strike=eq1_1983.np1_strike, dip=eq1_1983.np1_dip, rake=eq1_1983.np1_rake,
faults=qfaults, title='A2')
maps.physical_map(middle_road=swaths_1983.middle_road, swaths_shade=swaths_shade_1983,
lon=focal_data_1983[1], lat=focal_data_1983[0], lon_max=lon_max,
lon_min=lon_min, lat_max=lat_max, lat_min=lat_min, strike=eq1_1983.np1_strike,
dip=eq1_1983.np1_dip, rake=eq1_1983.np1_rake, title='A2', tiler_size=11, faults=qfaults)
Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under ODbL
These are the multiple solutions taken from section 2, the Ashburn thesis, section of this document.
Must put items into a list:
swaths_mult = [swaths.swaths, swaths_1983.swaths, swaths_1992.swaths]
middle_road_mult = [swaths.middle_road, swaths_1983.middle_road, swaths_1992.middle_road]
swaths_shade_mult = [swaths_shade, swaths_shade_1983, swaths_shade_1992]
lon_mult = [focal_data[1], focal_data_1983[1], focal_data_1992[1]]
lat_mult = [focal_data[0], focal_data_1983[0], focal_data_1992[0]]
strike_mult = [44, eq1_1983.np1_strike, eq1_1992.np1_strike]
dip_mult = [80, eq1_1983.np1_dip, eq1_1992.np1_dip]
rake_mult = [180, eq1_1983.np1_rake, eq1_1992.np1_rake]
title = ['A1', 'A2', 'A3']
colors_ = ['lightblue', 'green', 'yellow']
maps.elevation_mult(swaths_shade=swaths_shade_mult, lightDirection=lightDirection_1992, altDeg=12.5,
lon=lon_mult, lat=lat_mult, lon_max=lon_max, lon_min=lon_min,
lat_max=lat_max, lat_min=lat_min, strike=strike_mult, dip=dip_mult,
rake=rake_mult, title=title, colors_=colors_, faults=qfaults)
maps.physical_mult(lon=lon_mult, lat=lat_mult, lon_max=lon_max, lon_min=lon_min,
lat_max=lat_max, lat_min=lat_min, strike=strike_mult,
dip=dip_mult, rake=rake_mult, title=title, tiler_size=11,
faults=qfaults, focal_size=0.5)
Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under ODbL