Пример #1
0
    def test_Epicentral2(self):
        dist = Distances(None,None,None,None,None,None,None,None,None,None,None)
        
        distance_type='Epicentral'
        rupture_centroid_lat=asarray((-31.0,-33,-36))
        rupture_centroid_lon=asarray((116.0,118,222))
        

        site_lat=asarray((-31,-32,-33,-34))        
        site_lon=asarray((116.0,116.0,116.0,116.0))

        distance=dist.raw_distances(site_lat,
                                    site_lon,
                                    rupture_centroid_lat,
                                    rupture_centroid_lon,
                                    lengths,
                                    azimuths,
                                    widths,
                                    dips,
                                    depths,
                                    depths_to_top,
                                    distance_type,
                                    projection)
        

        
        d = As_The_Cockey_Flies(rupture_centroid_lat,
                                rupture_centroid_lon,
                                site_lat,
                                site_lon)

        assert allclose(d,distance,rtol=0.1)
Пример #2
0
    def distances_from_event_set(self, event_set, event_set_trace_starts=True):
        """
        The distance from self.sites to event_set.centroids.
        A big array-like object.
        """

        if event_set_trace_starts:
            return Distances(self.latitude,
                             self.longitude,
                             event_set.rupture_centroid_lat,
                             event_set.rupture_centroid_lon,
                             event_set.length,
                             event_set.azimuth,
                             event_set.width,
                             event_set.dip,
                             event_set.depth,
                             event_set.depth_to_top,
                             projection,
                             trace_start_lat=event_set.trace_start_lat,
                             trace_start_lon=event_set.trace_start_lon,
                             rupture_centroid_x=event_set.rupture_centroid_x,
                             rupture_centroid_y=event_set.rupture_centroid_y)
        else:
            return Distances(
                self.latitude, self.longitude, event_set.rupture_centroids_lat,
                event_set.rupture_centroids_lon, event_set.lengths,
                event_set.azimuths, event_set.widths, event_set.dips,
                event_set.depths, event_set.depths_to_top, projection)
Пример #3
0
    def test_mendez_distances(self):
        dist = Distances(None, None, None, None, None, None, None, None, None,
                         None, None)

        rupture_centroid_lat = asarray((-31.0, -33, -36))
        rupture_centroid_lon = asarray((116.0, 118, 222))

        site_lat = asarray((-31, -32, -33, -34))
        site_lon = asarray((116.0, 116.0, 116.0, 116.0))

        distance1 = dist.raw_distances(site_lat, site_lon,
                                       rupture_centroid_lat,
                                       rupture_centroid_lon, lengths, azimuths,
                                       widths, dips, depths, depths_to_top,
                                       'Epicentral', projection)

        distance2 = dist.raw_distances(site_lat,
                                       site_lon,
                                       rupture_centroid_lat,
                                       rupture_centroid_lon,
                                       lengths,
                                       azimuths,
                                       widths,
                                       dips,
                                       depths,
                                       depths_to_top,
                                       'Obsolete_Mendez_epicentral',
                                       projection,
                                       trace_start_lat=rupture_centroid_lat,
                                       trace_start_lon=rupture_centroid_lon,
                                       rupture_centroid_x=0.0,
                                       rupture_centroid_y=0.0)

        assert allclose(distance1, distance2)
Пример #4
0
    def test_Epicentral(self):
        dist = Distances(None,None,None,None,None,None,None,None,None,None,None)
        
        distance_type='Epicentral'

        rupture_centroid_lat=asarray((-31.0))
        rupture_centroid_lon=asarray((116.0))
        
        site_lat=asarray((-31,-32,-33,-34))        
        site_lon=asarray((116.0,116.0,116.0,116.0))

        distance=dist.raw_distances(site_lat,
                                    site_lon,
                                    rupture_centroid_lat,
                                    rupture_centroid_lon,
                                    lengths,
                                    azimuths,
                                    widths,
                                    dips,
                                    depths,
                                    depths_to_top,
                                    distance_type,
                                    projection)


        d=asarray((0,1,2,3))*(1.852*60)
        d=d[:,newaxis]
        d2=As_The_Cockey_Flies(rupture_centroid_lat,
                               rupture_centroid_lon,
                               site_lat,
                               site_lon)

        assert allclose(d,distance,rtol=0.001)
        assert allclose(d,d2)
Пример #5
0
    def test_Epicentral2(self):
        dist = Distances(None, None, None, None, None, None, None, None, None,
                         None, None)

        distance_type = 'Epicentral'
        rupture_centroid_lat = asarray((-31.0, -33, -36))
        rupture_centroid_lon = asarray((116.0, 118, 222))

        site_lat = asarray((-31, -32, -33, -34))
        site_lon = asarray((116.0, 116.0, 116.0, 116.0))

        distance = dist.raw_distances(site_lat, site_lon, rupture_centroid_lat,
                                      rupture_centroid_lon, lengths, azimuths,
                                      widths, dips, depths, depths_to_top,
                                      distance_type, projection)

        d = As_The_Cockey_Flies(rupture_centroid_lat, rupture_centroid_lon,
                                site_lat, site_lon)

        assert allclose(d, distance, rtol=0.1)
Пример #6
0
    def test_mendez_distances(self):
        dist = Distances(None,None,None,None,None,None,None,None,None,None,None)
        
        rupture_centroid_lat=asarray((-31.0,-33,-36))
        rupture_centroid_lon=asarray((116.0,118,222))

        
        site_lat=asarray((-31,-32,-33,-34))        
        site_lon=asarray((116.0,116.0,116.0,116.0))
        
        distance1=dist.raw_distances(site_lat,
                                     site_lon,
                                     rupture_centroid_lat,
                                     rupture_centroid_lon,
                                     lengths,
                                     azimuths,
                                     widths,
                                     dips,
                                     depths,
                                     depths_to_top,
                                     'Epicentral',
                                     projection)

        distance2=dist.raw_distances(site_lat,
                                     site_lon,
                                     rupture_centroid_lat,
                                     rupture_centroid_lon,
                                     lengths,
                                     azimuths,
                                     widths,
                                     dips,
                                     depths,
                                     depths_to_top,
                                     'Obsolete_Mendez_epicentral',
                                     projection,
                                     trace_start_lat=rupture_centroid_lat,
                                     trace_start_lon=rupture_centroid_lon,
                                     rupture_centroid_x=0.0,
                                     rupture_centroid_y=0.0)

        assert allclose(distance1,distance2)
Пример #7
0
    def test_Hypocentral(self):
        dist = Distances(None,None,None,None,None,None,None,None,None,None,None)
        
        distance_type='Hypocentral'
        depths=10.0
        rupture_centroid_lat=asarray((-31.0,-33,-36))
        rupture_centroid_lon=asarray((116.0,118,222))
                
        site_lat=asarray((-31,-32,-33,-34)) 
        site_lon=asarray((116.0,116.0,116.0,116.0))


        d=dist.raw_distances(site_lat,
                             site_lon,
                             rupture_centroid_lat,
                             rupture_centroid_lon,
                             lengths,
                             azimuths,
                             widths,
                             dips,
                             depths,
                             depths_to_top,
                             'Epicentral',
                             projection)
        
        distance=dist.raw_distances(site_lat,
                                    site_lon,
                                    rupture_centroid_lat,
                                    rupture_centroid_lon,
                                    lengths,
                                    azimuths,
                                    widths,
                                    dips,
                                    depths,
                                    depths_to_top,
                                    distance_type,
                                    projection)

        d=sqrt(d*d+depths*depths)
        assert allclose(d,distance)
Пример #8
0
    def test_Epicentral(self):
        dist = Distances(None, None, None, None, None, None, None, None, None,
                         None, None)

        distance_type = 'Epicentral'

        rupture_centroid_lat = asarray((-31.0))
        rupture_centroid_lon = asarray((116.0))

        site_lat = asarray((-31, -32, -33, -34))
        site_lon = asarray((116.0, 116.0, 116.0, 116.0))

        distance = dist.raw_distances(site_lat, site_lon, rupture_centroid_lat,
                                      rupture_centroid_lon, lengths, azimuths,
                                      widths, dips, depths, depths_to_top,
                                      distance_type, projection)

        d = asarray((0, 1, 2, 3)) * (1.852 * 60)
        d = d[:, newaxis]
        d2 = As_The_Cockey_Flies(rupture_centroid_lat, rupture_centroid_lon,
                                 site_lat, site_lon)

        assert allclose(d, distance, rtol=0.001)
        assert allclose(d, d2)
Пример #9
0
    def test_Hypocentral(self):
        dist = Distances(None, None, None, None, None, None, None, None, None,
                         None, None)

        distance_type = 'Hypocentral'
        depths = 10.0
        rupture_centroid_lat = asarray((-31.0, -33, -36))
        rupture_centroid_lon = asarray((116.0, 118, 222))

        site_lat = asarray((-31, -32, -33, -34))
        site_lon = asarray((116.0, 116.0, 116.0, 116.0))

        d = dist.raw_distances(site_lat, site_lon, rupture_centroid_lat,
                               rupture_centroid_lon, lengths, azimuths, widths,
                               dips, depths, depths_to_top, 'Epicentral',
                               projection)

        distance = dist.raw_distances(site_lat, site_lon, rupture_centroid_lat,
                                      rupture_centroid_lon, lengths, azimuths,
                                      widths, dips, depths, depths_to_top,
                                      distance_type, projection)

        d = sqrt(d * d + depths * depths)
        assert allclose(d, distance)