# obspy.taup.seismic_phase.SeismicPhase

class `SeismicPhase`(name, tau_model, receiver_depth=0.0)

  Bases: `builtins.object`

  Stores and transforms seismic phase names to and from their corresponding sequence of branches. Will maybe contain “expert” mode wherein paths may start in the core. Principal use is to calculate leg contributions for scattered phases. Nomenclature: “K” - downgoing wave from source in core; “k” - upgoing wave from source in core.

  Attributes

  `__dict__` |
  `__doc__` | str(object=’‘) -> str
  `__module__` | str(object=’‘) -> str
  `__weakref__` | list of weak references to the object (if defined)

  Public Methods

  `add_to_branch` | Add branch numbers to branch_seq.
  `calc_branch_mult` | Calculate how many times the phase passes through a branch, up or down.
  `calc_incident_angle` |
  `calc_path` | Calculate the paths this phase takes through the planet model.
  `calc_path_from_arrival` | Calculate the paths this phase takes through the planet model.
  `calc_pierce` | Calculate pierce points for this phase.
  `calc_pierce_from_arrival` | Calculate the pierce points for a particular arrival.
  `calc_ray_param_for_takeoff` |
  `calc_takeoff_angle` |
  `calc_time` | Calculate arrival times for this phase, sorted by time.
  `create_purist_name` |
  `get_earliest_arrival` |
  `handle_special_waves` | Handle head or diffracted waves.
  `linear_interp_arrival` |
  `parse_name` | Construct a branch sequence from the given phase name and tau model.
  `phase_conversion` | Change max_ray_param and min_ray_param where there is a phase conversion.
  `refine_arrival` |
  `shoot_ray` |
  `sum_branches` | Sum the appropriate branches for this phase.

  Private Methods

  Warning

  Private methods are mainly for internal/developer use and their API might change without notice.

  `_refine_arrival` |

  Special Methods

  `__dir__` | default dir() implementation
  `__format__` | default object formatter
  `__init__` |
  `__new__` | Create and return a new object.
  `__reduce__` | helper for pickle
  `__reduce_ex__` | helper for pickle
  `__sizeof__` | size of object in memory, in bytes
  `__subclasshook__` | Abstract classes can override this to customize issubclass().

### Thank you!

We would like to thank our contributors, whose efforts make this software what it is. These people have helped by writing code and documentation, and by testing. They have created and maintained this product, its associated libraries and applications, our build tools and our web sites.

#### Contributors

- Ackerley, Nick
- Allgeyer, Sebastien
- Ammon, Charles J.
- Antunes, Emanuel
- Arnarsson, Ólafur St.
- Bank, Markus
- Barsch, Robert
- Behr, Yannik
- Bernardi, Fabrizio
- Bernauer, Felix
- Bes de Berc, Maxime
- Beyreuther, Moritz
- Boltz, Shawn
- Bonaimé, Sébastien
- Carothers, Lloyd
- Chamberlain, Calum
- Chambers, Derrick
- Chen, Zhao
- Clark, Adam
- Danecek, Peter
- Egdorf, Sven
- Engels, Fabian
- Ermert, Laura
- Eulenfeld, Tom

- Fabbri, Tommaso
- Falco, Nicholas
- Fee, Jeremy
- Grellier, Clément
- Grunberg, Marc
- Hammer, Conny
- Heimann, Sebastian
- Heiniger, Lukas
- Hope, Gaute
- Igel, Heiner
- Inza, Adolfo
- Isken, Marius
- Ketchum, David
- Koymans, Mathijs
- Kremers, Simon
- Kress, Victor
- Krieger, Lars
- Krischer, Lion
- Kula, Damian
- Käufl, Paul
- Köhler, Andreas
- Lecocq, Thomas
- Leeman, John
- Legovini, Paride

- Lesage, Philippe
- Li, Yulin
- Lomax, Anthony
- Lopes, Rui L.
- MacCarthy, Jonathan
- Maggi, Alessia
- Martin, Henri
- Medlin, Andrew
- Megies, Tobias
- Meschede, Matthias
- Michelini, Alberto
- Miller, Nathaniel C.
- Morgenstern, Bernhard
- Nof, Ran Novitsky
- Panning, Mark P.
- Parker, Tom
- Pestourie, Romain
- Rapagnani, Giovanni
- Reyes, Celso
- Ringler, Adam
- Rothenhäusler, Nicolas
- Russo, Emiliano
- Sales de Andrade, Elliott

- Satriano, Claudio
- Saul, Joachim
- Scheingraber, Chris
- Schneider, Simon
- Sippl, Christian
- Snoke, Arthur
- Stange, Stefan
- Stähler, Simon C.
- Sullivan, Benjamin
- Tian, Dongdong
- Trabant, Chad
- Trani, Luca
- Uieda, Leonardo
- Walker, Andrew
- Walther, Marcus
- Wassermann, Joachim
- Williams, Mark C.
- Winkelman, Andrew
- Zaccarelli, Riccardo
- Zad, Seyed Kasra Hosseini
- Zhu, Lijun
- van Driel, Martin
- van Wijk, Kasper

#### Funds

ObsPy was partially funded by the

- German Science Foundation (DFG) via grant DFG IG 16/9-1
- German Ministry for Education and Research (BMBF), GEOTECHNOLOGIEN grant 03G0646H.
- NERA project (Network of European Research Infrastructures for Earthquake Risk Assessment and Mitigation) under the European Community's Seventh Framework Programme (FP7/2007-2013) grant agreement n° 262330
- Leibniz Institute for Applied Geophysics (LIAG)
- VERCE EU-FP7 project (no. 283543)