Package edu.sc.seis.TauP
Class ReflTransFreeSurface
- java.lang.Object
-
- edu.sc.seis.TauP.ReflTrans
-
- edu.sc.seis.TauP.ReflTransFreeSurface
-
public class ReflTransFreeSurface extends ReflTrans
-
-
Field Summary
Fields Modifier and Type Field Description protected Complex
fsA
used only in free surface calculations-
Fields inherited from class edu.sc.seis.TauP.ReflTrans
botDensity, botVertSlownessP, botVertSlownessS, botVp, botVs, CX, lastInIsPWave, lastRayParam, rp, sqBotVp, sqBotVs, sqRP, sqTopVp, sqTopVs, topDensity, topVertSlownessP, topVertSlownessS, topVp, topVs
-
-
Constructor Summary
Constructors Constructor Description ReflTransFreeSurface(double inVp, double inVs, double inDensity)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
calcTempVars(double rayParam, boolean inIsPWave)
ReflTrans
flip()
Flips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.Complex
getComplexRpp(double rayParam)
Calculates incident P wave to reflected P wave complex coefficient at free surface.Complex
getComplexRps(double rayParam)
Calculates incident P wave to reflected SV wave complex coefficient at free surface.Complex
getComplexRshsh(double rayParam)
Calculates incident SH wave to reflected SH wave complex coefficient at free surface.Complex
getComplexRsp(double rayParam)
Calculates incident SV wave to reflected P wave complex coefficient at free surface.Complex
getComplexRss(double rayParam)
/** Calculates incident SV wave to reflected SV wave complex coefficient at free surface.Complex
getComplexTpp(double rayParam)
Complex
getComplexTps(double rayParam)
Complex
getComplexTshsh(double rayParam)
Complex
getComplexTsp(double rayParam)
Complex
getComplexTss(double rayParam)
java.lang.String
toString()
-
-
-
Field Detail
-
fsA
protected Complex fsA
used only in free surface calculations
-
-
Constructor Detail
-
ReflTransFreeSurface
public ReflTransFreeSurface(double inVp, double inVs, double inDensity) throws VelocityModelException
- Throws:
VelocityModelException
-
-
Method Detail
-
getComplexRpp
public Complex getComplexRpp(double rayParam) throws VelocityModelException
Calculates incident P wave to reflected P wave complex coefficient at free surface. Only topVp, topVs, and topDensity are used, the bottom values are ignored. This is a little strange as free surface rays are always upgoing, but it mantains consistency with the solid-solid calculations.= (-1*((1/sqTopVs) - 2 * sqRP)^2 +
4 * sqRP * topVertSlownessP * topVertSlownessS) / A- Specified by:
getComplexRpp
in classReflTrans
- Throws:
VelocityModelException
-
getComplexRps
public Complex getComplexRps(double rayParam)
Calculates incident P wave to reflected SV wave complex coefficient at free surface. = (4 * (topVp/topVs) * rp * topVertSlownessP * ((1/sqTopVs) - 2 * sqRP)) / fsA- Specified by:
getComplexRps
in classReflTrans
-
getComplexTpp
public Complex getComplexTpp(double rayParam) throws VelocityModelException
- Specified by:
getComplexTpp
in classReflTrans
- Throws:
VelocityModelException
-
getComplexTps
public Complex getComplexTps(double rayParam) throws VelocityModelException
- Specified by:
getComplexTps
in classReflTrans
- Throws:
VelocityModelException
-
getComplexRsp
public Complex getComplexRsp(double rayParam)
Calculates incident SV wave to reflected P wave complex coefficient at free surface.= (4 * (topVs/topVp) * rp * topVertSlownessS *
((1/sqTopVs) - 2 * sqRP)) / fsA- Specified by:
getComplexRsp
in classReflTrans
-
getComplexRss
public Complex getComplexRss(double rayParam)
/** Calculates incident SV wave to reflected SV wave complex coefficient at free surface.= (-1 * ((1/sqTopVs) - 2 * sqRP)^2 +
4 * sqRP * topVertSlownessP * topVertSlownessS) / fsA- Specified by:
getComplexRss
in classReflTrans
-
getComplexTsp
public Complex getComplexTsp(double rayParam) throws VelocityModelException
- Specified by:
getComplexTsp
in classReflTrans
- Throws:
VelocityModelException
-
getComplexTss
public Complex getComplexTss(double rayParam) throws VelocityModelException
- Specified by:
getComplexTss
in classReflTrans
- Throws:
VelocityModelException
-
getComplexRshsh
public Complex getComplexRshsh(double rayParam)
Calculates incident SH wave to reflected SH wave complex coefficient at free surface. Free surface SH is always 1.- Specified by:
getComplexRshsh
in classReflTrans
-
getComplexTshsh
public Complex getComplexTshsh(double rayParam) throws VelocityModelException
- Specified by:
getComplexTshsh
in classReflTrans
- Throws:
VelocityModelException
-
flip
public ReflTrans flip() throws VelocityModelException
Description copied from class:ReflTrans
Flips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.- Specified by:
flip
in classReflTrans
- Throws:
VelocityModelException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
calcTempVars
protected void calcTempVars(double rayParam, boolean inIsPWave)
-
-