def test_upper_seismo_depth_range(self): self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, -0.1, 10.0, 90.0, 1.0) SimpleFaultSurface.check_fault_data(self.fault_trace, 0.0, 1.0, 90.0, 1.0) SimpleFaultSurface.check_fault_data(self.fault_trace, 1.0, 1.1, 90.0, 1.0)
def test_mesh_spacing_range(self): SimpleFaultSurface.check_fault_data(self.fault_trace, 0.0, 1.0, 90.0, 1.0) self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, 0.0, 1.0, 90.0, 0.0) self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, 0.0, 1.0, 90.0, -1.0)
def test_dip_inside_range(self): self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, 0.0, 1.0, 0.0, 1.0) self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, 0.0, 1.0, -0.1, 1.0) self.assertRaises(ValueError, SimpleFaultSurface.check_fault_data, self.fault_trace, 0.0, 1.0, 90.1, 1.0) SimpleFaultSurface.check_fault_data(self.fault_trace, 0.0, 1.0, 0.1, 1.0) SimpleFaultSurface.check_fault_data(self.fault_trace, 0.0, 1.0, 90.0, 1.0)
def __init__( self, source_id, name, tectonic_region_type, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio, # simple fault specific parameters upper_seismogenic_depth, lower_seismogenic_depth, fault_trace, dip, rake): super(SimpleFaultSource, self).__init__(source_id, name, tectonic_region_type, mfd, rupture_mesh_spacing, magnitude_scaling_relationship, rupture_aspect_ratio) NodalPlane.check_rake(rake) SimpleFaultSurface.check_fault_data(fault_trace, upper_seismogenic_depth, lower_seismogenic_depth, dip, rupture_mesh_spacing) self.fault_trace = fault_trace self.upper_seismogenic_depth = upper_seismogenic_depth self.lower_seismogenic_depth = lower_seismogenic_depth self.dip = dip self.rake = rake min_mag = self.mfd.get_min_mag() cols_rows = self._get_rupture_dimensions(float('inf'), float('inf'), min_mag) if 1 in cols_rows: raise ValueError('mesh spacing %s is too low to represent ' 'ruptures of magnitude %s' % (rupture_mesh_spacing, min_mag))