Example #1
0
 def do_shoot_existing_ray_param_for_phase(self, phase_name):
     phase = SeismicPhase(phase_name, self.tau_model)
     for i, ray_param in enumerate(phase.ray_param):
         max_rp_arrival = phase.shoot_ray(-1, ray_param)
         self.assertAlmostEqual(phase.dist[i], max_rp_arrival.purist_dist,
                                delta=0.0001)
         self.assertAlmostEqual(phase.time[i], max_rp_arrival.time,
                                delta=0.0001)
Example #2
0
 def test_shoot_middle_ray_param(self):
     phase = SeismicPhase("P", self.tMod)
     for i in range(phase.ray_param.shape[0] - 1):
         rp = (phase.ray_param[i] + phase.ray_param[i + 1]) / 2
         timeTol = abs(phase.time[i] - phase.time[i + 1])
         maxRPArrival = phase.shoot_ray(-1, rp)
         self.assertAlmostEqual(phase.dist[i], maxRPArrival.purist_dist, delta=0.1)
         self.assertAlmostEqual(phase.time[i], maxRPArrival.time, delta=timeTol)
         self.assertAlmostEqual(phase.dist[i + 1], maxRPArrival.purist_dist, delta=0.1)
         self.assertAlmostEqual(phase.time[i + 1], maxRPArrival.time, delta=timeTol)
Example #3
0
 def test_shoot_middle_ray_param(self, tau_model):
     phase = SeismicPhase('P', tau_model)
     for i in range(phase.ray_param.shape[0] - 1):
         rp = (phase.ray_param[i] + phase.ray_param[i + 1]) / 2
         time_tol = abs(phase.time[i] - phase.time[i + 1])
         max_rp_arrival = phase.shoot_ray(-1, rp)
         assert abs(phase.dist[i] - max_rp_arrival.purist_dist) < 0.1
         assert abs(phase.time[i] - max_rp_arrival.time) < time_tol
         assert abs(phase.dist[i + 1] - max_rp_arrival.purist_dist) < 0.1
         assert abs(phase.time[i + 1] - max_rp_arrival.time) < time_tol
Example #4
0
 def test_shoot_middle_ray_param(self):
     phase = SeismicPhase('P', self.tau_model)
     for i in range(phase.ray_param.shape[0] - 1):
         rp = (phase.ray_param[i] + phase.ray_param[i + 1]) / 2
         time_tol = abs(phase.time[i] - phase.time[i + 1])
         max_rp_arrival = phase.shoot_ray(-1, rp)
         self.assertAlmostEqual(phase.dist[i], max_rp_arrival.purist_dist,
                                delta=0.1)
         self.assertAlmostEqual(phase.time[i], max_rp_arrival.time,
                                delta=time_tol)
         self.assertAlmostEqual(phase.dist[i + 1],
                                max_rp_arrival.purist_dist, delta=0.1)
         self.assertAlmostEqual(phase.time[i + 1], max_rp_arrival.time,
                                delta=time_tol)
Example #5
0
 def do_shoot_existing_ray_param_for_phase(self, phase_name, tau_model):
     phase = SeismicPhase(phase_name, tau_model)
     for i, ray_param in enumerate(phase.ray_param):
         max_rp_arrival = phase.shoot_ray(-1, ray_param)
         assert abs(phase.dist[i] - max_rp_arrival.purist_dist) < 0.0001
         assert abs(phase.time[i] - max_rp_arrival.time) < 0.0001