Sie sind auf Seite 1von 23

Seismic Interferometry

MATLAB labs associated with the "Seismic Interferomtery" book are below. Some labs require a Fortran compiler and the Seimsic Unix package (http://www.cwp.mines.edu/cwpcodes/) for viewing results. The 5.9 Gbyte tar file is at COMP.Inter.LAB1.tar.gz and can be extracted in a LINUX system with the command "tar zxvf COMP.Inter.LAB1.tar.gz". Contributions of important MATLAB interferometry labs will be entertained; if they are accepted then you will be acknowledged in the lab. Labs should follow the format in the labs below.

Seismic Interferometry by Gerard T. Schuster (Cambridge Press, 2009) MATLAB Exercises


o

Chapter 1: Overview SSP-> SSP: SSP multiples into primaries Part I

Chapter 2: Convolution and correlation theorems Poststack diffraction stack modeling


Point scatterer imaging by poststack migration Prestack diffraction stack modeling and migration Stationary phase exercise Spectral deconvolution exercise

Chapter 3: VSP-> SWP correlation transform


Finite difference modeling lab Redatuming by integral equation interferometry Redatuming by finite-difference interferometry VSP->SWP: Interferometric salt flank migration

Chapter 4: VSP->SSP correlation transform


VSP -> SSP: Wave equation migration and VSP interferometry VSP -> SSP: Diffraction-stack migration and VSP interferometry VSP -> SSP: Diffraction-stack migration and VSP specular interferometry (needs Fortran compiler and SU)

Chapter 5: VSP->SSP convolution transform

VSP->SSP: convolutional traveltime interferometry

Chapter 6: SSP->SSP correlation transform


SSP -> SSP: interferometric interpolation Extracting wavelet from Sigsbee SSP Data Extracting wavelet from Simple SSP data SSP -> SSP: SSP multiples into primaries Part II SSP -> SSP: surface wave prediction and subtraction

Chapter 7: VSP->VSP correlation transform

Interferometric interpolation of OBS data with matching filter (needs Fortran compiler) Interferometric extrapolation of OBS data

Chapter 10: Stochastic Interferometry

Reflectivity from random sources

Commentary on Book

rimaries Lab: Part I

Figure 1. Computed and theoretical trace g(A,t|B,0) for the two-layer model. This result computed by MATLAB program in exercises of Chapter 1. There is a phase shift problem in the predicted wavelet because the theory is for 3D yet the integral implementation is over a 2D line. Objective: Learn to model synthetic seismograms and interferometrically transform SSP 1storder multiples into primaries. Lesson learned 1. Interferometric redatuming works under far field approximation but has errors. 2. Errors increase as reflector approaches free surface. Procedure:

1. Make a directory, and load into it the files twod.m, corrsum.m, forward.m, xcorr.m, and

ricker.m. 2. Type "twod" in Matlab to run the program to forward model SSP (surface seismic profile) shot gathers in a 2-layer model. Only the primaries, 1st- and 2nd-order multiples are generated. These data are also correlated and summed to produce redatumed data on the surface. In this case 1st-order multiples turn into primaries and 2nd-order multiples become 1st-order multiples. 3. Why don't you see 2nd-order multiples in the redatumed data? 4. The correlation-summation is a far field approximation to the exact equations discussed in Chapter 2. Decrease the thickness d of the layer and show that the errors become worse. 5. The data aliasing condition is such that the geophone spacing should be less than half the wavelength. For a 20 Hz wavelet and a layer velocity of 1 km/s, what is the wavelength? Adjust the geophone sampling interval dx so that it violates the anti-aliasing criterion. Do the errors increase or decrease? 6. Decrease the aperture of the data. What happens to the error? 7. After reading Chapter 2, replace one of the monopoles by a dipole. Does the noise decrease? 8. Incorporate the direct wave into the forward data. How does this affect the redatumed result? 9. If A was at one end of the model and B at the other end of the model, why would you expect the redatuming not to work? (Hint: correlating a primary with a 1st-order multiple transforms into a primary. Is there such a multiple available in the data for this wide aperture primary?) 10. Load in twod1.m, half2.m, and corrsum2.m. Now type in twod1.m. This version corrects for the wavelet distortion due to a line source (thanks to Jorge Schleicher).

Diffraction Stack Modeling Lab

Figure 1. (Top) Syncline reflectivity model and (bottom) ZO seismic traces.

OBJECTIVE:
Generate Zero-Offset (ZO) synthetic data with a MATLAB script that computes diffraction stack (DS) modeling. Reinforce idea that DS only models primaries, accounts for diffractions, and follows theoretical formula.

PROCEDURE:
1. Load into your working directory all MATLAB scripts. The important MATLAB scripts are for diffraction stack modeling (zomodel.m), Ricker wavelet generator (ricker.m), and ZO data modeler (model1.m). Name each file by their names given above. 2. In MATLAB, type "zomodel" to generate ZO synthetic data for a syncline model. Data are in 1-way travel time. To examine the reflectivity model simply type "imagesc(MIG')". Examine the model1.m code and convince yourself that it honors the diffraction stack algorithm.

3. Spurious diffraction energy will appear on data if the distance between adjacent scatterers is too coarse. Try to figure out rough rule of thumb for grid size and wavelength so a string of scatterers can faithfully represent the ZO reflections without unwanted spurious diffractions. 4. Different Models: Go into zomodel.m and design your favorite model. Then run the programs again. 5. Insert the obliquity factor in the forward modeling code (i.e., cos(theta) where theta is the angle between source-image ray and neormal to surface where geophones are located). What is the effect of the obliquity factor?

Poststack Migration Lab

Figure 1. (Top) Poststack data and (bottom) associated migration image. There are 6 point scatterers embedded in the homogeneous velocity model and both modeling and migration are diffraction stack.

Objective: Execute program post.m to reproduce above figure. The data are produced by ray tracing and the migration is by diffraction-stack migration. Procedure:
1. Download the following programs: post.m, ricker.m, migrate1.m, model1.m, plotit.m,

xcorr1.m. 2. Type post.m to generate the above picture for a single scatterer model. The animation displays the partial migration image as the code sequentially migrates each trace, one after another.

Exercise in Prestack Migration under the Born Approximation


Goal: The goal is to learn how to compute prestack migration images under the Born approximation for prestack data. Expected Outcome: Valuable prestack migration tool for generating synthetic shot gathers. Skills Learned: Connecting theory and mathematics of Lippmmann-Schwinger Born approximation to generating migration images by MATLAB code. Procedure:
1. Download the prestack migration+modeling program migrate1.m and Ricker wavelet

generator ricker.m. Also download the traveltime modeling program Mray.m and an example traveltime modeling program raymodel3.m, plotting routine plot1.m, and the prestack migration subroutine migvsp.m. Also download the model velvector vector in ascii format. The velocity model "velvector" is a vector of the velocity model in units of m/s. To display it type
load velvector; %or load velvector.mat vel=reshape(velvector,501,201);imagesc(vel');

2. Examine the migration subroutine migvsp.m and convince yourself it performs

prestack migration. 3. Type migrate1 in MATLAB and generate final image. Which parts of image are well resolved and which parts are poorly resolved? Why?

4. Current image is for every fifth shot gather. Test image results using coarser shot sampling. Comment on why image changes. Repeat test for finer sampling. 5. Why are the imaged reflectors deeper than they are in the actual model? Hint, look at Ricker wavelet and how it is shifted from time zero. 6. Implement dip limitation on code. Does it eliminate artifacts. Apply AGC to final migration image. Does it help bring up amplitudes. Would AGC applied to data be roughly equivalent? 7. Apply obliquity factor to code. Comment on accuracy of resulting image compared to previous images.

Stationary Phase Lab


Figure 1. The phase function phi(x) in a). is a Gaussian with a simple stationary point at x^*. Consequently, the algebraic area of the solid curve f(x) cos ( w phi(x)) asymptotically goes to zero nearly everywhere except near the stationary point x^*. Objective: Execute program p1.m to reproduce above figure. Discover if there is non-zero area around the stationary point as frequency w increases. Procedure:
1. Download the programs p1.m.

2. Type p1.m to generate the above picture. Run the MATLAB code and increase the frequency parameter w. Determine whether there is still a non-zero area around the stationary point.

Spectral Deconvolution Lab


Figure 1. The a) input time series and b) output after application of spectral deconvolution. Theory: Given an input signal x, find the deconvolution filter f by spectral division f=x*/(|x|2+ eps), where eps is a small positive number known as the damping parameter (see Yilmaz, 2001). Objective: Practice the craft of spectral deconvolution of a signal. Procedure:
1. Execute the command deconsimp.m.

2. Change values of damping parameter eps1. Explain what happens to deconvolved wavelet if eps1 is to small. Explain what happens if eps is too large. Note, as eps becomes really large the inverse filter f is a constant for a zero-phase x and is an all pass filter. Thus, larger values of eps lead to deconvolved results with fatter main lobes and

smaller side lobes. As eps becomes smaller the main lobe thins and the side lobes become more pronounced. 3. Add noise to wavelet by the command x1=3*x./max(x)+rand(1,nt)-.5; plot(x1); and repeat exercise. What is the effect of random noise?
4. Download the shot gather CSG and type "load CSG". To display the shot gather type

"CSG=CSG/max(CSG(:)); clim=[-.03 .03];imagesc(CSG',clim);". Extract one of the traces and autocorrelate it, then truncate the autocorrelation after the 2nd zero crossing. This truncated wavelet will now be your estimated input wavelet. Find the inverse filter f to this correlation wavelet and use it to deconvolve the autocorrelation trace. Compare the deconvolved autocorrelation trace to original autocorrelation trace. 5. A more robust estimate of the decon filter might be obtained by averaging truncated autocorrelation signals for a number of different traces. Use averaging to construct your new inverse filter and deconvolve the autocorrelated traces. Compare the new results to the results from the previous question. 6. A trick that is almost always used after any deconvolution process is to bandpass filter the deconvolved results, where the passband is over the frequency range of the estimated signal.

Finite Difference Solution to the Acoustic Wave Equation


Figure 1. Seismograms and snapshot associated with a line source placed just above the 2-layer medium. Objective: Calculate synthetic seismograms by a 2-2 FD solution to the wave equation. Learn how space and time sampling increments affect the output. Skill Learned: Implementation, design and construction of synthetic seismograms by finitedifference solutions to the wave equation. Procedure: 1. Download the codes fd.m and plt.m and type "fd". This will generate the synthetic seismograms and snapshots for a 2-layer medium. Exercises:

1. From the snapshots estimate the wavelengths of the waves in the top and bottom layers (Use the zoom facility in MATLAB). Compare these wavelengths to the theoretical estimates from lambda=c/f.. 2. Change ABCs so they are turned on for all sides except for the top boundary..make the top a free surface. Repeat simulations. Describe the changes in snapshots compared to previous simulation. Fix the leftside ABC so it absorbs by changing a sign in the ABC equation for the left side boundary (Clayton, R. and Enquist, B., 1977, Absorbing Boundary Conditions for Acoustic and Elastic Wave Equations, Bull. Seis. Soc. Am., 67:6, 1529--1540 ) .
3. Identify the direct, refraction, and reflection waves in the snapshots and the seismograms.

Estimate their apparent velocities. Explain why the reflection waves moveout with the slowest apparent velocities. 4. Raise the frequency of the source by 50% and repeat the simulations. Comment on loss of accuracy and give rationale. 5. Choose a dt value that violates stability. Rerun simulations. What happens? 6. The head wave arrival is extremely weak, as predicted by theory. However, a diving wave that gets trapped in a thin interface just below the refracting interface can boost up the amplitude. Adjust the velocity model so there is a thin layer (10 points thick) just below the original interface. make sure the velocity is the average between layer 1 and 2. Now rerun the fd.m code. Is there a difference in head wave amplitudes? Change models until you get a satisfactory amplitude.

Integral Equation Redatuming Lab


Figure 1. Normalized (Left) impulse and (right) wavelet responses of a point source in a homogeneous medium with an embedded point scatterer. Normalized direct wave is shown here and scattered wave is the rightmost figure. Numerical solution is computed by approximating the reciprocity equation of the correlation type by a quadrature scheme to get g(A,t|B,0) for A and B inside the 3D box that contains one point scatterer. Objective: Execute program chap3d.m to reproduce above figure. The algorithm is a 3D numerical quadrature applied to the reciprocity equation of correlation type. The model is a point scatterer model embedded in a 3D homogeneous medium. Procedure:
1. Download the following programs: chap3d.m, calrick.m, geometriz1.m, green3left.m,

green3right.m, green3s1.m, green3s.m, plot1.m, setpar.m.


2. Type chap3d.m to generate the above picture for a single scatterer model.

3. Note, there is no phase shift as in the 2D MATLAB exercise in Chapter 1 because of the 3D (not 2D) integration along the sides of the box to produce the virtual trace in Figure 1.

Finite Difference Redatuming Lab


Figure 1. Comparison between analytic Green's function and numerical one calculated by the reciprocity theorem of the correlation type. Objective: Execute program fd1.m to reproduce above figure. This result is produced by forward modeling the acoustic wave equation to solve for the pressure field along the enclosing boundary of the 1-scatterer model, which is a single scatterer embedded in a homogeneous medium. The reciprocity equation is implemented by backprojecting the time-reversed recorded fields at the boundary, and the result is that the Green's function G(A|B) is recovered for A and B somewhere inside the model volume. Procedure:
1. Download the following programs: backprop.m, ricker.m, indata2.m, indata1.m,

chap3b.m, mkdamp.m, plot1.m, plot2.m, plot4.m, plot5.m, plot6.m, plot7.m, plot9.m, plot33.m, and store1.m. 2. Type chap3b.m to generate the above picture for a single scatterer model.

Salt Flank Interferometric Imaging Lab


Figure 1. Salt Flank Density Model (load 'den.mat' and display it here). Theory: The salt flank can be imaged by forward propagating the incident VSP wavefield and back propagating the VSP wavefield reflected from the salt flank. In doing so, only a local velocity model around the well is required. This procedure approximates the VSP->SWP transform, except filtering is applied to the reflections so only one-way reflections are correlated with downgoing direct arrivals. In implementation, the forward propagating can be simplified by a ray tracing. In this exercise, the time tables show the arrival times of the direct waves in the area left to the well. When the reflected wavefield is backward continued to the left, the energy happens at an image point and at the time of the direct wave arrival time can reveal the reflectivity at that image point. Lab exercise by Ruiqing He. Objective: Execute program flankmig.m to image salt flank, and then stack all images.

Procedure:
1. Download the following programs: flankmig.m, faxis.m, eikon.m. 2. Download the following data: d650.mat, t650.mat, d660.mat, t660.mat, d670.mat,

t670.mat, d680.mat, t680.mat, d690.mat, t690.mat, d700.mat, t700.mat, d710.mat, t710.mat, d720.mat, t720.mat, d730.mat, t730.mat, d740.mat, t740.mat,
3. Also download s.mat (local sedimental velocity model).

4. Where are the artifacts in the migration image coming from? How are they related to the receiver aperture and the geophone density? 5. Explain how the artifacts in the redatumed data can be decreased by separating up and downgoing arrivals and then performing the correlation and summation (Wapenaar, K, and J. Fokkema, 2006, Greens function representations for seismic interferometry, Geophysics, 71, SI33-SI46) on only the outgoing arrivals at the well. 6. Research Problem: Implement a least squares redatuming method for calculating virtual SWP data from VSP data (Schuster and Zhou, 2006, A theoretical overview of modelbased and correlation-based redatuming methods, Geophysics, SI103; Wapenaar, K.; van der Neut, J.; Ruigrok, E., 2008, Passive seismic interferometry by multidimensional deconvolution, Geophysics, A51-A56).

2D Wave-Equation Interferometric Migration of VSP Multiples


Figure 1. In this model, there are 600 shots evenly deployed on the surface, and 12 geophones evenly placed in the center well (offset 3000 m) at the depth range from 1900 m to 2120 m. From it we can see, migration of VSP multiples has a much larger imaging area than migration of VSP primaries. Objective: Learn to use 2D wave-equation interferometric migration (WEIM), and study its advantage in migration of VSP multiples. This is a form of the VSP->SSP correlation transform. Skill Learned: A version of 2D WEIM implementation which can be extended for real data imaging. Lesson learned 1. Interferometric migration is robust to velocity estimation errors. 2. Migration of VSP multiples has an imaging area comparable to that of a CDP survey. 3. Virtual SSP Green's functions are incomplete for a finite aperture of VSP geophones.

Procedure:
1. Make a directory, and load into it the file: mmig.m, 2. Download data: s.mat, d191.mat and mt1.mat into the same directory.

3. Type "mmig;" in Matlab to run the program for migration of one geophone gather.
4. Now, download other 11 geophone gathers: d193.mat, d195.mat, d197.mat, d199.mat,

d201.mat, d203.mat, d205.mat, d207.mat, d209.mat, d211.mat, d213.mat, and traveltimes: mt2.mat, mt3.mat, mt4.mat, mt5.mat, mt6.mat, mt7.mat, mt8.mat, mt9.mat, mt10.mat, mt11.mat, mt12.mat, and density: den.mat, into the same directory. 5. Change the corresponding file names in "mmig.m", and run the program for migration of each geophone gather. 6. Stack all the migration images. Questions to think about: 1. What are the advantages of migrating VSP multiples? Why it is successful? 2. What are the advantages of interferometric migration? 3. What causes the artifacts in the image? How can the artifacts be suppressed? 4. How can one determine the optimal geophones placement in the well?

2D Interferometric VSP->SSP Migration of VSP Multiples using Diffraction-Stack Migration


Figure 1. (a). The velocity model used to generate the synthetic VSP data. In this model, there are 100 shots evenly deployed on the surface, and 16 geophones evenly placed in the leftside well (offset 0 m) at the depth range from 490 m to 790 m. (b). A common receiver gather of the synthetic VSP data. (c). The interferometric migration image of the VSP multiples. Objective: Learn how to implement the 2D interferometric migration method using the diffraction-stack migration method, and study the advantages of VSP multiple migration. This is an example of the 2D VSP->SSP correlation transform and the lab is written by Shuqian Dong. Introduction: The interferometric migration of virtual SSP data (obtained by the VSP->SSP transform) use the VSP multiples to delineate the subsurface reflectivity distribution. Migration of virtual SSP data has several advantages. It is insensitive to receiver-related static errors in the

well, and it has wider subsurface illumination than the migration of VSP primary reflections. The main disadvantage includes a strong acquisition footprint in the generation of virtual SSP traces, i.e., the virtual SSP Green's functions are incomplete due to the limited aperture of VSP receivers in the well. The implementation of VSP interferometric migration consists of the following steps. 1. Separate the VSP data into upgoing and downgoing waves (The data provided in this lab are already separated. We do not need this part in this lab.). 2. Obtain the direct waves and downgoing free-surface multiples by a proper muting/filtering process. 3. Crosscorrelate the direct waves with multiples, and sum the correlated records over stations in the well to generate the crosscorrelated virtual SSP data. 4. Migrate the virtual SSP data. Procedure:
1. Make a directory, and load in the file: The main program: main.m, diffraction migration

codes:mig1.m, direct wave muting codes:mutedata.m, raytracing code:Mray.m.


2. Load the velocity file vel.mat and the traveltime table traveltimesrc.mat. Load the

synthetic VSP data set data.zip, and use command 'unzip data.zip' to extract the data into the same directory. 3. Run program main.m in Matlab to redatum the VSP data to virtual SSP data and migrate the virtual SSP data (It costs about half an hour). 4. Try to subsample the shot gathers and show the effects of sparsity on the migration image. 5. 16 VSP common receiver gathers are used in this lab to generate the virtual SSP data set. Try to use only one VSP common receiver gather and repeat the test. Use stationary phase theorem to explain why we can not get a decent virtual SSP data but can get a fairly good migration image in this case. Questions: 1. What are the advantages and disadvantages of migrating VSP multiples compared to migrating VSP primaries? 2. In practice, we can crosscorrelate the multiples with the whole traces instead of the direct waves to generate the crosscorrelogram. Why does this strategy work? Modify the code to generate crosscorrelogram by whole traces. Compare the migration images obtained by different strategies. Which one is better? Show a ray diagram that redatums VSP to SWP events to show why the latter strategy is more powerful. 3. Research Topic: Use least squares migration (Nemeth et al., 1999, Least-squares migration of incomplete reflection data, Geophysics, 208-221.) to improve the migration result.

4. Research Topic: Use LSD or least squares redatuming (Schuster and Zhou, 2006, A theoretical overview of model-based and correlation-based redatuming methods, Geophysics, SI103) to improve the redatumed SSP data. Now migrate this redatumed data and compare the resulting image to the least squares migration image. Comment about salient differences between the migration of LSD SSP data and least squares migration of the virtual SSP data.

Fermat's Interferometric Principle of Convolutional Type Lab


Figure 1. Plot of actual and Fermat principle traveltimes for a surface shot gather in a 2-layer medium with a horizontal interface. The virtual SSP traveltimes were obtained by the VSP to SSP correlation transform. Key Idea: Fermat's interferometric principle of convolutional type says VSP traveltimes can be transformed into SSP traveltimes by the convolutional form of Fermat's principle. For the VSP model in Figure 2, the sum of the direct VSP traveltime TBx (middle diagram) and the VSP primary traveltime Txxo+TxoA (left diagram) yields the diffraction SSP traveltime (rightmost diagram) TBx + Txxo+TxoA Minimizing the above over values of x along the well yields the SSP traveltime (see Chapter 6). TBx* + Tx*xo+TxoA where x* is a stationary point in the well. Objective: Execute program fermat1.m to reproduce above figure. The theoretical traveltimes are produced by straight ray tracing and the interferometric traveltimes are produced by Fermat's principle from VSP traveltimes. Procedure:
1. Download the following programs: fermat1.m.

2. Type fermat1.m to generate the above picture for a two layer model with a horizontal interface. The animation displays the common shot gather traveltimes for different shot positions on the surface.

2D Interferometric Interpolation of Nearoffset Missing Seismic Data


Figure 4. Interferometric interpolation result: the first 20 traces are the interpolation results (from the pseudo shot in the previous figure) and the other 40 traces are original data. An AGC is applied. Objective: Learn to use 2D Interferometric Interpolation, and study its advantage in interpolation of the nearoffset missing data. Skill Learned: A version of 2D Interferometric implementation which can be extended for real data interpolation. Lesson learned 1. Interferometric interpolation do not need velocity or other information, only original shot gathers are needed. 2. The amplitude of interpolation result is needed to be corrected. Procedure:
1. Make a directory, and load the file: PSG.m, PSG_Mute.m, xcorr.m, plot_figures.m,

wigb.m, agc.m, data.zip into it and extract the data.zip into this directory. The csg_fs319.su means the data contains free surface related multiples and 319 is the shot number. 2. We use the 319th shot gather as the original data and remove the first 20 traces of this shot as the nearoffset missing data. 3. Type " [pseudoshot,result,origin]=PSG; " in Matlab to run the program for interpolation using all the shot gathers. 4. Use plot_figures.m to generate the figures in this lab. 5. Change the 18th line in PSG.m, try to use different number of shot gathers to get result. 6. If you want to interpolate the nearoffset in different shots, you may download the whole dataset BigData.zip into the same directory and extract it. Questions to think about: 1. What are the advantages of interferometric interpolation? 2. Why the amplitudes are wrong and how to correct them? 3. What is the relationship between nearoffset gap and interpolated recording time?

Wavelet Extraction from Virtual SSP->SSP Data


Objective: Learn to use 2D Interferometric Interpolation, and extract source wavelet. Study advantages and disadvantages of this method. Theory: The frequency-domain implementation of the SSP->SSP transform uses the equation Im(G(A|B)) = k int G(A|x)G(x|B)* dx , yet in practice we use bandlimited data D(A|x)=W(f) G(A|x) for the crosscorrelation rather than the Green's function G(A|x), where W(f) is the source wavelet. That is, Im(GG(A|B)) = |W(f)|2 Im(G(A|B)) = k |W(f)|2 int G(A|x)G(xB)* dx We can easily extract the actual GG(A|B) from Im(GG(A|B)) (e.g., find time domain version of Im(GG(A|B)), eliminate acausal part for t less than 0, and then Fourier transform result to get GG(A|B).), so that the following is true: GG(A|B)/D(A|B) = |W(f)|2 G(A|B)/[W(f)G(A|B)] = W(f)*. In summary, the conjugate of the wavelet spectrum W(f)* can be extracted from SSP data by generating virtual SSP data and then dividing it by the actual data in the frequency domain. Don't forget to put in a damping parameter e in the denominator to protect yourself against singularities, i.e., GG(A|B)/D(A|B) = GG(A|B)D(A|B)*/[|D(A|B)|2 + e] Skill Learned: Reinforce principles of SSP-> SSP transform, exercise skills in spectral deconvolution, and estimate degradation of wavelet extraction with respect to degradation of aperture and trace spacing. Procedure:
1. Make a directory, and load the files: Sigsbee2B_main.m, DirectWaveMute.m, xcorr.m,

ProcessMatchedData.m, wigb.m, VirtualShotGenerator.m, and agc.m. A Sigsbee2B synthetic data set is used to test the codes. Use command "unzip data.zip" to extract the data. The data set is very big (300M), UTAM users can read the data from the folder '/uufs/geophys.utah.edu/common/tomofs/www/htdocs/book/interpolate' without

downloading it. The csg_fs319.su means the data contains free surface related multiples and 319 is the shot number. 2. We use the 319th shot gather as the original data and remove the first 20 traces of this shot as the nearoffset missing data. 3. Type " Sigsbee2B_main " in Matlab to run the program for interpolation using all the shot gathers. And we will get the rough interpolation result, which contain the amplitude and wavelet misfits. We need do some extra work on it to correct the misfits. 4. Now that you have the virtual and actual SSP data, extract the wavelet by the wavelet extraction procedure. The actual wavelet is a Ricker wavelet. Compare your actual wavelet against estimated wavelet. Which is better, an average wavelet estimated by averaging many extracted wavelets or a estimated single wavelet? 5. Test the sensitivity of the extracted wavelet to the degradation in trace sampling interval and reduced number of shot gathers. Does the damping term help stabilize the inversion? 6. Repeat steps 3 and 4 except now use as your input data the Sigsbee data convolved with a ringy source wavelet. You should get as an extracted wavelet the ringy wavelet convolved with the Ricker wavelet. Questions: 1. Will the source or receiver radiation pattern affect the shape or amplitude of the source wavelet at far offset traces compared to near offset traces? See Fig. 4.2 in Aki and Richards, 1980. 2. Will attenuation affect the shape or amplitude of the source wavelet at far offset traces compared to near offset traces? If so, what would your strategy be to find the wavelet for far-offset trace and the wavelet for a near-offset trace? 3. Is the SSP-SSP transform valid for attenuative media? 4. What other factors affect the accuracy of the extracted wavelet?

Wavelet Extraction using an SSP-to-SSP Transform


Objective: Learn how to extract a wavelet using an SSP-to-SSP transform. Introduction: Wavelet Extraction Procedure:

1. Download the Matlab codes and data from wavelet.zip.

2. Extract the file into your directory using the Windows built-in unzip utility (Right-click at the file and choose Extract All File). 3. Run program wavelet.m in Matlab to obtain the extracted wavelet. Questions: 1. What are the advantages and disadvantages of this method? 2. Would it work when the source signature is not the same for all the sources? Exercise: 1. Extract a wavelet from the following dataset (data.zip).

SSP -> SSP: Multiples into Primaries Lab: Part II


Objective: Learn to model synthetic seismograms and interferometrically transform SSP 1storder multiples into primaries. Lesson learned 1. Interferometric redatuming works under far field approximation but has errors. 2. Errors increase as reflector approaches free surface. Procedure:
1. Make a directory, and load into it the files twod.m, xcorr.m, corrsum.m, forward.m, and

ricker.m. 2. Type "twod" in Matlab to run the program to forward model SSP (surface seismic profile) shot gathers in a 2-layer model. Only the primaries, 1st- and 2nd-order multiples are generated. These data are also correlated and summed to produce redatumed data on the surface. In this case 1st-order multiples turn into primaries and 2nd-order multiples become 1st-order multiples. 3. Change depth of layer interface and assess how this affects the ability to reconstruct the primaries from the multiples. Does the reconstruction become more accurate or less accurate as the interface depth increases? 4. Change aperture width. Does the reconstruction become more accurate or less accurate as the aperture increases?

5. Insert a near-offset gap in the shot gathers and assess the effects on the reconstruction accuracy. Use gap widths that are integer multiples of a Fresnel zone width on the surface. 6. Adjust model so that there are two reflectors, one at depth d and the other at depth 3d. The shallowest reflector might be a water bottom interface so it can generate strong multiples up to the 3rd order. Numerically assess the sensitivity of the gap width, geophone spacing, aperture width to reconstruction accuracy. 7. Heroic MATLAB exercise: Repeat previous exercise except use a 3D layer cake model with a typical marine survey geometry consisting of a swath of towed hydrophone lines. The swath consists of eight parallel lines, each separated by 10 m and each having a line length of 6 km long. The hydrophone spacing is 20 m and the near-offset source-receiver gap is 120 m.

Remove Surface Waves by Interferometry and NLF


Objective: Learn to remove surface waves by interferometry and NLF. Predict the surface waves by the SSP->SSP transform, and then remove the predicted surface waves by adaptive subtraction in a local x-t window. Lesson learned: Predict surface waves by interferometry and separate them from reflections by nonlinear local filter (NLF). Lab written by Yanwei Xue. Procedure:
1. Make a directory, and load into it the files main.m, agc.m, match.m, convmat.m,

mchef.m, mchf.m, medianfsur.m, medianfilter1.m, medianfilter.m, mycorr.m, predct.m, redo1.m, slantstack.m, window.m, xcorr.m, lowpasspredct.m, gather, 2. Download the data "gather" in your directory, type "fid=fopen('gather','rb'); tmp=fread(fid,250*48*20,'float'); gather=reshape(tmp,250,48,20);" to load the data. 3. Type "s=predct(gather,gather)" in Matlab to predict the surface waves by interferometry. 4. Type "[sout]=medianfsur(s'); dd0=s'-sout;" in Matlab to separate the surface waves from the interferometric prediction. Type "ps=match(rrout',dd0',25,5,9,2,0.00001);" to get the result of data after removing surface waves by Interferometry and NLF. To see the result, type"figure; imagesc(agc(ps,100));colormap(gray)"

Interferometric Interpolation for Coarse OBS Data


Objective: Learn to use OBS Interferometric Interpolation codes, and study how a matching filter improve the accuracy of the interpolated data. Procedure:
1. Download data.tgz and decompress it by typing "tar xzvf data.tgz". It contains all the

needed data files. vel.mat is the velocity model for all synthetic data used in this lab. This file is not needed in this exercise, but you can generate all synthetic data by yourself if interested. There are 801 grids in X direction and 601 grids in Z direction. Sources are located just beneath the free surface; receivers are located on the sea floor. Totally 201 shot gathers are generated by this model. raw data is the original OBS data set with a coarse receiver interval of 160 meters, where sources are located just beneath free surface and receivers are located on sea floor. truedata is the true data set with a dense receiver interval of 8 meters. dat_grn are the SWP Green's functions, which are generated by putting sources and receivers on sea floor, and only the water layer model is needed. 2. Download codes.tgz and decompress it by typing "tar xzvf codes.tgz". obs_interp.m is the main program for OBS data interpolation. mute_direct.m,xcorr.m are functions used by obs_interp.m. matchfilter are the fortran codes of the matching filter. 3. Go to directory 'codes', in matlab, run "obs_interp" to generate the interpolated virtual shot gather. 4. In a linux terminal (make sure the intel fortran compiler is installed in the computer), goto directory 'codes/matchfilter', type "ifort -llapack -lg2c main.f90" or "ifort -llapack main.f90", to compile the codes and get the a.out. 5. Type './a.out' to apply the matching filter to the virtual shot gather. 6. Change the parameters in main.f90, try to use different filter parameters to see the results changes. Questions to think about: 1. What are the advantages of interferometric interpolation? 2. Are the amplitudes of virtual traces correct? 3. How to set the parameters for the matching filter to get the best results?

Interferometric Migration of Passive Data Lab


Objective: Learn to use the interferometric imaging code for passive data and explore effect of different parameters on the final image. Skill Learned: A version of 2D passive imaging code can be extended for real data imaging. Lesson learned 1. Resolution of interferometric migration of passive data increases with respect to an increase of number of sources. 2. Cross-talk noise in interferometric migration of passive data increases with respect to an increase of number of sources. 3. Migration of passive multiples has an imaging area comparable to that of a CDP survey. Procedure:
1. Make a directory, and load into it the file: auto.m, dnew.m, mod.m, rr1modmig.m,

xcorr.m, xmig1.m, source.m, readata.m, ex2.m, and c1.m. 2. Type "ex2" in MATLAB to begin migration of correlated data for 10 buried point sources. Only ghost reflections with 1 bounce off the reflectivity interfaces are modeled with no ray bending. 3. Examine migration images for different stack values N of migration stacks. Does the incoherent noise in the image decrease as N to the 1/2 power? 4. Refer to the exercise 7 in Chapter 11. How can the summation over different window segments be changed so that the code runs more efficiently? Questions to think about: 1. What are the advantages and disadvantages of migrating passive seismic data compared to controlled source data? 2. The sources are assumed to be randomly distributed in space and also have about the same amplitude. What is the effect of a few large passive sources? Should these data be retained? 3. How does one determine the optimal receiver interval and receiver aperture on the surface?

Das könnte Ihnen auch gefallen