c ------------------------------------------------------------------ C *** Abrahamson and Silva (07/2007 - Model) Horizontal ************ c ------------------------------------------------------------------ subroutine AS_072007 ( mag, dip, fType, width, rRup, rjb, 1 vs30, hwflag, lnSa, sigma1, 2 specT, period1, depthtop, iflag, vs30_class, 3 depthvs10, srcSiteA ) real mag, dip, fType, aspectratio, rRup, rjb, vs30, pgaRock, 1 srcSiteA, lnSa, sigma, tau, period1, sigma1, depthtop, width, 2 depthvs10, lnSaTD, lnSa1, lnSa2, lnSaRock integer hwflag, iflag, vs30_class c VS30 class is to distinguish between the sigma if the VS30 is measured c vs the VS30 being estimated from surface geology. c Vs30_class = 1 for measured c Vs30_class = 0 for estimated c For now, convert ftype to an equivalent rake C fType Mechanism Rake C ------------------------------------------------------ C -1 Normal -120 < Rake < -60.0 C 1, 0.5 Reverse and Rev/Obl 30 < Rake < 150.0 C 0,-0.5 Strike-Slip and NMl/Obl Otherwise C if ( fType .eq. 1.0 ) then Frv = 1.0 Fn = 0.0 elseif ( fType .eq. 0.5 ) then Frv = 1.0 Fn = 0.0 elseif ( fType .eq. -1.0 ) then Frv = 0.0 Fn = 1.0 else Frv = 0.0 Fn = 0.0 endif C HW factors...... c For now, convert hwflag to an equivalent srcSiteA if ( hwflag .eq. 1 ) then srcSiteA = 90. else srcSiteA = 0. endif c compute pga on rock period0 = 0.0 pgaRock = 0.0 vs30_rock = 1100. depthvs10rock = 0.006 call AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30_rock, pgaRock, srcSiteA, lnSa, sigma, tau, 2 period0, depthTop, Frv, Fn, iflag, vs30_class, 3 depthvs10rock, hwflag ) pgaRock = exp(lnSa) c Compute the spectral period for the constant displacement model c (Eq. 22) TD = 10**(-1.25+0.3*mag) if (specT .ge. TD) then c Compute Sa at TD spectral period for Vs30=1,100m/sec call AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30_rock, pgaRock, srcSiteA, lnSaTD, sigmaX, tauX, 2 TD, depthtop, Frv, Fn, iflag, vs30_class, 3 depthvs10rock, hwflag ) lnSaRock = lnSaTD + alog((TD*TD)/(specT*specT)) c Compute Sa at spectral period for Vs30 call AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30, pgaRock, srcSiteA, lnSa1, sigma, tau, 2 specT, depthtop, Frv, Fn, iflag, vs30_class, 3 depthvs10, hwflag ) c Compute Sa at spectral period for Vs30=1,100m/sec call AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30_rock, pgaRock, srcSiteA, lnSa2, sigmaX, tauX, 2 specT, depthtop, Frv, Fn, iflag, vs30_class, 3 depthvs10rock, hwflag ) C Compute soil amplification (i.e., 'lnSa1-lnSa2') and add to Constant displcaement rock spectrum lnSa = lnSaRock + (lnSa1-lnSa2) else C For cases where specT < TD compute regular ground motions. call AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30, pgaRock, srcSiteA, lnSa, sigma, tau, 2 specT, depthtop, Frv, Fn, iflag, vs30_class, 3 depthvs10, hwflag ) endif c compute Sa (given the PGA rock value) sigma1 = sqrt( sigma**2 + tau**2 ) period1 = specT c Convert units spectral acceleration in gal lnSa = lnSa + 6.89 return end c ---------------------------------------------------------------------- subroutine AS_072007_model ( mag, dip, rake, width, rRup, rjb, 1 vs30, pgaRock, srcSiteA, lnSa, sigma, tau, 2 specT, depthtop, Frv, Fn, iflag, vs30_class, 3 z10, hwflag ) parameter (MAXPER=108) real a1(MAXPER), a2(MAXPER), a3(MAXPER), a4(MAXPER), a5(MAXPER), 1 a6(MAXPER), a7(MAXPER), a8(MAXPER), a9(MAXPER), a10(MAXPER), a11(MAXPER), 1 a12(MAXPER), a13(MAXPER), a14(MAXPER), a15(MAXPER), 1 c4(MAXPER), a16(MAXPER), a17(MAXPER), a18(MAXPER), 2 s1e(MAXPER), s2e(MAXPER), s1m(MAXPER), s2m(MAXPER), s3(MAXPER), s4(MAXPER) real period(MAXPER), b_soil(MAXPER), vLin(MAXPER), M1 real sigma, tau,lnSa, pgaRock, vs30, rjb, rRup, aspectratio, rake, 1 dip, mag, sigcorr(MAXPER), taucorr(MAXPER) c real sig1(MAXPER), sig2(MAXPER), tau1(MAXPER), tau2(MAXPER) c real tauCorr, sigCorr real taper1, taper2, taper3, taper4, taper5 real a1T, a2T, a3T, a5T, a6T, a7T, a8T, a9T real a10T, a11T, a12T, a13T, a14T, a15T, a18T real c4T, M1T, a4T real s1eT, s2eT, s1mT, s2mT, s3T, s4T, s1T, s2T real sigcorrT, taucorrT, vLinT, b_soilT, sum, Frv, Fn real damp_dpga, sigamp, width, testv1 real sigmanot, sigmanotPGA, taunot, taunotPGA, sigmaB, sigmaBPGA integer count1, count2, iflag, vs30_class, hwflag real n, c, z10, c2, e2, a21, a22, test, zhat data period / 0.0, -1.0, -2.0, 0.01, 0.02, 0.022, 0.025, 0.029, 1 0.03, 0.032, 0.035, 0.036, 0.04, 0.042, 0.044, 2 0.045, 0.046, 0.048, 0.05, 0.055, 0.06, 0.065, 3 0.067, 0.07, 0.075, 0.08, 0.085, 0.09, 0.095, 0.1, 4 0.11, 0.12, 0.13, 0.133, 0.14, 0.15, 0.16, 0.17, 5 0.18, 0.19, 0.2, 0.22, 0.24, 0.25, 0.26, 0.28, 0.29, 6 0.3, 0.32, 0.34, 0.35, 0.36, 0.38, 0.4, 0.42, 0.44, 7 0.45, 0.46, 0.48, 0.5, 0.55, 0.6, 0.65, 0.667, 0.7, 8 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 1.1, 1.2, 1.3, 1.4, 9 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.2, 2.4, 2.5, 2.6, 2.8, 1 3.0, 3.2, 3.4, 3.5, 3.6, 3.8, 4.0, 4.2, 4.4, 4.6, 4.8, 1 5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0 / data Vlin / 865.1, 400.0, 400.0, 865.1, 865.1, 865.1, 865.1, 898.6, 1 907.8, 926.4, 953.6, 962.3, 994.5, 1008.9, 1022.0, 2 1028.0, 1033.8, 1044.3, 1053.5, 1071.5, 1082.8, 1088.3, 3 1089.1, 1089, 1085.7, 1079.2, 1070.1, 1059.0, 1046.3, 4 1032.5, 1002.5, 970.9, 939.1, 929.7, 907.8, 877.6, 5 848.7, 821.2, 795.3, 771.0, 748.2, 706.8, 670.6, 6 654.3, 639.0, 611.4, 598.9, 587.1, 565.9, 547.1, 7 538.6, 530.6, 516.0, 503.0, 491.5, 481.2, 476.5, 8 472.1, 463.9, 456.6, 441.6, 430.3, 421.7, 419.3, 9 415.2, 410.5, 407.0, 404.6, 402.9, 401.8, 400.0, 400.0, 1 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 1 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 2 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 3 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 4 400.0, 400.0, 400.0, 400.0 / data b_soil / -1.186, -1.955, 0.0, -1.186, -1.219, -1.232, -1.25, 1 -1.269, -1.273, -1.281, -1.291, -1.295, -1.308, 2 -1.315, -1.323, -1.326, -1.33, -1.338, -1.346, 3 -1.367, -1.391, -1.416, -1.426, -1.443, -1.471, 4 -1.5, -1.53, -1.561, -1.592, -1.624, -1.687, -1.751, 5 -1.813, -1.831, -1.873, -1.931, -1.988, -2.041, 6 -2.093, -2.141, -2.188, -2.272, -2.347, -2.381, 7 -2.412, -2.469, -2.494, -2.518, -2.558, -2.592, 8 -2.607, -2.62, -2.641, -2.657, -2.668, -2.674, 9 -2.676, -2.676, -2.675, -2.669, -2.643, -2.599, 1 -2.543, -2.521, -2.476, -2.401, -2.319, -2.233, 1 -2.142, -2.049, -1.955, -1.762, -1.57, -1.382, 2 -1.199, -1.025, -0.859, -0.703, -0.558, -0.423, 3 -0.299, -0.086, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data c4 / 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 1 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 2 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 3 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 5 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 6 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 7 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 8 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 9 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5, 4.5 / data a1 / 0.725, 5.772, 5.065, 0.731, 0.797, 0.826, 0.869, 0.917, 1 0.929, 0.954, 0.99, 0.998, 1.033, 1.054, 1.075, 1.086, 2 1.096, 1.118, 1.138, 1.194, 1.25, 1.302, 1.322, 1.349, 3 1.393, 1.433, 1.469, 1.503, 1.538, 1.566, 1.608, 1.643, 4 1.66, 1.663, 1.657, 1.667, 1.667, 1.667, 1.66, 1.653, 5 1.64, 1.611, 1.574, 1.56, 1.544, 1.508, 1.487, 1.466, 6 1.457, 1.433, 1.422, 1.411, 1.392, 1.372, 1.353, 1.335, 7 1.326, 1.317, 1.298, 1.28, 1.239, 1.195, 1.149, 1.133, 8 1.1, 1.054, 1.002, 0.945, 0.893, 0.844, 0.816, 0.757, 9 0.7, 0.636, 0.564, 0.496, 0.429, 0.366, 0.304, 0.244, 1 0.187, 0.094, 0.007, -0.035, -0.074, -0.152, -0.225, 1 -0.294, -0.361, -0.393, -0.425, -0.485, -0.544, -0.601, 2 -0.654, -0.707, -0.766, -0.823, -0.959, -1.085, -1.202, 3 -1.312, -1.416, -1.515, -1.609, -1.698, -1.783, -1.865 / data a2 / -0.968, -0.91, -0.88, -0.968, -0.9818, -0.9869, -0.9952, -1.0066, -1.0095, -1.0152, 1 -1.0235, -1.0262, -1.0367, -1.0416, -1.0463, -1.0486, -1.0509, -1.0552, -1.0593, 2 -1.0685, -1.0764, -1.0829, -1.0852, -1.0882, -1.0921, -1.0949, -1.0965, -1.097, 3 -1.0962, -1.0941, -1.0872, -1.0777, -1.0668, -1.0634, -1.0551, -1.0431, -1.0309, 4 -1.0188, -1.0069, -0.9952, -0.9837, -0.9616, -0.9406, -0.9305, -0.9207, -0.9016, 5 -0.8924, -0.8834, -0.8781, -0.8732, -0.8709, -0.8686, -0.8643, -0.8601, -0.8562, 6 -0.8524, -0.8506, -0.8488, -0.8454, -0.8421, -0.8344, -0.8273, -0.8209, -0.8188, 7 -0.8149, -0.8093, -0.8041, -0.7992, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, 8 -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, 9 -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, 1 -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, 1 -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946, -0.7946 / data a3 / 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 1 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 2 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 3 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 4 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 5 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 6 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 7 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 8 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 9 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 1 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 1 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265, 0.265 / data a4 / -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 1 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 2 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 3 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 4 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 5 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 6 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 7 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 8 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 9 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 1 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 1 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 2 -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, -0.231, 3 -0.231, -0.231, -0.231, -0.231 / data a5 / -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, -0.398, 1 -0.398, -0.398, -0.398, -0.398 / data a6 / -1.44, 0.0, 0.0, -1.445, -1.4522, -1.4571, -1.4612, -1.4672, -1.4708, 1 -1.4774, -1.4862, -1.4891, -1.4964, -1.4998, -1.5043, -1.5079, 1 -1.5108, -1.517, -1.523, -1.5374, -1.5489, -1.5613, -1.5646, 1 -1.5681, -1.5776, -1.5806, -1.5863, -1.5854, -1.5778, -1.5814, 1 -1.5797, -1.5595, -1.5487, -1.5469, -1.5426, -1.5342, -1.5109, 1 -1.4782, -1.4512, -1.447, -1.4433, -1.4284, -1.4027, -1.3899, 1 -1.3823, -1.367, -1.3558, -1.3499, -1.3349, -1.2933, -1.2765, 1 -1.26, -1.2475, -1.2559, -1.2797, -1.293, -1.2965, -1.2991, 1 -1.2982, -1.2904, -1.3051, -1.316, -1.3201, -1.3282, -1.3393, 1 -1.3497, -1.3851, -1.4046, -1.4074, -1.4034, -1.3932, -1.3681, 1 -1.3589, -1.3236, -1.2717, -1.2353, -1.2152, -1.0434, -1.0328, 1 -1.0274, -1.0294, -0.9823, -0.9892, -0.9739, -0.9596, -0.951, 1 -0.9342, -0.8645, -0.8872, -0.8958, -0.8995, -0.8827, -0.8856, 1 -1.0348, -1.0212, -0.9985, -0.9753, -0.9638, -1.0028, -0.995, 1 -0.9702, -0.9565, -0.8952, -0.8398, -0.7739, -0.7367, -0.696, -0.6738 / data a7 / 1.052, 0.0, 0.0, 1.1342, 1.108, 1.1018, 1.0817, 1.0532, 1.0538, 1 1.0534, 1.051, 1.0543, 1.0528, 1.0479, 1.0492, 1.0552, 1.0596, 1 1.0696, 1.0799, 1.101, 1.1179, 1.1465, 1.152, 1.1599, 1.1908, 1 1.1995, 1.2268, 1.2231, 1.1967, 1.2247, 1.2514, 1.1943, 1.1923, 1 1.2006, 1.2071, 1.2259, 1.1671, 1.0688, 0.9916, 1.0116, 1.0363, 1 1.0702, 1.0293, 1.0022, 0.9936, 0.9791, 0.9577, 0.9576, 0.9298, 1 0.7901, 0.7361, 0.6788, 0.6406, 0.6815, 0.7915, 0.8621, 0.882, 1 0.8975, 0.8996, 0.872, 0.9525, 1.0075, 1.0243, 1.0537, 1.1042, 1 1.1578, 1.3146, 1.4079, 1.4183, 1.3971, 1.3486, 1.239, 1.2047, 1 1.0786, 0.8978, 0.7434, 0.6499, 0.0272, -0.0402, -0.0778, 1 -0.0837, -0.2088, -0.1682, -0.2436, -0.3096, -0.1603, -0.2573, 1 -0.5093, -0.4603, -0.448, -0.455, -0.5916, -0.6181, 0.1125, 1 0.03, -0.0984, -0.2211, -0.2868, -0.0427, -0.1023, -0.2274, 1 -0.3748, -0.6794, -0.9725, -0.6304, -0.8524, -1.0953, -1.2714 / data a8 / 0.0, -0.1, -0.25, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0008, 0.0038, 0.0052, 1 0.0065, 0.0072, 0.0078, 0.009, 0.0102, 0.0129, 0.0154, 0.0177, 1 0.0186, 0.0198, 0.0218, 0.0236, 0.0254, 0.027, 0.0268, 0.0266, 1 0.0262, 0.0258, 0.0255, 0.0254, 0.0251, 0.0206, 0.0164, 0.0124, 1 0.0087, 0.0052, 0.0018, -0.0044, -0.0101, -0.0128, -0.0153, -0.0202, 1 -0.0225, -0.0247, -0.0289, -0.0329, -0.0348, -0.0366, -0.0402, -0.0435, 1 -0.0467, -0.0497, -0.0512, -0.0527, -0.0554, -0.0581, -0.0651, 1 -0.0715, -0.0774, -0.0793, -0.0829, -0.088, -0.0927, -0.0972, 1 -0.1014, -0.1054, -0.1092, -0.1162, -0.1226, -0.1285, -0.134, 1 -0.1391, -0.1438, -0.1483, -0.1525, -0.1565, -0.1603, -0.1681, 1 -0.1753, -0.1786, -0.1819, -0.188, -0.1936, -0.199, -0.2039, 1 -0.2063, -0.2086, -0.2131, -0.2173, -0.2213, -0.2252, -0.2288, 1 -0.2323, -0.2357, -0.2435, -0.2507, -0.2573, -0.2634, -0.2691, 1 -0.2744, -0.2794, -0.2841, -0.2885, -0.2927 / data a9 / 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 3 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 8 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 9 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data a10 / 0.9485, 1.587, -0.9, 0.9485, 0.9874, 1.0028, 1.024, 1.0464, 1 1.0511, 1.0606, 1.0724, 1.0771, 1.0924, 1.1007, 1.1101, 1.1137, 1 1.1184, 1.1278, 1.1373, 1.1621, 1.1904, 1.2199, 1.2317, 1.2517, 1 1.2848, 1.319, 1.3544, 1.391, 1.4276, 1.4653, 1.5397, 1.6152, 1 1.6883, 1.7069, 1.7504, 1.8107, 1.8703, 1.9257, 1.9803, 2.0306, 1 2.08, 2.1679, 2.2461, 2.2814, 2.3134, 2.3719, 2.3972, 2.4216, 1 2.4611, 2.4941, 2.5084, 2.5204, 2.5388, 2.5516, 2.5589, 2.5604, 1 2.5602, 2.5576, 2.5514, 2.5395, 2.4975, 2.4354, 2.3598, 2.3308, 1 2.272, 2.1643, 2.0496, 1.9313, 1.808, 1.6833, 1.5581, 1.3038, 1 1.0531, 0.809, 0.5725, 0.348, 0.1341, -0.0668, -0.2538, -0.4281, 1 -0.5887, -0.84, -0.9415, -0.9415, -0.9415, -0.9415, -0.9415, 1 -0.9415, -0.9415, -0.9415, -0.9415, -0.9415, -0.9415, -0.9415, 1 -0.9415, -0.9415, -0.9263, -0.9118, -0.8779, -0.8469, -0.8184, 1 -0.792, -0.7675, -0.7445, -0.7229, -0.7026, -0.6833, -0.6651 / data a11 / 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 3 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 8 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 9 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data a12 / -0.12, -0.05, -0.05, -0.12, -0.12, -0.12, -0.12, 1 -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, 1 -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, 1 -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.1171, 1 -0.1145, -0.112, -0.1113, -0.1098, -0.1077, -0.1057, 1 -0.1039, -0.1021, -0.1005, -0.0989, -0.096, -0.0934, 1 -0.0921, -0.091, -0.0887, -0.0876, -0.0866, -0.0846, 1 -0.0828, -0.0819, -0.0811, -0.0794, -0.0779, -0.0764, 1 -0.075, -0.0743, -0.0736, -0.0723, -0.0711, -0.0682, 1 -0.0655, -0.0631, -0.0623, -0.0608, -0.0587, -0.0568, 1 -0.0549, -0.0532, -0.0516, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05 / data a13 / -0.05, -0.2, -0.2, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, 1 -0.05, -0.05, -0.05, -0.05, -0.05, -0.05, -0.06, -0.0632, 1 -0.0692, -0.0778, -0.0858, -0.0934, -0.1005, -0.1073, 1 -0.1136, -0.1255, -0.1364, -0.1463, -0.1556, -0.1642, 1 -0.1722, -0.1798, -0.1869, -0.1936, -0.2, -0.2, -0.2, 1 -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, 1 -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, 1 -0.2, -0.2, -0.2, -0.2, -0.2, -0.2, -0.2 / data a14 / 1.08, 0.7, 0.5, 1.08, 1.08, 1.0925, 1.1092, 1.1287, 1 1.1331, 1.1416, 1.1533, 1.157, 1.1708, 1.1772, 1.1833, 1 1.1862, 1.1891, 1.1947, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.1886, 1.1854, 1 1.1781, 1.1683, 1.1591, 1.1505, 1.1424, 1.1347, 1.1274, 1 1.1138, 1.1015, 1.0956, 1.0901, 1.0795, 1.0745, 1.0697, 1 1.0605, 1.0519, 1.0478, 1.0438, 1.0361, 1.0288, 1.0219, 1 1.0153, 1.0121, 1.009, 1.0029, 0.9971, 0.9835, 0.9712, 1 0.9598, 0.9561, 0.9493, 0.9395, 0.9303, 0.9217, 0.9135, 1 0.9058, 0.8985, 0.885, 0.8726, 0.8612, 0.8507, 0.8409, 1 0.8317, 0.8231, 0.815, 0.8073, 0.8, 0.7246, 0.6558, 1 0.6235, 0.5925, 0.5339, 0.4793, 0.4283, 0.3804, 0.3574, 1 0.3352, 0.2924, 0.2518, 0.2133, 0.1765, 0.1413, 0.1077, 1 0.0754, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data a15 / -0.405, -0.284, 0, -0.4018, -0.4098, -0.4133, -0.4186, 1 -0.4277, -0.4295, -0.432, -0.4345, -0.4377, -0.4478, -0.451, 1 -0.4533, -0.4558, -0.4587, -0.4675, -0.4723, -0.4829, -0.4879, 1 -0.4956, -0.5032, -0.5056, -0.5036, -0.5085, -0.5153, -0.5248, 1 -0.5223, -0.5178, -0.5138, -0.5257, -0.537, -0.5364, -0.547, 1 -0.5227, -0.4967, -0.4784, -0.4685, -0.4587, -0.4407, -0.3986, 1 -0.3678, -0.3646, -0.3631, -0.3803, -0.3942, -0.4061, -0.3844, 1 -0.3674, -0.3601, -0.3543, -0.3453, -0.349, -0.3499, -0.3535, 1 -0.3541, -0.3576, -0.361, -0.3614, -0.3573, -0.3552, -0.3612, 1 -0.345, -0.329, -0.3153, -0.3089, -0.2754, -0.2565, -0.2557, 1 -0.2591, -0.2289, -0.2198, -0.2159, -0.1606, -0.1626, -0.1738, 1 -0.0893, -0.0899, -0.112, -0.1236, -0.0906, -0.092, -0.0602, 1 -0.0434, -0.009, -0.0225, -0.086, -0.0818, -0.0936, -0.111, 1 -0.1482, -0.1531, 0.0879, 0.0715, 0.0409, -0.0034, -0.011, 1 -0.0711, -0.0503, -0.0237, 0.0069, -0.0099, -0.0227, -0.1238, 1 -0.2288, -0.2924, -0.3319 / data a16 / 0.65, 0.46, 0, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1 0.6202, 0.593, 0.568, 0.5599, 0.5448, 0.5233, 0.5031, 0.4841, 1 0.4663, 0.4494, 0.4333, 0.4035, 0.3763, 0.3513, 0.3282, 0.3066, 1 0.2864, 0.2675, 0.2496, 0.2327, 0.2167, 0.1869, 0.1597, 0.1469, 1 0.1347, 0.1115, 0.0899, 0.0698, 0.0508, 0.0417, 0.0329, 0.016, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0 / data a17 / 0.6, 0.35, 0.0, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 1 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 1 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 1 0.6, 0.6, 0.6, 0.5789, 0.5596, 0.5506, 0.5419, 0.5255, 0.5177, 1 0.5102, 0.4959, 0.4824, 0.476, 0.4698, 0.4578, 0.4464, 0.4356, 1 0.4253, 0.4203, 0.4155, 0.406, 0.397, 0.3759, 0.3566, 0.3389, 1 0.3331, 0.3224, 0.3071, 0.2929, 0.2794, 0.2668, 0.2548, 0.2434, 1 0.2223, 0.203, 0.1853, 0.1689, 0.1536, 0.1393, 0.1258, 0.1132, 1 0.1012, 0.0898, 0.0687, 0.0494, 0.0404, 0.0317, 0.0153, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data a18 / -0.0067, 0.0, 0.0, -0.0067, -0.0067, -0.0067, -0.0067, -0.0067, 1 -0.0067, -0.0067, -0.0067, -0.0067, -0.0067, -0.0069, -0.0071, 1 -0.0072, -0.0073, -0.0075, -0.0076, -0.008, -0.0084, -0.0087, 1 -0.0088, -0.009, -0.0093, -0.0093, -0.0093, -0.0093, -0.0093, 1 -0.0093, -0.0093, -0.0093, -0.0093, -0.0093, -0.0093, -0.0093, 1 -0.0093, -0.0093, -0.0089, -0.0086, -0.0083, -0.0077, -0.0071, 1 -0.0069, -0.0066, -0.0062, -0.006, -0.0057, -0.0053, -0.005, 1 -0.0048, -0.0046, -0.0043, -0.0039, -0.0036, -0.0033, -0.0032, 1 -0.0031, -0.0028, -0.0025, -0.0019, -0.0014, -0.0009, -0.0007, 1 -0.0004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / data s1e / 0.576, 0.612, 0.733336393, 0.576, 0.575, 0.577, 0.579, 1 0.582, 0.582, 0.583, 0.585, 0.585, 0.587, 0.588, 0.589, 0.589, 1 0.589, 0.59, 0.591, 0.592, 0.594, 0.595, 0.596, 0.596, 0.598, 1 0.599, 0.6, 0.601, 0.602, 0.603, 0.605, 0.607, 0.609, 0.61, 1 0.611, 0.613, 0.615, 0.616, 0.618, 0.619, 0.621, 0.623, 0.626, 1 0.627, 0.628, 0.63, 0.631, 0.632, 0.633, 0.634, 0.635, 0.636, 1 0.637, 0.638, 0.639, 0.64, 0.641, 0.641, 0.642, 0.643, 0.645, 1 0.647, 0.649, 0.649, 0.65, 0.652, 0.654, 0.655, 0.657, 0.658, 1 0.66, 0.662, 0.664, 0.666, 0.668, 0.67, 0.672, 0.673, 0.675, 1 0.676, 0.677, 0.678, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 1 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 1 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 0.679, 1 0.679, 0.679, 0.679 / data s2e / 0.456, 0.489, 0.739515254, 0.456, 0.455, 0.457, 0.459, 0.462, 1 0.462, 0.464, 0.465, 0.466, 0.467, 0.468, 0.469, 0.469, 0.47, 0.47, 1 0.471, 0.473, 0.474, 0.476, 0.476, 0.477, 0.478, 0.479, 0.481, 1 0.482, 0.483, 0.484, 0.486, 0.488, 0.49, 0.49, 0.492, 0.493, 1 0.495, 0.497, 0.498, 0.499, 0.501, 0.503, 0.505, 0.506, 0.507, 1 0.509, 0.51, 0.511, 0.512, 0.514, 0.514, 0.515, 0.516, 0.517, 1 0.518, 0.519, 0.52, 0.52, 0.521, 0.522, 0.524, 0.526, 0.527, 1 0.528, 0.529, 0.53, 0.532, 0.533, 0.534, 0.535, 0.536, 0.538, 1 0.54, 0.541, 0.543, 0.544, 0.545, 0.547, 0.548, 0.549, 0.55, 1 0.552, 0.553, 0.554, 0.555, 0.556, 0.558, 0.559, 0.56, 0.561, 1 0.561, 0.563, 0.567, 0.572, 0.575, 0.579, 0.583, 0.586, 0.594, 1 0.601, 0.608, 0.614, 0.619, 0.625, 0.63, 0.634, 0.639, 0.643 / data s3 / 0.479, 0.416, 0.686401383, 0.479, 0.479, 0.481, 0.482, 0.484, 1 0.485, 0.486, 0.487, 0.488, 0.489, 0.49, 0.491, 0.491, 0.491, 0.492, 1 0.493, 0.494, 0.496, 0.497, 0.497, 0.498, 0.499, 0.5, 0.501, 0.502, 1 0.503, 0.503, 0.505, 0.506, 0.507, 0.507, 0.508, 0.509, 0.51, 1 0.511, 0.512, 0.512, 0.513, 0.515, 0.516, 0.517, 0.517, 0.518, 1 0.519, 0.519, 0.52, 0.521, 0.521, 0.522, 0.522, 0.523, 0.524, 1 0.524, 0.525, 0.525, 0.525, 0.526, 0.527, 0.528, 0.529, 0.529, 1 0.53, 0.531, 0.531, 0.532, 0.532, 0.533, 0.533, 0.534, 0.535, 1 0.535, 0.536, 0.536, 0.537, 0.537, 0.538, 0.538, 0.538, 0.539, 1 0.539, 0.539, 0.54, 0.54, 0.541, 0.541, 0.541, 0.541, 0.541, 1 0.542, 0.542, 0.542, 0.543, 0.543, 0.543, 0.543, 0.544, 0.544, 1 0.544, 0.545, 0.545, 0.545, 0.545, 0.546, 0.546, 0.546 / data s4 / 0.286, 0.262, 0.441385296, 0.286, 0.286, 0.288, 0.289, 0.291, 1 0.292, 0.293, 0.294, 0.295, 0.296, 0.297, 0.298, 0.298, 0.299, 1 0.299, 0.3, 0.302, 0.303, 0.304, 0.305, 0.306, 0.307, 0.308, 1 0.309, 0.31, 0.31, 0.311, 0.312, 0.314, 0.315, 0.315, 0.316, 1 0.316, 0.317, 0.317, 0.318, 0.318, 0.319, 0.32, 0.32, 0.321, 1 0.321, 0.322, 0.322, 0.322, 0.323, 0.323, 0.324, 0.324, 0.324, 1 0.325, 0.325, 0.326, 0.326, 0.326, 0.326, 0.327, 0.327, 0.328, 1 0.328, 0.329, 0.329, 0.329, 0.33, 0.33, 0.33, 0.331, 0.331, 1 0.331, 0.332, 0.332, 0.333, 0.333, 0.333, 0.334, 0.334, 0.334, 1 0.334, 0.335, 0.335, 0.335, 0.335, 0.335, 0.336, 0.336, 0.336, 1 0.336, 0.336, 0.336, 0.336, 0.336, 0.336, 0.336, 0.336, 0.336, 1 0.337, 0.337, 0.337, 0.337, 0.337, 0.337, 0.337, 0.337, 0.337, 1 0.337 / data s1m / 0.562, 0.578, 0.688678637, 0.562, 0.561, 0.563, 1 0.565, 0.568, 0.568, 0.57, 0.571, 0.572, 0.573, 0.574, 0.575, 1 0.575, 0.576, 0.576, 0.577, 0.579, 0.58, 0.582, 0.582, 0.583, 1 0.584, 0.585, 0.587, 0.588, 0.589, 0.59, 0.592, 0.594, 0.596, 1 0.597, 0.598, 0.599, 0.6, 0.601, 0.603, 0.604, 0.605, 0.606, 1 0.608, 0.609, 0.61, 0.611, 0.612, 0.613, 0.614, 0.614, 0.615, 1 0.615, 0.616, 0.617, 0.617, 0.618, 0.618, 0.619, 0.619, 0.62, 1 0.621, 0.622, 0.623, 0.624, 0.624, 0.624, 0.625, 0.625, 0.625, 1 0.625, 0.625, 0.625, 0.625, 0.625, 0.625, 0.625, 0.625, 0.625, 1 0.624, 0.624, 0.624, 0.625, 0.625, 0.626, 0.626, 0.626, 0.626, 1 0.626, 0.626, 0.626, 0.626, 0.626, 0.626, 0.626, 0.626, 0.626, 1 0.627, 0.629, 0.633, 0.636, 0.639, 0.642, 0.644, 0.646, 0.648, 1 0.65, 0.651, 0.653 / data s2m / 0.438, 0.445, 0.695254494, 0.438, 0.437, 0.439, 1 0.441, 0.444, 0.445, 0.446, 0.448, 0.448, 0.45, 0.451, 0.452, 1 0.452, 0.452, 0.453, 0.454, 0.456, 0.457, 0.459, 0.459, 0.46, 1 0.461, 0.463, 0.464, 0.465, 0.466, 0.467, 0.469, 0.471, 0.473, 1 0.474, 0.475, 0.476, 0.477, 0.478, 0.479, 0.48, 0.48, 0.482, 1 0.483, 0.484, 0.485, 0.486, 0.487, 0.487, 0.488, 0.489, 0.489, 1 0.489, 0.49, 0.491, 0.491, 0.492, 0.492, 0.492, 0.493, 0.493, 1 0.494, 0.495, 0.496, 0.496, 0.497, 0.496, 0.496, 0.495, 0.495, 1 0.494, 0.494, 0.492, 0.491, 0.49, 0.489, 0.488, 0.487, 0.486, 1 0.485, 0.483, 0.482, 0.485, 0.487, 0.487, 0.488, 0.49, 0.491, 1 0.493, 0.494, 0.495, 0.495, 0.498, 0.503, 0.507, 0.511, 0.516, 1 0.522, 0.527, 0.541, 0.552, 0.563, 0.572, 0.581, 0.589, 0.596, 1 0.603, 0.61, 0.616 / data sigcorr / 1.000, 0.74, 0.47, 1.000, 1.000, 0.998, 0.996, 0.992, 1 0.991, 0.989, 0.987, 0.986, 0.982, 0.98, 0.978, 0.978, 2 0.977, 0.975, 0.973, 0.969, 0.965, 0.961, 0.96, 0.957, 3 0.952, 0.946, 0.942, 0.937, 0.933, 0.929, 0.921, 0.914, 4 0.908, 0.906, 0.902, 0.896, 0.891, 0.886, 0.882, 0.878, 5 0.874, 0.866, 0.859, 0.856, 0.853, 0.847, 0.844, 0.841, 6 0.836, 0.831, 0.829, 0.827, 0.823, 0.818, 0.815, 0.811, 7 0.81, 0.804, 0.794, 0.783, 0.759, 0.737, 0.717, 0.71, 8 0.698, 0.68, 0.664, 0.648, 0.634, 0.62, 0.607, 0.583, 9 0.561, 0.541, 0.522, 0.504, 0.488, 0.472, 0.458, 0.444, 1 0.431, 0.407, 0.385, 0.374, 0.364, 0.346, 0.328, 0.312, 2 0.296, 0.289, 0.282, 0.268, 0.255, 0.243, 0.231, 0.22, 3 0.209, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2 / data taucorr / 1.000, 0.74, 0.47, 1.000, 1.000, 0.998, 0.996, 0.992, 1 0.991, 0.989, 0.987, 0.986, 0.982, 0.98, 0.978, 0.978, 2 0.977, 0.975, 0.973, 0.969, 0.965, 0.961, 0.96, 0.957, 3 0.952, 0.946, 0.942, 0.937, 0.933, 0.929, 0.921, 0.914, 4 0.908, 0.906, 0.902, 0.896, 0.891, 0.886, 0.882, 0.878, 5 0.874, 0.866, 0.859, 0.856, 0.853, 0.847, 0.844, 0.841, 6 0.836, 0.831, 0.829, 0.827, 0.823, 0.818, 0.815, 0.811, 7 0.81, 0.804, 0.794, 0.783, 0.759, 0.737, 0.717, 0.71, 8 0.698, 0.68, 0.664, 0.648, 0.634, 0.62, 0.607, 0.583, 9 0.561, 0.541, 0.522, 0.504, 0.488, 0.472, 0.458, 0.444, 1 0.431, 0.407, 0.385, 0.374, 0.364, 0.346, 0.328, 0.312, 2 0.296, 0.289, 0.282, 0.268, 0.255, 0.243, 0.231, 0.22, 3 0.209, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2 / n = 1.18 c = 1.88 sigamp = 0.30 C Find the requested spectral period and corresponding coefficients nPer = 105 C First check for the PGA, PGV, PGD cases if (specT .le. 0.0) then if ( specT .eq. 0.0 ) i1=1 if ( specT .eq. -1. ) i1=2 if ( specT .eq. -2. ) i1=3 period1 = period(i1) a1T = a1(i1) a2T = a2(i1) a3T = a3(i1) a4T = a4(i1) a5T = a5(i1) a6T = a6(i1) a7T = a7(i1) a8T = a8(i1) a9T = a9(i1) a10T = a10(i1) a11T = a11(i1) a12T = a12(i1) a13T = a13(i1) a14T = a14(i1) a15T = a15(i1) a16T = a16(i1) a17T = a17(i1) a18T = a18(i1) c4T = c4(i1) b_soilT = b_soil(i1) vLinT = vLin(i1) if (vs30_class .eq. 0) then s1T = s1e(i1) s2T = s2e(i1) elseif (vs30_class .eq. 1) then s1T = s1m(i1) s2T = s2m(i1) endif s3T = s3(i1) s4T = s4(i1) taucorrT = taucorr(i1) sigcorrT = sigcorr(i1) goto 1011 endif C For other periods, loop over the spectral period range of the attenuation relationship. do i=4,nper-1+3 if (specT .ge. period(i) .and. specT .le. period(i+1) ) then count1 = i count2 = i+1 goto 1020 endif enddo C Selected spectral period is outside range defined by attenuaton model. write (*,*) write (*,*) 'Abrahamson and Silva (07/2007 Model) Horizontal' write (*,*) 'attenuation model is not defined for a ' write (*,*) ' spectral period of: ' write (*,'(a10,f10.5)') ' Period = ',specT write (*,*) 'This spectral period is outside the defined' write (*,*) 'period range in the code or beyond the range' write (*,*) 'of spectral periods for interpolation.' write (*,*) 'Please check the input file.' write (*,*) stop 99 C Interpolate the coefficients for the requested spectral period. 1020 call interp (period(count1),period(count2),a1(count1),a1(count2), + specT,a1T,iflag) call interp (period(count1),period(count2),a2(count1),a2(count2), + specT,a2T,iflag) call interp (period(count1),period(count2),a3(count1),a3(count2), + specT,a3T,iflag) call interp (period(count1),period(count2),a4(count1),a4(count2), + specT,a4T,iflag) call interp (period(count1),period(count2),a5(count1),a5(count2), + specT,a5T,iflag) call interp (period(count1),period(count2),a6(count1),a6(count2), + specT,a6T,iflag) call interp (period(count1),period(count2),a7(count1),a7(count2), + specT,a7T,iflag) call interp (period(count1),period(count2),a8(count1),a8(count2), + specT,a8T,iflag) call interp (period(count1),period(count2),a9(count1),a9(count2), + specT,a9T,iflag) call interp (period(count1),period(count2),a10(count1),a10(count2), + specT,a10T,iflag) call interp (period(count1),period(count2),a11(count1),a11(count2), + specT,a11T,iflag) call interp (period(count1),period(count2),a12(count1),a12(count2), + specT,a12T,iflag) call interp (period(count1),period(count2),a13(count1),a13(count2), + specT,a13T,iflag) call interp (period(count1),period(count2),a14(count1),a14(count2), + specT,a14T,iflag) call interp (period(count1),period(count2),a15(count1),a15(count2), + specT,a15T,iflag) call interp (period(count1),period(count2),a16(count1),a16(count2), + specT,a16T,iflag) call interp (period(count1),period(count2),a17(count1),a17(count2), + specT,a17T,iflag) call interp (period(count1),period(count2),a18(count1),a18(count2), + specT,a18T,iflag) call interp (period(count1),period(count2),c4(count1),c4(count2), + specT,c4T,iflag) call interp (period(count1),period(count2),b_soil(count1),b_soil(count2), + specT,b_soilT,iflag) call interp (period(count1),period(count2),vLin(count1),vLin(count2), + specT,vLinT,iflag) if (vs30_class .eq. 0) then call interp (period(count1),period(count2),s1e(count1),s1e(count2), + specT,s1T,iflag) call interp (period(count1),period(count2),s2e(count1),s2e(count2), + specT,s2T,iflag) elseif (vs30_class .eq. 1) then call interp (period(count1),period(count2),s1m(count1),s1m(count2), + specT,s1T,iflag) call interp (period(count1),period(count2),s2m(count1),s2m(count2), + specT,s2T,iflag) endif call interp (period(count1),period(count2),s3(count1),s3(count2), + specT,s3T,iflag) call interp (period(count1),period(count2),s4(count1),s4(count2), + specT,s4T,iflag) call interp (period(count1),period(count2),sigcorr(count1),sigcorr(count2), + specT,sigcorrT,iflag) call interp (period(count1),period(count2),taucorr(count1),taucorr(count2), + specT,taucorrT,iflag) 1011 period1 = specT c Set distance (Eq. 3) R = sqrt(rRup**2 + c4T**2) C Compute Rx value given source to site azimuth if (srcsiteA .eq. 90.0) then Rx = Rrup/sin(dip*3.14159/180.0) - DepthTop/tan(dip*3.14159/180.0) elseif (srcsiteA .gt. 0.0) then Rx = Rjb*tan(srcSiteA*3.14159/180.0) elseif (srcsiteA .lt. 0.0) then Rx = 0.0 endif C Set the 5 taper models (Eq. 13-17) C Taper 1 (Eq. 13) if ( rjb .ge. 30. ) then taper1 = 0. else taper1 = (30. - rjb) / 30. endif c Taper 2 (Eq. 14) if ( dip .eq. 90.0 .or. Rx .gt. width*cos(dip*3.14159/180.0) ) then taper2 = 1. else taper2 = 0.5 + Rx/(2.0*width*cos(dip*3.14159/180.0)) endif c Set Taper 3 (Eq. 15) if (Rx .ge. DepthTop) then taper3 = 1.0 else taper3 = Rx/depthTop endif c Set Taper 4 (Eq. 16) if ( mag .ge. 7. ) then taper4 = 1.0 elseif ( mag .gt. 6.0) then taper4 = (mag-6.0) else taper4 = 0.0 endif c Set Taper 5 (Eq. 17) if ( dip .lt. 70. ) then taper5 = 1. else taper5 = 1. - (dip-70.)/20. endif C Base Model (Eq. 2) c1 = 6.75 if ( mag .le. c1 ) then sum = a1T + a4T*(Mag-c1) + a8T*(8.5-Mag)**2 + (a2T + a3T*(Mag-c1))*alog(R) else sum = a1T + a5T*(Mag-c1) + a8T*(8.5-Mag)**2 + (a2T + a3T*(Mag-c1))*alog(R) endif c style of faulting sum = sum + a12T*Frv + a13T*Fn c Site response c Set Velocity for break in slope (Eq. 6) if ( specT .ge. 2.0) then v1 = 700. elseif ( specT .gt. 1.00 ) then v1 = exp(6.76-0.297*alog(specT)) elseif ( specT .gt. 0.50 ) then v1 = exp(8.0-0.795*alog(specT/0.21)) elseif (specT .eq. -1.0) then v1 = 700.0 elseif (specT .eq. -2.0) then v1 = 700.0 else v1 = 1500. endif C Set the Vs30* (Eq. 5) if ( vs30 .lt. v1 ) then vs = vs30 else vs = v1 endif c Compute site amplification (Eq. 4) if (vs30 .lt. vLinT) then soilamp = a10T*alog(vs/vLinT) - 1.0*b_soilT*alog(c+pgaRock) 1 + b_soilT*alog(pgaRock+c*((vs/vLinT)**(n)) ) else soilamp = (a10T + b_soilT*n) * alog(vs/vLinT) endif sum = sum + soilamp C Soil Depth Model C (Eq. 8) if (vs30 .lt. 180) then zhat = exp(6.745) elseif (vs30 .le. 500.0) then zhat = exp(6.745-1.35*alog(vs30/180.0) ) else zhat = exp(5.394-4.48*alog(vs30/500.0) ) endif C (Eq. 10) if (vs30 .gt. 1000 .or. specT .lt. 0.35) then e2 = 0.0 elseif (specT .ge. 0.35 .and. specT .le. 2.0) then e2 = -0.25*alog(vs30/1000)*alog(specT/0.35) else e2 = -0.25*alog(vs30/1000)*alog(2.00/0.35) endif C (Eq. 11) if (specT .ge. 2.0) then a22 = 0.0625*(specT-2.00) else a22 = 0.0 endif C Test Value for Eq. 9 c2 = 50.0 if (v1 .lt. 1000.0) then testv1 = v1 else testv1 = 1000.0 endif test = (a10T+b_soilT*n)*alog(vs/(testv1)) + 1 e2*alog((z10*1000.0+c2)/(zhat+c2)) C (Eq. 9) if (vs30 .ge. 1000.0) then a21 = 0.0 elseif (test .lt. 0.0) then a21 = -1.0*(a10T+b_soilT*n)*alog(vs/testv1) / 1 alog((z10*1000.0+c2)/(zhat+c2)) else a21 = e2 endif C (Eq. 7) if (z10*1000.0 .ge. 200) then sum = sum + a21*alog((z10*1000.0+c2)/(zhat+c2)) + 1 a22*alog(z10*1000.0/200.0) else sum = sum+ a21*alog((z10*1000.0+c2)/(zhat+c2)) endif c Hanging wall Model (Eq. 12) if ( HWFlag .eq. 1 ) then sum = sum + a14T * taper1 * taper2 * taper3 * taper4 * taper5 endif c Depth to top of Rupture Model z0 = 2. z1 = 5. z2 = 10. C (Eq. 18) if (Frv .eq. 1) then if (depthTop .le. z0) then sum = sum elseif (depthTop .lt. z1) then sum = sum + a16T*((depthTop - 2.0)/3.0) else sum = sum + a16T endif C (Eq. 19) else if (depthTop .le. z0) then sum = sum elseif (depthTop .lt. z2) then sum = sum + a17T*((depthTop - 2.0)/8.0) else sum = sum + a17T endif endif C Large Distance Model C (Eq. 21) if (mag .lt. 5.5) then T6 = 1.0 elseif (mag .le. 6.5) then T6 = 6.5 - mag else T6 = 0.0 endif C (Eq. 20) if (Rrup .lt. 100.0) then sum = sum else sum = sum + a18T*(Rrup - 100.0)*T6 endif C Set the Sigma Values c Compute parital derivative of alog(soil amp) w.r.t. alog(rock PGA) c (Eq. 26) if ( vs30 .ge. vLinT) then dAmp_dPGA = 0. else dAmp_dPGA = b_soilT*pgaRock * ( -1. / (pgaRock+c) 1 + 1./ (pgaRock + c*(vs30/vLinT)**(n)) ) endif c (Eq. 28) if (mag .lt. 5.0) then sigmanot = s1T if (vs30_class .eq. 0) then sigmanotPGA = s1e(1) else sigmanotPGA = s1m(1) endif elseif (mag .le. 7.0) then sigmanot = s1T + ((s2T-s1T)/2.0)*(mag-5.0) if (vs30_class .eq. 0) then sigmanotPGA = s1e(1) + ((s2e(1)-s1e(1))/2.0)*(mag-5.0) else sigmanotPGA = s1m(1) + ((s2m(1)-s1m(1))/2.0)*(mag-5.0) endif else sigmanot = s2T if (vs30_class .eq. 0) then sigmanotPGA = s2e(1) else sigmanotPGA = s2m(1) endif endif c (Eq. 29) if (mag .lt. 5.0) then taunot = s3T taunotPGA = s3(1) elseif (mag .le. 7.0) then taunot = s3T + ((s4T-s3T)/2.0)*(mag-5.0) taunotPGA = s3(1) + ((s4(1)-s3(1))/2.0)*(mag-5.0) else taunot = s4T taunotPGA = s4(1) endif C (Eq. 27) sigmaB = sqrt(sigmanot*sigmanot - sigamp*sigamp) sigmaBPGA = sqrt(sigmanotPGA*sigmanotPGA - sigamp*sigamp) C (Eq. 24) sigma = sqrt( sigmaB**2 + sigAmp**2 + (dAmp_dPGA * sigmaBPGA)**2 1 + 2. * dAmp_dPGA * sigmaBPGA * sigmaB * sigCorrT ) C (Eq. 25) tau = sqrt( taunot**2 + (dAmp_dPGA * taunotPGA)**2 1 + 2. * dAmp_dPGA * taunotPGA * taunot * tauCorrT ) c Set total to return lnSa = sum return end subroutine interp (x1,x2,y1,y2,x,y,iflag) C This subroutine will perform the Log-linear interpolation C of the given input values. This routine is used to interpolate C the regression cofficients of the attenuation models for C spectral periods other than those defined in the model. real x1, x2, y1, y2, x, y integer iflag C Check to see if the interpolation period is at an end point. C Return the 'iflag' for output purposes with C iflag = 0 No interpolation C = 1 Interpolation need. if (x .eq. x1 .or. x .eq. x2) then iflag = 0 else iflag = 1 endif C Set the PGA period to 100 Hz (i.e., 0.01 Sec). if (x1 .eq. 0.0) then x1 = 0.01 endif C Take the Log of the Period values. x1 = alog(x1) x2 = alog(x2) x = alog(x) C Perform the log-linear interpolation. y = y1 + (y2-y1)*((x-x1)/(x2-x1)) C Convert the Log Periods back to period. x1 = exp(x1) x2 = exp(x2) x = exp(x) return end