Class TauP_Time

    • Field Detail

      • modelName

        protected java.lang.String modelName
      • tMod

        protected TauModel tMod
        Tau model calculated previously.
        See Also:
        TauModel
      • tModDepth

        protected transient TauModel tModDepth
        TauModel derived from tMod by correcting it for a non-surface source.
      • phaseNames

        protected java.util.List<PhaseName> phaseNames
        names of phases to be used, ie PKIKP.
      • depth

        protected double depth
      • receiverDepth

        protected double receiverDepth
      • degrees

        protected double degrees
      • distKilometers

        protected double distKilometers
        For when command line args uses --km for distance. Have to wait until after the model is read in to get radius of earth.
      • azimuth

        protected double azimuth
      • backAzimuth

        protected double backAzimuth
      • takeoffAngle

        protected double takeoffAngle
      • stationLat

        protected double stationLat
      • stationLon

        protected double stationLon
      • eventLat

        protected double eventLat
      • eventLon

        protected double eventLon
      • arrivals

        protected java.util.List<Arrival> arrivals
      • GUI

        protected boolean GUI
      • onlyPrintRayP

        protected boolean onlyPrintRayP
      • onlyPrintTime

        protected boolean onlyPrintTime
      • relativePhaseName

        protected java.lang.String relativePhaseName
      • relativeArrival

        protected Arrival relativeArrival
    • Constructor Detail

      • TauP_Time

        public TauP_Time()
      • TauP_Time

        public TauP_Time​(TauModel tMod)
      • TauP_Time

        public TauP_Time​(java.lang.String modelName)
                  throws TauModelException
        creates a TauP_Time object with the tau model specified by modelName already loaded.
        Throws:
        TauModelException - if the file can't be found or is corrupted in some way.
    • Method Detail

      • getPhaseNames

        public java.lang.String[] getPhaseNames()
      • getPhaseNameString

        public java.lang.String getPhaseNameString()
      • setPhaseNames

        public void setPhaseNames​(PhaseName[] phaseNames)
      • getPhaseNames

        public static java.util.List<java.lang.String> getPhaseNames​(java.lang.String phaseName)
      • appendPhaseName

        public void appendPhaseName​(PhaseName phaseName)
      • getNumPhases

        public int getNumPhases()
      • clearPhaseNames

        public void clearPhaseNames()
      • getSourceDepth

        public double getSourceDepth()
      • setSourceDepth

        public void setSourceDepth​(double depth)
      • getReceiverDepth

        public double getReceiverDepth()
      • setReceiverDepth

        public void setReceiverDepth​(double receiverDepth)
      • getTauModelName

        public java.lang.String getTauModelName()
      • getTauModel

        public TauModel getTauModel()
      • getTauModelDepthCorrected

        public TauModel getTauModelDepthCorrected()
        Gets depth corrected TauModel.
      • setTauModel

        public void setTauModel​(TauModel tMod)
      • loadTauModel

        public void loadTauModel​(java.lang.String modelName)
                          throws java.io.FileNotFoundException,
                                 java.io.InvalidClassException,
                                 java.io.IOException,
                                 java.io.StreamCorruptedException,
                                 java.io.OptionalDataException,
                                 TauModelException
        Throws:
        java.io.FileNotFoundException
        java.io.InvalidClassException
        java.io.IOException
        java.io.StreamCorruptedException
        java.io.OptionalDataException
        TauModelException
      • getDisconDepths

        public double[] getDisconDepths()
      • clearPhases

        public void clearPhases()
      • clearArrivals

        public void clearArrivals()
      • getNumArrivals

        public int getNumArrivals()
      • getArrival

        public Arrival getArrival​(int i)
      • getArrivals

        public java.util.List<Arrival> getArrivals()
      • getSeismicPhases

        public java.util.List<SeismicPhase> getSeismicPhases()
      • readTauModel

        protected void readTauModel()
                             throws TauModelException
        Reads the velocity model, slowness model, and tau model from a file saved using Java's Serializable interface. Performs a depth correction if the current depth is not 0.0
        Throws:
        TauModelException
      • readPhaseFile

        protected void readPhaseFile​(java.lang.String filename)
                              throws java.io.IOException
        Reads in list of phase names from a text file. So long as each phase name is separated by some whitespace, " " or newline or tab, it should read them fine. Also, comments are allowed, either # or // are comments to the end of the line while c style slash-star make a block a comment.
        Throws:
        java.io.IOException
      • parsePhaseList

        public void parsePhaseList​(java.lang.String phaseList)
        parses a comma separated list of phase names and adds them to the phaseNames vector. Each phase can have an optional argument after a dash. This would be used for specifying which sac header to put the time in, or for other unforeseen uses. This may be called multiple times to append more phases. For example: P-0,PcP-1,ScP-4,Sn,SS,S^410S would, assuming no previous phases have been added, put P in T0, PcP in T1, ScP in T5, Sn in T2, SS in T3, and S^410S in T5.
      • parseDegreeList

        public static java.util.List<java.lang.Double> parseDegreeList​(java.lang.String degList)
        Parses a comma separated list of distances and returns them in an array.
      • parseCmdLineArgs

        protected java.lang.String[] parseCmdLineArgs​(java.lang.String[] origArgs)
                                               throws java.io.IOException
        Specified by:
        parseCmdLineArgs in class TauP_Tool
        Throws:
        java.io.IOException
      • sortArrivals

        public void sortArrivals()
      • depthCorrect

        @Deprecated
        public void depthCorrect​(double depth)
                          throws TauModelException
        Deprecated.
        use setSourceDepth instead
        corrects the TauModel for the given source depth. It only performs the correction of the model is not already corrected to that depth. In general, this is called by each tool's calculate methods, and so should not need to be called by outside code. Most of the time calling setSourceDepth is preferred, allowing the tool to choose when to call depthCorrect.
        Throws:
        TauModelException
      • depthCorrect

        public void depthCorrect​(double depth,
                                 double receiverDepth)
                          throws TauModelException
        In general, this is called by each tool's calculate methods, and so should not need to be called by outside code. Most of the time calling setSourceDepth and setReceiverDepth is preferred, allowing the tool to choose when to call depthCorrect.
        Parameters:
        depth - the source depth
        receiverDepth - the receiver depth
        Throws:
        TauModelException
      • recalcPhases

        protected void recalcPhases()
        recalculates the given phases using a possibly new or changed tau model. This should not need to be called by outside classes as it is called by depthCorrect, and calculate.
      • printResult

        public void printResult​(java.io.PrintWriter out)
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • printResultText

        public void printResultText​(java.io.PrintWriter out)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • printResultJSON

        public void printResultJSON​(java.io.PrintWriter out)
      • init

        public void init()
                  throws TauPException
        preforms intialization of the tool. Properties are queried for the the default model to load, source depth to use, phases to use, etc. Note that because of the IO inherent in these operations, this method is not appropriate for Applets. Applets should load TauModels themselves and use the setTauModel(TauModel) method.
        Specified by:
        init in class TauP_Tool
        Throws:
        TauPException
      • printHelp

        public void printHelp()
      • printStdUsageHead

        public void printStdUsageHead()
      • printStdUsage

        public void printStdUsage()
        Prints the command line arguments common to all TauP tools.
      • linearInterp

        public static final double linearInterp​(double xa,
                                                double ya,
                                                double xb,
                                                double yb,
                                                double x)
        solves the equation (yb-ya)/(xb-xa) = (y-ya)/(x-xa) for y given x. Useful for finding the pixel for a value given the dimension of the area and the range of values it is supposed to cover. Note, this does not check for xa == xb, in which case a divide by zero would occur.
      • main

        public static void main​(java.lang.String[] args)
                         throws java.io.IOException
        Allows TauP_Time to run as an application. Creates an instance of TauP_Time. ToolRun.main should be used instead.
        Throws:
        java.io.IOException