1. W711 1W! "1ng '1'“ 61,11 1H‘NI111WI11 II 11911 ”I “I1 “11$ 1:. .: '..1|1.:1"' III. 7h. WE», < {IN-ll . fidpf- M 111 1% 13-4, . I' "i n t" '1‘ ' lfig': : :3 n . A ' ‘.'.l ' . ' . 1‘1} 0 3 3? b! '0 ‘g ‘. ' . J a 90 4’5 i. ". '_ . I .1 I l‘ .1 .p; .l :‘ V “d .‘ 1.. ’r. I. L . V N ‘I‘I “:‘h‘ ' ‘ I md ( £11411“ «Moutggg‘q‘ r : ? Liar 1 ‘ + ' .. ' . v I I . 0:. " 19:8). “ ..' I ‘ | 1%.; 1 '1“ "1 “lirzftliz l 9| . :I I'M in: 15-133.... C" . w ‘ 2m. M I ~ . . - 1H .11'1111 [1‘ . I'r '. 23:1": :23“: «1’ 491.«I.11Inh‘31§'u4 I; “391% |.. 11 ,:11,1~,1I{1I ' 11111. 1 :31; I 1‘ ‘1 I 11.11)? ‘ :: 11:1? 1113?. II (I. 311111111“ ~ ”91 f '?.|l0!.1“1A.‘ ‘3‘ yo I . .. ' . I11. ‘ I.’ °. ' IL ‘A . '1 “I.“ . 9 0 .0 ‘5‘. 1 II" 0.? IV I .,;. ': VII! 1111s; l '1‘ 'I 1‘: I . ' :11 l: I .1 II" I ("'1' {11h '11I' 1 IIII"1'§,.., III1HH1111 11‘1'1HI‘IJ III "131'?” 1 II1"|.‘_'11':'E' : . 1‘11 W1 1’ 111 '[1I111 ’1' 115111111 “1111”” 11! 11111.1(” i [11111111H111I1Ill1‘11t1111! I 1111.111111N1IIJ1UI’ I1 “1' 1‘; _f_.-:§_v Am— " "3;, - M ». _ -. 4 —-—-""-‘:.- ..‘--‘ - > i :"‘T“ 4. ,l ‘ , I 11".. 5‘1?" 1r ‘ 1:::: ea, “in .- .1 1 111...». 212111. .‘ I11” ‘1”: _ .- 11} 111111.111. f1:11 ’ I" 11'1“ [$1. 11131 1 1 Il ; $1.11.?11sz1113111111 II 1 141?”; j '1 1111"‘211.:: , d1 “1111111111111‘111” 1g 1 1 11M VI}: 111111.11.” 141.5! 11111: ”[1th .:'_;1 11‘ 1'.‘ I' I I1 II. I, . I 1 1111131111" 7‘4— ‘3 *‘v 1 : k u '1 u “ . :9" '1‘ ‘, 11 ‘91")? lfir”; I M 3 11" l ‘ HI 12-: g I 3.- 11311133 S1t| I 1w 1711;131W1 . 1‘ 1n .. IIIIg- .. «I #13311.» 111“” . uZ‘ [f'lPIY1111'u1i’L 1‘ I431- “é: $156.3; " 51-.‘,:.1:11111fi(1,r.11;17%1.111 r11 - . :03.“ “I‘— MW“: mf- V51» ..;._- :g—g -L.“ .~ .. .; _.. m:-" 1111 {1 113911111. 1' 11I 1.0111111111111111: 1 11 11-; p11I .111W111'1 I1I ll J"! "1 M111” WII1I13 "t" H 11 “II IIIIiliI'IIIi'I IELI'IEII'LII1III' I}! “Willi“Milli“W“\\\\\\\\\\|\\\\\\l\\\l 135519 3 1293 104 Juana-amen? wamggyl m mas-E.“- I This is to certify that the thesis entitled THE EFFECTS OF SUBDUCTING SLABS ON SEISMIC AMPLITUDES AND TRAVEL-TIMES FROM FOREARC AND OUTER RISE EARTHQUAKES presented by William John Rogers, Jr. has been accepted towards fulfillment of the requirements for M.S. degree in Geology 14;“ * 3/: a ajor pr 8301 Date 4 May, 1982 0-7639 IVIESI.) RETURNING MATERIALS: Place in book drop to LJBRAfiJES remove this checkout from 4—! your record. FINES will be charged if book is returned after the date stamped below. er graft? If“ my: W 3' 7 arrow i ~—- *H*—~‘ H“ . THE EFFECTS OF SUBDUCTING SLABS ON SEISMIC AMPLITUDES AND TRAVEL-TIMES FROM FOREARC AND OUTER RISE EARTHQUAKES By William John Rogers, Jr. A THESIS Submitted to Michigan State University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Department of Geology 1982 // "a K15 ABSTRACT THE EFFECTS OF SUBDUCTING SLABS ON SEISMIC AMPLITUDES AND TRAVEL-TIMES FROM FOREARC AND OUTER RISE EARTHQUAKES By William John Rogers, Jr. The assumption that subducting slabs are too far from earthquakes occurring in the forearc and outer rise to cause teleseismic mislocations is investigated for the Aleutians using seismic ray tracing. Results indicate that effects should be seen for earthquakes as far out as the outer rise, but these effects become lOwer in intensity and affect only a small area. Thus, teleseismic hypocentral locations are probably relatively accurate seaward of the trench. Theoretical slab effects include a low seismic amplitude zone with a high amplitude band at its edge. Observed amplitude data agrees fairly well with theoretical calculations and indicates the model is generally correct. The subducting slab also distorts focal mechanism solutions. Short period waveforms for an earthquake are consistent between stations, and focal depths determined using depth phases for forearc and outer rise earthquakes are generally shallower than ISC determinations. In memory of Dr. William J. Rogers, Ed.D ii ACKNOWLEDGMENTS I would like to thank my committee chairman and advisor, Kazuya Fujita, who did everything which could be expected to see this study through, and more. He also taught me that foreign foodstuffs can be delicious even if you can't pronounce them. I would like to thank the other members of my committee, F. William Cambray, Masaharu Kato, and James W. Trow, for their help, criticism, and encouragement. Thanks to the faculty and staff at both Northwestern University and Michigan State University for their understanding and cooperation. Mom paid for part of this; so did the Department of Geology of Michigan State University, and I am grateful to both parties. This research was supported in part by National Science Foundation grant EAR 80-25267 and by Petroleum Research Fund grant 612366. TABLE OF CONTENTS Chapter 1: Introduction ........................................ 1 1.1 The nature of forearc and outer rise earthquakes ........... 5 1.2 Rheology of the lithosphere ....... ' ......................... 7 1.3 Regional stress in the lithosphere ......................... 15 1.4 Effects of subducting slabs on earthquake location ......... 16 Chapter 2: Real and Theoretical Slab Effects ................... 26 2.1 Ray tracing and model slabs ................................ 26 2.2 Ray tracing results ........................................ 29 2.3 Amplitude effects .......................................... 47 2.4 Waveform effects ........................................... 60 2.5 Effects on focal mechanism plotting ........................ 71 2.6 The practical limits of slab mislocation effects in the Aleutians .............. 71 Conclusions ..................................................... 77 Bibliography .................................................... 79 Appendix I: Program "Raytrak" ................................... 84 Appendix II: Using "Raytrak" .................................... 107 iv FIGURES 1. Index map of study area .................................... 2. Adak local seismological network ........................... 3. Sample Raytrak plot output ................................. 4. Thermal model of slab ...................................... 5. Seismic velocity model of slab ............................. 6. Ray tracing results ........................................ 7. Ray path sketch ............................................ 8. Relative amplitude vs. zero residual line .................. 9. ISC earthquake depths vs. depth phase earthquake depth determinations. 10. "Escalating" waveform arrivals at several seismological observatories .. 11. "Clean" waveform arrivals at several seismological observatories .. 12. Ray emergence points corrected for slab ray path distortion effects vs. the same emergence points uncorrected ........... 13. Stations detecting the earthquake of February 27, 1970, showing which ones would have shown slab effects for different values of 6 ...................................... 14. Stations detecting the earthquake of May 30, 1967, showing which ones would have shown slab effects for different values of 6 ............................................... 15. Percentages of stations affected for different values of 6.. 61 63 65 7O 7O 72 76 TABLES 1. Earthquakes used in this study ............................. 50 2. WWSSN stations in networks-locations in degrees/minuites/seconds/ ............. 51 vi CHAPTER 1 INTRODUCTION Precise earthquake location is vital to many fields of geophys— ical study. Often the seismicity of a certain area and its associated effects are the main or only information available for investigation of the local tectonic processes. This is especially true of tectonic- ally active offshore areas such as island arc and trench systems. The distribution of observed seismicity was originally the main argument for explaining these island arc-trench systems as the sites and surface expression of subducting lithosphere (Isacks et al., 1968). As the precision of hypocentral locations increased, the extreme thinness of Benioff-Wadati zones became apparent (Isacks and Barazangi, 1977). More recently, further refinement in earthquake location procedures has allowed the discovery of double seismic zones in subducted slabs (Umino and Hasegawa, 1975; Barazangi and Isacks, 1979; Fujita and Kanamori, 1981). This thesis investigates the accuracy of the conventional earth- quake hypocentral location method as applied to earthquakes in the forearc and outer rise regions of a subduction zone. It has been generally assumed that these earthquakes are well located by teleseis- mic means, and that no correction for the effects of the subducting slab on signals from these earthquakes needs to be made (Sleep, 1973). An attempt will be made to decide whether this assumption is correct. It is hoped that it will be possible to improve the accuracy of location of these forearc and outer rise earthquakes. This would im- prove our knowledge of the subduction process, the state of stress at 1 FIGURE 1. INDEX MAP OF STUDY AREA. Circles indicate ISC epicenters for earthquakes considered in detail in this thesis. gou< . ma. L1 .Somh_ co 0 00. new. mozo=hm wmzp 2H cum: mmx<=ozpa'-' ~\ \“ \s‘ ---------- Feb. 27, 1970(327) 80 "_ ‘s \\ ------ May 30, 1967(107) “o \\ 2 x c: \ 3 60 — \‘ “" \ *) READ(4:§I IPRAY F 8 57.29579 c.... READ IN MODEL 10 CONTINUE REHIND B REWIND 5 NNN=O READ (5.9030) KTABLE.NUMP.NIERMX:NRAD.ITHMAX:IRAYIKREADvIPUNCleDL 1T0:NOERR:NPCP:IIS WRITE (8.9030) KTABLE:NUMP.NIERMX.NRAD:ITHMAX.IRAYyKREADyIPUNCH.ID 1LTO.NOERR:NPCP:IIB 84 85 WRITE (7.9030) KTABLE.NUMP.NIERMX.NRAD.ITHMAX.IRAY.KREAD.IPUNCH.ID 1LTO.NOERR.NPCP.I18 IDLTMX = IDLTO+KTABLE-1 READ (5.9020) EPS.DTEST.POLON.TMAX.DT.FLAT.TOAEPS WRITE (8.9010) EPS.DTEST.POLON.TMAX.DT.FLAT.TOAEPS WRITE (7.9010) EP5.DTEST.POLON.TMAX.DT.FLAT.TOAEPS C C.... INPUT‘OCCURS IN MODL5 C CALL MODL5 IF (NRAD.ED.1) GO TO 20 C C.... CONVERT TO RADIANS C TOAEPS = TOAEPS/F 20 CONTINUE READ (5.9080) IRAD.JREAD.KSKIP READ (5.9090) DMAX.DFOC.BOT WRITE (8.9040) DFOC C C.... MAIN LOOP C.... GET DELAY TABLE FOR ORDINARY RAY .IF (KSKIP.NE.0) GO TO 50 IF (KREAD.E8.0) GO TO 30 READ (5.9050) FMT READ (5.FMT) (TIM(K).K=1.KTABLE) GO TO,‘0 30 CONTINUE. 40 CONTINUE C C.... A NEW EPICENTER AND SET OF RAYS IS CALCULATED ON EACH CYCLE OF LOO C 50 CONTINUE C C.... READ IN EPICENTER PARAMETERS C . WRITE(8.9240) 9240 FORMAT(* ANG.FOCAL DX. FROM ARC CURVATURE CENTER FOR THIS SET?*/) READ(4.*) SMDEL 80 CONTINUE 70 WRITE (8.9080) READ(4.§) ITOA.IPHI IGRAB = ITOAiIPHI IF (IGRAB.LE.10) GO TO 80 WRITE (8.9070) IGRAB READ (4.9210) SET IF (SET.NE.3HYES) GO TO 70 80 WRITE (7.9080) IRAD.JREAD.KSKIP WRITE (7.9010) DMAX.DFOC.BOT WRITE (8.9100) READ(4.*) DELTOA.DELPHI.TOASTR.AZRATS TOASTR = TOASTR/F- AZRATS = AZRATS/F (Inn “000 86 THFOCD-= SMDEL THFOC = SMDEL/F DELTOA = DELTOA/F DELPHI = DELPHI/F BOT3 BOT/F , RMIN = RADIUS-OMAN IF (DMAX.ED.0.) RMIN = 0. RFOC = RADIUS-DFOC ISLOFF = 0 BEGIN TO MAKE TABLE OF CALCULATED RAYS N = JREAD+1 ITDA*IPHI+JREAD.LE.N74 ‘ IF IIPHI*ITOA.EO.O) GO TO 130 CI... COCO). 90 Cl... C 100 110 120 130. LOOP TO CALCULATE RAY PARAMETERS INITIALIZE TAKE-OFF AZIMUTH AZR(N) = AZRATS I8 8 0 IO = IG+1 INITIALIZE TAKE-OFF ANGLE .TOAR(N) = TOASTR IT 3 0 IT 3 IT+1 GO TO 140 CONTINUE IN 8 N+I IF (NIER.GT.1) GO TO 120 TOAR(N) = TOAR(N-1)-DELTOA AZR(N) = AZR(N-I) IF (IT.LT.ITOA) GO TO 100 CONTINUE AZR(N) = AZR(N-1)+DELPHI IF (IG.LT.IPHI) GO TO 90 N = N-I CONTINUE GO TO 210 140 CONTINUE C.... NOW READY TO CALCULATE A RAY C C 150 NIER = 0 ' CALL RAYS (TOAR(N).AZR(N).TIME(N).Z.IER C.... CHECK IF ERROR OCCURRED DURING CALCULATION C 87 IF (IER.EG.0.0R.NOERR.NE.O) GO TO 180 NIER 8 NIER+1 IF (NIER.GT.NIERMX) GO TO 190 C C.... RAY WAS TRAPPED IN LOW VELOCITY ZONE AND DID NOT EMERGE C TOAR(N) 8 TOAR(N)+EPS C C.... VARY RAY TO GET IT UNTRAPPED C GO TO 150 180 CONTINUE . 2(1) 8 RADIUS-2(1) C . C.... CHECK IF RAY ENDED AT CORE BOUNDARY C IF (2(1).GT.FLAT) GO TO 180 C . 8.... CHECK IF RAY ENDED AT SURFACE PROPERLY C IF (ABS(Z(1)).LT.POLON) GO TO 170 C . C.... RAY DID NOT EMERGE CORRECTLY C WRITE (8.9110) N.Z(1) WRITE (7.9110) N.Z(1) 170 CONTINUE C . C.... SAVE RAY PARAMETERS FOR LATER OUTPUT C THETAR(N) 8 2(2) PHIR(N) 8 2(3) Z4(N) =_Z(4) .IZSLN) 8.215) GO TO 110 180 NIER 8 NIER+1 C C.... RAY HAS HIT CORE C IF (NIER.GT.NIERMX) GO TO 200 C C.... VARY RAY TO AVOID CORE C TOAR(N) = TOAR(N)+BOT GO TO 150 190 CONTINUE WRITE (8.9120) WRITE (7.9120) C.... LOOP STEP ABANDONED ALL RAYS WERE TRAPPED GO TO 210' 200 CONTINUE ('3 CI... CI... 210 Cl... C...- CI... 220 230 c...- U 240 . LOOP STEP ABANDONED RATS HIT 88 IT; I". WRITE (8.9130) WRITE (7.9130) LOOP STEP RAY CALCULATION FINISHED PREPARE TO OUTPUT RAY TABLE CONTINUE INITIALIZE THE DISTANCE ROUTINE 0(1) a DIST1(O..THFOC.PHIR(1).THETAR(1)18F CALCULATE DISTANCE AND AZIMUTH OF EACH RAY RELATIVE TO EVENT DO 240 I8 8 1.N ,. D(IG) 8 DIST(PHIR(IG).THETAR(IO)) m AZR7(IG) 8 ASIN(SIN(PHIR(IG))ISIN(D(IG))*SIN(THETAR(IG))) ZETA 8 DIST(AZR7(IG).D(IG)) GET CORRECT BRANCH 0F AZIMUTH IF (AOSIZETA-THETARIIO)1.0T.DTESTi‘A2R7IIO) = PI-AzR7IIOi CONvERT TO DEGREES AZR7(IG) 8 AZR7(IO)*F D(IG) 8 D(IG)*F CALCULATE TRAVEL TIME DELAY RELATIVE TO TRAVEL TIME TABLE IDLT 8 D(IG) . . . IF (IDLT.LE.IDLT0.0R.IDLT.GE.IDLTMX) GO TO 220 .AF.8MD(IG)-IDLT. IDLT 8 IDLT-IDLTO+1 . . DELAY(IG) 8 TIME(IG)-(TIM(IDLT)*(1.-AF)+TIM(IDLT+1)*AF) GO TO 230 SET DELAY T0 0.0 IF DELTA IS NOT PART OF TRAVEL TIME TABLE DELAYlIO) . o.o CONTINUE CONvERT TO DEGREES TOAR(IO) 8 TOAR(IG)*F AZR(IG) 8 AZR(IG)*F THETAR(IG) 8 THETAR(IG)*F PHIR(IG) 8 PHIR(IG)*F 24(18) 8 Z4(IG)*F 25(IG) 8 25(IG)*F CONTINUE Cl... C .,250 270 550 551 555 558 557 5571 5572' 559 559 580 581 280 444 445 89 OUTPUT RAY PARAMETER TABLE 'WRITE (7.9140) DFOC.THFOCD WRITE (7.9150) N WRITE (7.9170) WRITE (8.9180) DO 250 K 8 1.N WRITE (7.9180) (K.TDAR(K).AZR(K).THETAR(K).PHIR(K).TIME(K).Z4(K) .25(K).D(K).AZR7(K).DELAY(K)) WRITE (8.9190) (K.TDAR(K).AZR(K).D(K).AZR7(K).DELAY(K)) CONTINUE LLL8NNN+1 ' NNN8NNN+N _ DO 270 K8LLL.NNN MMM8(K-LLL)+1 PLOTAZ(K)8AZR7(MMM) PLOTRAD(K)8D(MMM) CONTINUE _ WRITE (8.550). . FORMAT (* DO YOU WANT TO PLOT NOW? ENTER N FOR NO.*) READ (4.551) PLOTNO FORMAT (A1) IF(PLOTNO.EG.1HN) GO TO 581 WRITE (8.558) . . FORMAT(* YOU ARE GOING INTO A PLOTTING ROUTINE. TO*) WRITE (8.557) - . . . ._ FORMAT(¥ CHANGE THE PAGE AND PROCEED WITH THE PROGRAM YOU *) WRITE (8.5571) . - FORMAT(* MUST_ENTER THE LETTER 'Y'. THERE IS NO PROMPT*) "WRITE (8.5572). A FDRMAT(* FOR.THIS.WHEN YOU HAVE UNDERSTOOD THIS ENTER TY'*) READ (4.558) FOOL FORMAT(A1) . IF (FOOL.EG.1HY) GO TO 559 GO TO 555 CONTINUE CALL PLOTZ (PLOTAZ.PLOTRAD.SMDEL.NNN.LLL) WRITE.(8.580) A FORMAT (8 VERY GOOD! CONGRATULATIONS! WE PROCEED.*) BOT 8 BOTiF WRITE (8.9200) READ (4.9210) SET. IF (SET.EG.3HNO ) GO TO 280 GO TO 80 CONTINUE WRITE (8.9220) READ (4. 9230) SETZ IF (SET2.EG.3HYES) GO TO 10 WRITE (8.444) FORMAT (* CATALOG TAPE 7 BEFORE LOGGING OUT OR IT WILL BE LOST!) WRITE (8.445) FORMAT (* AND YOU WILL LOSE MOST OF YOUR INFORMATION WITH IT.*) 90 CALL FINITT(150..90.) C C.... END OF C MAIN LOOP 9010 FORMAT 9020LFORMAT 9030 FORMAT 9040 FORMAT 9050 FORMAT 9080 FORMAT 9070 FORMAT 9080 FORMAT 9090 FORMAT 9100 FORMAT 1./) 9110 FORMAT 9120 FORMAT 9130 FORMAT 9140 FORMAT 9150 FORMAT 9180 FORMAT 9170 FORMAT 1AR.2X.20HDELTA 9180 FORMAT 1F7.3) 9190,FORMAT (8810.2) (8810.2) (5X.1515) (10H DEPTH 8 (10A4) (* {TAKEOFF ANGLES. i AZIMUTHS (SEPARATE BY COMMAS)*) (21H YOU ARE CALCULATING .I5.20H RAYS. ARE YOU SURE?) (15X.15.5X.2I5) (2E10.2.50X.E10.2) (49H DELTOA.DELPHI.TOASTR.AZRATZ (SEPARATE BY COMMAS) .F8.2.3H KM) (1H0.I5.18H BAD RAY DEPTH IS.F12.3) (42H ROUTINE DOES NOT CONVERGE DUE TO TRAPPING) (31H ERROR RAYS KEEP HITTING BOTTOM) (18H0 DEPTH OF FOCUS. F12. 5. 10H KM THFOC.F12.5.4H DEG) (1H .I5. 21H RAYS WERE CALCULATED. I) (4H NO..4X. 3HTOA. 4X. SHAZR. 2X.5HDELTA.3X. 4HAZIM. 3X. SHRESID) (4H NO..4X. 3HTOA. 4XL15HAZR THETA PHI. 4X. 4HTIME. 5X.7HI AZ AZIM RESID) (I4.2(1X.F8.2).2(1X.F5.1).1X.F7.2.2(1X.F5.1).2(1X.F8.2).IX. (I4.2(1X.F8.2).2(1X.F8.2).1X.F7.3) 9200 FORMAT (49H DO YOU WANT ANOTHER SET OF ANGLES IN THIS MODEL?) 9210 FORMAT (A3) 9220 FORMAT (32H DO YOU WANT TO TRY A NEW MODEL?) 9230 FORMAT (A3) END. SUBROUTINE VDER (R.LAT.LON.V.DVDR.DVDTH.DVDPH.DVDRDR.DVDRDT.DVDTDT 1) COMMON IBLYTHE/ VEL(54.41).V1(294) C C.... CALCULATES VELOCITY AND ITS SPATIAL DERIVATIVES AS FUNCTIONS OF C.... POSITION IN LATERALLY HETEROGENEOUS EARTH MODEL C REAL LAT.LAT1.LAT2.LON.LON1.LONZ DIMENSION VV(4) DIMENSION AV(4). AD(4). AD2(4) COMMON ICMMDL/ R0. DR. NR.LAT1. DLAT.LAT2. NLAT. RADIUS. DRSG. DLSG. DRDL. ILON1.LON2. H. DMZ COMMON ICMAMP/ I15.ISLOFF C C.... C LATERALLY VARYING PART OF MODEL COMMON ICMDL1/ DR1.R1.NR1.DRISO Y 8 (R-RO)/DR IR 8 Y IF (ISLOFF.EG.1) GO TO 20 IF (IR.LE.0.0R.IR.GT.NR) GO TO 30 Y 8 Y-FLOAT(IR) 8 (LAT*LATI)/DLAT 10 20 30 CIIIO 40 91 ILAT 8 X IF (ILAT.LE.O.DR.ILAT.GT.NLAT-3) GO TO 30 X 8 X-FLOAT(ILAT) JL 8 ILAT-1 DO 10 K 8 1.4 J 8 JL+K CALL SPLN3 (VEL(IR.J).Y.AV(K).AD(K).AD2(K)) CALL SPLN3 (AV.X.V.DVDTH.DVDTDT) DVDTH 8 -DVDTH/DLAT CALL SPLN3 (AD.X.DVDR.DVDRDT.DMY) DVDR 8 DVDR/DR ADVDPH 8 0. GO TO 40 CONTINUE V 8 0. DVDR 8 0. DVDTH 8 0. DVDPH 8 0. DVDRDR O. DVDTDT 0.' DVDRDT 0. GO TO 90 HAS LONGITUDE EXCEEDED THE END OF THE ISLAND ARC IF (LON.GT.LONI) OD T0 50 z = ((LON-LONlllHliaz GO TO so 50 IF”(LON:LT.LON2) GO TO 90 80 z = ((LON-LON2)/H)**2 IF (2.6T.40.) DO TO 70 F = EXP(-Z) GO TO 80 70 F 8 0. 80 CI... CONTINUE FP_= -DM2aZ*F DVDPH 8 V8FP V = ViF DVDR 8 DVDRiF DVDTH 8 DVDTHRF SPHERICALLY SYMMETRIC PART OF MODEL .DMI 8 (R-RI)/DR1 I 8 DMI X DM1-FLOAT(I) I MINO(I.NR1) VV(I) 8 V1(1) VV(2) 8 V1(I+1) VV(3) 8 V1(I+2) VV(4) 8 V1(I+3) IF (I.LE.0) VV(I) 8 V1(1) IF (I.LE.-1) VV(Z) 8 V1(1) IF (I.LE.-2) VV(3) 8 V1(1) c...- CI... CC... CC... 92 IF (I.LE.-3) VV(4) 8 V1(1) CALL SPLN3 (VV.(.V2.DVDR1.DVDR2) V 8 V+V2 DVDR 8 DVDR+DVDR1IDRI RETURN END SUBROUTINE SPLN3 (A.X.F.DER.DER2) DIMENSION A(4) XHI = X’I a XPI 3 X+1. DMI AII)-A(4)+3.*(A(3)‘A(2)) DMZ A(1)-2.*A(2)+A(3) F 8 0.5*X*XM1*(A(1)-X*DM1)~XM1*XP1*A(2)+0.5*X*XP1*A(3) DER 8 X*(DM2-(1.5*X-1.)iDM1)+0.5*(A(3)-A(1)) DERZ 8 DM2-(3.*X-1.)*DMI RETURN END SUBROUTINE MODL5 INITIALIZE ARRAYS DIMENSION KYPE(2) REAL LATI.LAT2.LON1.LON2.LADV(2) COMMON IBLYTHE/ V(54.41).V1(294) DIMENSION T(100). BOT(10). TP(100.10). N(10). NN(10). DVDPH(10) DIMENSION FMT(10), . COMMON ICMMDL/ R0.DR.NR.LAT1.DLAT.LAT2.NLAT.RADIUS.DRSO.DLSO.DRDL. 1LON1.LON2.H.DM2.NUMP.F COMMON [COMID/ I25G, COMMON_/CNDL1/ DR1.R1.NR1.DRISG DATA_KYPE[1.1/.LADV/75.54.-.0009/.NR/51/ IFIX 8 252 CREATE VELOCITY OR DENSITY DISTRIBUTION TO BE USED IN MAIN PROGRAM SKIP IF THIS PART READ IN PREVIOUSLY IF (IZSG.NE.0) GO TO 30 SET UP SPHERICALLY SYMMETRIC PART OF MODEL READ (5.9040) RADIUS.DR1.NR1.)RAD.ITMP.IBACK.IGRAV WRITE (8.9040) RADIUS.DR1.NR1.NRAD.ITMP.IBACK.IGRAV WRITE (7.9040) RADIUS.DRI.NR1.NRAD.ITMP.IBACK.IGRAV DRISG 8 DR1**2 R1 8 RADIUS-FLOAT(NR1-1)*DR1 READ IN SPHERICAL BASIC VELOCITY OR DENSITY DISTRIBUTION READ (5.9030) FMT READ (5.FMT) (V1(I).I81.NR1) WRITE (8.9070) RADIUS.R1.DR1 WRITE (7.9070) RADIUS.R1.DR1 WRITE (8.9050) READ (4.9080) SETS 93 IF (SET3.NE.3HYES) GO TO 10 WRITE (7.9080) (I.V1(I).I81.NR1) 10 CONTINUE C.... SET DUMMY POINTS ABOVE SURFACE NEEDED BY NUMERICAL RAY CALCULATION DO 20 I 8 1.3 20 V1(NR1+I) 8 V1(NR1) C.... SET UP LATERALLY VARYING PART OF MODEL. C.... LATITUDE IS RELATIVE TO POLE OF ISLAND ARC C.... LONGITUDE IS RELATIVE TO POLE OF ARC AND EVENT READ (5.9100) DR.DLAT.NLAT.LON1.LON2.H WRITE (6.9100) DR.DLAT.NLAT.LON1.LON2.H WRITE (7.9100) DR.DLAT.NLAT.LON1.LON2.H WRITE,(6.9090) READI4.*) NR WRITE (3.9110) READ(4.*) LAT1.DVDT DMZ = 2.19 DRSO = DR**2 R0 ; RADIUS-FLOATINR-I).DR LATZ = LAT1+FLOATINLAT-1)*DLAT NRITE (8.9120) R0.DR.LAT1.DLAT.LAT2.DVDT WRITE (7.9120) R0.DR.LAT1.DLAT.LAT2.DVDT 30 CONTINUE C C.... END OF SKIPPED REGION C.... READ IN LATERALLY VARYING PART OF DENSITY 0R VELOCITY C READ (5.9030) FMT IF (ITMP.EO.1) GO TO 50 C a C.... VELOCITY OR DENSITY IS READ IN DIRECTLY C DO 40 II = 1.NR I = NR-II+1 READ (5.FMT) (V(I.J).J=1.NLAT) 40 CONTINUE c A c.... END OF MODL5 INPUT FOR THIS BRANCH C GO TO 170 so CONTINUE C C.... READ IN TEMPERATURE MODEL AND COHPUTE VELOCITY OR DENSITY c READ (5.FMT) ((V(I.K).K=1.NLAT).I=I.NR) C C.... SKIPPED IF ALREADY READ IN c , . IF (IZSG.NE.0) GO TO 70 C 94 C.... READ IN PARAMETERS FOR P-T DEPENDENT PHASE CHANGES C IF (NUMP.E0.0) GO TO 70 C C.... EXECUTE LOOP FOR EACH PHASE C 00 80 NP 8 1.NUMP C . C.... READ PHASE PARAMETERS C READ (5.9130) N(NP).NN(NP).BOT(NP).DVDPH(NP) WRITE (8.9130) N(NP).NN(NP).BOT(NP).DVDPH(NP) WRITE (7.9130) N(NP).NN(NP).BOT(NP).DVDPH(NP) C C.... READ CLAPEYRON CURVE C READ (5.9030) FMT READ (5.FMT)_(TP(J.NP).J81.NR) WRITE (8.FMT) (TP(J.NP).J81.NR) WRITE (7.FMT) (TP(J.NP).J81.NR) C C.... END OF LOOP TO READ PHASE PARAMETERS C 80 CONTINUE C C.... END OF SKIPPED REGION C.... END OF MODL5 INPUT 70 CONTINUE C.... CONVERT MINEAR TEMPERATURE INTO SEISMIC VELOCITY OR DENSITY DO 180 I 8 1.NR B4 8 V(I.1) DO 80 K 8 1.NLAT J 8 K C °C.... REVERSE HORIZONTAL INDEX IN ARRAY C IF (IBACK.GE.1) J 8 NLAT+1-K C 8.... TEMPORARILY SAVE TEMPERATURE C T(J) 8 V(I.K) BO CONTINUE DO 90 K 8 1.NLAT C C.... COMPUTE ANOMALY WITH RESPECT TO END POINT C V(I.K) 8 (T(K)-B4)*DVDT IF (IGRAV.E0.0) GO TO 90 C C.... CALCULATE DENSITY 8 TiRHO*ALPHA 90 Cl... 95 V(I.K) 8 V(I.K)+V1(I+IFIX) CONTINUE IF (NUMP.EG.0) GO TO 150 COMPUTE ANOMALIES DUE TO PHASE CHANGES DO 140 L 8 1.NUMP ONLY CHECK OF PHASE CHANGES WHERE NECESSARY IF (I.LT.N(L).OR.I.GT.NN(L)) GO TO 140 DO 120 K 8 1.NLAT FIND DIFFERRANCE BETWEEN TEMPERATURE AT POINT AND P-T CURVE ATOP'é T(KiLTPII.L)° FIND WHICH PHASES ARE PRESENT IF (ATOP.GE.0) GO TO 100 IF (ATOP+BOT(L).LE.O.) GO TO 110 MIXED PHASE REGION RI 8 -ATOP/BOT(L) GO TO‘120 ONLY HIGH TEMPERATURE PHASE PRESENT RI 8 0.0 GO TO 120 ONLY LOW TEMPERATURE PHASE PRESENT RI = 1.0 mWAmmeLmPM$MEmmE T(K) = RI COMPUTE ANOMALOUS AMOINT OF PHASE PRESENT RELATIVE TO END POIN B 8 T(1) DO 130 K 8 1.NLAT ADD PHASE EFFECT TO VELOCITY OR DENSITY V(I.K) 8 V(I.K)+DVDPH(L)*(T(K)-B) CONTINUE END OF PHASE CHANGE CALCULATIONS C 96 150 CONTINUE 180 CONTINUE C.... END OF VELOCITY CONVERSION C nnn man 2 7 C 9 170 CONTINUE .... SET DUMMY POINTS ABOVE SURFACE NEEDED BY NUMERICAL RAY CALCULATION DO 180 I 8 1.3 DO 180 J 8 1.NLAT 180 V(NR+I.J) 8 0. IF (NRAD.EO.1) GO TO 190 .... CONVERT TO RADIANS _LAT1 LAT2 LON1 LON2 DLAT LATI/F LATZ/F LON1/F LON2/F DLAT/F. 190 DLSO DLAT882 DRDL DR*DLAT WRITE (8.9140) READ.(4.9150) SET4 IF (SET4.EO.3HNO ) GO TO 210 DO 200 I81.54 WRITE (7.9180) (V(I.J).J84.22) 00 CONTINUE DO 721 I81.54 , WRITE(7.9180) (V(I.J).J823.40) 21 .CONTINUE. 210 CONTINUE RETURN 030 FORMAT(20A4) 9040 FORMAT (2F10.2.8I10) 9050 FORMAT (34H DO YOU WANT VELOCITY PRINTED OUT?) 9080 FORMAT (A3) 9070 FORMAT (SHORADIUS 8.F8.1.5X.5HR1 8.F8.1.5X.5HDR1 8.F8.1/) 9080 FORMAT (1H .5(I4.F8.3)) . 9090 FORMAT (28H NUMBER VERTICAL GRID POINTS/35H 51 FOR LONG SLAB 41 PO 1R SHORT SLAB./) 9100 FORMAT (F10.5.15X.F10.5.15.10X.3F10.5) 9110 FORMAT (11H LAT1.DV/DT./) 9120 FORMAT (5H2R0 8.F8.1.5X.4HDR 8.F8.1.5X.8HLAT1 8.F7.2.5X.8HDLAT 8.F 18.2.I7H LATZ 8.F7.2.5X.7HDV/DT =.E15.8) 9130_FORMAT (2I5.2E10.2) 9140 FORMAT (44H DO YOU WANT VELOCITY STRUCTURE PRINTED OUT?) 9150 FORMAT (A3) 9180 FORMAT (1X.19F4.2) END REAL FUNCTION DERPAR (Y.X.A.M) C CO... C rurara I I 10 20 =CIIII CI... 97 CALCULATES DY/DX AT CONSTANT A IMENSION A(300): X(300). Y(300): M(3) ‘ M(1) N(Z) MIG) A(I)*Y(J)-A(I)*Y(K)-A(K)*Y(J)-A(J)*Y(I)+A(J)*Y(K)+A(K)*Y(I) P A(I)*X(J)-A(I)*X(K)-A(K)*X(J)-A(J)*X(I)+A(J)*X(K)+A(K)*X(I) DERPAR 8 S/P RETURN END SUBROUTINE RAYFIX (SPHI:STHETA:PHI:THETA) D I K J S lllllllll THIS IS MADE NECESSARY BY THE INANE WAY THE AMOD WORKS PHI PHI-SPHI PHI - AMOD(PHIrPIXZ) IF (PHI.LT.-PI) PHI 8 PHI+PIX2 IF (PHI.GT.PI) PHI 8 PHI-PIXZ DPHI 8 PHI PHI 8 PHI+SPHI IF (DPHI,GT.PIHF) GO TO 10 IF (DPHI.LT.-PIHF) GO TO 20 GO TOP4O PHI =“PHI+PIHF GO TO 30. CONTINUE PHI 8 PHI-PIHF THETA 8 -THETA CONTINUE DTHETA 8 STHETA-THETA THETA 8 AMODIDTHETAyPI) IF (THETA.LT.-PIHF) THETA 8 THETA+PI IF (THETA.GT.PIHF) THETA 8 THETA-PI THETA 8 STHETA-THETA RETURN ENTRY RFSET PI 8 3.1415926 PIHF 8 PI*.5 PIXZ 8 PI*Z. RETURN END SUBROUTINE DERIV (T:Z:DZDT) I I! DEFINES DIFFERENTIAL EQUATIONS FOR RAY TRACING THROUGH THREE DIMENSIONAL STRUCTURE DIMENSION 2(5). 0207(5) CALL VDER (2(1):1.5707SS-Z(2)12(3):VrDVDRyDVDTH:DVDPH:DVDR2:DVDRDT 1vDVDT2) ETA 8 Z(1)/V ETAI 8 1./ETA CG... CI... CC... C...- Cl... C CO... CO... CI... 98 SINTH 8 SIN(Z(2)) COSTH 8 COS(Z(2)) COTTH 8 COSTH/SINTH SINIR 8 SIN(Z(4)) COSIR 8 COS(Z(4)) SINZT 8 SIN(Z(SI) COSZT 8 COS(Z(5)) DZDT(1) 8 V*COSIR DRDT 8 DZDT(1) DM1 8 SINIR/ETA DM3 8 SINZT/SINTH DZDT(2) 8 DMIiCOSZT DZDT(3) 8 DM1*DM3 DZDT(4) 8 SINIR*(DVDR-ETAI)-COSIR/Z(1I*(COSZT*DVDTH+DM3*DVDPH) DZDT(5) 8 ((DVDTH/SINIR-V*SINIR*COTTH)*SINZT-DVDPH*COSZTISINIRISIN 1TH1/Z(1) RETURN END CALCULATES DISTANCE ON SPHERE DISTANCE IS BETWEEN PHII:THETA1 AND PH151THETA5 PHII:THETA1 ARE SAVED FOR FUTURE CALLS TO DIST REAL FUNCTION DIST1 (PHIlyTHETAI:PHIS:THETA5) COMMON /HARVEY/ STORE:CT:ST THETA2.8.THETA5 PHIZ 8 PHIS CT 8 COS(THETA1) ST 8 SIN(THETA1) STORE 8 PHI1 . B 8_PHI1-PHIZ D 8 COSITHETAZ)*CT+ST*SIN(THETA2)*COS(B) DIST1 8 ACOS(D) RETURN END 7 REAL FUNCTION DIST (PH13pTHETA3) CALCULATES DISTANCE 0N SPHERE DISTANCE IS BETWEEN PHILTHETAI AND PHIS'THETAS COMMON IHARVEY/ STORE:CT.ST PHIZ 8 PHI3 THETAZ 8 THETAB B 8 STORE-PHIZ D 8 COS(THETAZ)*CT+ST*SIN(THETA2)*COS(B) DIST 8 ACOSID) RETURN END SUBROUTINE DIFSYS (F:N:H:X:Y:EPS:S:NEWH) F IS THE NAME OF A SUBROUTINE CALLED BY *CALL F(X:Z:DZ)* WHICH STORES IN THE VECTOR DZ THE N COMPONENTS OF THE DERIVATIVE DZ/DX ACCORDING TO THE DIFFERENTIAL EQUATION WHICH IS BEING 99 C.... SOLVED. DZ/DX8F(X.Z) C.... sz. AND DZ MUST BE OF REAL TYPE C.... N IS THE ORDER OF THE SYSTEM OF DIFFERENTIAL EQUATIONS. C.... N MUST BE NO GREATER THAN MAXORD WHICH IS SET BELOW C.... ITEST HAS TO BE SET EQUAL TO ONE IN THE CALLING PROGRAM IN ORDER T C.... TEST THE ERROR RETURN OPTION C.... ERROR IS SET TO 1 IF THE FUNCTION DOES NOT CONVERGW C.... H IS THE_BASIC STEP SIZE . . . C.... X AND Y (VECTOR) ARE THE INITIAL VALUES C.... EPS AND SIVECTOR) ARE THE ERROR BOUNDS. C.... ABSIEPS) SHOULD BE NO SMALLER THAN 1.0E-OS. C.... NENH IS A FLAG WHICH IS SET EQUAL TO .TRUE. IF THE STEP SIZE USED C.... BY DIFSYS IS DIFFERENT FROM THE STEP SIZE H GIVEN IN THE C.... PARAMETER LIST. NEWH IS SET EQUAL TO .FALSE. OTHERWISE. INTEGER ERROR LOGICAL NENM LOGICAL EPSERR LOGICAL KONV.BO.BH INTEGER R.SR I DIMENSION ((5). 5(5) DIMENSION 0(7) . DIMENSIDN_YA(5). YL(5). YM(5). DY(5). 02(5). DT(S.7) DIMENSION YG(S.5). YH(8.5) COMMON /STUPID/ NEWRAY. COMMON IDIF/ ITEST.ERROR DATA EPSERR/.FALSE./ DATA MAXORD/ISI ICNT . o ERROR = 0 IF (NEWRAY.EQ.0) GO TO 20 DO 10 12 = 1.5 DO )0 J2 = 1.7 DT(IZ.JZ) = 0.0 10 CONTINUE NEWRAY = o 20 CONTINUE XMAS = X+H IF (N.GT.O.AND.N.LE.MAXORD) GO TO 30 NRITE (6.9010) STOP so E = ABS(EPS) IF (E.GE.I.0E-OS) GO TO so IF (EPSERR) GO TO 40 EPSERR = .TRUE. WRITE (6.9020) 40 E = 1.0E-os C 0.... EACH CALL OF DIFSYS PERFORMS ONE INTEGRATION STEP OF THE C.... EOOATION DY/DX=F(X.Y) ACCORDING TO THE METHOD 0; R. BULRIRSCH AND C.... J. STDER (Munggxscug MATHEMATIK. IN PRESS). THE STEP SIZE HILL C.... DE LESS THAN OR EOOAL In H. THE PROGRAM TAKES THE FIRST OF THE C.... NUMBERS M.H/2.N/4..... AS STEP SIZE FOR WHICH NO MORE THAN 9 C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... C.... 50 SO 70 80 90 100 EXTRAPOLATION STEPS ARE NEEDED TO OBTAIN A SUFFICIENTLY ACCURATE RESULT. IF THE STEP SIZE USED IS DIFFERENT THAN THE STEP SIZE GIVEN IN THE PARAMETER LIST. THEN THE LOGICAL FLAG NEWH WILL BE SET EQUAL TO .TRUE.. OTHERHISE IT WILL BE SET EQUAL TO .FALSE.. X AND Y ARE THE INITIAL VALUES FOR THE STEP TO BE COMPUTED. AFTER LEAVING THE SUBROUTINE. THE ORIGINAL VALUES OF THE PARAMETERS X AND Y WILL HAVE BEEN REPLACED BY X+H§ AND Y(X+H*). RESPECTIVELY. WHERE Hi IS THE STEP SIZE ACTUALLY USED. IN ADDITION THE STEP SIZ WILL HAVE BEEN CHANGED AUTOMATICALLY TO AN ESTIMATED OPTIMAL STEP SIZE FOR THE NEXT INTEGRATION STEP. THE ARRAY S AND THE CONSTANT EPS ARE USED TO CONTROL THE ACCURACY OF THE COMPUTED VALUES. THE SUBROUTINE IS LEFT. IF ALL I81: 2: . ... N TWO SUCCESIVE VALUES FOR YII) DIFFER AT MOST BY AN AMOUNT EPS*S(I) . EPS SHOULD NOT BE SMALLER THAN 1.0E-OG. FOR THE FIRST INTEGRATION STEP IT IS_ADVISABLE TO SET S(I)80.0. BEFORE RETURN TO THE . CALLING PROGRAM. THE ARRAY S WILL HAVE HAD ITS CONTENTS MODIFIED _ SO THAT S(I)8MAX(S(I):ABS(Y(I.X)). WHERE THE MAXIMUM IS TAKEN OVER THE INTEGRATION INTERVAL (X.X+H*). CALL F (X'YIDZI BH 8 .FALSE.. NEHH 8 .FALSE. DO SO I 8 1.N YA(I) 8 YII) A 8 XtH ICNT 8 ICNT+1 IF (ICNT.GT.10) GO TO 230 PC 8 1.5 BO 8 .FALSE. J 8 Jl-l 0(2) 8 2.25 IF (BO) DIZ) 8 4.0/D(2) 0(4) - 4.0*D(2) 0(61 4.0*D(4) KDNV J.GT.2 IF (J.LE.8) GO TO 80 L 8 6 0(7) 8 64. FC 8 0.B*FC GO TO 90 L 8 J D(L+l) 8 M*M M 28M 6 H/FLOAT(M) B 2.0*G IF (BH.AND.J.LT.8) GO TO 140 KK 8 (M82)/2 M 8 M-1 DO 100 I = 1.N 100 110 120 130 140 150 160 170 180 190 200 210 101 YL(I) YA(I) YM(I) YA(I)+G*DZ(I) IF (M.LE.0) GO TO 160 D0 130 K 8 1.M .CALL F (X+G*FLOAT(K).YM.DY) DO 110 I 8 1.N U 8 YL(I)+B*DY(I) YL(I) 8 YM(I) YMII) 8 U U 8 ABS(U) SII) 8,AMAX1(U.S(I)) . IF (K.HE.KK.OR.K.EQ.2) GO TO 130 JJ 8 JJ+1 DO 120 I 8 1. YH(JJ+1.I) YG(JJ+1.I) CONTINUE GO TO 160 D0 150 I 8 1.N YM(I) 8 YHIJ+1.I) YL(I) 8 YG(J+1:I) CALL F (AvYMoDY) DO 200 I 8 1.N V 8 DT(I.1) DTII.1) 8 0.5*(YM(I)+YL(I)+G*DY(I)) C 8 DTII:1I TA 8 C IF (L.LE.0) GO TO 190 DO 180 K 8 1.L 1 8 D(K+1)*V BI-C V F (B.EQ.0.0) GO TO 170 (C-VIIB C88 8188 DTII.K+1) DT(I:K+1) 8 U TA 8 U+TA IF (ABS(Y(I)-TAI.GT.E*ABS(S(I)I) KONV 8 .FALSE. Y(I) 8 TA IF (“ON”) GO TO 220 YMII) YLII) ll "2 B B U I B U C V 0(3) = 4.0 0(5) = 16.0 80 = .NOT.SO M = R R = SR SR = 2*M BH = .NOT.BH NENN = .TRUE. H 8 0.5*H rlrlr) 250 9010 9020 9030 9040 Congo Coo-l c...- C CI... C C CO... C 102 THE FOLLOWING TEST IS TO PREVENT INFINITE LOOPONG THE NUMBER 1.E-7 COULD BE CHANGED IF SO DESIRED IF (ABS(H/XMAG).LT.1.0E-7) GO TO 290 GO TO 70, H 8 FC*H X 8 A GO TO 250 IF (ITEST.NE.1) GO TO 240 ERROR 8 1 HRITE.(G.9030) GO TO 250 WRITE (6.9090) WRITE (6.9040) STOP RETURN FORMAT (ZBHOORDER TOO LARGE FOR DIFSYS.) FORMAT (SIHOERROR LIMIT TOO SMALL FOR DIFSYS. WE USE 1.0E-OG.) FORMAT (1H0.4SHMESSAGE FROM DIFSYS.FUNCTION DOES NOT CONVERSE) FORMAT (1H0.25HPROGRAM IS FORCED TO STOP) END . SUBROUTINE RAYS (TOA.AZ.TS.ZS.IER) TRADES RAY THROUGH IND-DIMENSIONAL VELOCITY STRUCTURE 2(I)=R 6.. Z(2)8THETA H 2(3)8PHI 2(4)=I 2(5)=zETA Z(6)8DR/DIO Z(7)8DTHETA/DIO Z(8)8DPHI/DIO REAL IDENT.LATI.LAT2 LOGICAL NENN EXTERNAL DERIV A NEW STEP TO OUTPUT RAY PATHS TO CARDS FOR LATER PLOTTING HAS BEE DIMENSION 2(5). DZDT(5). 25(5). 5(5) DIMENSION IVVV(100). JVVV(100) DIMENSION CS(12). SN(IZ) COMMON ICMMDL/ RO.DR.NR.LAT1.DLAT.LAT2.NLAT.RADIUS.DRSO.DLSO.DRDL. 1LON1.LON2.HH.DM2 . COMMON /CMRAY/ RFOC.THFOC.RMIN.DT.EPS.IRAY.IRAYPL.IWVF.TMAX COMMON ICMAMP/ IIS.ISLOFF.NPCP.I16.IPRAY COMMON ISTUPID/ NEHRAY - DATA CS.SN/.866..5.0..-.5.-.866.-1..-.866.-.5.0...5..866.1...5..86 16:1.IABSSP.510.v'.51'.9667’1.t‘.8669’.510o/ INITIALIZE PARAMETERS' NEWRAY 8 1 M 8 0 JLAT 8 (NLAT-1)*10 WLAT 8 3.141593/2.-LAT1 IER 8 0 N 8 5 10 20 30 40 CI... 50 60 C...- 90 103 ITER 8,0 T 8 0. H 8 OT 2(1) 8 RFOC 2(2) 8 THFOC 2(3) 8 0. 2(4) 8 3.141593-TOA 2(5) 3.141593-AZ IF (IRAY.EQ.0) GO TO 10 CALL DERIV (T.Z.DZDT) WRITE (3.9020) T.(Z(I).I81.N).(DZDT(I).I81.N) CONTINUE DO 20 I 8 1.N 9(1) 8 AMAX1(ABS(Z(I)).1.0) DO 40 I 1.N ZS(I) Z(I) TS 8 T GO TO 60 REUSE ORIGINAL TIME HHEN PLOTTING H = Hz .IF (H.LE.0.01) H = DT ERP = EPS OH = H INTEGRATE ONE STEP CALL DIFSYS (DERIU.N.H.TS.ZS.ERP.S.NEHH) H2,= T+OH-TS IF (ITER.NE.0) GO TO 130 CHECK FOR RAYS HITTING CORE IF (ZS(1).LT.RMIN) GO TO 110 CHECK IF RAY HAS RETURNED TO SURFACE IF (25(1).GT.RADIUS) GO TO 100 CHECK IF EXCESS TRAVEL TIME HAS OCCURRED NITHOUT RAY EMERGING IF (TS.LT.TMAX) GO TO 70 SET ERROR FLAG IER 8 1 RETURN DO 80 I 31:" Z(I) 8 ZS(I) T = TS IF (IRAY.EQ.0) GO TO 90 CALL DERIV (T.Z.DZDT) WRITE (6.9020) T.(Z(I).I81.N).(DZDT(I).I81.N) CONTINUE 104 IF (I1S.EQ.0) GO TO 60 C C.... SAVE RAY PATH FOR LATER PUNCH OUT C . 155 = (RADIUS-Z(I))IDRilo. LGG 8 (“LAT-2(2))IDLAT*10. IF (11S.LT.0) LCD 8 (JLAT-LOG) M 8 M41 IVVV(M) 8 LGG+1 JVVV(M) 8 IGG+1 C . C.... IS BUFFER FULL C . IF (M.GE.100) GO TO 140 GO TO 50 C I C.... RAY ENDS AT SURFACE C 100 RF 8 RADIUS GO TO 120 C C.... RAY ENDS AT BOTTOM OF MODEL C 110 RF 8 RMIN C C.... DO NOT NASTE TIME WITH RAYS WHICH HIT CORE C IF (NPCP.EQ.0) GO TO 140 C . C.... ITERATE TO FIND END OF RAY C 120 ITER 8 1 CALL DERIV (T.Z.DZDT) H 8 (RF-2(1))IDZDT(1) GO TO 30 . 130 D 8 RF-ZS(1) IF (ADS(D).LT.EPS*S(1)) GO TO 140 IF (ITER.GT.4) GO TO 140 ITER 8 ITER+1 CALL DERIV (TS.ZS.DZDT) H 8 OH+DIDZDT(1) GO TO 30 140 CONTINUE IF(IPRAY.EQ.1) PRINT 9025. M 9025 FORMAT(1X.15) . IF(IPRAY.EQ.1) PRINT 9030. ((IVVV(I).JVVV(I)).I81.M) 9030 FORMAT(1X.1515) . RETURN C 9010 FORMAT (1H1.20A4/13X.4HTIME.7X.1HR.5X.5HTHETA.4X.3HPHI.GX.4HZETA.5 1X.1H1.9X.5HDR/DT.BX.9HDTHETA/DT.4X.7HDPHI/DT.SX.BHDZETA/DT.5X.5HDI 2/DTl) 9020 FORMAT (IP9E12.4) END nnnnnn 101 110 105 SUBROUTINE PLOTZ (PLOTAZ.PLOTRAD.SMDEL.NNN.LLL) THIS SUBROUTINE PLOTS THE DATA ON A TEKTRONIX TERMINAL. ALMOST EXCLUSIVELY CANNED TEKTRONIX ROUTINES AND SO YOU SHOULD REFER TO AN APPROPRIATE MANUAL IF YOU WANT TO UNDERSTAND ANY OF THIS STUFF. DIMENSION PLOTAZ (400) DIMENSION PLOTRAD (400) CALL ERASE CALL DWINDO (0..100..0..190.) CALL SWINDO (10.1013.10.1013) CALL POLTRN (0..190..0.) CALL MOVEA (100..0.)- CALL DRAWA (100..180.) CALL MOVEA (0..0.) . CALL DRAWA (5..90.) ‘CALL MOVEA (100..0,) CALL DRAHSA (100..180..14) CALL.MOVEA (BQ..0.)IL CALL DASHSA_(80..190..14) CALL MOVEA (GO..0.) _ CALL DASHSA (SO..180..14) .CALL.MOVEAN(40..0.) CALL DASHSA (40..190..14) CALL MOVEA (20.:0.)1 I . CALL DASHSA (20..190..14) CALL MOVEA (0..0.)“ CALL DASHA_(100..90..14) CALL,MOVEAT(0..0.) CALL.DASHA-(100.EGO..14) CALL_MOVEA (0..0.) CALL DASHA (100..90..14) CALL MOVEA (0..0.) . CALL DASHA,(100..120..14) CALL MOVEA (0..0.) CALL DASHA (100..150..14) L8LLL-1 IF(L.EQ.0) GO TO 110 DO 101 I81.L IF(PLOTAZ(I).GE.190.00) PLOTAZ(I)80. CALL POINTA (PLOTRAD(I).PLOTAZ(I)) CALL MOVREL (-4.0) CALL DRHREL (8.0) CALL MOVREL (-4.-4) CALL DRWREL (0.8) CONTINUE CONTINUE DO 111 I8LLL.NNN IF(PLOTAZ(I).GE.190.00) PLOTAZ(I)80. CALL POINTA (PLOTRAD(I).PLOTAZ(I)) CALL MOVREL (-B.0) CALL DRWREL (16.0) (‘3 F.) 223 224 225 333 106 CALL MOVREL (-8.-B) CALL DRHREL (0.15} CONTINUE CALL MOVEA (0..0.) CALL MOVREL (0.740) CALL ANMODE NRITE (6.222) SMDEL FORMAT (* ANG. DIST. 19*. 1FS.2) WRITE (9.223) NNN FORMAT (I5.* RAYS.*) READ (4.225) FLAG FORMAT (A1) IF(FLAG.EQ.1HY) GO TO 333 GO TO 224 RETURN END APPENDIX 11 USING "RAYTRAK" APPENDIX II USING "RAYTRAK" As mentioned in the text, Raytrak is a computer ray tracing program using the ray tracing method developed by Julian (1970). It is based on Fermat's principle of stationary time; that is, a ray travels from one point to another via the path that takes the minimum time (or the maximum, but that does not concern us here). The program was first written by Julian and Sleep in 1973. It was modified for interactive use by Fujita in 1978. In 1981 it was modified by the present author to plot ray emergence points on a Tektronix 4010-1 graphics terminal. These modifications make the program much faster and easier to operate than it would be otherwise. First, a few warnings are in order. 1. The program calculates ray emergence points and stores their locations for plotting. Since it plots all calculated points each time (not just the ones most recently calculated) these points can be numerous. The arrays for plot radius and plot azimuth are set up for four hundred points, so you should never calculate more points than this before ending the run and either considering another distance from the slab, or stopping completely. You will probably never calculate anything near this number of points on a single plot, but you should know about this limitation. 107 108 2. As set up, the program calculates all the rays first and prints out the results afterward. This means that should the time limit be reached before the end of the program, all your results will be lost. If you are going to run a lot of points it would be better to reset the time limit before you start in order to avoid this problem. 3. The plot produced by the Tektronix is useful, but not detailed. All of the detailed results are on a local file called Tape 7. This should be cataloged at least temporarily before you sign off, or it will be lost forever. Log on again on some hard-copy terminal and list the file to get your permanent capy. When you run RAYTRAK, it sends you messages and prompts. You should respond to these as follows. TRACK RAYS> If you respond to this message with the number 1, the computer will print out the coordinates of the ray as it moves through the velocity model. Its path can then be plotted. If you respond with the number 0 these coordinates will not be printed out. DO YOU WANT VELOCITY PRINTED OUT? The usual answer for this is No, as the printout is extensive otherwise. NUMBER VERTICAL GRID POINTS 51 FOR LONG SLAB 41 FOR SHORT SLAB This is more or less self explanitory. The long slab is 350 km deep at the maximum, and this is the model used for this thesis. To get this model, answer with the number 51. 109 DO YOU WANT VELOCITY STRUCTURE PRINTED OUT? If you answer "yes", you will get extensive printout showing the velocity model you are using. You don't usually need this, so your usual answer should be "no". ANGULAR FOCAL DX. FROM ARC CURVATURE CENTER FOR THIS SET? This is a distance measured in geocentric angular distance, as in the text of this thesis. Put in whatever distance you are interested in, out to 14.0. The trench falls at about 12.4, the outer rise at 13.0 and the volcanic front at 11.4 in the Aleutians. # TAKEOFF ANGLES, #AZUMUTHS (SEPARATE BY COMMAS) These are the number of takeoff angles and azimuths for which rays will be calculated. The machine takes a given azimuth and keeping that fixed calculates the results for however many takeoff angles you order, then goes on to the next azimuth. Takeoff angle becomes smaller for each iteration (which makes the rays generally emerge farther from the source). Azimuth moves away from the direct downdip direction with each iteration. How far they move each time is decided by your response to a later question. YOU ARE CALCULATING ____ RAYS, ARE YOU SURE? This message only appears when you order more than 10 rays. It serves as a safeguard. If you respond with "yes" you get the rays calculated for you. If you answer "no" you go back to the previous question and have to choose the number of take-off angles and azimuths again. 110 DELTOA, DELPHI, TOASTR, AZRATZ (SEPARATE BY COMMAS) Respond with four floating point numbers separated from each other by commas. Deltoa is the step in take-off angle between adjacent rays, delphi is the step in azimuth between them, toastr is starting take-off angle, and azratz is starting azimuth. Given, say, the response 2., 5., 32., 0. the computer will send the first ray off at a take-off angle of 32° and an azimuth with respect to the downdip direction of the slab of 0° (or in other words, directly down the slab). If you chose to order more than one take-off angle earlier, the second ray calculated will be of the same azimuth (0.) but will have a take-off angle 2° SMALLER than the first one. The computer will calculate rays in this manner until it has done as many take-off angles as you ordered. Then, if you ordered more than one azimuth, it will switch to an azimuth 5° greater than the first one and start over with the original take-off angle of 32°. If you should want to send a single ray, respond to the question #TAKEOFF ANGLES, # AZIMUTHS with 1,1. Then when the computer asks for DELTOA, DELPHI, TOASTR, AZRATZ you can put in anything you wish for deltoa and delphi. In this case they are meaningless. Put in the takeoff angle and azimuth you want for toastr and azratz. Hopefully you will start to get results at this point. You will probably first get a lot of messages like 19 BAD RAY DEPTH 15 12.9 which means, in the example above, that ray number 19 did not converge 111 to the surface as it was supposed to. Instead it converged to a depth of 12.9 km. You have to correct your travel times for this error by hand. Nevertheless, this is not a fatal problem and if the "bad ray depth" is small the corrected solution is still fairly accurate. Large "bad ray depths" caUse serious errors in travel time calculations and ray emergence point location as well. If you get ROUTINE DOES NOT CONVERGE DUE TO TRAPPING or ERROR RAYS KEEP HITTING BOTTOM you're in trouble. Either the rays are trapped in some layer and never reach the surface or they are hitting the Earth's core. In either case the set is useless to you, especially since the computer abandons the calculation at this point and shuts your program down. This forces you to start at the beginning again. Assuming you avoid this problem, you get a list of output. You will lose much of this on the Tektronix screen due to over-writing and when you "change pages" to clear the screen. Don't worry about this. The printout on your screen is just to tell you that the program is working properly. There is a copy in the local file Tape 7 . Your next message is DO YOU WANT TO PLOT NOW? ENTER N FOR NO The no message is specified because if you respond with anything else the computer goes ahead and plots your data. Therefore enter “N" for no, and anything else for yes. A "no" answer skips you over the plotting routines. A "yes" answer results in your getting the following message. 112 YOU ARE GOING INTO A PLOTTING ROUTINE. TO CHANGE THE PAGE AND PROCEED WITH THE PROGRAM YOU MUST ENTER THE LETTER "Y". THERE IS NO PROMPT FOR THIS. WHEN YOU HAVE UNDERSTOOO THIS ENTER "Y". This refers to the end of the plotting routine itself, after the plot is finished. To avoid writing messages all over your plot, the program is set up to just sit there and do nothing until it gets that "y" it is waiting for. That is the only way to get out of the plotting routine, and you can punch anything else you can think of with no effect. This is very frustrating if you happen to forget that you're still in the plotting routine. So, having read the message above, enter "y". The computer will plot a pretty picture on the screen of your terminal. When it has finished, and when you have made a hard copy of the plot if you wish (and if you can), enter "y" again to exit the plot routine. The computer responds with VERY GOOD! CONGRATULATIONS! WE PROCEED. DO YOU WANT ANOTHER SET OF ANGLES IN THIS MODEL? If you answer "yes", you return to the point of entering the number of take-off angles and azimuths desired. The distance from the slab and the slab model itself remain unchanged. If you answer "no", you get DO YOU WANT TO TRY A NEW MODEL? If you answer "yes" you go back to the point of setting slab length and so on. You proceed from there as before. 113 If you answer "no“ you get CATALOG TAPE 7 BEFORE LOGGING OUT OR IT WILL BE LOST AND YOU WILL LOSE MOST OF YOUR INFORMATION WITH IT. This means what it says and I suggest you take heed of it. The program ends immediately after this, automatically. Make a hard COpy of tape 7 if you wish. If you want, you can use this to make a plot of your ray emergence points by hand; you can do a slightly better job than the Tektronix can. Other than that, you're through. MICHIGAN STATE UNIV. LIBRARIES [N"WWW(“WIWll(NW)llW(IWINIIWIHWI 31293104372234