def _make_source(self, mfd, aspect_ratio, fault_trace=None, dip=45): source_id = name = 'test-source' trt = self.TRT rake = self.RAKE rupture_mesh_spacing = 1 upper_seismogenic_depth = 0 lower_seismogenic_depth = 4.2426406871192848 magnitude_scaling_relationship = PeerMSR() rupture_aspect_ratio = aspect_ratio if fault_trace is None: fault_trace = Line([ Point(0.0, 0.0), Point(0.0, 0.0359728811758), Point(0.0190775080917, 0.0550503815181), Point(0.03974514139, 0.0723925718855) ]) sfs = SimpleFaultSource(source_id, name, trt, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio, upper_seismogenic_depth, lower_seismogenic_depth, fault_trace, dip, rake) assert_pickleable(sfs) return sfs
def _make_source(self, mfd, aspect_ratio, rupture_mesh_spacing, edges): source_id = name = 'test-source' trt = self.TRT rake = self.RAKE magnitude_scaling_relationship = PeerMSR() rupture_aspect_ratio = aspect_ratio edges = [Line([Point(*coords) for coords in edge]) for edge in edges] cfs = ComplexFaultSource(source_id, name, trt, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio, edges, rake) assert_pickleable(cfs) return cfs
def _make_source(self): points = [Point(lon, lat, depth) for lon, lat, depth in zip(self.CORNER_LONS, self.CORNER_LATS, self.CORNER_DEPTHS)] source = CharacteristicFaultSource( source_id=self.SOURCE_ID, name=self.NAME, tectonic_region_type=self.TRT, mfd=EvenlyDiscretizedMFD(self.MIN_MAG, self.BIN_WIDTH, self.RATES), surface=PlanarSurface(self.MESH_SPACING, self.STRIKE, self.DIP, points[0], points[1], points[3], points[2]), rake = self.RAKE ) assert_pickleable(source) return source
def _make_source(self): points = [ Point(lon, lat, depth) for lon, lat, depth in zip( self.CORNER_LONS, self.CORNER_LATS, self.CORNER_DEPTHS) ] source = CharacteristicFaultSource( source_id=self.SOURCE_ID, name=self.NAME, tectonic_region_type=self.TRT, mfd=EvenlyDiscretizedMFD(self.MIN_MAG, self.BIN_WIDTH, self.RATES), surface=PlanarSurface(self.MESH_SPACING, self.STRIKE, self.DIP, points[0], points[1], points[3], points[2]), rake=self.RAKE) assert_pickleable(source) return source
def _make_source(self, mfd, aspect_ratio, rupture_mesh_spacing, edges): source_id = name = 'test-source' trt = self.TRT rake = self.RAKE magnitude_scaling_relationship = PeerMSR() rupture_aspect_ratio = aspect_ratio edges = [Line([Point(*coords) for coords in edge]) for edge in edges] cfs = ComplexFaultSource( source_id, name, trt, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio, edges, rake ) assert_pickleable(cfs) return cfs
def _make_source(self, *args, **kwargs): source = super(ComplexFaultSourceSimpleGeometryIterRupturesTestCase, self)._make_source(*args, **kwargs) surface = SimpleFaultSurface.from_fault_data( source.fault_trace, source.upper_seismogenic_depth, source.lower_seismogenic_depth, source.dip, source.rupture_mesh_spacing) mesh = surface.get_mesh() top_edge = Line(list(mesh[0:1])) bottom_edge = Line(list(mesh[-1:])) cfs = ComplexFaultSource(source.source_id, source.name, source.tectonic_region_type, source.mfd, source.rupture_mesh_spacing, source.magnitude_scaling_relationship, source.rupture_aspect_ratio, [top_edge, bottom_edge], source.rake) assert_pickleable(cfs) return cfs
def make_point_source(**kwargs): default_arguments = { 'source_id': 'source_id', 'name': 'source name', 'tectonic_region_type': TRT.SUBDUCTION_INTRASLAB, 'mfd': TruncatedGRMFD(a_val=1, b_val=2, min_mag=3, max_mag=5, bin_width=1), 'location': Point(1.2, 3.4, 5.6), 'nodal_plane_distribution': PMF([(1, NodalPlane(1, 2, 3))]), 'hypocenter_distribution': PMF([(1, 4)]), 'upper_seismogenic_depth': 1.3, 'lower_seismogenic_depth': 4.9, 'magnitude_scaling_relationship': PeerMSR(), 'rupture_aspect_ratio': 1.333, 'rupture_mesh_spacing': 1.234 } default_arguments.update(kwargs) kwargs = default_arguments ps = PointSource(**kwargs) assert_pickleable(ps) return ps
def _make_source(self, *args, **kwargs): source = super(ComplexFaultSourceSimpleGeometryIterRupturesTestCase, self)._make_source(*args, **kwargs) surface = SimpleFaultSurface.from_fault_data( source.fault_trace, source.upper_seismogenic_depth, source.lower_seismogenic_depth, source.dip, source.rupture_mesh_spacing ) mesh = surface.get_mesh() top_edge = Line(list(mesh[0:1])) bottom_edge = Line(list(mesh[-1:])) cfs = ComplexFaultSource( source.source_id, source.name, source.tectonic_region_type, source.mfd, source.rupture_mesh_spacing, source.magnitude_scaling_relationship, source.rupture_aspect_ratio, [top_edge, bottom_edge], source.rake ) assert_pickleable(cfs) return cfs
def _make_source(self, mfd, aspect_ratio, fault_trace=None, dip=45): source_id = name = 'test-source' trt = self.TRT rake = self.RAKE rupture_mesh_spacing = 1 upper_seismogenic_depth = 0 lower_seismogenic_depth = 4.2426406871192848 magnitude_scaling_relationship = PeerMSR() rupture_aspect_ratio = aspect_ratio if fault_trace is None: fault_trace = Line([Point(0.0, 0.0), Point(0.0, 0.0359728811758), Point(0.0190775080917, 0.0550503815181), Point(0.03974514139, 0.0723925718855)]) sfs = SimpleFaultSource( source_id, name, trt, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio, upper_seismogenic_depth, lower_seismogenic_depth, fault_trace, dip, rake ) assert_pickleable(sfs) return sfs
def make_area_source(self, polygon, discretization, **kwargs): source = make_area_source(polygon, discretization, **kwargs) for key in kwargs: self.assertIs(getattr(source, key), kwargs[key]) assert_pickleable(source) return source