CTITLEZM650 - SKELETON DEVELOPMENT PROGRAM 00000010 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** C 00000020 C DESIGNER L. B. LIN 00000030 C AUTHOR L. B. LIN 00000040 C LANGUAGE S/370 FORTRAN H 00000050 C DATE DEC 28,1981 00000060 C REVISED FEB 10,1982 00000070 C 00000080 C 00000090 C CALL ZM650(OH,ICC,AUTO3,IABORT,RA) 00000100 C CALL ZM651(OH,OTR,VEL,PASS,IABORT,RA,SA) 00000110 C CALL ZM652(OH,OTR,VEL,PASS,IABORT,RA,SA) 00000120 C CALL ZM653(OH,OTR,VEL,PASS,IABORT,RA,SA) 00000130 C 00000140 C 00000150 C THIS IS A SPARC DEVELOPMENT PROGRAM 00000160 C 00000170 C PURPOSE: STEEP-DIP DEPTH MIGRATION (POST-STACK). 00000180 C GIVEN A STACK SECTION AND A VELOCITY MODEL V(X,Z), THIS 00000190 C PROCESS PRODUCES A VERTICAL SECTION OF THE SUBSURFACE 00000200 C REFLECTORS RC(X,Z). 00000210 C 00000220 C 00000230 C 00000240 C 00000250 C ===================================================================== 00000260 C 00000270 C 00000280 CU PROCESS ZM65 -- STEEP DIP (65-DEGREE) DEPTH MIGRATION 00000290 CU DATA CARD (1) -- DEFINES DEPTH POINT RANGE AND PARAMETERS 00000300 CU 00000310 CU NO. OF CARDS: REQUIRED = 1 ALLOWED = 1 00000320 CU 00000330 CU REQ OR OPT 00000340 CU DF COLS DEFINITION OR DEFAULT 00000350 CU -- ----- ---------- -----------00000360 CU 1 1- 4 'ZM65' | REQ |00000370 CU 2 - 5 PROCESS NUMBER | 0 |00000380 CU 3 - 6 NOT USED | |00000390 CU 4 - 7 PROCESSING MODE |LINE CARD|00000400 CU 'D' = DEPTH POINT | |00000410 CU 5 8-10 PROGRAMMING USE | |00000420 CU 6 11-15 BEGINNING DEPTH POINT | REQ |00000430 CU 7 16-20 ENDING DEPTH POINT | REQ |00000440 CU 8 21-25 DIRECTIONALITY INDICATOR | 0 |00000450 CU = 0 IF INPUT CORRESPONDS TO THE LEFT-TO-RIGHT | |00000460 CU DIRECTION OF THE VELOCITY MODEL (SEE | |00000470 CU HORIZON DEFINITION CARDS). | |00000480 CU = 1 OTHERWISE. | |00000490 CU 9 26-30 DEPTH POINT SPACING (FT) |NOTE DF9 |00000500 CU 10 31-35 END TIME TO PROCESS (MS) |NOTE DF10|00000510 CU 11 36-40 MAXIMUM DEPTH OF THE INPUT VELOCITY MODEL (FT) | REQ |00000520 CU 12 41-45 VERTICAL RESOLUTION OF THE DEPTH SECTION (FT) |NOTE DF12|00000530 CU 13 46-50 SAMPLING INTERVAL TO BE WRITTEN TO TRACE HEADER |NOTE DF13|00000540 CU 14 51-55 LOWEST FREQUENCY TO MIGRATE (HZ) | REQ |00000550 CU 15 56-60 HIGHEST FREQUENCY TO MIGRATE (HZ) | REQ |00000560 CU 16 61-80 NOT USED | |00000570 CU -----------00000580 CU DF NOTES 00000590 CU -- ----- 00000600 CU 9 DEFAULT IS TRACE HEADER VALUE. 00000620 CU 00000630 CU 10 THIS CAN BE SHORTER THAN THE TRACE LENGTH; E.G., DF10 MAY BE SET 00000640 CU TO 3000 EVEN THOUGH THE STACK SECTION IS, SAY, 5 SECONDS LONG. 00000650 CU 00000670 CU 12 DF11 AND DF12 SHOULD BE CHOSEN SUCH THAT DF11/DF12 IS AN 00000680 CU INTEGER N, WHERE N+1 IS THE NUMBER OF DEPTH SAMPLES IN EACH 00000690 CU OUTPUT TRACE. A TYPICAL VALUE FOR N+1 IS 500. 00000700 CU 00000710 CU 13 THE OUTPUT OF THIS PROCESS IS A DEPTH SECTION; THE SAMPLING 00000720 CU INTERVAL SHOULD PRESUMABLY EQUAL THE VERTICAL RESOLUTION, DF12. 00000730 CU HOWEVER, SPARC RECOGNIZES ONLY TIME SAMPLING INTERVALS FOR 00000740 CU PLOTTING PURPOSES. THE SAMPLE INTERVAL AS RECORDED IN THE 00000750 CU TRACE HEADERS MAY BE ALTERED ARBITRARILY THROUGH THE USE OF 00000760 CU DF13. THEN THE "TIME" AXIS OF ANY SUBSEQUENT TRACE DISPLAY 00000770 CU WILL MAP TO A DEPTH SCALE OF DF12*1000/DF13 FEET PER SECOND, 00000780 CU WITH DF13 GIVEN IN MILLISECONDS. 00000790 CU 00000800 CU 15 IF INPUT DATA HAS BEEN BAND-PASS FILTERED, DF14 AND DF15 SHOULD 00000810 CU CORRESPOND TO THE BANDWIDTH TO ECONOMIZE ON COMPUTER CPU TIME. 00000820 CU EJECT 00000830 C ======================================================================00000840 C 00000850 C DATA CARD (2) -- UNIT DEFINITION CARD (VELOCITY MODEL) 00000860 C 00000870 C NO. OF CARDS: REQUIRED = 1 ALLOWED = 1 00000880 C REQ OR OPT 00000890 C DF COLS DEFINITION OR DEFAULT 00000900 C -- ----- ---------- ___________00000910 C 1 1- 4 'ZM65' | REQ |00000920 C 2 - 5 PROCESS NUMBER | 0 |00000930 C 3 - 6 NOT USED | |00000940 C 4 - 7 NOT USED | |00000950 C 5 8-10 'UNT' | REQ |00000960 C 6 11-15 PROGRAMMING USE | |00000970 C 7 16-20 PROGRAMMING USE | |00000980 C 8 21-25 UNIT FOR (X) COORDINATE | REQ |00000990 C 'FT' FOR FEET | |00001000 C 'MT' FOR METERS | |00001010 C 9 26-30 UNIT FOR (Z) COORDINATE | REQ |00001020 C 'FT' FOR FEET | |00001030 C 'MT' FOR METERS | |00001040 C 10 31-35 UNIT FOR VELOCITIES | REQ |00001050 C 'FT' FOR FEET | |00001060 C 'MT' FOR METERS | |00001070 C 11 36-80 NOT USED | |00001080 C |_________|00001090 C EJECT 00001100 C ======================================================================00001110 C 00001120 CU DATA CARD (2) -- MODEL DEFINITION CARD (VELOCITY MODEL) 00001130 CU 00001140 CU NO. OF CARDS: REQUIRED = 1 ALLOWED = 1 00001150 CU REQ OR OPT 00001160 CU DF COLS DEFINITION OR DEFAULT 00001170 CU -- ----- ---------- ___________00001180 CU 1 1- 4 'ZM65' | REQ |00001190 CU 2 - 5 PROCESS NUMBER | 0 |00001200 CU 3 - 6 NOT USED | |00001210 CU 4 - 7 NOT USED | |00001220 CU 5 8-10 'MOD' | REQ |00001230 CU 6 11-15 PROGRAMMING USE | |00001240 CU 7 16-20 PROGRAMMING USE | |00001250 CU 8 21-25 MAXIMUM NUMBER OF HORIZONS | REQ |00001260 CU 9 26-30 MINIMUM X IN LATERAL RANGE | REQ |00001270 CU 10 31-35 MAXIMUM X IN LATERAL RANGE |NOTE DF10|00001280 CU 11 36-40 SMALLEST ALGEBRAIC Z-VALUE IN VERTICAL RANGE | REQ |00001290 CU 12 41-45 LARGEST ALGEBRAIC Z-VALUE IN VERTICAL RANGE |NOTE DF12|00001300 CU 46-80 NOT USED | |00001310 CU -----------00001320 CU DF NOTES 00001330 CU -- ----- 00001340 CU 10 THE LATERAL EXTENT OF THE VELOCITY MODEL MUST BE EQUAL TO THE 00001360 CU DISTANCE BETWEEN THE STARTING CDP AND ENDING CDP, 00001370 CU I.E., |DF10- DF9| = (# OF CDPS) * (DEPTH POINT SPACING). 00001380 CU THIS PARAMETER IS REQUIRED. 00001390 CU 00001400 CU 12 |DF12 - DF11| MUST EQUAL DF11 OF DATA CARD (1). 00001410 CU THIS PARAMETER IS REQUIRED. 00001420 CU EJECT 00001430 C =================================================================== 00001440 C 00001450 CU DATA CARD (3) -- HORIZONTAL DEFINITION CARD (VELOCITY MODEL) 00001460 CU 00001470 CU NO. OF CARDS: REQUIRED = 1 ALLOWED = NO LIMIT 00001480 CU REQ OR OPT 00001160 CU DF COLS DEFINITION OR DEFAULT 00001170 CU -- ----- ---------- -----------00001510 CU 1 1- 4 'ZM65' | REQ |00001520 CU 2 - 5 PROCESS NUMBER | 0 |00001530 CU 3 - 6 NOT USED | |00001540 CU 4 - 7 NOT USED | |00001550 CU 5 8-10 'HRZ' | REQ |00001560 CU 6 11-15 PROGRAMMING USE | |00001570 CU 7 16-20 PROGRAMMING USE | |00001580 CU 8 21-25 HORIZON NUMBER | REQ |00001590 CU 9 26-30 FIXED VELOCITY ACROSS HORIZON | OPT |00001600 CU 31-80 NOT USED | |00001610 CU -----------00001620 CU DF NOTES 00001630 CU -- ----- 00001640 CU 9 IF FIXED VELOCITY ACROSS THE ENTIRE HORIZON IS DEFINED 00001650 CU ON THIS CARD, ANY VELOCITY DATA IN HORIZON SAMPLE CARDS 00001660 CU INVOLVING THE HORIZON WILL BE IGNORED. 00001670 CU EJECT 00001680 C =================================================================== 00001690 C 00001700 CU DATA CARD (4) -- HORIZON SAMPLE CARDS (VELOCITY MODEL) 00001710 CU 00001720 CU NO. OF CARDS: REQUIRED = 2 ALLOWED = NO LIMIT 00001730 CU REQ OR OPT 00001160 CU DF COLS DEFINITION OR DEFAULT 00001170 CU -- ----- ---------- -----------00001510 CU 1 1- 4 'ZM65' | REQ |00001770 CU 2 - 5 PROCESS NUMBER | 0 |00001780 CU 3 - 6 NOT USED | |00001790 CU 4 - 7 NOT USED | |00001800 CU 5 8-10 DELIMITER CODES | REQ |00001810 CU 'BEG' = FIRST SAMPLE CARD IN A SET | |00001820 CU ' ' = INTERMEDIATE SAMPLE CARD | |00001830 CU 'END' = LAST SAMPLE CARD IN A SET | |00001840 CU 6 11-15 PROGRAMMING USE | |00001850 CU 7 16-20 PROGRAMMING USE | |00001860 CU 8 21-25 HORIZON NUMBER | REQ |00001870 CU 9 26-30 LATERAL (X) POSITION | REQ |00001880 CU 10 31-35 VERTICAL (Z) POSITION |NOTE DF10|00001890 CU 11 36-40 VELOCITY UNDER HORIZON AT COORDINATE X |NOTE DF10|00001900 CU 41-80 NOT USED | |00001910 CU -----------00001920 CU 00001930 CU DF NOTES 00001940 CU -- ----- 00001950 CU 5 EACH SUBSURFACE HORIZON IS COMPRISED OF ONE OR MORE LINE 00001960 CU SEGMENTS. A SEGMENTS IS DELINEATED BY A "BEG" AND AN "END" 00001970 CU SAMPLE CARD. WITHIN EACH LINE SEGMENT, ANY NUMBER OF 00001980 CU INTERMEDIATE SAMPLE CARDS MAY BE INSERTED. 00001990 CU 00002000 CU ALL SAMPLE CARD SETS MUST APPEAR IN ORDER OF INCREASING 00002010 CU LATERAL POSITION (LEFT TO RIGHT). 00002020 CU 00002030 CU 10 THE X-Z VALUES OF THIS CARD TYPE ARE USED TO DEFINE THE 00002040 CU GEOMETRY OF THE SUBSURFACE HORIZON. THE INTERVAL 00002050 CU VELOCITIES, HOWEVER, REQUIRE ONLY THE X LOCATION VALUE AS 00002060 CU THEY REPRESENT PROPERTIES OF THE MATERIAL BENEATH THE 00002070 CU HORIZON AT THE LATERAL POSITION SPECIFIED REGARDLESS OF 00002080 CU THE Z POSITION OF THE HORIZON. CONSEQUENTLY, THE Z VALUE 00002090 CU SHOULD ONLY BE SPECIFIED WHEN THE GEOMETRY OF THE 00002100 CU HORIZON IS BEING DEFINED (AS OPPOSED TO THE SIMPLE 00002110 CU SPECIFICATION OF INTERVAL VELOCITY). 00002120 CU 00002130 CU NOTE: A Z VALUE OF 0. IS NOT RECOGNIZED. IF A SEGMENT 00002140 CU NEEDS TO TERMINATE AT THE SURFACE, A SMALL NONZERO VALUE 00002150 CU (SUCH AS 1) SHOULD BE CODED. 00002160 CU EJECT 00002170 C ======================================================================00002180 C 00002190 CU DATA CARD (5) -- END OF VELOCITY MODEL (VELOCITY MODEL) 00002200 CU 00002210 CU NO. OF CARDS: REQUIRED = 1 ALLOWED = 1 00002220 CU REQ OR OPT 00002230 CU DF COLS DEFINITION OR DEFAULT 00002240 CU -- ----- ---------- -----------00002250 CU 1 1- 4 'ZM65' | REQ |00002260 CU 2 - 5 PROCESS NUMBER | 0 |00002270 CU 3 - 6 NOT USED | |00002280 CU 4 - 7 NOT USED | |00002290 CU 5 8-10 'EXT' | REQ |00002300 CU 6 11-15 PROGRAMMING USE | |00002310 CU 7 16-20 PROGRAMMING USE | |00002320 CU 8 21-80 NOT USED | |00002330 CU -----------00002340 CU EJECT 00002350 C ======================================================================00002360 C 00002370 C 00002380 CU GENERAL INFORMATION ON MODEL SPECIFICATIOON 00002390 CU 00002400 CU 00002410 CU THE FOLLOWING RULES GOVERN THE ENTRY OF DATA WHICH DEFINE 00002420 CU THE SUBSURFACE GEOMETRY AND THE INTERVAL VELOCITY OF THE 00002430 CU HORIZON. THE USER SHOULD BE FAMILIAR WITH THESE RULES PRIOR 00002440 CU TO MODEL FORMULATION. 00002450 CU 00002460 CU 1. EACH INTERFACE IS DEFINED IN TERMS OF A SET OF X (LATERAL 00002470 CU DISTANCE ALONG THE SURFACE) COORDINATES AND Z (DEPTH) 00002480 CU COORDINATES. 00002490 CU 00002500 CU 2. THE ORIGIN FOR THESE COORDINATES IS THE UPPER LEFT HAND 00002510 CU CORNER OF THE MODEL WHICH TYPICALLY WILL BE THE POINT (0,0). 00002520 CU HOWEVER, THIS ORIGION MAY BE ANY OTHER X,Z PAIR CONSISTENT 00002530 CU WITH THE DATA. 00002540 CU 00002550 CU 3. X COORDINATES FOR AN INTERFACE MUST BE SUPPLIED IN INCREASING 00002560 CU VALUES FROM LEFT TO RIGHT, AND Z COORDINATES ARE ENTERED AS 00002570 CU ALGEBRAICALLY INCREASING NUMBERS WITH DEPTH. 00002580 CU 00002590 CU 4. HORIZON INTERFACE NUMBERING MUST BE IN INCREASING VALUES FROM 00002600 CU THE SURFACE WHICH MUST ALWAYS BE DESIGNATED AS HORIZON "001" 00002610 CU TO THE DEEPEST INTERFACE, WHICH MUST HAVE THE LARGEST NUMBER. 00002620 CU 00002630 CU GAPS MAY BE USED IN THE HORIZON NUMBERING SCHEME WHERE 00002640 CU APPROPRIATE IN ORDER TO FACILITATE THE INSERTIONS OF 00002650 CU INTERMEDIATE HORIZONS AT SOME FUTURE DATE. 00002660 CU 00002670 CU 5. ANY INTERFACE MAY HAVE REAL AND ARTIFICIAL PARTS. THAT IS, 00002680 CU THERE MAY BE GAPS IN THE DEFINITION OF A GIVEN SURFACE OR, IN 00002690 CU OTHER WORDS, A SURFACE NEED NOT SPAN THE ENTIRE LATERAL 00002700 CU PROFILE OF THE MODEL. 00002710 CU 00002720 CU 6. ANY INTERFACE MAY BE DEFINED WITH AS MANY X, Z PAIRS AS ARE 00002730 CU REQUIRED TO REPRESENT ITS GEOMETRIC CONFIGURATION. 00002740 CU 00002750 CU 7. ANY CONTINUOUS INTERFACE SEGMENT THAT UNDERLIES ANY OTHER 00002760 CU CONTINUOUS SEGMENT MUST HAVE A LARGER INTERFACE NUMBER. 00002770 CU 00002780 CU 8. INTERFACE DEFINITIONS MAY BE MADE FOR PHYSICAL ROCK INTERFACES 00002790 CU (HORIZON/HORIZON) OR FOR FLUID INTERFACES (GAS/OIL, 00002800 CU OIL/WATER, GAS/WATER). 00002810 CU 00002820 CU 9. INTERVAL VELOCITY MAY BE VARIED LATERALLY WITH A HORIZON OR MAY 00002830 CU BE HELD CONSTANT. 00002840 CU 00002850 CU 10. INTERVAL VELOCITIES ARE ENTERED USING THE CONVENTION THAT THE 00002860 CU DESIGNATED VELOCITIES APPLY TO THE ZONE (LAYER) BELOW THE 00002870 CU NAMED INTERFACE. FURTHER, IF MORE THAN ONE HORIZON IS IN 00002880 CU CONTACT WITH A GIVEN INTERFACE AND THE VELOCITIES OF THESE 00002890 CU HORIZONS VARY, THEN THE INTERFACE SHOULD BE BROKEN INTO A 00002900 CU SERIES OF SEGMENTS (BEG/END SETS). 00002910 CU 00002920 CU 00002920 C ===================================================================== 00002930 CU 00002940 CU PORTION OF A SAMPLE VELOCITY MODEL 00002950 CU 00002960 CU COL 5 10 15 20 25 30 35 40 45 00002970 CU 00002980 CU | | | | | | | | | 00002990 CU ZM65 MOD 3 045940 0 1400 00003000 CU ZM65 HRZ 1 4800 00003010 CU ZM65 BEG 1 0 1 00003020 CU ZM65 END 145940 1 00003030 CU ZM65 HRZ 2 6350 00003040 CU ZM65 BEG 2 0 120 00003050 CU ZM65 END 245940 120 00003060 CU ZM65 HRZ 3 00003070 CU ZM65 BEG 3 0 1260 6710 00003080 CU ZM65 3 1968 1290 00003090 CU ZM65 3 5000 1310 00003100 CU ZM65 3 5415 6650 00003110 CU ZM65 3 7790 1310 00003120 CU ZM65 311240 1320 00003130 CU ZM65 314110 1270 00003140 CU ZM65 315260 6600 00003150 CU ZM65 316080 1190 00003160 CU ZM65 END 316980 1160 00003170 CU ZM65 BEG 316980 1160 00003180 CU ZM65 END 317150 1380 00003190 CU ZM65 BEG 317150 1380 00003200 CU ZM65 317720 6450 00003210 CU ZM65 317800 1330 00003220 CU ZM65 319030 1270 00003230 CU ZM65 320900 1270 00003240 CU ZM65 323300 1280 00003250 CU ZM65 323790 6650 00003260 CU ZM65 325680 1330 00003270 CU ZM65 328470 1350 00003280 CU ZM65 331260 1340 00003290 CU ZM65 334128 1340 00003300 CU ZM65 334950 6740 00003310 CU ZM65 336920 1310 00003320 CU ZM65 339540 1310 00003330 CU ZM65 341920 1290 00003340 CU ZM65 END 345940 1280 6780 00003350 CU ZM65 EXT 00003355 CUEND 00003360 C===================================================================== 00003370 C ZM65 HORI 5 00003380 C ZM65 BEG 5 1.000 1.271 2700. 00003390 C ZM65 5 1.300 1.278 00003400 C ZM65 5 1.650 2720. 00003410 C ZM65 5 1.675 1.286 00003420 C ZM65 5 2.150 1.296 00003430 C ZM65 5 2.650 1.301 00003440 C ZM65 5 3.175 1.286 00003450 C ZM65 5 3.675 1.239 00003460 C ZM65 5 4.300 1.137 00003470 C ZM65 5 4.650 2800. 00003480 C ZM65 5 4.875 1.022 00003490 C ZM65 5 5.375 0.910 00003500 C ZM65 5 5.400 2820. 00003510 C ZM65 END 5 5.625 0.852 00003520 C ZM65 BEG 5 5.625 0.852 00003530 C ZM65 END 5 5.750 0.985 00003540 C ZM65 BEG 5 5.750 0.985 00003550 C ZM65 5 6.000 0.999 00003560 C ZM65 END 5 6.225 1.031 00003570 C ZM65 BEG 5 6.300 1.097 00003580 C ZM65 5 6.450 1.112 00003590 C ZM65 END 5 6.610 1.127 2900. 00003600 C ZM65 BEG 5 7.450 1.054 3100. 00003610 C ZM65 5 7.650 1.086 00003620 C ZM65 5 7.875 1.127 00003630 C ZM65 5 8.175 1.201 00003640 C ZM65 5 8.500 1.270 00003650 C ZM65 5 8.925 1.352 00003660 C ZM65 5 9.550 1.431 00003670 C ZM65 5 10.250 1.480 00003680 C ZM65 5 10.650 3700. 00003690 C ZM65 5 10.950 1.489 00003700 C ZM65 5 11.725 1.460 00003710 C ZM65 5 12.450 1.418 00003720 C ZM65 5 13.025 1.387 00003730 C ZM65 END 5 14.000 1.384 3680. 00003740 C ZM65 HORI 6 00003750 C ZM65 BEG 6 0.000 1.242 2800. 00003760 C ZM65 6 0.375 1.246 00003770 C ZM65 6 0.825 1.262 00003780 C ZM65 6 1.000 1.271 00003790 C ZM65 6 1.250 1.302 00003800 C ZM65 6 1.650 2840. 00003810 C ZM65 6 2.150 1.404 00003820 C ZM65 6 2.675 1.441 00003830 C ZM65 6 3.200 1.453 00003840 C ZM65 6 3.675 1.426 2830. 00003850 C ZM65 6 4.150 1.379 00003860 C ZM65 6 4.650 2800. 00003870 C ZM65 6 4.700 1.287 00003880 C ZM65 6 5.175 1.171 00003890 C ZM65 6 5.400 2680. 00003900 C ZM65 6 5.475 1.078 00003910 C ZM65 END 6 5.750 0.985 00003920 C ZM65 BEG 6 5.750 0.985 00003930 C ZM65 END 6 5.890 1.107 00003940 C ZM65 BEG 6 5.890 1.107 00003950 C ZM65 6 6.050 1.061 00003960 C ZM65 END 6 6.225 1.031 00003970 C ZM65 BEG 6 6.225 1.031 00003980 C ZM65 6 6.300 1.097 00003990 C ZM65 END 6 6.525 1.299 00004000 C ZM65 BEG 6 6.525 1.299 00004010 C ZM65 6 6.610 1.127 00004020 C ZM65 END 6 6.642 1.038 00004030 C ZM65 BEG 6 6.642 1.038 00004040 C ZM65 6 6.925 1.030 00004050 C ZM65 6 7.200 1.031 00004060 C ZM65 6 7.450 1.054 00004070 C ZM65 6 7.650 1.141 2850. 00004080 C ZM65 6 7.925 1.304 00004090 C ZM65 6 8.300 1.512 00004100 C ZM65 6 8.775 1.743 3400. 00004110 C ZM65 6 9.175 1.897 00004120 C ZM65 6 9.575 2.020 00004130 C ZM65 6 10.100 2.121 00004140 C ZM65 6 10.650 3800. 00004150 C ZM65 6 10.750 2.190 00004160 C ZM65 6 11.500 2.193 00004170 C ZM65 6 12.200 2.176 00004180 C ZM65 6 12.825 2.144 00004190 C ZM65 END 6 14.000 2.129 3780. 00004200 C ZM65 HORI 7 00004210 C ZM65 BEG 7 0.000 1.777 3700. 00004220 C ZM65 7 0.500 1.830 00004230 C ZM65 7 0.975 1.897 00004240 C ZM65 7 1.500 1.954 00004250 C ZM65 7 1.650 3650. 00004260 C ZM65 7 2.025 1.991 00004270 C ZM65 7 2.600 1.990 00004280 C ZM65 7 3.250 1.935 00004290 C ZM65 7 3.850 1.840 00004300 C ZM65 7 4.400 1.719 00004310 C ZM65 7 4.650 3200. 00004320 C ZM65 7 4.975 1.560 00004330 C ZM65 7 5.400 1.432 3100. 00004340 C ZM65 7 5.675 1.334 00004350 C ZM65 END 7 5.982 1.200 00004360 C ZM65 BEG 7 5.982 1.200 00004370 C ZM65 END 7 6.135 1.328 00004380 C ZM65 BEG 7 6.475 1.359 00004390 C ZM65 END 7 6.540 1.270 00004400 C ZM65 BEG 7 6.540 1.270 00004410 C ZM65 7 6.725 1.243 00004420 C ZM65 7 6.975 1.256 00004430 C ZM65 END 7 7.100 1.283 00004440 C ZM65 BEG 7 7.100 1.283 00004450 C ZM65 END 7 7.200 1.187 00004460 C ZM65 BEG 7 7.200 1.187 00004470 C ZM65 7 7.250 3300. 00004480 C ZM65 7 7.400 1.258 00004490 C ZM65 7 7.775 1.428 00004500 C ZM65 7 8.100 1.603 00004510 C ZM65 7 8.550 1.850 00004520 C ZM65 7 8.750 3800. 00004530 C ZM65 7 8.950 2.015 00004540 C ZM65 7 9.425 2.179 00004550 C ZM65 7 9.950 2.304 00004560 C ZM65 7 10.500 2.370 00004570 C ZM65 7 10.650 4080. 00004580 C ZM65 7 11.125 2.384 00004590 C ZM65 7 11.825 2.380 00004600 C ZM65 7 12.450 2.362 00004610 C ZM65 7 13.050 2.341 00004620 C ZM65 END 7 14.000 2.339 4080. 00004630 C ZM65 HORI 8 00004640 C ZM65 BEG 8 0.000 2.022 4400. 00004650 C ZM65 8 0.425 2.104 00004660 C ZM65 8 1.050 2.204 00004670 C ZM65 8 1.650 2.261 4350. 00004680 C ZM65 8 2.250 2.275 00004690 C ZM65 8 2.875 2.250 00004700 C ZM65 8 3.525 2.169 00004710 C ZM65 8 4.175 2.035 00004720 C ZM65 8 4.650 3900. 00004730 C ZM65 8 4.750 1.889 00004740 C ZM65 8 5.250 1.721 00004750 C ZM65 8 5.400 3800. 00004760 C ZM65 8 5.550 1.609 00004770 C ZM65 8 5.800 1.504 00004780 C ZM65 END 8 6.135 1.328 00004790 C ZM65 BEG 8 6.135 1.328 00004800 C ZM65 END 8 6.215 1.386 00004810 C ZM65 BEG 8 6.215 1.386 00004820 C ZM65 8 6.350 1.375 3750. 00004830 C ZM65 8 6.475 1.359 00004840 C ZM65 8 6.725 1.362 00004850 C ZM65 END 8 6.975 1.398 00004860 C ZM65 BEG 8 6.975 1.398 00004870 C ZM65 END 8 7.050 1.329 00004880 C ZM65 BEG 8 7.050 1.329 00004890 C ZM65 8 7.325 1.431 00004900 C ZM65 8 7.500 3800. 00004910 C ZM65 8 7.600 1.565 00004920 C ZM65 8 7.950 1.760 00004930 C ZM65 8 8.400 2.006 00004940 C ZM65 8 8.875 2.231 00004950 C ZM65 8 9.350 2.410 00004960 C ZM65 8 9.875 2.534 00004970 C ZM65 8 10.425 2.606 00004980 C ZM65 8 10.650 4300. 00004990 C ZM65 8 10.975 2.636 00005000 C ZM65 8 11.700 2.646 00005010 C ZM65 8 12.300 2.626 00005020 C ZM65 8 12.900 2.589 00005030 C ZM65 END 8 14.000 2.570 4270. 00005040 C ZM65 HORI 14 5670. 00005050 C ZM65 BEG 14 0.525 3.617 00005060 C ZM65 14 1.150 3.642 00005070 C ZM65 14 1.825 3.675 00005080 C ZM65 END 14 2.400 3.695 00005090 C ZM65 BEG 14 2.475 3.676 00005100 C ZM65 14 2.925 3.675 00005110 C ZM65 14 3.525 3.673 00005120 C ZM65 14 4.100 3.670 00005130 C ZM65 14 4.700 3.643 00005140 C ZM65 END 14 5.085 3.596 00005150 C ZM65 BEG 14 5.215 3.576 00005160 C ZM65 END 14 5.670 3.500 00005170 C ZM65 BEG 14 5.770 3.794 00005180 C ZM65 14 6.005 3.816 00005190 C ZM65 14 6.500 3.863 00005200 C ZM65 14 7.075 3.910 00005210 C ZM65 14 7.700 3.893 00005220 C ZM65 14 8.325 3.863 00005230 C ZM65 14 8.950 3.835 00005240 C ZM65 14 9.475 3.800 00005250 C ZM65 14 10.025 3.768 00005260 C ZM65 END 14 10.525 3.740 00005270 C ZM65 BEG 14 10.735 4.200 00005280 C ZM65 14 11.275 4.196 00005290 C ZM65 14 11.800 4.201 00005300 C ZM65 END 14 12.275 4.205 00005310 C ZM65 BEG 14 12.525 3.948 00005320 C ZM65 14 12.825 3.936 00005330 C ZM65 END 14 14.000 3.908 00005340 C ZM65 HORI 16 4500. 00005350 C ZM65 BEG 16 0.525 3.877 00005360 C ZM65 16 1.150 3.902 00005370 C ZM65 16 1.825 3.935 00005380 C ZM65 END 16 2.400 3.955 00005390 C ZM65 BEG 16 2.475 3.936 00005400 C ZM65 16 2.925 3.935 00005410 C ZM65 16 3.525 3.933 00005420 C ZM65 16 4.100 3.930 00005430 C ZM65 16 4.700 3.903 00005440 C ZM65 16 5.175 3.843 00005450 C ZM65 END 16 5.670 3.760 00005460 C ZM65 BEG 16 5.770 4.054 00005470 C ZM65 16 6.005 4.076 00005480 C ZM65 16 6.500 4.123 00005490 C ZM65 16 7.075 4.170 00005500 C ZM65 16 7.700 4.153 00005510 C ZM65 16 8.325 4.123 00005520 C ZM65 16 8.950 4.095 00005530 C ZM65 16 9.475 4.060 00005540 C ZM65 16 10.025 4.028 00005550 C ZM65 END 16 10.525 4.000 00005560 C ZM65 BEG 16 10.735 4.460 00005570 C ZM65 16 11.275 4.456 00005580 C ZM65 16 11.800 4.461 00005590 C ZM65 END 16 12.275 4.465 00005600 C ZM65 BEG 16 12.525 4.208 00005610 C ZM65 16 12.825 4.196 00005620 C ZM65 END 16 14.000 4.168 00005630 C ZM65 ENDV 00005640 C 00005650 C ======================================================================00005660 C 00005670 C MEMORY AND SPACE ALLOCATIONS FOR SPARC DEVELOPMENT 00005680 C PROCESS ZM65 -- SPARC DEVELOPMENT PROCESS 00005690 C DATA CARD (1) -- DEFINES INPUT PARAMETERS 00005700 C 00005710 C NO. OF CARDS: REQUIRED = N ALLOWED 00005720 C 00005730 C 00005740 C DF COLS DEFINITION REQ OR OPT00005750 C -- ----- ----------- -----------00005760 C 1 1-4 'ZM65' | REQ |00005770 C 2 -5 PROCESS NUMBER | 0 |00005780 C 3 6-7 NOT USED | |00005790 C 4 8-10 'SPC' | |00005800 C 5 11-15 PROGRAM MEMORY SIZE (K-BYTES) | 500 |00005810 C 6 16-20 BLANK COMMON RESERVED SPACE (WORDS) | 0 |00005820 C 7 21-25 BLANK COMMON SCRATCH SPACE (WORDS) | 0 |00005830 C 8 26-30 NUMBER OF GROUPS (WORKFILE 1) | 1 |00005840 C 9 31-35 NUMBER OF TRACES/GROUP (WORKFILE 1) | 1 |00005850 C 10 36-40 RECORD LENGTH (WORDS) (WORKFILE 1) | HDR + TR|00005860 C 11 41-45 NUMBER OF GROUPS (WORKFILE 2) | 1 |00005870 C 12 46-50 NUMBER OF TRACES/GROUP (WORKFILE 2) | 1 |00005880 C 13 51-55 RECORD LENGTH (WORDS) (WORKFILE 2) | HDR + TR|00005890 C 14 56-60 NUMBER OF GROUPS (WORKFILE 3) | 1 |00005900 C 15 61-65 NUMBER OF TRACES/GROUP (WORKFILE 3) | 1 |00005910 C 16 66-70 RECORD LENGTH (WORDS) (WORKFILE 3) | HDR + TR|00005920 C -----------00005930 C=======================================================================00005940 C 00005950 C 00005960 C 00005970 SUBROUTINE ZM650(OH,ICC,AUTO3,IABORT,RA) 00005980 DIMENSION OH(1), OTR(1), DATA(20), RA(1), SA(1),VEL(1) 00005990 EXTERNAL FOSCDK 00006000 C 00006010 C COMMON /P/ STATEMENTS GENERATED BY UTCGI4 9/18/80 00006020 COMMON /P/ STARTP , M00000( 10) 00006030 REAL *8 STARTP 00006040 COMMON /P/ LCTPSP , M00048( 2) 00006050 COMMON /P/ LCPI , M00060 00006060 COMMON /P/ LCMXFD , M00068( 70) 00006070 COMMON /P/ KPNA 00006080 COMMON /P/ KPRNO , M00356( 5) 00006090 COMMON /P/ KPWRKS 00006100 COMMON /P/ KPWRKD 00006110 COMMON /P/ KPWKS2 00006120 COMMON /P/ KPWKD2 00006130 COMMON /P/ KPWKS3 00006140 COMMON /P/ KPWKD3 , M00400 00006150 COMMON /P/ KPIRSM 00006160 COMMON /P/ KPNRSM 00006170 COMMON /P/ KPIUSM 00006180 COMMON /P/ KPNUSM , M00420( 10) 00006190 COMMON /P/ KPPRNT , M00464( 2) 00006200 COMMON /P/ KPBUGF , M00476( 210) 00006210 COMMON /P/ ENDP 00006220 C 00006230 INTEGER INH 00006240 INTEGER OH 00006250 INTEGER PASS 00006260 INTEGER YES /0/ 00006270 INTEGER NO /1/ 00006280 INTEGER YES3 /2/ 00006290 INTEGER NO3 /3/ 00006300 INTEGER AUTO3 00006310 INTEGER ORTN 00006320 INTEGER CDPN 00006330 INTEGER CDPT 00006340 INTEGER TICD 00006350 INTEGER XDST 00006360 INTEGER NS 00006370 INTEGER SI 00006380 INTEGER SSP 00006390 INTEGER FN 00006400 INTEGER DATA 00006410 INTEGER ULOCAL 00006420 INTEGER SLOCAL 00006430 INTEGER S1CVBN 00006440 INTEGER CHECK /0/ 00006450 C 00006460 COMMON /HEAD/ ORTN,CDPN,CDPT,TICD,XDST,NS,SI,SSP,FN 00006470 COMMON /USER/ SLOCAL(50), ULOCAL(100) 00006480 C 00006490 C 00006500 C 00006510 EQUIVALENCE ( NXB ,ULOCAL( 1)) 00006520 EQUIVALENCE ( NX ,ULOCAL( 2)) 00006530 EQUIVALENCE ( NX1 ,ULOCAL( 3)) 00006540 EQUIVALENCE ( NX2 ,ULOCAL( 4)) 00006550 EQUIVALENCE ( NZ ,ULOCAL( 5)) 00006560 EQUIVALENCE ( NT ,ULOCAL( 6)) 00006570 EQUIVALENCE ( NW ,ULOCAL( 7)) 00006580 EQUIVALENCE ( NWF ,ULOCAL( 8)) 00006590 EQUIVALENCE ( NWL ,ULOCAL( 9)) 00006600 EQUIVALENCE ( NSAMP ,ULOCAL(10)) 00006610 EQUIVALENCE ( NEXP ,ULOCAL(11)) 00006620 EQUIVALENCE ( IPR ,ULOCAL(12)) 00006630 EQUIVALENCE ( DX ,ULOCAL(13)) 00006640 EQUIVALENCE ( DZ ,ULOCAL(14)) 00006650 EQUIVALENCE ( DT ,ULOCAL(15)) 00006660 C 00006670 IPR = KPPRNT 00006680 IABORT = NO 00006690 AUTO3= NO 00006700 C 00006710 C READ INPUT CARDS 00006720 C 00006730 LA = 1 00006740 CALL FORC(KPNA,KPRNO,LA,DATA,&9000) 00006750 CALL CORE(DATA,80) 00006760 READ(1,100) IBEG,IEND,L2R,IDX,ITIME,IZNOT,IDZ,IDZT,IFLO,IFHI 00006770 100 FORMAT(10X,10I5) 00006780 WRITE(IPR,110) IBEG,IEND,L2R,IDX,ITIME,IZNOT,IDZ,IDZT,IFLO,IFHI 00006790 110 FORMAT(1X,'INPUT DATA CARD:',/,1X,' IBEG IEND L2R00006800 1 IDX ITIME IZNOT IDZ IDZT IFLO 00006810 2IFHI',/,1X,10I10) 00006820 C 00006830 CALL GETNT(ITIME,SI,NT,NEXP,IABT) 00006840 IF(IABT .NE. 0) GO TO 9200 00006850 C 00006860 IF(IDX .GT. 0) GO TO 150 00006870 CALL USRTHV(OH,'THCDPS',IDX) 00006880 DX=IDX 00006890 GO TO 151 00006900 150 CONTINUE 00006910 DX=IDX 00006920 151 CONTINUE 00006930 NX=IABS(IEND - IBEG) + 1 00006940 NXB=NX 00006950 NX1=NX-1 00006960 NX2=NX-2 00006970 DZ=FLOAT(IDZ) 00006980 NZ=IZNOT / IDZ + 1 00006990 DT=FLOAT(SI)/1000000. 00007000 IDT=SI/1000 00007010 NSAMP=ITIME/IDT 00007020 IDZT =IDZT*1000 00007030 C 00007040 NWF=INT(IFLO*NT*DT) + 1 00007050 NWL=INT(IFHI*NT*DT) + 1 00007060 NW=NWL - NWF + 1 00007070 C 00007080 ICC = (20+NW)*NX*2 + (2*NZ+1)*NX + 2*NT + NZ + 14*NX 00007090 C 00007100 WRITE(IPR,200) NX,NZ,NT,NWF,NWL,NW,ICC,DX,DZ,DT,NSAMP,NEXP 00007110 200 FORMAT(///, 00007120 1 1X,'PARAMETERS USED IN STEEP-DIP DEPTH MIGRATION PROGRAM:', 00007130 2 //,1X,'NX=',I3,', NZ=',I3,', NT=',I4,', NWF=',I3,', NWL=',I3,00007140 3 ', NW=',I3,', ICC=',I8,/, 00007150 4 1X,'DX=',F7.2,', DZ=',F7.2,', DT=',F7.5,', NSAMP=',I5, 00007160 5 ', NEXP=',I2) 00007170 C 00007180 KA =1 00007190 KB =KA + NX*2 00007200 KC =KB + NX*2 00007210 KD =KC + NX*2 00007220 KE =KD + NX*2 00007230 KF =KE + NX*2 00007240 KQ =KF + NX*2 00007250 KR =KQ + NX*2 00007260 KS =KR + NX*2 00007270 KT =KS + NX*2 00007280 KU =KT + NX*2 00007290 KAM =KU + NX*2 00007300 KBM =KAM + NX*2 00007310 KCM =KBM + NX*2 00007320 KDM =KCM + NX*2 00007330 KEM =KDM + NX*2 00007340 KCN =KEM + NX*2 00007350 KDN =KCN + NX*2 00007360 KEN =KDN + NX*2 00007370 KWAV =KEN + NX*2 00007380 KDUMY=KWAV + NX*NW*2 00007390 KV =KDUMY + NX*2 00007400 KL =KV + NX*NZ 00007410 KSRCE=KL + NX 00007420 KRW =KSRCE + NX*NZ 00007430 KIW =KRW + NT 00007440 KVCK =KIW + NT 00007450 K01 =KVCK + NZ 00007460 K02 =K01 + NX 00007470 K03 =K02 + NX 00007480 K04 =K03 + NX 00007490 K05 =K04 + NX 00007500 K06 =K05 + NX 00007510 K07 =K06 + NX 00007520 K08 =K07 + NX 00007530 K09 =K08 + NX 00007540 K10 =K09 + NX 00007550 K11 =K10 + NX 00007560 K12 =K11 + NX 00007570 K13 =K12 + NX 00007580 K14 =K13 + NX 00007590 C 00007600 IFLAG= NO 00007610 IENDF= NO 00007620 C 00007630 RETURN 00007640 C 00007650 C ZM651 ENTRY STARTS HERE 00007660 C******************************************************************* 00007670 C******************************************************************* 00007680 C 00007690 ENTRY ZM651(OH,OTR,VEL,PASS,IABORT,RA,SA) 00007700 C 00007710 C******************************************************************* 00007720 C******************************************************************* 00007730 C 00007740 C 00007750 IABORT = NO 00007760 PASS=NO 00007770 CALL SETDSK(KPWRKS,KPWRKD,NX,96,RA(1)) 00007780 ISEQ=1 00007790 C 00007800 C 00007810 C******************************************************************* 00007820 C******************************************************************* 00007830 C 00007840 ENTRY ZM652(OH,OTR,VEL,PASS,IABORT,RA,SA) 00007850 C 00007860 C******************************************************************* 00007870 C******************************************************************* 00007880 C 00007890 C 00007900 PASS= NO 00007910 IF(IFLAG .EQ. YES) GO TO 340 00007920 IF(CDPN .NE. IBEG) RETURN 00007930 IFLAG= YES 00007940 340 CONTINUE 00007950 IF(IENDF .EQ. YES) RETURN 00007960 CHECK=CHECK+1 00007970 CALL USSTHV(OH,'THSI',IDZT) 00007980 CALL FOWDSD(KPWRKD,ISEQ,OH) 00007990 CALL TRNSFM(OTR,NS,RA(KRW),RA(KIW),RA(KWAV),NT,NEXP,NWF,NWL, 00008000 1 NX,CHECK,L2R) 00008010 IF(CHECK .LT. NX) RETURN 00008020 C 00008030 WRITE(IPR,350) 00008040 350 FORMAT(///,1X,'INPUT "AIMS" SUBSURFACE VELOCITY MODEL:',//) 00008050 HALFV=0.5 00008060 CALL VGRID(RA(KV),RA(KA),RA(KB),RA(KC),RA(KD),RA(KE),RA(KF), 00008070 1 RA(KQ),NX,NZ,DX,DZ,HALFV,NXB,RA(KR),RA(KS),IABT, 00008080 2 KPNA,KPRNO,LA,DATA,IPR) 00008090 IF(IABT .NE. 0) GO TO 9100 00008100 WRITE(IPR,360) 00008110 360 FORMAT(/,1X,'VELOCITY GRID BUILT OK') 00008120 CALL VEXTRM(RA(KV),NX,NZ,VMIN,VMAX) 00008130 WRITE(IPR,300) VMIN, VMAX 00008140 300 FORMAT(1X,'VMIN=',1PE10.2,', VMAX=',1PE10.2) 00008150 C 00008160 WRITE(IPR,370) 00008170 370 FORMAT(///,1X,'******* PRINT-OUT FROM SUBROUTINE MIG65 ******') 00008180 C CALL MIG65(RA( KA),RA( KB),RA( KC),RA( KD),RA( KE),RA( KF) 00008190 C 1 ,RA( KQ),RA( KR),RA( KS),RA( KT),RA( KU) 00008200 C 2 ,RA( KAM),RA( KBM),RA( KCM),RA( KDM),RA( KEM),RA( KCN) 00008210 C 3 ,RA( KDN),RA( KEN),RA(KWAV),RA(KDUMY),RA( KV),RA( KL) 00008220 C 4 ,RA(KSRCE),RA( KRW),RA( KIW),RA(KVCK),NX,NZ,NT,NW,NWF 00008230 C 5 ,NWL,DX,DZ,DT,NSAMP,NEXP,IPR) 00008240 CALL MIG65(RA( KA),RA( KB),RA( KC),RA( KD),RA( KE),RA( KF) 00008250 1 ,RA( KQ),RA( KR),RA( KS),RA( KT),RA( KU) 00008260 2 ,RA( KAM),RA( KBM),RA( KCM),RA( KDM),RA( KEM),RA( KCN) 00008270 3 ,RA( KDN),RA( KEN),RA(KWAV),RA(KDUMY),RA( KV),RA( KL) 00008280 4 ,RA(KSRCE),RA( KRW),RA( KIW),RA(KVCK),NX, 00008290 5 RA(K01),RA(K02),RA(K03),RA(K04),RA(K05),RA(K06),RA(K07), 00008300 6 RA(K08),RA(K09),RA(K10),RA(K11),RA(K12),RA(K13),RA(K14)) 00008310 C 00008320 IENDF= YES 00008330 C PASS=NO3 00008340 PASS=NO 00008350 IXCHK=0 00008360 JSEQ=1 00008370 C 00008380 RETURN 00008390 C******************************************************************* 00008400 C******************************************************************* 00008410 C 00008420 ENTRY ZM653(OH,OTR,VEL,PASS,IABORT,RA,SA) 00008430 C 00008440 C******************************************************************* 00008450 C******************************************************************* 00008460 C 00008470 PASS = YES3 00008480 IXCHK=IXCHK+1 00008490 CALL FORDSD(KPWRKD,JSEQ,OH) 00008500 CALL FILLTR(OTR,RA(KSRCE),NX,NZ,IXCHK,L2R) 00008510 IF(IXCHK .LT. NX) RETURN 00008520 PASS=YES 00008530 RETURN 00008540 C 00008550 C 00008560 C ******************** 00008570 C ******************** 00008580 C ERROR MESSAGES 00008590 C ******************** 00008600 C ******************** 00008610 C 00008620 C 00008630 9000 IABORT = YES 00008640 WRITE(IPR,9001) 00008650 9001 FORMAT(1X,' NO DATA CARD FOUND') 00008660 RETURN 00008670 C 00008680 9100 IABORT=YES 00008690 WRITE(IPR,9101) 00008700 9101 FORMAT(///,1X,'VELOCITY GRID CANNOT BE BUILT. JOB KILLED') 00008710 RETURN 00008720 C 00008730 9200 IABORT=YES 00008740 WRITE(IPR,9201) 00008750 9201 FORMAT(///,1X, 'THE FFT NUMBER (NT=2**NEXP) FALLS OUT OF RANGE; 00008760 1TRACES ARE EITHER TOO SHORT OR TOO LONG') 00008770 RETURN 00008780 END 00008790