Class ReflTransSolidSolid


  • public class ReflTransSolidSolid
    extends ReflTrans
    • Field Detail

      • a

        protected double a
      • b

        protected double b
      • c

        protected double c
      • d

        protected double d
      • shDelta

        protected Complex shDelta
        delta for SH-SH equations
    • Constructor Detail

    • Method Detail

      • getComplexRpp

        public Complex getComplexRpp​(double rayParam)
        Calculates incident P wave to reflected P wave Complex coefficient.

        = ((b*topVertSlownessP - c*botVertSlownessP)*F -
        (a + d*topVertSlownessP * botVertSlownessS)*H*sqRP) / det

        Specified by:
        getComplexRpp in class ReflTrans
      • getComplexRps

        public Complex getComplexRps​(double rayParam)
        Calculates incident P wave to reflected SV wave Complex coefficient.

        = -2 * topVertSlownessP *
        (a * b + c * d *botVertSlownessP *botVertSlownessS) *
        (rp * (topVp/topVs)) / det

        Specified by:
        getComplexRps in class ReflTrans
      • getComplexTpp

        public Complex getComplexTpp​(double rayParam)
        Calculates incident P wave to transmitted P wave Complex coefficient.

        = ( 2 * topDensity * topVertSlownessP * F *
        (topVp / botVp)) / det

        Specified by:
        getComplexTpp in class ReflTrans
      • getComplexTps

        public Complex getComplexTps​(double rayParam)
        Calculates incident P wave to transmitted SV wave Complex coefficient.

        = (2 * topDensity * topVertSlownessP * H * rp * (topVp / botVs)) /
        det

        Specified by:
        getComplexTps in class ReflTrans
      • getComplexRsp

        public Complex getComplexRsp​(double rayParam)
        Calculates incident SV wave to reflected P wave Complex coefficient.

        = (-2 * topVertSlownessS *
        (a * b + c * d * botVertSlownessP * botVertSlownessS) *
        rp * (topVs / topVp)) /
        det

        Specified by:
        getComplexRsp in class ReflTrans
      • getComplexRss

        public Complex getComplexRss​(double rayParam)
        Calculates incident SV wave to reflected SV wave Complex coefficient.

        = -1 * ((b * topVertSlownessS - c * botVertSlownessS) * E -
        (a + b * botVertSlownessP * topVertSlownessS) * G * sqRP) /
        det

        Specified by:
        getComplexRss in class ReflTrans
      • getComplexTsp

        public Complex getComplexTsp​(double rayParam)
        Calculates incident SV wave to transmitted P wave Complex coefficient.

        = -2 * topDensity * topVertSlownessS * G * rp * (topVs / botVp) /
        det

        Specified by:
        getComplexTsp in class ReflTrans
      • getComplexTss

        public Complex getComplexTss​(double rayParam)
        Calculates incident SV wave to transmitted SV wave Complex coefficient.

        = 2 * topDensity * topVertSlownessS * E * (topVs / botVs) /
        det

        Specified by:
        getComplexTss in class ReflTrans
      • getComplexRshsh

        public Complex getComplexRshsh​(double rayParam)
        Calculates incident SH wave to reflected SH wave Complex coefficient.

        mu = Vs * Vs * density

        = (topMu * topVertSlownessS - botMu * botVertSlownessS) /
        (topMu * topVertSlownessS + botMu * botVertSlownessS)

        Specified by:
        getComplexRshsh in class ReflTrans
      • getComplexTshsh

        public Complex getComplexTshsh​(double rayParam)
        Calculates incident SH wave to transmitted SH wave Complex coefficient.

        mu = Vs * Vs * density

        = 2 * topMu * topVertSlownessS /
        (topMu * topVertSlownessS + botMu * botVertSlownessS)

        Specified by:
        getComplexTshsh in class ReflTrans
      • clone

        protected java.lang.Object clone()
                                  throws java.lang.CloneNotSupportedException
        Overrides:
        clone in class java.lang.Object
        Throws:
        java.lang.CloneNotSupportedException
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • calcScatterMatrix

        public Complex[][] calcScatterMatrix​(double rayParam)
                                      throws VelocityModelException
        Calculate scattering matrix for Solid-Solid interface. See Aki and Richards (2nd ed) sect 5.2.3 p 139-147. Rows 1 and 2 are outbound from "top" layer, and rows 3 and 4 are outbound from "bottom" layer. Columns 1 and 2 are inbound from "top" layer, and columns 3 and 4 are inbound from "bottom" layer. Upper left and lower right are reflections. Upper right and lower left are transmissions.
             P↓P↑ S↓P↑ P↑P↑ S↑P↑
             P↓S↑ S↓S↑ P↑S↑ S↑S↑
             P↓P↓ S↓P↓ P↑P↓ S↑P↓
             P↓S↓ S↓S↓ P↑S↓ S↑S↓
             
        Parameters:
        rayParam -
        Returns:
        4x4 matrix
        Throws:
        VelocityModelException
      • calcTempVars

        protected void calcTempVars​(double rayParam,
                                    boolean inIsPWave)
        Specified by:
        calcTempVars in class ReflTrans