All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class edu.sc.seis.TauP.SlownessLayer

edu.sc.seis.TauP.SlownessLayer

public class SlownessLayer
Class to hold a single slowness layer sample.


Variable Index

 o botDepth
Depth at the bottom of the layer.
 o botP
Slowness at the bottom of the layer.
 o topDepth
Depth at the top of the layer.
 o topP
Slowness at the top of the layer.

Constructor Index

 o SlownessLayer(double, double, double, double)
top slowness, top depth, bottom slowness, bottom depth
 o SlownessLayer(VelocityLayer, boolean)
Compute the slowness layer from a velocity layer.
 o SlownessLayer(VelocityLayer, boolean, double)
Compute the slowness layer from a velocity layer.
 o SlownessLayer(VelocityLayer, boolean, double, boolean)
Compute the slowness layer from a velocity layer.

Method Index

 o bullenDepthFor(double, double)
Finds the depth for a ray parameter within this layer.
 o bullenRadialSlowness(double, double)
Calculates the time and distance (in radians) increments accumulated by a ray of spherical ray parameter p when passing through this layer.
 o clone()
 o evaluateAt_bullen(double, double)
Finds the slowness at the given depth.
 o isZeroThickness()
Is the layer a zero thickness layer, ie a total reflection?
 o toString()
returns a String description of this SlownessLayer.
 o validate()

Variables

 o topP
 public double topP
Slowness at the top of the layer.

 o botP
 public double botP
Slowness at the bottom of the layer.

 o topDepth
 public double topDepth
Depth at the top of the layer.

 o botDepth
 public double botDepth
Depth at the bottom of the layer.

Constructors

 o SlownessLayer
 public SlownessLayer(double topP,
                      double topDepth,
                      double botP,
                      double botDepth)
top slowness, top depth, bottom slowness, bottom depth

 o SlownessLayer
 public SlownessLayer(VelocityLayer vLayer,
                      boolean spherical,
                      double radiusOfEarth,
                      boolean isPWave)
Compute the slowness layer from a velocity layer.

 o SlownessLayer
 public SlownessLayer(VelocityLayer vLayer,
                      boolean isPWave,
                      double radiusOfEarth)
Compute the slowness layer from a velocity layer. Since radiusOfEarth is given we assume a spherical model.

Throws: NoSuchMatPropException
occurs if the wavetype is not recognized.
 o SlownessLayer
 public SlownessLayer(VelocityLayer vLayer,
                      boolean isPWave)
Compute the slowness layer from a velocity layer. Since radiusOfEarth is not given we assume a flat model.

Throws: NoSuchMatPropException
occurs if the wavetype is not recognized.

Methods

 o isZeroThickness
 public boolean isZeroThickness()
Is the layer a zero thickness layer, ie a total reflection?

 o evaluateAt_bullen
 public double evaluateAt_bullen(double depth,
                                 double radiusOfEarth) throws SlownessModelException
Finds the slowness at the given depth. radiusOfEarth is needed as a slowness layer doesn't have access to the slowness model. Note that this method assumes a Bullen type of slowness interpolation, ie p(r) = a*r^b. This will produce results consistent with a tau model that uses this interpolant, but it may differ slightly from going directly to the velocity model. Also, if the tau model is generated using another interpolant, linear for instance, then the result may not be consistent with the tau model.

 o bullenRadialSlowness
 public TimeDist bullenRadialSlowness(double p,
                                      double radiusOfEarth) throws SlownessModelException
Calculates the time and distance (in radians) increments accumulated by a ray of spherical ray parameter p when passing through this layer. 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. Here we use the Mohorovicic or Bullen law p=A*r^B

Throws: SlownessModelException
occurs if the calculated distance or time increments are negative or NaN, this indicates a bug in the code (and hopefully will never happen).
 o bullenDepthFor
 public double bullenDepthFor(double rayParam,
                              double radiusOfEarth) throws SlownessModelException
Finds the depth for a ray parameter within this layer. Uses a Bullen interpolant, Ar^B. Special case for botP == 0 or botDepth == radiusOfEarth as these cause div by 0, use linear interpolation in this case.

 o clone
 public Object clone()
 o toString
 public String toString()
returns a String description of this SlownessLayer.

 o validate
 public boolean validate() throws SlownessModelException

All Packages  Class Hierarchy  This Package  Previous  Next  Index