Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
DOE/ET/27014-T10 (DE8401 2546)
PREPARATION OF RESIDUAL GRAVITY MAPS FOR THE SOUTHERN CASCADE MOUNTAINS, WASHINGTON USING FOURIER ANALYSIS
BY Debra McLean Dishberger
April 1983
Work Performed Under Contract No. AC07-79ET27014
Washington Department of Natural Resources Olympia, Washington
Technical Information Center Off ice of Scientific and Technical Information United States Department of Energy
DISCLAIMER
This report was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency Thereof, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.
DISCLAIMER Portions of this document may be illegible in electronic image products. Images are produced from the best available original document.
DISCLAIMER
This report was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency thereof, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsi- bility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Refer- ence herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recom- mendation, or favoring by the United States Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.
This report has been reproduced directly from the best available copy.
Available from the National Technical Information Service, U. S. Department of Commerce. Springfield, Virginia 22 16 1.
Price: Printed Copy A03 Microfiche A01
Codes are used for pricing all publications. The code is determined by the number of pages in the publication. Information pertaining to the pricing codes can be found in the current issues of the following publications, which are generally available in most libraries: Energy Research Abstracts (ERA); Government Reports Announcements and Index (GRA and I); Scientific and Technical Abstract Reports (STAR); and publication NTIS-PR-360 available from NTIS at the above address.
!
1
DOE/ET/27014-T10
Distribution Category UC-66a (DE84012546)
STATE OF WASHINGTON DEPARTMENT OF NATURAL RESOURCES
BRIAN J. BOYLE, Commissioner o f Pub l i c Lands JAMES A. STEARNS, Department Supervisor
D I V I S I O N OF GEOLOGY AND EARTH RESOURCES Raymond Lasmanis, State Geologist
PREPARATION OF RESIDUAL GRAVITY MAPS FOR THE SOUTHERN CASCADE MOUNTAINS, WASHINGTON
USING FOURIER ANALYSIS
A p r i l 1983
by
Debra McLean D i shberger
Washington Department o f Natural Resources D i v i s i o n o f Geology and Ear th Resources
Olympia, WA 98504
Open-File Report 83-4
CONTENTS
Page
Introduction . . . . . . . . . . . . . Residual separation method . . . . . . Program test ing . . . . . . . . . . . Cutoff wavelength select ion . . . . . Results . . . . . . . . . . . . . . . References c i t e d . . . . . . . . . . . Appendix A - FORTRAN Program RESIDUAL
Appendix B - FORTRAN Program SPECTRA .
. .
. .
. .
. .
. .
. .
. .
. .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
1
1
4
8
10
11
A-
B-1
ILLUSTRATIONS
Page
Figure 1. Grav i t y p r o f i l e f o r two spheres superimposed upon a p lanar f i e l d . . . . . . . . . . . . . . . . . 5
2 . P r o f i l e o f t e s t case reg iona l f i e l d . . . . . . . . . 6
3. P r o f i l e o f t e s t case res idua l f i e l d . . . . . . . . . 7
4. I dea l i zed power spectrum p l o t . . . . . . . . . . . . 9
5. Power spectrum o f g r a v i t y data from the Southern Cascade tslountains, Washington . . . . . . . 11
P l a t e 1. Residual g r a v i t y map o f the Southern Cascade Mountains, Washington - 85 k i l o - meter c u t o f f wavelength . . . . . . . . . . . . . . . Back Pocket
2 . Residual g r a v i t y map-of the Southern Cascade Mountains, Washington - 40 k i l o - meter c u t o f f wavelength . . . . . . . . . . . . . . . Back Pocket
Cascade Mountains, Washington - 20 k i 1 o- meter c u t o f f wavelength . . . . . . . . . . . . . . . Back Pocket
3. Residual g r a v i t y map o f the Southern
-1-
INTRODUCTION
This report represents a continuation of gravity work in the Cascade
Mountains of Washington supported by the Division of Geology and Earth
Resources since 1974. The purpose of this research has been collection
of baseline gravity data for use in geothermal resource evaluation. Re-
sults of the Division's gravity studies to date are given in Danes and
Phillips (1983a, 1983b).
One of the problems encountered when analyzing gravity data is dis-
tinguishing between those parts of the data that represent geologic struc-
tures of interest, and those that do not.
interest are relatively small, near-surface features, such as those sought
in mineral, petroleum, or geothermal exploration. Gravity anomalies caused
by such structures may be distorted or masked by anomalies caused by larger,
deeper geologic structures. Gravi nomalies caused by relatively shallow,
small geologic structures are termed residual anomalies. Those due to broad,
deep-seated features can be described as regional anomalies.
In many cases, the features of
The purpose of this report is to describe a Fourier analysis method
for separating residual and regional gravity anomalies from a complete
Bouguer gravity anomaly field.
data from the Southe Cascade Mountains, Washington. Residual gravity
anomaly maps at a scale of 1:250,000 are presented for various regional
wavelength filters, and a power spectrum of the frequency components in
the South Cascade gravity data is displayed. No attempt is made to in-
terpret the results of this study in terms of geologic structures.
The technique has been applied to gravity
RESIDUAL SEPARATION METHOD
The method used here to separate regional and residual anomalies is
based on the assumption that regional anomalies are distinctly larger
-2-
than residual anomalies. This impiies that the spatial wavelengths of
anomalies caused by regional features are longer than the wavelengths of
anomalies due to local structures. It also must be assumed that the two
do not overlap appreciably. If these assumptions are true, regional-re-
sidual separations can be made by filtering out wavelengths o f the gravity
field that represent undesired information. This filtering process is
carried out with Fourier analysis.
Detailed discussions of Fourier analysis and regional-residual sepa-
ration of gravity fields are given 'in Clemont (1972), Cordell and Grauch
(1982), and Gupta and Ramani (1980). Briefly, Fourier analysis is based
on the fact that a periodic function can be expressed as the sum of a
series of sine and cosine waves of various frequencies. Each sine and
cosine wave making up a part of the sum is called a frequency component.
By using a procedure known as the Fourier transform, the magnitude of the
frequency components for a given function can be determined. Since fre-
quency is the reciprocal of wavelength, each frequency component repre-
sents a particular spatial wavelength present in the data. Thus, re-
moval of a group of wavelengths form a data set can be accomplished by
setting the corresponding frequency components to zero.
A FORTRAN computer program, RESIDUAL, was developed to perform the
desired wavelength filtering.
are presented in Appendix A. Much of the source code for the computer
program is after Pitts (1979). The routine to perform the Fourier trans-
from is from IBM (1966).
Source code and documentation for RESIDUAL
The program RESIDUAL is designed to run on an IBM 3033 with a FORTRAN
G compiler.
the program with other computer systems that support FORTRAN.
Users familiar with FORTRAN should have little trouble using
Program RESIDUAL takes a digitized grid of gravity data and filters
-3-
out anomalies with dimensions greater than the specified size. The
di-gitized data is read into the computer along with the cutoff wavelength.
Before the Fourier transform is performed, several steps are taken to
minimize distortions of the data caused by the transform process. Most
distortions are caused by abrupt changes in data values, either in the
a1 or frequency representations.
ducing distortion is removal of a first. order
trend from the data. This is done to eliminate power in the zero fre-
quency component of the frequency spectrum. Otherwise, this component
will be much greater than the other components, which could lead to in-
accuracies in the in se transform process. The first order trend is
restored to the data matrix following the inverse transform process.
To prevent unexpected results due to the abrupt termination of data
at the edge of the matrix, the data is extended on all sides of the map
area and values tapered smoothly to zero. At this.point, the Fourier
transform is performed. The spatial function described by the input
matrix is converted into a frequency representation. The filtering
process is carried out by setting to zero those frequency components
a1 wavelengths shorter than the specified cutoff wave-
ency function thus obtained is the regional gravity
field.
An inverse Fourier transform is next performed to obtain a spatial
resentation of the regional field. The regional field is extracted
from the center of the extended matrix and the first order trend removed
earlier is restored. The residual field is then computed by subtracting
the regional f d from the input data. Program output consists o
residual and r onal data matrices. Rows and columns of each mat
atitude and longitude values or any other convenie
-4-
dinate system.
a plot ter -routine for automated posting and contouring of the data.
The program u t i l i t y could be greatly enhanced by adding
PROGRAM TESTING
I n order to be confident that the program actually separates the
various components of a gravity f ie ld as intendeq, a simple t e s t case
was developed. T h i s t e s t case consisted of a theoretical gravity anomaly
caused by two spheres of varying density. The larger sphere was twice
as large as the smaller sphere and was buried three times as deeply.
Gravity effects from the spheres were superimposed on a planar regional
gravity f ie ld . A profile across the total gravity f ie ld i s shown i n
Figure 1.
The task of the computer program was defined to be separation of
gravity effects due to the smaller sphere from the remainder of the
theoretical f ie ld .
duced by the program RESIDUAL.
gravity anomaly calculated by the proqram.
good separation of anomalies was achieved by the program.
Figure.2 shows a profile of the regional f ie ld pro-
Figure 3 is a profile of the residual
These resul ts indicate that a
Further testing of the program revealed t h a t some distortion of the
data was occurring despite trend removal and elimination of edge effects.
The distortion i s visible i n contoured maps of regional f ie lds as "rippler"
symmetric about the map area, i.e, r ipples tended t o be present along
lines d i v i d i n g the map area into quarters and eighths.
the distortion d i d not exceed several mgals.
distortion i s not fu l ly understood, a simple solution was devised.
Following production of the regional f ie ld , the data matrix i s hand-
smoothed by contouring.
areas are removed and replaced w i t h values that permit smooth contouring.
Because regional maps have simple geometries, contouring i s rapid and
The amplitude of
While the cause of the
Data values corresponding to the distorted
-5-
m 4
N
4
co
h
L
co
Ln
d
CT
)
cu
4
I c
aJ L J m
.I-
LL
0
9
8
7
6
5
4
3
2
1
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Dis tance f rom O r i g i n ( m i l e s )
F igure 2. - P r o f i l e of t e s t case r e g i o n a l g r a v i t y f i e l d .
I m I
-7-
-8-
unambiguous. The corrected portion of the data is then subtracted from
the- affected part of the total field matrix giving a corrected residual.
This prbcess ensures that artifacts created by the filtering process
will not be interpreted as anomalies on a residual map.
CUTOFF WAVELENGTH SELECTION
The selection of the cutoff wavelength is a crucial part of the
residual-regional separation process. A variety of methods can be used
t o select the cutoff wavelength. The simplest conceptually is visual
inspection o f the data to be used as input. A contoured complete Bouguer
gravity map is the most suitable way of inspecting the data. By observing
the sizes of anomalies present, a decision can be made as to which fea-
tures should be enhanced or suppressed.
course, a function of the user's needs and expectations concerning the
shape, size, and density of geologic structures.
of the geology of the study area is very helpful.
Desired anomaly size is, of
Hence, a good knowledge
Another useful tool for determining cutoff wavelengths is an ampli-
tude power spectrum. A power spectrum is a plot of the square of the
amplitudes of the frequency components against frequency.
ural logarithm of the amplitude squared permits easy plotting.
A power spectrum for gravity data ideally consists of three parts
Using the nat-
(Figure 4). At the low frequency end of the spectrum, the plot has a very
steep slope. This steep area corresponds to the regional or long wave-
length portion of the data. Towards the middle of the plot, the slope
is notably less. This represents the residual "signal .'I The spectrum
plot becomes nearly horizontal in the high frequency range.
area is often taken to represent "noise" present in the data. The noise
may correspond to errors in digitizing and gravity field measurement,
or simply very small wavelength anoma'l ies.
The flat
-9-
rc 0 S
0
c, L 0
.r
n
cc 0
-10-
Choice of a cutoff wavelength is made by identifying the graph's
inflection point from the steep, regional slope to an intermediate,
residual value. Because the power spectrum is a smooth curve, this
decision is often somewhat arbitrary. However, a suitable range of
cutoff wavelengths can easily be obtained.
A FORTRAN computer program, SPECTRA, was developed to calculate
amplitude power spectrums.
are provided in Appendix B.
Source code and documentation for SPECTRA
Gravity data contained in a complete Bouguer gravity anomaly map
of the Southern Cascade Mountains, Washington (Danes and Phillips, 1983a)
were used as input for programs RESIDUAL and SPECTRA. A digitized
representation of the map was made by placing a 64 x 64 grid over the
map and assigning values to grid points by interpolating between contour
lines. Values were estimated to the nearest mgal. A 64 x 64 grid was
chosen because the Fourier transform method used requires data matrices
to be a power of two. The resulting 4096-point matrix also represents
a good compromise between digitizing accuracy and rapid map production.
A power spectrum plot of the Southern Cascade gravity data is shown
in Figure 5.
length falls somewhere between 90 km and 15 km.
length filter was not defined, three residual maps of cutoff wavelengths
20 km, 40 km, and 85 km were produced. These maps are presented in Plates
1, 2, and 3. The residual maps are at the same scale (1:250,000) as the
original complete Bouguer anomaly map.
of 5 mgals was also used in preparing the residual maps.
The plot suggests that the regional-residual cutoff wave-
Since a unique wave-
The original map contour interval
ce 0
E
0
.r
c
ov
m
-r
0
WE
c .I-
C,
-12-
REFERENCES CITED
Clement, W.G., 1973, Basic principles of two-dimensional digital filter- ing: Geophysical Prospecting, v. 21, p. 125-145.
Cordell, Lindrith; Grauch, V.J.S., 1982, Reconciliation of the discrete
Danes, Z.F.; Phillips, W.M., 1983a, Complete Bouguer gravity .anomaly map,
and integral Fourier transfarms: Geophysics, v. 47, no. 2, p. 237-243.
Cascade Mountains, Washington: Washington Division of Geology and Earth Resources Geophysical Map GM-27, 2 sheets.
Danes, Z.F.; Phillips, W.M. 1983b, Principal facts and a discussion of terrain corrections for the complete Bouguer gravity anomaly map, Cascade Mountains, Washington: Washington Division of Geology and Earth Resources, Open-file Report 83-1, 15 p., 145 gravity data sheets.
Gupta, V.K.; Ramani, N:, 1980, Some aspects of regional-residual separation of gravity anomalies in a Precambrian terrian: Geophysics, v. 45, no. 9, p. 1412-1426.
Programmer's Manual: New York. 454 p.
IBM, 1966, System/360 Scientific Subroutine Package (360 A-CM-03X) International Business Machines, White Plains,
Pitts, G.S., 1979, Interpretation of gravity measurements made in the Cascade Mountains and adjoining Basin and Range Province in Central Oregon: Oregon State University Master of Science thesis, 186 p.
A- i
Appendix A
FORTRAN Program RESIDUAL
*I** TSO FOREGROUND HARDCOPY **** DSNAtlE=WPGG490.RESIDUAL.PRG
C 00000020 00000030
C APPENDIX A 00000060 C 00000061 C WASHINGTON DEPARTMENT OF NATURAL RESOURCES 00000062 C DIVISION OF GEOLOGY AND EARTH RESOURCES 00000070 C OLYMPIA, WASHINGTON 98504 00000071 C 00000073
00000080 C OPEN-FILE REPORT 83-4 E 00000081 C APRIL 1983 00000082 C 00000083 C THIS PROGRAM SEPARATES A SET OF GRIDDED DATA (EG GRAVITY DATA) 00000090 C IN10 A REGIONAL( LONG-WAVELENGTH 1 AND A RESIDUAL( SHORT-WAVELENGTH 1 00000100 C COMPONENT. THE REGIONAL COriPONENT I S COHPUTED BY FILTERING OUT ALL 00000110 C WAVELENSTHS SIIORTER THAN A CUTOFF WAVELEt:GTH SPECIFIED BY THE USER. 00000120 C THE RESIDUAL I S FOUND BY SVBTRACTING THE REGIONAL COflPOtIENT FROM THE 00000130 'c O'?IGINAL DATA. THE FILT ERItlG FFOCESS I S CARRIED OUT I N THE FREQUENCY 00000140
~~
C DOHAIN BY USING A 2-DIPtENSIONAL COMPLEX FOURIER TRANSFORM. 00000150 C 00000160 C*****USING THIS PROGRAM***** 00000170 E 7 0 HUN -GRAM THE FOLLOWIt IG 'CARDS' MUST BE PL ACED BEHIND 00000180 C T I E STATENENT GO.SYSIN AT THE END OF THE PROGRAM. A CARD I S A SINGLE 00000190 C LINE OF INPUT. 00000200 P . . . . . -. .
c1 C CONTROL CARDS 0 0 0 0 0 2 1 0 -- *! I a. .>A' s OF O m . EACH -ON P lUST BE A P CIIER OF 00000220 C THO, NAXIPlUfl GRID SIZE I N OtIE DIRECTION I S 64. SIZE OF X OIRECTION 00000230 C I S I N 1ST 10 SPACES, AND SIZE OF Y DIRECTION I S I N 2ND 1 0 SPACES. 00000240 C FORMAT I S 2110. 00000250 -- 2. COtTT?iIFE THE 1st 1 0 00000260 C SPACES, FOLLONED BY THE LENGTH OF THE DATA HAP I N THE EAST-WEST 00000270 C DIRECTION I N THE 2ND 10 SPACESSAND THE LENGTH OF THE DATA MAP I N THE 00000280 C tI09TH-PJOUTH DIRECTION I N THE 5RD 10 SPACES. THESE VALUES MAY BE I N ANY00000290
C --CARD 3. LATITUDE, THEN LONSTITUDE OF THE h7J CORNER OF THE DATA HAP 00000310 -Us AS Lot :G AS TTlE 5 A l l t ALL 3 VALUtS. 00000300
C WRITE I N THIS F09MAT: 46 DEGREES,ZERD MINUTES, AND 27 SECONDS I S 00000320 C b!RITTEN AS 460027. LATITUDE TAKES UP THE 1ST 1 0 SPACES OF LINE, AND 00000330
10 mT3. r F o 0 0 3 4 0 C --CARD 4. LATITUDE AtID LOIIGITUDE OF SE CORNER OF MAP. SAME FORMAT 00000350 C AS CARD 3. 00000350 - C --CARD 5. TITLE FOR RESIDUAL FIELD OUTPUT. I F NO TITLE I S DESIRED 00000370
A N U L t A V t A ULArR L l N t OR I t i t OF D m H I L L f3E o a o 6 m o C NISTAKEN FOR A TITLE. 00000390 C----- DATA CARDS----- 00000400 C THE DATA I S STORED I N AN ARRAY THAT REPRESENTS THE WAY THE DATA 00000410
U Ut UN A f lAP. Itlt 151 R E I lS 1 l T E T m m m r aomm42o C ROW OF DATA AND THE LAST ROlJ I S THE SOUTS1HOST RON OF DATA. LIKE- 00000430 C WISE, THE LEFTHOST COLUHN REPRESENTS DATA ON THE WEST EDGE OF THE 00000440
00000450 - rinr. i t i t rittut7tJi ut x m H t . i n t n.T7li5tn ut s-m odUUFi60
C 6 4 I S USED ARRAY DIMENSIOIIS MUST BE CHANGED I N THE PROGRAM. SEE 00000480 C COHIIENTS PRECEDING EACH ROUTINE I N PROGRAH FOR DIRECTIOIIS ON L!IiAT TO 00000490
- C NAP btl0 THE RICHTtlOST COLUHN REPRESENTS DATA ON THE EAST EDGE OF THE
C DIRECTION tIUST BE A POI!ER OF TCIO( 8,16132,641.IF A VALUE LARGER THAN 00000470
C CHANGE AND HOW TO CHANGE I T . THE DATA ARRAY IS READ I N STRIPS OF 8 00000500 C COLUII.IS AT A TIME. EACH DATA CARD HOLDS 8 VALUES I N A 8F7.0 FORMAT. 00000510 C FOR EXAMPLE, I F THERE 32 ROWS OF DATA AND 6 4 COLUtlNS OF DATA, THE 00000520 C 1ST 32 CARDS HOLD VALUES FOR CDLUtlNS 1-8, THE 2ND 32 COLVHNS HOLD 00000530 e VALUES FOR COLUHNS 9-16, AtlD SO ON. I N THIS CASE, THERE NOULD BE 00000540 C 8 SUCH SETS OF 32 CARDS. 00000550 C 00000560
DItlENSfON SMLARY(64s64 1 ,BGARY( 2,128,1281 ,TREND( 3 ) ,MHARM( 3 ) 00000570 D I I m ON SIGII( 4096 1 , INVt 4096 1 ,TOtFLD( 6 4 ~ 6 4 1 PRESTRNI 3 1 00000580 INTEGER GRIDXS GRIDYSTITLE(~O)SRECNVR 00000590 COtlMON/DATAl/SMLARY/DATA2/BGARY/DATA3/SIGN~INV 00000600
C 00000610 READ( 5 ~ 1 0 1 GRIDX (GRIDY 00000620 LARGEX = 2 * GRIDX 00000630 LARGEY = 2 * GRIDY 00000640 READ(5s51 CUTOFF, XSIZE, YSIZE 00000650
5 F URt!AT?3F10.2) 00000660 READ( 5910 1 LATNWILONGNW 00000670 READ(5,lO) LATSEtLONGSE 00000680
00000690 (5,201 00000700 . 20 FOPHAT(20A4) 00000710
DO 50 I = ~ s G R I D X , ~ 00000720 DO 40 J = 1,GRIDY 00000730
L = I t 7 00000740 READ( 5,55)(SMLARY( J,K 1 ,K=I s L ) 00000750
40 CONTIHUE 000 00760 50 CONTINUE 00000770 55 F O m . 0 1 00000780
C 0 0 00 0 790 C SAVE ORIGINAL DATA 00000800
DO 70 I = l r GRIDX 00000810
1 0 FORMAT( 2110 1
-
UU 6 0 J - - 1,m o o o m P - N 00000830
00000840 TOTFLD(1,J) = SMLARY(IsJ1
6 0 CONTINUE
t 00000860 70 CONTINUE 0 00 0 085 0
C COMPUTE DECIMAL EQUIVLANTS OF LATITUDE AND LONGITUDE 00000870
- DLATtW = COINER( LATNW) 00000880 DLNGNW = COIIVERt LOHGti!J 1 00000890 O L A 1 5 t = C-I 0 0 0 ~ 9 0 0 DLNGSE = CONVERt LONGSE 1
C 00000910 00000920
C I N I T I A L I Z E BGARY 00000930
DO 100 .J=l,LARGEY 00000950 BGARY(2v1,J) = 0 . 0 00000960
.I 100 CONTIWE 0 0 00 0970
UU -1LARbtX oo-o-umio
L O U LU Om- C C COMPUTE FAST FOURIER TRANSFORM OF GRIDDED DATA
00000990 00001000
C oooo.lo1o
C 00001030 C SET THE PARAMETERS NEEDED TO ENTER HARM 00001040. - IOPT = 1 00001050
DO 385 I = 1 ~ 1 0 00001070 00001080 M 2 * * I
I F ( M.EQ.LARGEX1 tlHARM(1) = I 00001090
-rrht I I IRt-J O O O t J I T Z O
--rmb lllt LUb U A S t Z Ur b j ANU O U r n b O
.. . . .. ." .._..._..__I"I . . -. . . . ~ .. . . - . .... .. . ... .. .." . .
I F ( fl.EQ.LARGEY1 tlHARM(21 = I 00001100 385 CONTINUE 00001110
MHARH(31 = 0 00001120 C 00001130 C HARM fS.THE ROUTINE THAT ACTUALLY CALCULATES THE FOURIER TRANSFORM00001140
CALL HARM(~ARM,IOPT,IFGM)F) 00001150 fF(IFGOOF.tlEq0) CALL EXIT 00001160
C 00001190 00001200
00001230 C WRITE(6t400) 00001240 C400 FOR?thT( lH l~ ' INPUT DATA') 00001250
00001270 450 FORMAT(lH$~'REGIONAL FIELD') 00001280
WRITE ( 6 s 450 1
C COMPUTE RESIDUAL--RESIDUAL= TOTAL FIELD-REGIONAL FIELD 00001310 DO 5 0 0 I = 1,GRIDX 00001320
DO 475 J = l rGRIDY 00001330 SHLARY( I ,J) - TOTFLDtI ,J1 - SHLARY(1,J) 00001340
475 CONTINUE 00001350 500 CONTINUE 00001360
4 ) 00001380 CALL PRNMAT(GRIDX,GRIDY ,StlLARY rDLATNW,DLNGNM,DLATSE,DLNGSE) 00001390
WRITE(6,lOOO) RESTRN 00001410 - I O U U - , ' R - * 0 . 3 ) 00001420
STOP 0000143b EtD 00001440
-
WRITEt6~5251 TITLE ,00001370 -
CALL FTREtDIRESTRN,GRIDX,GRIDY) 00001400 7
C 0000 #*************** 0666 C 0000
FUNCTION COWER( LOC 1 0000 INTEGER DEG, tlINSEC, HINc SEC 0000
OR L- I N Om C OF DEGREES, MINUTES, AhD SECOtDS AND CONVERTS I T TO AN EQUIVLANT 0000 C AMOUNT I N DECIMAL DEGREES. FOR EXAMPLE, 453030, I E 45DEGREE9, 30 0000 C MINUTES, 30 SECONDS BECOMES 45.5083 DEGREES 0000 t 0000
DEG = LOC/10000 0000 MINSEC = MOD( LOC .10000 1 0000
1 1 1 1 1 1 1 1 I 1 I 1
450 3 6 0 470 480 ,490 m0 510 520 ,530 -0 550 560
I MIN MINSEC/100 00001570
CONVER = FLOAT(DEG1 t (FLOAT(MIN))/60. t (FLOAT(SEC))/3600. 00001590 3 t C - 1 1 ~ 1 1 0 0 J o o o m
RETURN 00001600 EtfD 00001610
L o o m b z o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 00001630 C 00001640 I INTEGER FUTICTION RECNVRIDLOC 1 00001650
C THIS FUNCTION TAKES A LONGITUDE OR LATITUDE I N DECIMAL FORM AND 00001670
C 45.5083 DEGREES BECOMES 453030 00001690
I R t A L Utl.,-,StL OdmnbbO
C CONVERTS I T BACK INTO DEGREES, MItIVTES ,AND SECdfDS. FOR EXAMPLE, 00001680
C DEG = AINT(DLOC1 MINSEC = DLOC - DEG
00001700 00001710 00001720
HJN = AINT(60.* HINSEC) 00001730 SEC = AItJT(60. * ( ( 6 0 . * HINSEC) - M I N I ) 00001740 RECttVR = 10000* IF IX( DEG 1 + lOO*IFIX( H I N 1 + I F I X ( SEC 1 RETURN END
000 01750 00001760 00001770
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 00001790 SUBROUTINE PRNHAT(NX,NY,HAT,DLATNW,DLNGNW,DLATSE,DLNGSE) 00001800 REAL LATINC, LNGIt:C,HAT(64,64) 00001810 INTEGER RECtlVR, LO!lG(8) IHAT(64,64) 00001820
C SET DItlEt4SIOt4S OF flAT TO GRIDXtGRIDY C THIS ROUTINE PRINTS OUT A MATRIX.
00001830 00001840
C PARANETERS ARE: NX, THE X 00001850 C DINENSION; NY, THE Y DIMENSION; AND MAT, WHICH SPECIFIES THE 00001860 C MATRIX TO BE PRINTED 0000 C 0000 C SET INCREHENTS FOR PRINTING LATITUDE AM) LONGITME 0000
LATINC = (DLATNIl - DLATSE )/FLOAT(NY 1 0000 LtlGINC = (DLNGNW - DLNGSE )/FLOAT( NX 1 0000 DO 100 K = 1,NY,8 0000 L = K t 7 0000
C PRINT LONGITUDE HEADINGS 0000 DO 20 I = 1 ~ 8 0000
J = K + I - l 0000 LONG( I) = RECNVR(DLNGNW-FLOAT( J-1 )*LNGINC) 0000
20 CONTfmTE 0000
1 1 1 1 1 1 1 1 1 1 1 i
,870 ,880 nqo ,900 910 920 930 94 0 ,950 ,960 - ,970 ,980
WRITE(6,l lO) (LOtlG(I) , I = 198) 00001990 Ob 50 I = 1,NX 00002000
LAT = RECNVRt DLATNW - ( LATINC*FLOAT( 1-1 1 ) 1 00002010 ,150) LAT,(H n(I,J),J -K,L) 00002020
50 COtlTItIUE 00002030 100 CONTINUE 00002040
110 FO- RETURN 00002050
,7X,8F7.1) 00002060 150 FORMAT( 1HO I 1 0 s8F7.1) 00002070
END 00002080 ~Y******************************************************* 00002090
C 00002110 C THIS SUBROUTINE PREPARES THE DATA FOR THE FOURIER TRANSFORM PROCESS 00002120 C PARANETERS ARE TRND, A 3-ELEMENT VECTOR THAT HOLDS A DESCRIPTION OF 00002130 C A F F n - D A T A . E I S 00002140 C A PREWHITENING COEFFICIENT. NX AtID NY ARE THE X AND Y DIHENSIOttS OF 00002150 C THE DATA GRID. ACTIONS PERFORNED BY FFTSET: 00002160
1). FINDS A BEST FITTING 1ST ORDER TREND SURFACE THROUGH THE DATA 00002170
B - P -
-
wi5- Dtm Y tJy 1 0 0 0 0 2 1 0 0
- C C A110 .t THE DC -F THE 0 c FREQUENCY SPECTRUM. *THE TREND I s ADDED BACK To THE REGIONAL DATA ::o:Po C AFTER THE FILTER PROCESS. 00002200 C 2 ) . TAPERS THE DATA. THE FOURIER TRANSFORM WILL MORE ACCURATLY 00002210 I; H t F m i - i C EDGE OF THE GRID. THE GRID I S EXTENDED BY TAPERING THE VALUES 00002230 C AT THE EDGE OF THE GRID TO ZERO USING A COSINE SQUARED WEIGHTING 00002240 - C FUtICTIOtt. A PAD OF ZEROS I S PLACED AROUND THIS ENTIRE MATRIX TO 00002250 - l X t ’ A I t A r l r l R L L - w A S L e AS rtle m r m o o o m o
00002270 C GRID I S CALLED TAPER. C THE HATRIX SHLARY I S LINKED TO GRID V IA CCHMON BLOCK DATAL. THE 00002280 C MATRIX BGARY FROM THE ElAIN PROGRAM I S LINKED TO THE MATRIX TAPER 00002290
C V IA COmON BLOCK DATA2 00002300 C SET THE DIHENSION OF WTX TO BE GRIDX/4 00002310 C SET THE DIHENSION OF WTY TO BE GRIDY/4 00002320
00002330 C 00002340 C SET THE DIHENSIONS OF GRD TO BE GRIDXsGRIDY 00002350
DIHENSION S( 3D3 1 D G ~ 3 ) ,TRM)( 3 ) ,WTX( 1 6 1 DUTY( 16 1
C SET THE DIHENSIONS OF TAPER TO BE ~ , ~ * G R I D X D ~ * G R I D Y 00002360 00 0 0 2 370 C O ~ ~ H O ~ J / D A T A ~ / G R D ( ~ ~ D ~ ~ ) / D A T A ~ / T A P E R ( ~ ~ ~ ~ ~ , ~ ~ ~ )
e IOP I S TtlE UNIT NUNDER FOR THE LINE PRINTER 00002380 IOP = 6 00002390 NX2 = 2 * NX 00002400 NY2 = 2 * NY 00002410 NXB4 = NX/4 00002420 NYB4 = NY/4 00002430 NYB2 = NX/2 , 00002440 NYD2 = NY/2 00002450'
.NY32 = 3*NYB2 00002480
00002520 PIYB4 = PI/NYBQ 00002530
t 00002540 CALL FTREM)(TRND,NXDttY) 00002550
C 00002560 C SET TAPERING PARAHETERS 00002570
DO 20 I = ~ D N X B ~ 00002580 D = (FLOAT(NXB4 - I ) ) / Z . 00002590
COS( PIXB4*D )**e 1 00002600 00002610
D = (FLOAT(NYB4 - 1 ) ) /2 . 00002630 WTY(1) = (1 - COS(PIYB4*0)**2) 00002640
30 CONTINUE 00002650
C 00 0 0 26 70 C DETREND GRID A PROFILE AT A TIHE 00002680 C COHPUTE VALUE OF TREND SURFACE AT EACH P O I t T ~ AND REHOVE I T 00002690
Y = F lOATt IY 1 00002710 DO 6 0 I X = ~ D N X 00002720
X = FLOAT(1X) 00002730 l*X + T R m Y 00002740
GRO(IXsIY1 = GRD( IXDIY) - TREND 00002750 60 CONTINUE 0 0 0 02 76 0 70 CONTINUE 0 0 00 2 770
0 00 02 780 WRITE(IOP~9O)TRNO( l),TRtM(2),TRND(3) 00002790
90 FORtlAT(1H ,'TREND SURFACE=',F6.2,' + * r F 6 . 2 ~ ' * X + ' sF6.2s8*Ya) 00002800 C DETRENOING COHPLETE 00002810 L 000vzBzp
J1 = NYB4 * 7 00002030 DO 225 I = 1,NX 0 0 0 02840 - DO 220 J = 1,NYBg 00002850
P DO 30 I - 00002620 V I - - 1vNYB4
20 COtITItUE
E 00002660
DO 70 IY = 1,NY 00002700
I J Z J t J l o o m o TAPER(1rIsJ) = 0 . 0 TAPER(lsI ,J2) = 0 . 0
220 COtITIt%JE
00002870 00002880 00002890
00002900 00002910 00002920
225 CONTINUE DO 235 I = 1,NY
J2 = J * J1 00002930 TAPER(ls1,J) = 0 .0 00002940 TAPER(l,I,JZ) = 0 .0 00002950
230 CONTINUE 00002960 235 CONTINUE 00002970
F 0 0 00 2 980 C 00002990 C PLACE MATRIX GRD I N THE CENTER OF THE MATRIX TAPER 00003000'
DO 270 I Y 1 = 1,NY 00003010 1 y 2 = 1 y 1 tIYD2 00003020
DO 230 J = 1tNX84
00003030 00003040
DO 240 1x1 = 1,NX 1 x 2 = I X 1 + Nx82 TAPER(l,IX2,IY2) = GRD(IX1,IYl) 00003050
CONTINUE 00003060 C TAPER EACH PROFILE 00003070 C 00003080
DO 250 I = l tNXE4 00003090 I P = (NXB2 *1) - I 00003100 JP = f3wNXB2) + I 00003110 TAPER(l* IP, IYZ) = GRD(19IYl) * WTX(1) 00003120 TAPERIl,JP,IYZ) = GRDINX,IYl) * WTX(1) 00003130
c o r n 00003140
n
270 CONTINUE C
00003150 00003160
C TAPER PROFILES I N THE Y DIRECTION 00 00 3 1 70
DO 280 J 1,NYBQ 00003190 'L = 33 - J 00003200
00003220 7- K = 9 6 * J 00003210
m TAPER( 1.1 ,K) 00003230 280 CONTINUE 00 00 324 0 300 CONTINUE 00003250
DO 330 I = 1,NX 00003180
- -1 ,I,-( J) TAPER( 1 p I,NY32 )*WTY( J 1
3 3 3 3 3 3 3 3 3 3
2 7 0 1280 '290 3 0 0 310 320 330 340 350 360
END 0000 C 0000 C*****WY************************************************* 0000
rn O U E U C SURFACE THROUG9 THE ARRAY I N COtPlON BLOCK DATA1. THE COEFFICIENTS 0000 C THAT DESCRIBE THE TREND SURFACE ARE I N THE MATRIX COEF. NX AND NY 0000 C ARE THE DIHENSIONS OF THE ARRAY I N DATA1, AND SHOULD BE SET TO 0000 C i n t v-. O O U T C 0000
SUBROUTINE FTREND(COEP,NXsNY) 0000 - CONHON/DATAl/GRID(64,64) 00003370 L U t t l ) J , b l S ~ 5 J s W 3) Odov33w
C 00003390 C SET DETREND PARbIIETERS 00003400
00 1 0 I = l r 3 00003410 P- u.u UodU?77ZU
COEFII) = 0 . 0 00003430 DO 9 J = 1 ~ 3 00 0 0 344 0
S ( J , I ) = 0 .0 0 0 0 0 3450
10 CONTINUE 00003470 C 00003480 C SET S I 1 , l ) 00003490
I - Y TmTrrImt
S ( l , l ) = FLOATINX) * FLOATCNY) C FIND FIRST ORDER TREND SURFACE
00003500 00003510
C A PROFILE AT A TIME 00003520 DO 50 I Y = l r N Y 00003530
Y = FLOATI IV l 00003540 Y 2 = Y * Y 00003550 DO 40 I X = 1rNX 00003560
X = FLOATtIX) 00003570 S I Y ) 00003580
S ( l r 2 1 = S( l .2 ) + x 00063590 S(2,21 = S(2,2) + X*X 00003600 S(3s21 = S(3a2) 4 X*Y 00003610 ~ ( 1 ~ 3 1 - s ( i , 3 ) + Y 00003620 -
00003630 00003640
G(2) = G(21 + Z*X 00003650 G ( 3 ) = G ( 3 ) + z*y 00003660
40 CONTINUE 00063670 50 CONTINUE 00003680
C COMPLETE THE S ARRAY 00003690 S ( Z 9 1 ) - S ( 1 , Z ) 00003700 S ( 3 , l ) = S I l e 3 ) 00003710 S(2,3) = S (3s2 ) 00003720
C 00003730 00 0 0 3740
DO 56 K = l r 3 00003750 SKK = S(K,K) 00003760
00003770
SIKsJ) = S(K9J) / SKK 00003790
-
- S(K,K) = 1.0 /
DO 52 J = 1 9 3 0 00 0 3780
P 5 2 CONTINUE 00003800
DO 56 I = 1+3 00003810 I F [ I - K J 54 (56~54 o o o o m U
54 S I K = S I I , K ) 00003830 S ( 1 r K ) = 0 .0 00003840 DO 56 J = 1 9 3 00003850
56 CONTINUE 00003870 DO 5 8 I = 1.3 00003880
DO 57 J = l e 3 00003890
57 CONTINUE 00003910 58 CONTINUE 00003920
RETURN 00003930 triu o o m o
C***************************************************************** 00003950 CTHIS SUBPOUTINE PERFORMS A DISCRETE COMPLEX FOURIER TRANSFORM ON 00003960
00003970 I1 13 h- I C 1- LA>-f >OO odmrSvau
00003990 00004000
C VECTOR DEFINING THE SIZR OF THE INPUT ARRAY, IFSETtAN INTEGER 00004010 L ~ i i r i u -K UK AN L~?RR>L 13 u u m u
- 3 1 1 9 5 1 - SI1 sJ I - S I m , J 1 00003860
- C A THREE OIHENSIONAt ARRAY. I T CAN BE DONE ON A 2-0 ARRAY AS UELL -.
C SUSROUTIIIE PACKAGE, EDITION H20-0166-2 C PARAMETERS PASSED THROUGtl THE SUBROUTINE CALL PRE: Hr A 3 VALUE
C TO DE PERFORMED, AND IFERR, AN ERROR FLAG. PARAIIETERS PASSE0 V IA 00004030 C COMMON BLOCKS ARE: A, A 1-0 ARRAY THAT HOLDS THE DATA. I T I S LItlKED 00004040 C V IA DATA2 TO BGARY I N THE MAIN PROCRAM. CMEN THE TRANSFORM I S 00004050
C TABLE; AtlD INV, A llORK AREA FOR THE ROUTINE. 00004070 C SET THE DIrlENSION OF A TO 8*GRIDX*GRIDY 00004080 C SET THE DXMEtISION OF 5 , AND OF INV TO GRIDX*GRIDY 00004090
- I ARC I R A t 3) A I - u ~1.m l n A l ~ULU:, A- u m i u u u \
C SUBROUTINE HARH(H,IFSETDIFERR) COtlMON/DATAZ/A( 32768 )/DATA3/S( 4096 1 ,INV(4096 1
00004100 00004110 COO04120
00004150 00004160 O O C Q 4 1 7 0
00004190 00004200
1 3 IFERR = 1 WRITE(6,8) -.
8 FOotlAT(lH0,'ERROR I N HARM. PROBLEH I S AT STHT 1 3 ' ) 00004210 R ETUHI4 00004220
1 4 IFERR = 0 tll = H c l )
00004230 00004240
N1 = 2**M1 N2 = 2 * W 2 t i3 = 2**H3
00004270 00004280 00004290
00004310 00004320
1 8 NX = Nl*N2*N3 FN = NX _ _ DO 19 I = 1,NX 0 0 0 04 330
A( 2361-1 ) = A ( 2 i f I - 1 )/FN 0 0 004 34 0 A ( 2 * I ) = -A(2* I ) /FN 00004350
1 9 CONTINUE 00004360 20 t lP (1 ) = l l l * 2 00004370
t l l ' l 2 1 = t P( 1 1 * t E oooor13ao NPt 3 ) = NPt 2 jYN3 00004390 DO 250 I D 193 00004400
I L = t i P ( 3 ) - NP( ID) 00004410 IL1 = IL t 1 H I = H ( I D ) 00004430 m
00004420 ? IF (n I ) 250,250,30 00004440
30 I D I F = NP( ID) 00004450
MEV = P*( t l I / 2 1 00004470 I F ( H I - HEV) 60,60,40 00004480
C 000 04490 c I F PI IS7lr?O , DO L = 1 C A S t o o m o
40 KBIT = KBIT/2 00004510 00004520 KL = KBIT - 2
DO 50 I = l s I L 1 , I D I F 00004530 1 0 4 5 L i 0 . -
00004550 00004560 00004570
L A I K J - R l K J t A I t i U m - m x T 6 L I N E S 0-0 00004590 C AtKO) = A(K) - A(KD)
T = A(KD) 00004600 00004610 A ( K D ) = A IK ) - T
00 50 K = I,KLAST,P KD = K t KBIT - C DO A STEP WITH L = l , J=O
UUUU.+bZU H I h J - A l h J I
T = A(KOt1) 00004630 00004640 A(KOt1) = A ( K t 1 ) - T 00004650
I F (HI - 1 1 250,250,52 00004670 00004600 0 0 0 0 4 6 90
- A ( K t 1 ) = A ( K t 1 ) t T - L m t 0 r n i b t . U
52 LFJRST = 3 C
C DEF - JLAST = 2**(L-2) - 1 00004700 JLAST = 1 00004710 GOT0 70 00004720
C I F H I S EVEN 00004730 60 LFIRST = 2 00004740
JLAST 0 00004750 70 DO 240 L LFIRST, H I , 2 00004760
JJDIF = KBIT 00004770 KBIT = l(BIT/4 00004780
C 00004800 C FOR J=O 00004810
DO 80 I = l ~ I L l , I D I F 00004820 KLAST = I t K L 00004830 DO 80 K = 11 KLAST, 2 00004840
K 1 = K + KBIT 00004850 K2 = K 1 t KBIT 00004860 K3 = K2 t KBIT 00004870
C 00004880 C 00 TWO STEPS WITH J=O 00004890
T = A(K2) 00004900
00004790,
00004910 00004920
A(K2) 2 A t K l -T A(K) = A(KJ t T T = A(K2 t1 ) 00004930 A(K2 t1 ) = A ( K t 1 ) - T 00004940 A(K t1 ) = A ( K t 1 ) t T 00004950
C 00004960 T = A(K3) 00004970 A m = A(K11 - T 00004930 A(K11 = A(K1) t T 00 00499.0 T = A ( K 3 t l ) 00005000 A I K 3 t l ) = A ( K l t 1 ) - T 00005010 A ( K I t 1 I = A t K l t 1 1 t T 00005020
C 00005030 T AfK1) 00005040 A(K1) = A (K I - T 00005050 A t K I = A IK ) t T 00005060 T = A ( K l t 1 ) 00005070 A(K1 t1 ) = A (K t1 ) - T 00005080
00005090 A I K t 1 1 = A (K t1 ) t T c ooomloo
R = -A (K3 t1 ) 00005110 T A(K3) 00005120 A(K3) = A(K2) - R 00005130
o o m t o A(K3 t1 ) = A ( K 2 t l ) - T 00005150 A(K2 t1 ) = rA (K2 t11 t T 00005160
80 CONTIEIUE 00005170 IF I JLEITZT~,E)>,OZ O m 6 0
82 JJ = JJDIF t 1 00005190 C 00005200 C FOR J = 1 00005210
P v)
-
ILA51 - IL t JJ O f J U U S Z O DO 85 I = JJ,ILAST,IDIF 00005230 KLAST = KL t I 00005240 DO e5 K = I D K L A S T , ~ 00005250
K2 = K 1 t KBIT 00005270
- - K l - K + m I Omnib0
00005280 00005290
K3 = K2 t KBIT
- C
C LETTING W=(l+I)/ROOT2, W3=(-1tI)/ROOT2,W2=1 R = -A(K2t1)
00005300 00005310
T = A(K2) 00005320 A(K2) = A(K) - R 00005330
00005340 A ( K ) = A ( K ) t R 00005350 00005360
A ( K 2 t l ) = A ( K t 1 ) - T A ( K t 1 ) = A(Kt1) t T
00005370 A ( K 1 ) - A ( K l t 1 ) 00005380
A W I = A ( K l t 1 ) t A ( K 1 ) 00005390 00005400 R = -A(K3) - A(K3 t 1)
T = A ( K 3 ) - A(K3t1) 00005410 A(K3) = (AWR - R)/RCOT2 00005420 A ( K 3 t l ) = ( A W I - T)/ROOT2 00005430 A(K11 = (AHR t R)/ROOT2 00005440 A ( K l t 1 ) = ( A W I t T)/ROOTP 00005450 T = A ( K 1 ) 00005(t60 A(K1) = A(K) - T 0 0 00 5470 A ( K ) = A(K) t T 00005480 T = A ( K l t 1 ) 00005490 A ( K l t 1 ) = A ( K t 1 ) - T 00005500 A(Kt1) = A(Kt1) t T 00005510 R = -A(K3t1) 00005520 T = A(K3) 00005530 A(K3) = A(K2) - R 00005540 A(K2) = A(K2) t R 00005550 A ( K 3 t l l = A(K2t11 -T 00005560 A ( K 2 t l ) = A(K2t1) t T 00005570
85 UE 00005580 I F (JLAST - 1) 235,235,90 00005590
90 JJ = JJ t JJDIF 00005600
l - . - C
00005610 ? DO 230 J = ZpJLAST 00005620 w
0
C
C DEF--W=W**INV(J), I42 = W**2, W3 = W**3 00005630 96 I = I N V ( J t 1 ) 00005640 98 I C = NT - 1 00005650
W I 1 1 = 51ICl 00005660 W(2) = S ( 1 ) 00005670
00005680 I 2 = 2*1 12C = NT - I 2 00005690 m 120,110,100 mum00
C 2 * I I N FIRST QUADRANT 00005710 100 W2(1) = S ( I 2 C ) 00005720
W ( 2 ) = S ( I 2 ) 00005730 bUlU 1.5u 00005740
00005750 W2(2) = 1.0 00005760 - GOTO 130 00005770
120 I X C = 12C t NT 00005790 IEC = -12c 00005800 W 2 ( 1 ) = -S ( I2C) 00005810 W L I L I - SlrzZLLI 0 3 3mPt20
00005330 I 3 C = NT - 1 3 . 00005840 - I F ( I 3 C ) 160,150,140 00005C50
I 15 IN r im1 NI dUU&bu 140 W3(1) = S ( I 3 C ) 00005870
W3(2) = S ( I 3 ) 00005880 00005890 GOTO 200
110 W2(1) = 0.0
c E * 1 1N 3C '-+I \ I o m 5 7 8 0
- 130 I 3 = I t I 2
,
150 H3(1 ) = 0.0 OOd05900 W3(2) = 1.0 00005910 GOTO 200 00005920
160 I3CC = I 3 C t NT 00005930 I F ( 13CC 1 190 t 180 P 170 00005940
C 13 I N SECOND QUADRANT 00005950 170 I 3 C = -13C 00005960
W3(11 = -S( I3C) 00005970 W3( 2 1 = S I I3CC) 00005980
00005990 GOTO 200 180 W3111 = -1.0 00006000
W3(2) = 0 . 0 00006010
c 3*I I N THIRD WADRAtIT 00006030 190 I3CCC = NT t I3CC 00006040
13CC = -13CC 00006050 W3( 1 ) = -S(I3CCC) 00006060 W3( 2 ) = -S( I3CC 1 00006070 ILAST = I L t JJ 00006080 DO 220 I = J J ~ I L A S T ~ I O I F 00006090
KLAST = K L t I 00006100 00 220 K = IsKLASTv2 00006110
K 1 = K 4 KBIT 00006120 K2 = K 1 t KBIT 00006130 K3 = K2 + KDlT 00006140
00006150
A(K2) = A ( K ) - R T = A(K21*W2(2) t A(K2tl)*W2(1) 00006170
00006180 A1K) = A(K) t R 00006190 A ( K 2 t l ) = A(Kt11 - T 00006200 A(Kt1) = AIKt1) t T 00006210
z: 00006220 R = A(K31wW3(1) - A(K3+l)*W3(2) 00006230 T = A(K3)*W3(2) t A(K3+11*W3(1) 00006240 Ah! = A(Kl)*W(l ) - A ( K l t l I * H ( 2 ) 00006250 A L I I = A n m i . H [ Z l t A I K l t l I * m o o m o A(K3) = AWR - R 00006270 A(K341) = A W I - T 00006280 A ( K 1 ) = AWR t R 00006290 A I K l t I J = A W I t 1 o o o m o o
00006310 T = AtK1) AtK1) = A(K) - T 00006320
00006330 AIKl = A(K) t T I = A l K l t l J 0 0 6663c10 A ( K 1 t l ) = A(Kt1) - T 00006350 A(K+l) = A(Kt1) t T 00006350 R = -AIK3+1) 00 0 06 370
A(K3) = A(K2) - R 00006390 A(K2) = A(K2) t R 00006400 A(K3t1) = A(K2t11 - T 00006410
6010 200 00006020
200
C 00 TWO STEPS WITH J NOT ZERO R = A(K2)*112(1) - A(K2tl)*W2[21 00006160 ?
c.r c,
I - A I K S I O U U P -
A l K L t l I - A I h L t l J t I o o m s z o 00006430 00006440
220 CONTINUE
230 CONTItNE 00006450 -- J J JJOIF t JJ -
I c>)> JLA’JI - L(* . ! thI t I) W m b U 240 CONTINUE 00006470 250 CONTINUE 00006480
C 00006490
C THE COMPLEX FOURIER ARE NOW COHPUTED, BUT THEIR ADDRESSES 00006500 c ARE BIT-REVERSED. THE FOLLOWING PUTS THEM I N ORDER 00006510
NTSQ = NT * NT 00006520 H3tlT = M3 - MT 00006530
350 I F (MSMT) 370,360,360 (10006540 C 00006550 c r n GREATER OR EQUAL PIT 00006560
360 JG03 = 1 00006570 N3VNT = N3/NT 00006580 r i ~ t ~ t u = NT 00006590 GOTO 380 00006600
C PI3 LESS THAN MT 00006610 370 IG03 = 2 00006620
N3VNT = 1 00006630 NTVN3 = NT/N3 00006640 MINN3 N3 00006650
380 JJD3 = NTSWt43 00006660 M2MT = M2 - MT 00006670
450 I F fM2MT) 470,460,460 00006680 C 00006690 t M2 GREATER OR EQUAL MT 00006700
460 I t 0 2 = 1 00006710 N2VtIT = -tC/lJT 00006720 MINN2 = NT 00006730 GOTO 450 0 0 0 06 740
C tl2 LESS THAN MT 00006750 470 IGO2 = 2 00006 760
00006770 NTVNZ = N'r/N2 00006 780 HINtl2 = N2 00006790
480 JJD2 = NTSWN2 00006800
550 IFcFmTfl 510 ? 00006810 HlMT = M l - MT ,560,560
N?VNT = 1
00006820 w C 00006830 N
I F tll I S GREATER THAN OR EQUAL TO MT 00006840 00006850
I U V t J T = NVNT 00006860
C 560 I 6 0 1 = 1
MINNl=NT 00006870 GOTO 580 00006880
00006890 00006900
NlVNT 1 00006910 NTVN1 = NT/N1 00006920 t1It:Nl = N1 00006930
0 0 606 940 00006950
J = l 00006960 - DO 880 JPP3 = lsN3VNT 00006970 i w 5 = IrlVlTJT) 00006980
C I F H l I S LESS THAN HT 570 I G O l = 2
- m / N l 600 J J 3 = 1
00006990 GOTO (610,620), IG03 00007000
0000701F 610 I P 3 = 1NV( JP31wN3VNT FO-KRI >U 0 m'. L-.#
620 I P 3 = INV( JP3)/NTVN3 00007030 00007040 630 I 3 = ( IPP3 t IP3)+N2 OOOC7050 700 JJ2 = 1 0 0 l J r / U 4 0
00 870 JP3 = l,HINH3
- uu CIIU Jpp2 = L,N~VIJI
IPP2 = INV(JJ2 ) t I 3 DO 860 JP2 = l,HIt#12
GOTO ( 710 B 720 1 9 IGO2
00007070
00007090 oo007080
710 I P 2 = INV( JP2 1 * N2VNT 00007100 GOTO 730 00007110
720 I P 2 = INV( JP2 1 / NTVN2 00007120 730 I 2 = I I P P 2 + I P 2 ) * N 1 00007130 800 JJl = 1 00007140
00007150 00007160 I P P l = INV(JJ1 ) + I 2
DO 850 JP1 = 1 I t l I N N l 0 0 0 071 70 GOTO f 810,820 ) I I G O l 00007180
810 I P l = INV(JP1) * NlVNT 00007190 GOTO 830 00007200
820 I P 1 = INW JP1) / NTVNl 00007210 830 I = 2 * ( I P P 1 + I P 1 ) + 1 00007220
I F ( J - 1 ) 84018451845 00007230 00007240
DO 860 JPP l = 1,NlVNT
A ( J t 1 ) = T 00007290 a45 CONTIttUE 00007300
J = J + 2 00007310 850 CONTItWE 00007320
00007330 860 CONTItUE 00 0 07340
00007350 00007360 00007370 OOOb7380 00007390
' 00007400 00007410 00007420
JJ1 2 JJ1 + J J D l
8 9 1 00 892 I = 1,NX 892 A(2*1) = -A (2* I )
? - c.r 0
- 00007470 00007480
MT = MAXO(2,MT) . 904 I F (MT - 2 O k 906,906,905
902 FORMAT(lH0,'ERROR I N HARM. PROBLEH AT STHT 9 0 5 ' ) 00007510 00007520
906 IFERR = 0 00007530 N T ==I1 0030?540
00007550 00007560 00007570 oom58- 00007590 00007600
JDIF = NTVZ . 00007610 srmr - !i.mmEnr oolRIT6zD DO 950 L 2,HT 00007630
THETA = THETA12 00007640 00007650 JSTEPP = JSTEP
JDIF = JSTEP/L 00007670 S( JDIF 1 = SIN( THETA) b0007680 JC1 = NT - JDIF 00007690
RETURN
NTVE = NT/2 C SET U# THE SINE TABLE C
L+lj FUR L = 1 - 910 THETA 2 .7853981634
JSTEP = NT
I
I JbitP = J U l t 0 0 0 ~ 6 6 0
---
S( JC1 1 = COS( THETA 1 00007700 JLAST = NT - JSTEP2 00007710 IF (JLAST - JSTEP) 950,920,920 00007720
920 DO 940 J = JSTEPsJLASTpJSTEP 00007730 JC = NT - J 00007740 JD = J t JDIF 0 00 0 7750 S(JD) = S ( J ) * SIJC1) t S(JD1F) * SCJC) 0 0 00 776 0
0 0 0 0 7750 950 CONTINUE I C 00007790 C SET UP THE INV TABLE 00007800 960 HTLEXP = NTV2 00007810
0 0 0 0782 0
i
940 COtlTINUE 00007770 i '
Ltl lEXP 1 INV(1 ) = 0 DO 980 L = l s H T
00 0 0 7830 00007840
INV( LHIEXPt1) = NTLEXP 00007850 DO 970 J = ZsLMIEXP 0000 7660
JJ = J t LHIEXP 00007870 00007880 00007890
INVf JJ) = I N W J) t HTLEXP
MTLEXP = MTLEXP/2 00007900 LMlEXP = LMlEXP * 2 00007910
970 CONTIIWE
980 CONTINUE 00007920 982 I F f I F S E T ) 12,999~12 00007930 999 RETURN 00007940
EtlD 0 0 0 0 7950 c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 00007960 C 00007970 c 00007980 C A PRESCRIBED WAVE NUVHBER AS THE CUTOFF POINT. 00007990
00008000 C FREQUENCY COHPOtfENTS HAVING A RADIAL FREQUENCY HIGHER THAN THE C FREQUENCY SPECIFIED BY THE CUTOFF POINT ARE SET TO ZERO. 00008010 c PA- ARE OF ARRAY- 0 FILTER; 00008020
O S A 2 D I t 1EIiSIONAL FREQUEh 'CY SPECTRUM USING
7 C H , WHICH COtITAINS INFORMATION ON SIZE OF C1 FOR HARM;CUT,LEtlGTH 00008030 CL C OF CUTOFF WAVELENGTH; XDIS AND YDIS ARE LEt4GTHS OF DATA NAP I N THE 00008040 P C X AND Y DIRECTICNS. HATRIX C1 I S LINKED TO BGARY VIA DATA2. 00008050 t I t L C THE INVERSE FOURIER TRANSFORH OF THE DATA 00008070 C 00008080 C SET DIHENSIOIJS OF C 1 TO Z,ZUGRIDXsZ*GRIDY 00008090
SUDROUTIftE FILTER(NXstIY,HsCUTsXDISsYDIS) 00008110 DINENSION N( 2 1 , H( 3 1 00008120 COtlXON /DATA2/C112~128,128)/OATA3/SN(4096 I s IVR(4096 1 00008130
t SI4 f i m m TO OOOQ3100
1 U Y = 0 00008140 NX2 = Z*NX 00008150 WtJX = XDIS/CUT 00008160
00003170
150 FORMAT( IHO, 'CUTOFF HAVE NUMBER I S ' tZF7.2 1 00008190 C PEGIN FILTER PROCESS 00008200 C SET YOUR PARAMETERS 00008210
NSD2 = NX/2 00008230 NYB2 = NY/2 00008240 - NXP2 NX t 2 00003250
NIQX = NSB2 t 1 00008270 NIPY = NYB2 t 1 00008280
C FILTER THE FIRST PROFILE 00008290
I WNY = YDIS/CUT ti-, KN T 0 0 0 0 ~ 5 0
&It42 - W4X * NN1 0 0 om2 :: 0
C 1 x 0 = 1
00008300 00008310
DO 520 I X = 2,NXBZ 00008320 IF(IXO.EQ.0) GOTO 510 00008330 X = FLOATtIX-1) 0 0 0 0834 0 I F ( X.LE.WNX) GOT0 520 00008350 1 x 0 = 0 00008360
510 JX = NXP2 - I x 00008370 c l ( l ~ J X , l ) - 0.0 00008380 C l (Z ,JX , l ) = 0.0 00008390 C l ( l , I X , l ) = 0.0 00008400 c1(2 , IxD1) = 0.0 00008410
520 CONTI NUE 0 0 0 0342 0 C ASSUtlE THE NYQUIST FREQUENCY I S ZAPPED 00008430
-
I F ( Y .LE .WY) GOTO 540 00006550. I Y O = 0 00008560
0 0 0 08570
C1(2 , IX , IY l ) 0.0 00008590 C l ( l , I X , I Y 2 ) = 0.0 00008600 c1(2DIx , IY2) = 0.0 00008610
525 DO 530 I X = 1,NX >> D 9 - .
C m J E 00008620 C'L GOTO 570 00008630 VI
540 CONTIEWE 00008640 1 x 0 = 1 00008650 DO 560 IX = 2 ,m 00000660
I F ( IXO.EQ.0) GOT0 550 00008670 X = FLOATtIX - 1) 00006680 R 2 = x*x + YZ 00008590
1x0 = 0 00008710 550 JX = NXP2 - I X 00008720
C l ( l , J X , I Y l ) = 0.0 00008730 C ~ s J X , l I l I - 0 .U 6 m 6 8 7 4 0 C l ( l , IX , IY i? ) = 0.0 00008750 C1(2,IX,IY2) = 0.0 00008760 C l ( l , JX , IYZ) = 0.0 00005770
o m 7 8 0 C l ( l , I X , I Y l ) = 0.0 00008790
ooooe3oo C1(2 , IX , IY l ) = 0.0 560 COltTINUE 00008810
L L t w i t t t m-rrLi o o o u 5 3 n C l ( l ,N IQX, IY l ) = 0.0 00008830
00 0 0 8 84 0 C1(2,NIQX,IYl) = 0.0 C ~ ( ~ D N I Q X , I Y ~ ) = 0 . 0 00008850
00008870 00008880 C ZERO THE FOLDING PROFILE
C IF(IYO.EQ.01 GOTO 580 00000890
7
--- ikr- 510 0 0 0 0070 0
-
- L I I L s J X > I T L I - 0.0
-
- - 570 COtlTIhVE
DO 580 .IX = 1,NX Cl ( l , IX ,NIQY) = 0.0
00008900 00008910
C1(2,IX,NIQY) = 0.0 00008920 580 JONTItWE 00008930
CALL HActl( M , - ~ B I F M I S S ) 00008940 I F ( IFHISS.EQ.0) GOT0 590 00008950 1tRITE(6,585) 00008960 KRITE(6,506) 00008970 CALL EXIT 00008980
586 FORtiAT(1H 3 ' BY SUBROUTINE FILTER. EXECUTION HAS HALTED') 00009000 590 CONTINUE 00009010
R t T U ! ? N 00009020 END 00009030
C 00009040 c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 00009050 2: 00009060 C THIS SUBROUTINE EXTRACTS THE DArA FROM THE CENTER OF THE 00009070 C FOLDED AttD TAPERED MATRIX 00009080 C 00009090
C SET DIblENSIOtlS OF BIGRID TO 2 ,2*GRIDX,2*GRIDY 00009110 SV8ROUTItJE STRIP( NX,NY 1 00009120 C O ~ 1 ~ l O I I / D A T A 1 / S M C R I D ~ 6 4 ~ 6 4 ~ / D A T A 2 / B I G R I D ~ 2,128,128) 00009130
E 00009140 00009150 NXOFF = NX/2
NYOFF = NY/2 00009160 C STRIP FOLDED AF.9 TAPERED PORTION FROM THE BIGGRID 00009170
10 DO 90 IY - - 1,NY 00009100 00009190 J Y = IY t NYOFF
DO 80 I x = 1,NX 00009200 JX = I X t NXOFF 00009210
585 FOR~lAT(1tt0~'SVBROUTINE HARM RETURNED AN ERROR CODE WHEN CALLED') 00008990
c SET -r 3- TO GRI DXvGRIDY 00009100
- 00009220 P 0 7
wo ,IY) - SIGRnn 1 ,JX, JY 1 80 CONTINUE 00009230 c1
90 COt1TIt:UE 00009240 RETUPN 00009250 t l l U 00009260
00009270 C C************************************************************** 00009280
00009290 C
C WAS REHOVED DURING THE FFTSET ROUTINE 00009310 00009320 C 00009330 C SET DIMEIISIOIIS OF ARRAY TO GRIDX,GRIOY
CO~l?lON/DATAl/ARRAY~ 64 ,64 1 00009350 DIHENSION TREN( 3 1 00009360 - C 00009370 uu t u 1 1 = 1 , r l l o o o m
OOOb9390 00009400
X = FLO4T(IX) 00009410 1Kth IJ - I I J t IKtrPT;!J*X + I K t N > J + l o m 2 0 AARAY(IXsIY1 = ARRAY(IX,IY) t TREND 00009430
6 0 COI1TINUE 0 00 0 9440 00009450 70 COtlTItlUE U U O D 9 ~ 0 U
P F t + 3 - , w l r + Y . J 00 O O n 4 0
Y = FLOAT( I Y 1 DO 60 I X = I B N X
I - n t m n END 00009470
B- i
\
Appendix B
FORTRAN Program SPECTRA
. . . . . ............. .... 1111 . . . . . ..._ ..... .... ~ ~ ~ . ~ ~ . . .~I . . . . .
I*** TSO FOREGROUND HARDCOPY f*** DSNAHE=WPGG490.SPECTRA.PRG
C PROGRAH SPECTRA 00000000 C 00000010 C BY 00000020 C DEBRA MCLEAN DISHBERGER 00000030 C 00000040 C APPENDIX B 00000041 C 00000042 C PREPARATION OF RESIDUAL GRAVITY HAPS FOR THE 00000043 C SOUTHERN CACME MOUHTAINS, HASHINGTON 00000044 C USING FOURIER ANALYSIS 00000045 C 00000046 C 00000047 C OPEN-FILE REPORT 83-4 00000048 C 00000049 C WASHINGTON DEPARMENT OF NATURAL RESOURCES 00000050 C DIVISION OF GEOLOGY AND EARTH RESOURCES 00000060 C OLYHPIA, WASHINTON 96504 000000 70
C THE POWER SPECTRUM IWICATES THE RELATIVE HAGtlXTUDES OF THE VARIOUS 00000120
C FOR EXAIIPLE, GRAVITY OR AEROMAG DATA. 00000140 C FREQUENCY COHPOtJEFJTS PRESENT I N A SET OF GRIDDED P TblO-DIHENSIONAL DATA00000130
c --------------- TO RWJ THzS PROGRAM----------------- 00000150 C ALL THAT I S NEEDED I S A TI!O-DIHENSIONAL HATRIX OF DATA POINTS 00000160 C THAT REPRESENTS A CRIDDED NAP OF SOilE GEOLOGIC OR GEOPHYSICAL C QUANTITY, FOR EXAtlPlE GRAVITY 09 AER31lAG)IETIC DATA 00000180 I C THE DATA VALUES ARE PRECEDED BY ONE COIITROL CARD. THIS CARD CONTAINS 00000190 C THE DISTANCE ACROSS THE IIAP AREA I N THE EAST-WEST AND NORTH-SOUTH 00000200 C DIRECTIONS, AND THE DIMENSIONS OF THE INPUT HATRIX. I N C O L W t ! t ~ l O 00000210 E PLACE THE DISTANCE ACROSS THE HAP AREA I N THE EAST-WEST DIRECTION I N 00000220 C KILOMETE&. IN COLUHNS 11-20 PLACE THE DISTANCE ACROSS THE HAP AREA 00000230 C I N THE NORTH-SOUTH DIRECTION I N KILOIIETERS. I N COLUXHS 21-30 PLACE 00000240 C THE NWDER OF DATA VALUES I N THE X DIRECTION I N THE DATA NATRIX. I N 00000250 E COLUIBS 31-40 PLACE THE NUilDER OF DATA VALUES I N THE Y OIRECTIOIJ I N 00000260 C THE DATA HATRIX. THE LAST TWO VALUES IWST BE PDUERS OF Tk'O. 00000270 C THE DATA VALUES ARE READ I N THE SAllE HAf4NER AS I S USE0 I N THE 00000280 C REtIDUAL-REGIOiIAL SEPARATIOfI PROGRAM. THAT I S , THE MATRIX I S REA0 0 0 0 3 2 9 0 m P s O L U l i t 4 S AT A T IHE. THUS, FIRSTTHE FIRST EICHTOLUt2C5 00000300 C ARE READ, A ROW AT A TIME, THEN THE NEXT 8 COLUtINSr A tD SO ON. EACH 00000310 C DATA LINE CONTAINS EIGllT VALUES, EACH VALUE OCCUPYING SEVEN(7) SPACES 00000320
0 0 00033 0 c . . . . . . . ............................................................... 00000340 C 00000350
DIMENSION GRAVI 2r64,64) ,HHARMI3) 00000350 DItfEtlSION SPEC( 100 1 ,RAD( 100 1 00000370
0 0 Om 360 REAL POIIER(2,7000)rHIN r INC 00000390 LOGICAL*l GRAPHIlOO)rBLANK/' '/rSTAR/'*'/ 00000400 - C 00000410
I c-v oaiib0420 READI515) XSIZEp YSIZE, GRIDX, GRIDY 00000430
5 FORMAT(LF10.0, 2110) 00000440 DO 50 I = 1.GRIDX.8 00000450
00000170 03
c-1
-
- C (FORTRAN 8F7.3 FOPMAT)
-GiTI[IX,GRmV P A P B ~ C
00000460 00000470
DO 40 J = 1,GRIDY L = I + 7 READ(5s55 1( GRAV( 1, J,K 1 BK=I, L 1 00000480
40 CONTIEIUE 0 99 094PD 5 0 CClITIt4UE 00000500 5 5 FORl1ATI 8F7.3) 00000510
C I N I T I A L I Z E THE REST OF GRAV 00000520 0 0 00 0530
, D O 100 J=l,GRIDY 00000540 G R A V ( ~ B I , J ) = 0.0 00000550
100 CONTINUE 00000560 200 CONTINUE 00000570
C 00000580
DO 200 I= l tGRIDX
C COMPUTE FAST FOURIER TRANSFORM OF GRIDDED DATA C SET THE PARAMETERS NEEDED TO ENTER HARM
00000590 00000600
IOPT = 1 00000610 C FItXl THE LOG BASE 2 OF GRIDX AhD GRIDY 00000620
DO 385 I 1 ~ 1 0 00000630 M = 2**I 00000640 I F ( M.EQ.GRIDX1 MtlARH(1) = I 00090650 I F ( H.EQ.GRIDY1 MHARM(21 = I 00000660
385 COt4TIhVE HfiARM(31 = 0
00000670 00000680
C OOOQ0690 C HARM I S THE ROUTINE THAT ACTUALLY CALCULATES THE FOURIER TRANSFDRH00000700
CALL HAR~(MHARM~IOPT,IFGOOF1 00000710 IF(IFGOOF.NE.01 CALL EXIT 00000720
C 00000730 C FIND THE POIJER OF EACH FREQUENCY COMPONENT AN0 THE RADIAL 00000740 C FREQUENCY OF EACH COMPONENT. POWER(1,XI HOLDS A POUER VALUE A t 0 00000750 C POIIER(2,X) HOLDS THE THE RADIAL FREQUENCY OF THE POUER VALUE I N 00000760 CR
1 R)
C PC!JERIl,X) 00000770 NYQX = (GRIDX/21+1 00000780 NYQY = (GRIDY/21+1 K = l
00 0 0 0 790 00000800
DO 500 I = 1,NYQX 00000810
POIIERI1,K) = (GRAVt l,I,J)**2+GRAV(2,I,J1**21 00000830 POI!ER( 2,K )=SQRT( I FLOAT( 1-1 )/XSIZE 1**2 00000840
K = K + 1 00000860 450 CONTINUE 00000870 500 COt4TINUE 00000830
-- DO 450 J = 1,NYQY oooooazo
0 0 0 ~ 0 $+( FLOAT( J-1 )/YSIZE 1**2 1
NUtlRUN = K-1 oog028_90 t 00000900 C BREAK THE RANGE OF FREQUENCIES PRESENT INTO TUENTY SUBDIVISIONS. 00000910 C FIIJD THE AVERAGE POllER OF FREQUENCY COI1POtJENTS WITHIN EACH 00000920 I C SUBDIVISION. ZERO RADIAL FREQUENCY I S TREATED AS A SEFARATE CASE. 00000930
00 0 0 0 94 0 SPEC(11 = A L O G ( P O ! ~ E R ( ~ B ~ ) I 00 000950 RAD(11 = POWER(2il) 000 0 0960
00000970 INC = POU-1/20. 0066r980 DO 700 A = 1,20 00000990
LOW = FLOAT( A-1 )*INC 00001000 HIGH = FLOAT( A )*INC 00001010
0 0 0 GI07 0 COUNT = 0.0 00001030 DO 650 B = ~BNU::RUN 00001040
00001050
C
- I
I SUI1 - 0.0
I F ( ( POHER( 2 9 B 1. LE. LOU 1 .OR. ( POWER( 2 ,B 1. GT. HIGH 1 1
$ GOTO 650 00001060 SUM = SUM + POWER(1,B) 00001070 COUNT =COUNT t 1 00001080
650 COJIIJUE 0 0 0 01 090 I F (SUM.GT.O.0) GOTO 660 00001100 SPEC(At1) 0.0 00001110 GOTO 670 00001120
660 SPEC(A+l) = ALOGfSUMKOUNT) OOOQ1130 670 RAD(At1) = (FLOAT(A)-.5!*INC 00001140 700 CONTIIIUE 00001150
C 00001160 - WRITE( 6,900 1 00001170
900 FORMAT(lH0,' RADIAL FREQUENCY',lOX,'POWER') 00001180 DO 950 I = 1.21 00001190 _ _ - - NRITEI 6,975 1 RAD( I 1 ,SPEC( I) 00001200
950 COIITINUE 00001210 975 FORMATtlH rlOXsF6.3,10X,F7.2) 00001220
C 00001230 C 00001240 C MAKE A PLOT OF POWER SPECTRUH 00001250
b!RITE(6,990) 00001260 990 FORtlATIlH-~'PLOT OF POWER SPECTRUM') 00001270
DO 1000 N= 1,100 00001280 GRAPH( N 1 BLANK OOOQ290
1000 CONTINUE 00001300 C 00001310
00001320 00001330
N = IF IX(SPEC( l ) * lO. 1 GRAPHIN) = STAR WRITE!6,1200)RAD(l)~GRAPH 00001340 GRAPHIN) = BLANK 00001350
00001360 DO 1100 I ,= 2 ~ 2 1 00001370
GRAPHtN) = STAR 00001390 IIRITE( 6 , 1200 1 RAD( I 1, GRAPH 00001400
-
C
9 " - N = I F I X ( SPEC( I )* lo. ) 00001380 w
1410 - I
11
11 11
00001480 C******************************************************** 00001490 C SUBRO'JTINE Pi?tIIlAT(NX,NY ,MAT 1 00001500 C C~II~ON/DATAl/SPIGRID( 6 4 ~ 6 4 )/DATA2/BGGRID( 2,128,128 1 00001510 C 00001520
1100 CONTINUE 00001
II
-
WRITE(6t1250) 0000 GRAFtI(N1 = BLANK 0000
1200 FORIlATIlH ,F6.3,10bAl) 0000 1250 FORHAT(1H 1 0000
STOP 0000 Eli0 0000
C
4 2 0 .430 .440 ,450 .460 !470
C THIS ROUTINE PRINTS OUT A MATRIX, OR IHE f m E D AtlD TAF€RED NATRIX. PARAtlETERS ARE: NXr THE X
EITHER THE ORIGINAL DATA MATRIX 00001530 00001540
C D ~ I l E t t S I O N ~ NY, THE Y DIMENSICtIi AND MAT, CMICH SPECIFIES I F 0 0 0 01550
- C THE LARGE OR SMALL MATRIX I S TO BE PRINTED 00001550
00001570 C DO 100 K - 00001500 C - 1*NY,16 C L = K t 1 5 00001590 C DO 5 0 I = 1,tIX 00001600
m' ITE(6 , lbO) ( - !XtVEitI ,J)sJ -K*L ) - 00001610
0 0 0 0 1 6 2 0 C GOTO 5 0 00001630
- I C I F IMAT.EQ.1) GOTO 2 5
C25 00001640 C50 CONTIhVE 00001650
IIRITE( 6,150 1( BGGRIDC 1 ,I* J) , J=K, L 1
6
ClOO CONTINUE C RETURN C150 FORMAT( 1H 916( F7.1) 1
00001660 00001670 00001680
~Y~*******~*****Y************************************************* 00001710 CTHIS SUBROUTItIE PERFORMS A DISCRETE COMPLEX FOURIER TRANSFORM ON 00001720
C I!lIICH I S KHAT DONE I N THIS CASE. THIS I S FROM THE IBM SYSTEW360 000 0 1 740 C SUBROUTINE PACKAGE, EDITION H20-0166-2 00001750 C 00001760
00001780 00001790 00001800
1 2 ElTT = EIAXO(M(l),M(2)rM(3)) - 2 00001820 ROOT2 = SQRT(2.1 00001830 I F (HTT - H T I 1 4 9 1 4 ~ 1 3 00001840
13 IFEAR = 1 0000185.0 KRITE( 6 ~ 8 1 00001860
8 FOIIHAT(1HO~'ERROR I N HARM. PROBLEM I S AT STMT 13') 00001870 RETURN 0 0 0 0 1880
1 4 IFERR = 0 00001890 MI = H ( l 1 00001900 HZ = M(2 ) 00001910 M3 M(3) 00001920 ~i = 2** rn OOOOJ930 N2 = 2*W2 00001940 N3 = 2 * W 3 00001950
1 6 I F ( IFSETI 18,18920 00001960
FN = NX 00001900 DO 19 I = 1eNX 00001990
A( 2 * I - 1 1= A( 2 * I - 1 )/FN 00002000 A(2*11 -A(2* I ) /FN 0 ~ _ 2 0 1 0 -
19 CONTIIXJE 00002020 20 NP(11 = N l * 2 00002030
NP( 2 1 = NPI 1 )*N2 00002040 NP(31 = NP(2)*N3 00002050 DO 250 I D = 1,3 00002060
I L = NP(3) - NP(1DI 00002070 I L 1 = I L t 1 00002080 M I = M l I D ) 00002090 I F ( H I ) 250,250,30 00002100
30 I D I F = t.(P(ID) 00002110 KBIT = N P ( I D I 00002120
I HEV = 2*(MI/21 00002130 I F ( H I - NEVI 60,60,40 00002140
C 00002150 C I F M I S ODD P DO L = 1 CASE 00002160 40 KBIT = KBXT/2 0000_2170
F - E T - 2 00002180 DO 50 I = l , I L l , I D I F 00002190
KLAST = KL t I 00002200
C A THREE DIHENSm3AL ARRAY. I T CAN BE DO!IE ON A 2-0 ARRAY AS WELL 00001730
SUBROUTINE HARM( M,IFSET 9 IFERR 1 00001770 CONtlON/DATAl/A( 32768 )/DATA3/S( 4096 1 ,INV( 4096 DIHEtlSION N I 3) r M ( 3) ,tlP( 3),W( 2 ,W2( 2 ),W3( 2 1 EOUIVALEI!CE(Nl ,N( 1 1 1 ,(N29N( 2 ) ) ,(N3,N( 3) 1
1 0 I F ( IABSf IFSET) - 1) 900,900,12 0 0 0 0 ~ ~ 1 0
18 NX = Nl*N2*N3 00001970 w - 1 P
__.
I DO 50 K = I,KLAST,2 0 0% -. :io II KD = K t m 00002220
C DO A STEP WITH L = l , J=O 00002230 C 00002240 C AIKD) = A(K) - A(KD1 00002250
A(K1 = A(K) + A(KD) THIS IS THE EFFECT OF THE NEXT 6 LINES
. . . .I -. ...... .~ ~ . .. . . ___ .. .. ~ .. I.. .. ” ~ - - ~~_II... .. . . . .. .. ..~. . ... - . . .. ..,..I_ ..~ ......... . . . .
T = AtKO) 00002260 AtKO) = A(K) - T GOO02270
00002280 A(K) = A(K) t T T = A(KD+l ) PQQQ222D A(KDt1) = A (K t1 ) - T 00002300
00002310 A ( K t 1 ) = A (K t1 ) t T 50 COtlTItNE 00002320
I F (HI - 1) 250,250952 0 QD323’30 5 2 LFIRST = 3 00002340
C 00002350 C DEF - JLAST = 2**(1-21 - 1 00002360
C I F ?I I S EVEN 00002390 60 LFIRST = 2 00002400
JLAST = 0 00007410 70 DO 240 L = LFIRST, HI, 2 00002420
JJDIF = KBIT 00002430 KBIT = KBIT/4 00002440 KL = KBIT .- 2 00002450
C 00002460 00002470 C FOR J = O 00002480
KLAST = I t K L 0 QQQ2490 DO 80 J( = 11 KLASTI 2 00002500
K 1 = K t KBIT 00002510 K2 = K 1 t KBIT 00002520 K 3 = K2 t KBIT 00002530
00002540 C C DO TWO STEPS WITH J=O 00002550
T = A(K2) 00002560 m A(K2) = A(K) -T 00002570 A(K) = A ( K I + T 00002530
I a - T = A (K2 t1 ) 00002590
r A(K2 t1 ) = A (K t1 ) - T 00002600 A I K t 1 ) = A1Kt1) + T 00002610 -
C 00002620 T = AIK3) 00002630 A(K3) = A(K1) - t 00002640 A(K1) = A(K1) t T 00002650 T = A(K3 t1 ) 00002660 A(K3 t1 ) = A ( K l t 1 ) - T 00002670 A I K l t l ) = A ( K l t 1 ) t T 00002680
C 00002620 T = A(K1) 00002700 A(K1) = A l K ) - T 00002710 A(K) = A1K) t T 00002720
-
T = A ( K 1 t l ) 00002730 A I K l t 1 ) = A ( K t 1 ) - T 00002740 A ( K t 1 ) = A ( K + l ) t T 00002750
.... C 00002760
R = -AIK3+1) 00002770 T = A(K3) 00002780
00002790 A(K3) = A(K2) - R AIK21 = A(K2) t R 00002800 A(K3 t1 ) = A IK2 t1 ) - T 00002810 - A m 2 t 1 ) = A I K 2 t i ) t T 00002620
80 CONTINJE 00002030 I F (JLAST) 235 ,235~82 00002840
82 JJ = JJDIF t 1 00 002850
.I
-
. . . . . . .. . . . .. . .. . . .. . . . . . . . . ~__lll~_.-l ~ - ..~" . . . . . . . .
00003460 I 2 C = -12c W2(1) = -S( I2C) 00003470 W2I21 = S(I2CC) 00003460
130 I 3 = I + I 2 OO&Q3490 I 3 C = NT - I 3 00003500 I F ( I 3 C ) 160,150,140 00003510
C I 3 I N FIRST BUARDRAI.41 00003520 140 W3(1) = SI13C1 00003530
W3(2) = S ( I 3 ) 00003540 GOTO 200 00003550
150 W3C1) = 0.0 00 00356 0 W3(2) = 1.0 00003570 GOTO 200 00003560 I3CC = I 3 C + NT 00003590 IF ( I3CC) 1 9 0 ~ 1 8 0 ~ 1 7 0 00003600
C I 3 I N SECOND QUADRANT 00003610 170 13C = -13C 00003620
H3(1 ) = -S(13C) 00003630 W3(2) = S(I3CC) 00003640 GOTO 200 00003650
180 W311) = -1.0 00003660 W3(2) = 0.0 00003670 GOTO 200 00003680
000036CO 190 I3CCC = NT + I3CC 00003700
I3CC = -13CC 00003710 W3(1) = -S(I3CCC) 00003720
16 0
C 3 * I I N THI ID QUADRANT
W3(21 = -S(I3CC) 00003730 - 200 ILAST = I L + JJ 00003740
DO 220 I = JJIILAST,IDIF 00003750 W 1 KLAST = KL + I 00003760 4 _ _ - -
DO 220 K = IpKLASTp2 00003770 - 00003780 K 1 = K + KBIT
K2 = K1 + KBIT 0 0 0 03790 K3 = K2 + KBIT 00003800
C DO TWO STEPS WITH J NOT ZERO 00003010 R = A(K2)*112(1) - A(K2+ll*W2(2) 00003820 T = A(K2)*W2(2) + A I K 2 t l ) ~ W Z ( l ) 00003530 A(K2) = A(K) - R 00003840 A(K) = A(K) + R 00003E50 A(K2+1) = A(K+l ) - T 00003860 A(Kt1) = A(Kt1) + T 00003670
C 00003080
At11 = A(Kl)*IJ(2) + A ( K l t l ) * W I l ) 00003920 AtK31 = AI.! .. R 00003930
00003940 A(K1) = Ah? + R 00003950 A(K1+1) = A l l 1 + T 00003960 T = A(K1) 00003970 A ( K 1 ) = A ( K J - T Om%30 A(K) = A(K) + T 00003990 T = A(K1+1) 00004000 A ( K 1 + 1 ) = A(K+l) - T 00004010
o m 2 0 R = -A(K3+1) 00004030 T = A(K3) 00004040 A(K3) = A(K2) - R 00004050
O A ( K 3 t l ) = A N - T
- " A ( K + 1 ] = A 1 K + l ) + T
00004060 00 0 04 070
A(K2) = A(K21 t R
A(K2+1) = A(K2+1) + T 000040CO
00004100 00004110 230 CONTINUE OObO4120
240 CONT1t:UE 00004130 250 COII1It:'dE 00004140
00004150 C 00004160 C THE COMPLEX FOURIER ARE NOW COFlPUTED, BUT THEIR ADDRESSES
C ARE BIT-REVERSED. THE FOLLOUItIG PUTS THEM I N ORDER 00004170 00 0 04 180 00004190
350 I F (M3IlT) 370,360,360 00004200 00004210
00004230 360 IG03 = 1 00004240 N3VNT = N3/NT
MINt.13 = NT 00004250 00004260 GOT0 380 00004270 C M3 LESS THAN HT
370 I 6 0 3 = 2 00004280 N3Vb4T = 1 00004290 NIVN3 = NT/N3 .00004300 MINN3 = N3 00004310
380 JJD3 = NTSQ/N3 00004320 M2HT = M2-T - 00004330
450 I F (tl2MTI 470,466,460 00004340
AIK3+1) = A(K2+1) - T ... .
220 CONTINUE oogmoco JJ = JJDIF t JJ
2 35 JLAST = 4rJLAST t 3
NTSQ = NT * NT M3HT = M3 - MT
C C M3 GREATER OR EQUAL MT 00004220
0 0 0 0435 0 C
C M2 GREATER OR EQUAL MT 00004360 0 0.0 04370
00004390 MINt.12 = NT GOTO 480 nnnnadnn
460 IG02 = 1 N;niT = N2/NT OOb04380 C X J - I
03 " " " " T ~ " "
- C M2 LESS THAN MT 00004410 4 7 0 1 6 0 2 = 2 n n n ni. A D n
"UU"-?.~U ~-
00004430 N2VNT = 1 NTVtl2 = NT/N2 h 00004440 MItlN2 = N2 ,"9
4 8 0 l S Q / N 2 00004460 00004470
550 IF(MlMT1 570,560,560 00004400 Mlt lT = M l - MT
C 0 0 ~ 0 --N OR EQUAL TO HT 00004500
560 I G O l = 1 00004510 00004520 - MIIIII l=NT 0 0 0 0453 0
00004550 00004560 COO04570 NlVNT = 1
N I V t U = N r / N 1 065aG5XO OOOO(r590 MINNl = N1 C 0 0 04600 580 J J D l = NTSQ/Nl
600 J J 3 = 1 0000<610 I J = l o m 6 2 0
00004630 OOOC4540 GO004650
NlVNT : tJl/NT
G o r D 5 c o OiirnT540 C I F MI I S LESS THAN MT
570 I G O l = 2
DO 880 JPP3 = lsN3VNT IPP3 = I t t V ( J J 3 1 DO 070 JP3 = l,MItJN3
" , . I" """ ..._I. . .. ... . . .. .. . . .... . .... . .... . . .. .. . . ~ ~ .~ - ~ . . . . -. "..,.I. . . . . . ... . ,..-I" .."....-..I --- .. - ..-I_. . .- -~ L~ ..
GOTO ( 610,620 1 , I 6 0 3 00004660 610 I P 3 = INV(JP3)*N3VNT 00004670
GOTO 630 00004680 620 I P 3 = INV(JP3WNTVN3 00-690
00004700 630 I 3 = ( I P P 3 + 1P3)*N2 00004710 700 JJ2 = 1
DO 870 JPP2 = lrN2VNT 00004720
-
I p p 2 = INV(JJ2 ) + I 3 00004730 DO 8 6 0 JP2 = 1rHIEIEIZ 0000474 0
GOTO (710,720),1602 00004750 710 I P 2 = INV(JP21 * N2VNT 000 0476 0
GOTO 730 00004770 72 0 I P 2 = INV(JP21 / NTVN2 00004780 730 I 2 = ( IPPZ + I P 2 ) * N l 00004790 800 JJ1 = 1 00004800
DO 860 JPP l = 1,NlVNT 00004810 I P P l = INV(JJ1 ) + I 2 00004820 DO 850 JP1 lgMINN1 00004830
GOTO (810,820)e I G O l 00004840 810 I P 1 = INV(JP1) * NlVNT 00004850
GOTO 830 00004860 820 I P 1 = I N V I JP1) / NTVN1 00004870 830 I = 2 * ( I P P I + I P 1 ) + 1 00004880
IF ( J - 1 1 840,845,845 00304890 T = A ( I ) 00004900 84 0 A ( 1 ) = A ( J ) 00004910 A I J ) = T 00004920
--- 00004930 T = A ( I + l ) A( 1+1 1 = A( J+l) 0 0 0 04940 A ( J + l : = T 00004950
-
IXI 845 CONTINUE 00004960
J = J + 2 00004970
JJ1 = JJ1 + J J D l 00004990 860 CONTItWE 00005000
870 COIITINUE 0 00 05020 553 = JJ3 + JJD3 00005030
880 CONTINUE 00005040 890 I F ( IFSET) 891,895,895 0 0 005050
-2 I = 1,NX 00005060 892 A ( 2 * I ) = -A (Z* I ) 00005070 895 RETURN 00005080
z: THE= AND ARE COMPUTED HE RE OOOG5100 C 00005110
900 HT = MAXO(MIl)r t I (Z),M(3)) - 2 00005120 ElT = MAXO(29MT) - 00005130
905 IFERR = 1 00005150 WRITE( 6 9 902 1 00005160
902 FCRHAT(1HOp'ERROR I N HARM. PROBLEM AT STMT 905'1 00005170 R E m N OGiitiSi-60
906 IFERR = 0 00005190 NT = 2**ElT 00005200
I NTV2 = NT/2 , 00005210 " Ih t m t o o d a m o
C 00005230 C THETA = PIE/2**(L+1) FOR L = 1 00005240
910 THETA = .7853981634 00005250
850 CONTINUE 00004980 A -
- JJ2 = JJ2 + JJD2 0 0 0 ~ 0
C 0 0 0 0 5 ~ 9 0 -
904 i t ( r i i - 2 0 ) 906 9906 *SO> 0 0 0 05-14 0 -
JSTEP = NT 00005260 JDIF = NTV2 00005270 S( JDIF 1 = SIN( THETA I 00005200
oQ90-5290 TtiETA = THETA/2 00005300
DO 950 L = 2,llT
JSTEPZ JSTEP JSTEP = JDIF
00005310 00005320
JDIF = JSTEP/2 00005330 SC%FI = SINfTHETAI 00005340 J C l = NT - JDIF 00005350 S( JC1) = COS( THETA) 0 00 0535 0 J e S T = NT - JSTEPZ 00005370 IF l JLAST - JSTEP) 950,920~920 00005300
920 DO 940 J = JSTEPsJLASTpJSTEP 00005390 JC = NT - J 00005400 JD = J + JDIF 00005410 S(JD) = S ( J ) * S I J C l I + S(JD1F) * S(JC) 00005420
940 CONTINUE 00005430 950 CONTINUE 00005440
C 00 0 05450 C SET UP THE INV TABLE 00005460
966 MTLEXP = NTV2 00005470 LHlEXP = 1 00005480 I N V ( L I = 0 00005%90 DO 980 L = ~ D M T 00005500
INVI LHlEXP* l ) = MTLEXP 00005510 DO 970 J = 2rLt t lEXP 00005520
I N V I J J I = I N V ( J 1 + MTLEXP 00005540 JJ = J + LMlEXP 00005530 --
970 CONTINUE 00005550 pr I MTLEXP = HTLEXP/2 00005560 e
LEllEXP = LMlEXP * 2 00005570 0 - 986 CO>llftRJE 000055SO 982 I F ( IFSET) 1 2 , 9 9 9 ~ 1 2 00005590 999 RETURN 00005600
WASHINGTON STATE DEPARTMENT OF NATURAL RESOURCES BRIAN J. BOYLE, Commissioner of Public bnda ART STEARNS. Supervisor SOUTHERN CASCADES, WASHINGTON DIVISION OF GEOLOGY AND EARTH RESOURCES
RAYMOND M A N I S , Stm OIologist OPENFILE M l o f 3 &#u
Topo~.phu bsw map from portions of the Hoquiarn, The D.lln. Vamouver. and Yakirna 1 :250,000 USGS map series.
MAP LOCATION
UU
_.__C - - - - N
I
RESIDUAL GRAVITY MAP OF THE SOUTHERN CASCADE MOUNTAINS, WASHINGTON
85 KILOMETER CUTOFF WAVELENGTH
BY DEBRA MCLEAN DlSHBERGEt?
1983
This map is designed to serve as a companion work to the Complete Bouguer Gravity Map, Cascade Mountains, Washington (Sheet 2. Southern Cascade Mountains), by Z. F. Danes and W. M. Phillips, Washington Division of Geology and Earth Resouras Geo- physical Map GM-27.lS83.
WASMINOTON STATE DEPARTMENT OF NATURAL RESOURCES BRIAN J.BOYLE,Commhsiamof P M k Lrndr ART STEARNS. Supmviaor
1
SOUTHERN CASCANS, WASHINGTON DIVISION RAYMDNDLASMANIS,mOIokobt OF GEOLOCSY AND EARTH RESOUR-
Topoprohic bne m8P fmm portiona of the HoquIm, m Daller, Vanwuwr, and Y a k h a 1 :260,000 USGS mw series.
MAP LOCATION
N I RESIDUAL G ~ V X T Y MAP OF
THE SOUTHERN CASCADE MOUNTAINS, WASHINGTON 40 KILOMETER CUTOFF WAVELENGTH
L
BY DEBRA MCLEAN DISHBERGER
1983 Scale$ 1250,000
This map is designed to serve as a mmpmnion work to the Complete Bougwr Gravity Map, Cascade Mountains, Washington (Sheet 2, Southern Cascade Mountainrl. by Z. F. Dams and W. M . Phillips, Washington Division of Geology and Earth Resources Gw- physical Map GM-27.1983.
WASHINGTON STATE DEPARTMENT OF NATURAL RESOURCES BRIAN J. BOYLE, Commirrionsr of Public b n d s ART STEARNS. Suglrvim
OPENFILE OF834 DIVISION OF GEOLOGY AND EARTH RESOURCES SOUTHERN CASCADES, WASHNOTON RAYMOND W A N I S , Srrts ' g u t 3 o f 3
I .~ _. ---- ~ l i l t - - ._ . _ _ _ - __ . - - -__ ___ -- r l - nco-1 I . ..I CUIIIL.,. ,. "*
Topqaphc b . ~ ~ I V from poniom of the Hoquian, Th. mb. vancwm, and Yakimw 1:ZSO.MX) USGS map soria.
MAP LOCATION
RESIDUAL GRAVITY MAP OF THE SOUTHERN CASCADE MOUNTAINS, WASHINGTON
20 KILOMETER CUTOFF WAVELENGTH
BY
DEBRA MCLEAN DISHBERGER 1983
This map is designed to serve as a companion work to the Complete Bouguer Gravity Map, Cascade Mountains, Washington (sheet 2, Southern Cascade Mountains). by 2. F. Danes physical and Map W. GM-27,1983. M. Phillips, Washington Division of Geology and Earth Resourcar Geo-