edu.sc.seis.TauP
Class SphericalSModel
java.lang.Object
|
+--edu.sc.seis.TauP.SlownessModel
|
+--edu.sc.seis.TauP.SphericalSModel
- All Implemented Interfaces:
- java.lang.Cloneable, java.io.Serializable
- public class SphericalSModel
- extends SlownessModel
- implements java.io.Serializable, java.lang.Cloneable
This class provides storage and methods for generating slowness-depth
pairs in a spherical earth model.
- See Also:
- Serialized Form
Method Summary |
java.lang.Object |
clone()
|
double |
interpolate(double p,
double topVelocity,
double topDepth,
double slope)
Returns the depth for a slowness given a velocity gradient. |
TimeDist |
layerTimeDist(double sphericalRayParam,
int layerNum,
boolean isPWave)
Calculates the time and distance increments accumulated by a
ray of spherical ray parameter p when passing through layer layerNum. |
static void |
main(java.lang.String[] args)
Just for debugging purposes. |
double |
toSlowness(double velocity,
double depth)
Returns the slowness for a velocity at a depth. |
SlownessLayer |
toSlownessLayer(VelocityLayer vLayer,
boolean isPWave)
Converts a velocity layer into a slowness layer. |
java.lang.String |
toString()
|
double |
toVelocity(double slowness,
double depth)
Returns the velocity for a slowness at a depth. |
boolean |
validate()
Performs consistency check on the velocity model. |
Methods inherited from class edu.sc.seis.TauP.SlownessModel |
approxDistance, createSample, depthInFluid, depthInFluid, depthInHighSlowness, depthInHighSlowness, findDepth, findDepth, findDepth, getCriticalDepth, getHighSlowness, getMaxDeltaP, getMaxDepthInterval, getMaxInterpError, getMaxRangeInterval, getMinDeltaP, getMinRayParam, getMinTurnRayParam, getNumCriticalDepths, getNumLayers, getRadiusOfEarth, getSlownessLayerClone, getSlownessTolerance, isAllowInnerCoreS, layerNumberAbove, layerNumberBelow, setAllowInnerCoreS, setMaxDeltaP, setMaxDepthInterval, setMaxInterpError, setMaxRangeInterval, setMinDeltaP, setRadiusOfEarth, setSlownessTolerance, splitLayer |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
SphericalSModel
public SphericalSModel()
main
public static void main(java.lang.String[] args)
- Just for debugging purposes.
toSlowness
public double toSlowness(double velocity,
double depth)
throws SlownessModelException
- Returns the slowness for a velocity at a depth.
- Overrides:
toSlowness
in class SlownessModel
- Throws:
SlownessModelException
- if velocity is zero.
toVelocity
public double toVelocity(double slowness,
double depth)
throws SlownessModelException
- Returns the velocity for a slowness at a depth.
- Overrides:
toVelocity
in class SlownessModel
- Throws:
SlownessModelException
- if slowness is zero.
toSlownessLayer
public SlownessLayer toSlownessLayer(VelocityLayer vLayer,
boolean isPWave)
throws SlownessModelException
- Converts a velocity layer into a slowness layer.
- Overrides:
toSlownessLayer
in class SlownessModel
- Throws:
SlownessModelException
- if velocity layer is malformed.
interpolate
public double interpolate(double p,
double topVelocity,
double topDepth,
double slope)
throws SlownessModelException
- Returns the depth for a slowness given a velocity gradient.
- Overrides:
interpolate
in class SlownessModel
- Throws:
SlownessModelException
- if the velocity gradient
exactly balances the spherical decrease in slowness.
layerTimeDist
public TimeDist layerTimeDist(double sphericalRayParam,
int layerNum,
boolean isPWave)
throws SlownessModelException
- Calculates the time and distance increments accumulated by a
ray of spherical ray parameter p when passing through layer layerNum.
for the easy cases of zero ray parameter, the center of the earth,
and constant velocity layers.
Note that this gives 1/2 of the true range and time increments since
there will be both an up going and a downgoing path.
- Overrides:
layerTimeDist
in class SlownessModel
- Throws:
SlownessModelException
- occurs if the ray with the given
spherical ray parameter cannot propagate within this layer, or
if the ray turns within this layer but not at the bottom.
validate
public boolean validate()
throws SlownessModelException
- Performs consistency check on the velocity model.
- Overrides:
validate
in class SlownessModel
- Returns:
- true if successful, throws SlownessModelException otherwise.
- Throws:
SlownessModelException
- if any check fails
clone
public java.lang.Object clone()
- Overrides:
clone
in class SlownessModel
toString
public java.lang.String toString()
- Overrides:
toString
in class SlownessModel