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 ComplexfsAused 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 voidcalcTempVars(double rayParam, boolean inIsPWave)ReflTransflip()Flips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.ComplexgetComplexRpp(double rayParam)Calculates incident P wave to reflected P wave complex coefficient at free surface.ComplexgetComplexRps(double rayParam)Calculates incident P wave to reflected SV wave complex coefficient at free surface.ComplexgetComplexRshsh(double rayParam)Calculates incident SH wave to reflected SH wave complex coefficient at free surface.ComplexgetComplexRsp(double rayParam)Calculates incident SV wave to reflected P wave complex coefficient at free surface.ComplexgetComplexRss(double rayParam)/** Calculates incident SV wave to reflected SV wave complex coefficient at free surface.ComplexgetComplexTpp(double rayParam)ComplexgetComplexTps(double rayParam)ComplexgetComplexTshsh(double rayParam)ComplexgetComplexTsp(double rayParam)ComplexgetComplexTss(double rayParam)java.lang.StringtoString()-
Methods inherited from class edu.sc.seis.TauP.ReflTrans
calcCriticalRayParams, calcInVerticalSlownessP, calcInVerticalSlownessS, calcTransVerticalSlownessP, calcTransVerticalSlownessS, getRealCoefficient, getRpp, getRps, getRshsh, getRsp, getRss, getTpp, getTps, getTshsh, getTsp, getTss
-
-
-
-
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:
getComplexRppin 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:
getComplexRpsin classReflTrans
-
getComplexTpp
public Complex getComplexTpp(double rayParam) throws VelocityModelException
- Specified by:
getComplexTppin classReflTrans- Throws:
VelocityModelException
-
getComplexTps
public Complex getComplexTps(double rayParam) throws VelocityModelException
- Specified by:
getComplexTpsin 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:
getComplexRspin 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:
getComplexRssin classReflTrans
-
getComplexTsp
public Complex getComplexTsp(double rayParam) throws VelocityModelException
- Specified by:
getComplexTspin classReflTrans- Throws:
VelocityModelException
-
getComplexTss
public Complex getComplexTss(double rayParam) throws VelocityModelException
- Specified by:
getComplexTssin 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:
getComplexRshshin classReflTrans
-
getComplexTshsh
public Complex getComplexTshsh(double rayParam) throws VelocityModelException
- Specified by:
getComplexTshshin classReflTrans- Throws:
VelocityModelException
-
flip
public ReflTrans flip() throws VelocityModelException
Description copied from class:ReflTransFlips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.- Specified by:
flipin classReflTrans- Throws:
VelocityModelException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
calcTempVars
protected void calcTempVars(double rayParam, boolean inIsPWave)
-
-