Package edu.sc.seis.TauP
Class ReflTrans
- java.lang.Object
-
- edu.sc.seis.TauP.ReflTrans
-
- Direct Known Subclasses:
ReflTransFluidFluid,ReflTransFluidSolid,ReflTransFreeSurface,ReflTransSolidFluid,ReflTransSolidSolid
public abstract class ReflTrans extends java.lang.ObjectAbstract class for reflection and transmission coefficients at a boundary of some kind.
-
-
Field Summary
Fields Modifier and Type Field Description protected doublebotDensityprotected ComplexbotVertSlownessPprotected ComplexbotVertSlownessSprotected doublebotVpprotected doublebotVsprotected static ComplexCXjust to avoid having Complex all over the place.protected booleanlastInIsPWaveprotected doublelastRayParamprotected doublerpprotected doublesqBotVpprotected doublesqBotVsprotected doublesqRPprotected doublesqTopVpprotected doublesqTopVsprotected doubletopDensityprotected ComplextopVertSlownessPprotected ComplextopVertSlownessSprotected doubletopVpprotected doubletopVs
-
Constructor Summary
Constructors Constructor Description ReflTrans(double topVp, double topVs, double topDensity, double botVp, double botVs, double botDensity)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description double[]calcCriticalRayParams()ComplexcalcInVerticalSlownessP(double flatRP)ComplexcalcInVerticalSlownessS(double flatRP)protected abstract voidcalcTempVars(double rayParam, boolean inIsPWave)ComplexcalcTransVerticalSlownessP(double flatRP)ComplexcalcTransVerticalSlownessS(double flatRP)abstract ReflTransflip()Flips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.doublegetAngleR_p(double flatRP)doublegetAngleR_s(double flatRP)doublegetAngleT_p(double flatRP)doublegetAngleT_s(double flatRP)doublegetBotDensity()doublegetBotVp()doublegetBotVs()abstract ComplexgetComplexRpp(double rayParam)abstract ComplexgetComplexRps(double rayParam)abstract ComplexgetComplexRshsh(double rayParam)abstract ComplexgetComplexRsp(double rayParam)abstract ComplexgetComplexRss(double rayParam)abstract ComplexgetComplexTpp(double rayParam)abstract ComplexgetComplexTps(double rayParam)abstract ComplexgetComplexTshsh(double rayParam)abstract ComplexgetComplexTsp(double rayParam)abstract ComplexgetComplexTss(double rayParam)doublegetEnergyFluxFactorRpp(double flatRP)doublegetEnergyFluxFactorRps(double flatRP)doublegetEnergyFluxFactorRshsh(double flatRP)doublegetEnergyFluxFactorRsp(double flatRP)doublegetEnergyFluxFactorRss(double flatRP)doublegetEnergyFluxFactorTpp(double flatRP)doublegetEnergyFluxFactorTps(double flatRP)doublegetEnergyFluxFactorTshsh(double flatRP)doublegetEnergyFluxFactorTsp(double flatRP)doublegetEnergyFluxFactorTss(double flatRP)doublegetEnergyFluxRpp(double flatRP)doublegetEnergyFluxRps(double flatRP)doublegetEnergyFluxRshsh(double flatRP)doublegetEnergyFluxRsp(double flatRP)doublegetEnergyFluxRss(double flatRP)doublegetEnergyFluxTpp(double flatRP)doublegetEnergyFluxTps(double flatRP)doublegetEnergyFluxTshsh(double flatRP)doublegetEnergyFluxTsp(double flatRP)doublegetEnergyFluxTss(double flatRP)static doublegetRealCoefficient(Complex coef)doublegetRpp(double rayParam)Calculates incident P wave to reflected P wave coefficient.doublegetRps(double rayParam)Calculates incident P wave to reflected SV wave coefficient.doublegetRshsh(double rayParam)Calculates incident SH wave to reflected SH wave coefficient.doublegetRsp(double rayParam)Calculates incident SV wave to reflected P wave coefficient.doublegetRss(double rayParam)Calculates incident SV wave to reflected SV wave coefficient.doublegetTopDensity()doublegetTopVp()doublegetTopVs()doublegetTpp(double rayParam)Calculates incident P wave to transmitted P wave coefficient.doublegetTps(double rayParam)Calculates incident P wave to transmitted SV wave coefficient.doublegetTshsh(double rayParam)Calculates incident SH wave to transmitted SH wave coefficient.doublegetTsp(double rayParam)Calculates incident SV wave to transmitted P wave coefficient.doublegetTss(double rayParam)Calculates incident SV wave to transmitted SV wave coefficient.doubleinboundEnergyP(double flatRP)doubleinboundEnergyS(double flatRP)
-
-
-
Field Detail
-
topVp
protected double topVp
-
topVs
protected double topVs
-
topDensity
protected double topDensity
-
botVp
protected double botVp
-
botVs
protected double botVs
-
botDensity
protected double botDensity
-
rp
protected double rp
-
topVertSlownessP
protected Complex topVertSlownessP
-
topVertSlownessS
protected Complex topVertSlownessS
-
botVertSlownessP
protected Complex botVertSlownessP
-
botVertSlownessS
protected Complex botVertSlownessS
-
sqBotVs
protected double sqBotVs
-
sqTopVs
protected double sqTopVs
-
sqBotVp
protected double sqBotVp
-
sqTopVp
protected double sqTopVp
-
sqRP
protected double sqRP
-
lastRayParam
protected double lastRayParam
-
lastInIsPWave
protected boolean lastInIsPWave
-
CX
protected static final Complex CX
just to avoid having Complex all over the place.
-
-
Method Detail
-
getComplexRpp
public abstract Complex getComplexRpp(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexRps
public abstract Complex getComplexRps(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexTpp
public abstract Complex getComplexTpp(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexTps
public abstract Complex getComplexTps(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexRsp
public abstract Complex getComplexRsp(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexRss
public abstract Complex getComplexRss(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexTsp
public abstract Complex getComplexTsp(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexTss
public abstract Complex getComplexTss(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexRshsh
public abstract Complex getComplexRshsh(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
getComplexTshsh
public abstract Complex getComplexTshsh(double rayParam) throws VelocityModelException
- Throws:
VelocityModelException
-
flip
public abstract ReflTrans flip() throws VelocityModelException
Flips the sense of the layers, useful when you have a ray going through the same layer in the opposite direction.- Throws:
VelocityModelException
-
getRpp
public double getRpp(double rayParam) throws VelocityModelExceptionCalculates incident P wave to reflected P wave coefficient.- Throws:
VelocityModelException
-
getRps
public double getRps(double rayParam) throws VelocityModelExceptionCalculates incident P wave to reflected SV wave coefficient.- Throws:
VelocityModelException
-
getTpp
public double getTpp(double rayParam) throws VelocityModelExceptionCalculates incident P wave to transmitted P wave coefficient.- Throws:
VelocityModelException
-
getTps
public double getTps(double rayParam) throws VelocityModelExceptionCalculates incident P wave to transmitted SV wave coefficient.- Throws:
VelocityModelException
-
getRsp
public double getRsp(double rayParam) throws VelocityModelExceptionCalculates incident SV wave to reflected P wave coefficient.- Throws:
VelocityModelException
-
getRss
public double getRss(double rayParam) throws VelocityModelExceptionCalculates incident SV wave to reflected SV wave coefficient.- Throws:
VelocityModelException
-
getTsp
public double getTsp(double rayParam) throws VelocityModelExceptionCalculates incident SV wave to transmitted P wave coefficient.- Throws:
VelocityModelException
-
getTss
public double getTss(double rayParam) throws VelocityModelExceptionCalculates incident SV wave to transmitted SV wave coefficient.- Throws:
VelocityModelException
-
getRshsh
public double getRshsh(double rayParam) throws VelocityModelExceptionCalculates incident SH wave to reflected SH wave coefficient.- Throws:
VelocityModelException
-
getTshsh
public double getTshsh(double rayParam) throws VelocityModelExceptionCalculates incident SH wave to transmitted SH wave coefficient.- Throws:
VelocityModelException
-
getRealCoefficient
public static double getRealCoefficient(Complex coef)
-
calcInVerticalSlownessP
public Complex calcInVerticalSlownessP(double flatRP)
-
calcInVerticalSlownessS
public Complex calcInVerticalSlownessS(double flatRP)
-
calcTransVerticalSlownessP
public Complex calcTransVerticalSlownessP(double flatRP)
-
calcTransVerticalSlownessS
public Complex calcTransVerticalSlownessS(double flatRP)
-
calcCriticalRayParams
public double[] calcCriticalRayParams()
-
getAngleR_p
public double getAngleR_p(double flatRP)
-
getAngleR_s
public double getAngleR_s(double flatRP)
-
getAngleT_p
public double getAngleT_p(double flatRP)
-
getAngleT_s
public double getAngleT_s(double flatRP)
-
inboundEnergyP
public double inboundEnergyP(double flatRP)
-
inboundEnergyS
public double inboundEnergyS(double flatRP)
-
getEnergyFluxRpp
public double getEnergyFluxRpp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorRpp
public double getEnergyFluxFactorRpp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxTpp
public double getEnergyFluxTpp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorTpp
public double getEnergyFluxFactorTpp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxRps
public double getEnergyFluxRps(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorRps
public double getEnergyFluxFactorRps(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxTps
public double getEnergyFluxTps(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorTps
public double getEnergyFluxFactorTps(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxRsp
public double getEnergyFluxRsp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorRsp
public double getEnergyFluxFactorRsp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxTsp
public double getEnergyFluxTsp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorTsp
public double getEnergyFluxFactorTsp(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxRss
public double getEnergyFluxRss(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorRss
public double getEnergyFluxFactorRss(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxTss
public double getEnergyFluxTss(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorTss
public double getEnergyFluxFactorTss(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxRshsh
public double getEnergyFluxRshsh(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorRshsh
public double getEnergyFluxFactorRshsh(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxTshsh
public double getEnergyFluxTshsh(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getEnergyFluxFactorTshsh
public double getEnergyFluxFactorTshsh(double flatRP) throws VelocityModelException- Throws:
VelocityModelException
-
getTopVp
public double getTopVp()
-
getTopVs
public double getTopVs()
-
getTopDensity
public double getTopDensity()
-
getBotVp
public double getBotVp()
-
getBotVs
public double getBotVs()
-
getBotDensity
public double getBotDensity()
-
calcTempVars
protected abstract void calcTempVars(double rayParam, boolean inIsPWave)
-
-