Class SimpleSeismicPhase

  • All Implemented Interfaces:
    SeismicPhase, java.io.Serializable, java.lang.Cloneable

    public class SimpleSeismicPhase
    extends java.lang.Object
    implements SeismicPhase
    Stores and transforms seismic phase names to and from their corresponding sequence of branches.
    See Also:
    Serialized Form
    • Field Detail

      • DEBUG

        public transient boolean DEBUG
        Enables debugging output.
      • verbose

        public transient boolean verbose
        Enables verbose output.
      • tMod

        protected TauModel tMod
        TauModel to generate phase for.
      • sourceDepth

        protected double sourceDepth
        The source depth within the TauModel that was used to generate this phase.
      • receiverDepth

        protected double receiverDepth
        The receiver depth within the TauModel that was used to generate this phase. Normally this is 0.0 for a surface stations, but can be different for borehole or scattering calculations.
      • dist

        protected double[] dist
        Array of distances corresponding to the ray parameters stored in rayParams.
      • time

        protected double[] time
        Array of times corresponding to the ray parameters stored in rayParams.
      • rayParams

        protected double[] rayParams
        Array of possible ray parameters for this phase.
      • minRayParam

        protected double minRayParam
        Minimum ray parameter that exists for this phase.
      • maxRayParam

        protected double maxRayParam
        Maximum ray parameter that exists for this phase.
      • maxRayParamIndex

        protected int maxRayParamIndex
        Index within TauModel.rayParams that corresponds to maxRayParam. Note that maxRayParamIndex < minRayParamIndex as ray parameter decreases with increasing index.
      • minRayParamIndex

        protected int minRayParamIndex
        Index within TauModel.rayParams that corresponds to minRayParam. Note that maxRayParamIndex < minRayParamIndex as ray parameter decreases with increasing index.
      • minDistance

        protected double minDistance
        The minimum distance that this phase can be theoretically observed.
      • maxDistance

        protected double maxDistance
        The maximum distance that this phase can be theoretically observed.
      • branchSeq

        protected java.util.List<java.lang.Integer> branchSeq
        Array of branch numbers for the given phase. Note that this depends upon both the earth model and the source depth.
      • headOrDiffractSeq

        protected java.util.List<java.lang.Integer> headOrDiffractSeq
        Array of branchSeq positions where a head or diffracted segment occurs.
      • name

        protected java.lang.String name
        The phase name, ie PKiKP.
      • puristName

        protected java.lang.String puristName
        name with depths corrected to be actuall discontinuities in the model.
      • legs

        protected java.util.ArrayList<java.lang.String> legs
        ArrayList containing Strings for each leg.
      • segmentList

        protected java.util.List<SeismicPhaseSegment> segmentList
        Description of segments of the phase.
      • legAction

        protected java.util.List<PhaseInteraction> legAction
        records the end action for the current leg. Will be one of SeismicPhase.TURN, SeismicPhase.TRANSDOWN, SeismicPhase.TRANSUP, SeismicPhase.REFLECTBOT, or SeismicPhase.REFLECTTOP. This allows a check to make sure the path is correct. Used in addToBranch() and parseName().
      • downGoing

        protected java.util.List<java.lang.Boolean> downGoing
        true if the current leg of the phase is down going. This allows a check to make sure the path is correct. Used in addToBranch() and parseName().
      • waveType

        protected java.util.List<java.lang.Boolean> waveType
        ArrayList of wave types corresponding to each leg of the phase.
      • refineDistToleranceRadian

        protected double refineDistToleranceRadian
      • maxRecursion

        protected int maxRecursion
    • Constructor Detail

      • SimpleSeismicPhase

        @Deprecated
        public SimpleSeismicPhase​(java.lang.String name,
                                  java.lang.String modelName,
                                  double depth)
                           throws TauModelException
        Deprecated.
        use SeismicPhaseFactory.create()
        Parameters:
        name -
        modelName -
        depth -
        Throws:
        TauModelException
      • SimpleSeismicPhase

        @Deprecated
        public SimpleSeismicPhase​(java.lang.String name,
                                  TauModel tMod)
                           throws TauModelException
        Deprecated.
        use SeismicPhaseFactory.create()
        Parameters:
        name - String containing a name of the phase.
        tMod - Tau model to be used to construct the phase. This should be corrected for the source depth.
        Throws:
        TauModelException
      • SimpleSeismicPhase

        @Deprecated
        public SimpleSeismicPhase​(java.lang.String name,
                                  TauModel tMod,
                                  double receiverDepth)
                           throws TauModelException
        Deprecated.
        use SeismicPhaseFactory.create()
        Parameters:
        name -
        tMod -
        receiverDepth -
        Throws:
        TauModelException
      • SimpleSeismicPhase

        @Deprecated
        public SimpleSeismicPhase​(java.lang.String name,
                                  TauModel tMod,
                                  double receiverDepth,
                                  boolean debug)
                           throws TauModelException
        Deprecated.
        use SeismicPhaseFactory.create()
        Parameters:
        name -
        tMod -
        receiverDepth -
        debug -
        Throws:
        TauModelException
      • SimpleSeismicPhase

        public SimpleSeismicPhase​(java.lang.String name,
                                  TauModel tMod,
                                  double receiverDepth,
                                  java.util.ArrayList<java.lang.String> legs,
                                  java.lang.String puristName,
                                  double[] rayParams,
                                  double[] time,
                                  double[] dist,
                                  double minRayParam,
                                  double maxRayParam,
                                  int minRayParamIndex,
                                  int maxRayParamIndex,
                                  double minDistance,
                                  double maxDistance,
                                  java.util.List<java.lang.Integer> branchSeq,
                                  java.util.List<java.lang.Integer> headOrDiffractSeq,
                                  java.util.List<SeismicPhaseSegment> segmentList,
                                  java.util.List<PhaseInteraction> legAction,
                                  java.util.List<java.lang.Boolean> downGoing,
                                  java.util.List<java.lang.Boolean> waveType,
                                  boolean debug)
                           throws TauModelException
        Throws:
        TauModelException