0% found this document useful (0 votes)
497 views6 pages

Lab 01 - Examine Seismic Data 2

This document provides instructions for examining seismic data and its header information using MATLAB. It describes loading seismic data from the file SeismicData.mat, which contains the seismic traces (D) and header structure (H). The header contains information like trace geometry, time intervals, etc. Plots of geometry from the header are shown, like sources/receivers locations and elevations. Methods to display seismic shot gathers using wiggle, grayscale, and color plots are also described. Finally, a proposed processing workflow is outlined that includes preprocessing, filtering, sorting, velocity analysis, statics, stacking, and migration.

Uploaded by

api-323770220
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
497 views6 pages

Lab 01 - Examine Seismic Data 2

This document provides instructions for examining seismic data and its header information using MATLAB. It describes loading seismic data from the file SeismicData.mat, which contains the seismic traces (D) and header structure (H). The header contains information like trace geometry, time intervals, etc. Plots of geometry from the header are shown, like sources/receivers locations and elevations. Methods to display seismic shot gathers using wiggle, grayscale, and color plots are also described. Finally, a proposed processing workflow is outlined that includes preprocessing, filtering, sorting, velocity analysis, statics, stacking, and migration.

Uploaded by

api-323770220
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Lab 01: Examine Seismic Data

1. INTRODUCTION
When geophysicists meet with their seismic data for the first time, they carefully must look into the
seismic data itself and its header, which contains information and tabulation of parameters used to
acquire the data. Usually, the data is stored in magnetic tapes or hard disks and is saved in various
standard data formats such as the well-known SEG-Y or Seismic Unix formats.
The seismic data and its header information are stored in the MATLAB data format file called
SeismicData.mat. In this lab session, you are require to examine this data along with its header
information, by using MATLAB. This will assist you in further analysis and processing of this real reflection
seismic data, which will be performed in subsequent lab session.

2. DESCRIPTION OF THE DATA SET


The data set we will use to illustrate the processing codes consists of a two-dimensional (2D) land line
from east Texas, USA. The following are some important parameters about the data:

Number of shots = 18.


Source type = dynamite in 80-100-ft depth holes.
Number of channels per shot = 33.
Receiver type = Vertical-component geophones.
Array type = 12-element inline.
Number of traces in line = 594.
Receiver interval = 220 ft.
Shot interval is variable.
Time sampling interval = 2 milliseconds (ms)
Number of time samples per trace = 1501.
Data format = SEG-Y.
Byte swap type = Big endian.
Data file name = data.sgy.
Geometry has already been set up and recorded in the trace headers.
Uphole times at shot locations have been recorded in the trace headers.
An 8-64-Hz bandpass filter has been applied to the data in the field.

3. EXAMINING THE DATA SET


To examine the 2D seismic data set and its header information, you need to load the file SeismicData.m.
By loading the data in the MATLAB workspace we are going to find two variables as follows:
1 >> load SeismicData.mat
2 >> whos
3
Name
Size
4
5
D
1501 x594
6
H
1x594

Bytes

Class

7132752
3303008

double
struct

Attributes

3.1. HEADER INFORMATION


After loading the data, we will find that variable H is a 1 594 structure array with many fields such as:
the time sampling interval (dt), the number of time samples per trace (ns), the offset (offset), the trace
numbers (tracl), the shot gather numbers (fldr) and others. To access any one of these fields, say for
example, the offset and store its values in a new vector called offset, then:
1 >> offset = [H.offset];
2 >> whos
3
Name
4
5
D
6
H
7
offset

Size

Bytes

Class

1501 x594
1x594
1x594

7132752
3303008
4752

double
struct
double

Attributes

You can explore more fields in a similar way. A MATLAB function called extracting_geometry.m (provided
with the manual) can be used to get useful geometrical information such as the source coordinates (sx &
sy), the receiver coordinates (gx & gy), the source elevations (gz), and others. The following MATLAB code
shows an example of how one can extract certain geometrical acquisition parameters:
1 load ('SeismicData.mat','H')
2 [sx ,sy ,gx ,gy ,shot_gathers ,num_trace_per_sg ,sz ,gz] = extracting_geometry (H);

These are different geometrical variables obtained from the seismic header structure H. We then can use
such variables to plot the number of seismic traces versus the number shot gathers as in the following
code:
1 figure ,stem (shot_gathers ,num_trace_per_sg)
2 xlabel ('Shot gather numbers','FontSize' ,14)
3 ylabel ('Number of traces/shot gather','FontSize' ,14)
4 axis ([0,max(shot_gathers)+1,0,max(num_trace_per_sg)+2])
5 set (gca ,'YMinorGrid','on')

Also, here is another example to plot the number of sources x-axis locations versus the number of traces:
1 figure ,plot(sx,'.')
2 xlabel('Number of traces','FontSize' ,14)
3 ylabel('Sources xaxis locations (ft)','FontSize' ,14)
4 axis tight
5 grid

To plot the receivers x-axis locations versus the number of traces, you need to alter the code above by
calling the receiver parameter. Please plot the source and receivers elevation vs the number of traces.
Figure 1.1 shows different useful plots all of which are obtained from the seismic header variable H. A
final example is plotting the so-called seismic stacking chart (see Figure 1.2) using the MATLAB function
stack_chart.m (provided with the manual) where the vertical axis shows the shot number and the
horizontal axis shows the shot and receiver x-coordinate (we will discuss stacking charts in more details
in lab 5).

1 num_shots=length(shot_gathers);
2 stacking_chart(sx ,gx ,num_shots ,num_trace_per_sg);

Figure 1.1: Various geometrical information plots: (a) the number of traces per shot, (b) the source
elevation profile for each trace and (c) the receiver elevation per seismic trace.

Figure 1.2: The stacking chart plot of the seismic data.

3.2 DISPLAYING SEISMIC DATA


There exist several ways of displaying seismic sections such as seismic shot gathers and CMP gathers. The
most commonly used displays are the following.
1. The wiggle display: plots seismic trace amplitudes as a function of time.
2. The variable area display: shades the area under the wiggle trace to make coherent seismic events
evident.
3. The variable density display: represents amplitude values by the intensity of shades of gray (and
sometimes in colors).
The following MATLAB script uses the function extracting_shots.m (provided with the manual) to extract,
for example, shot gather number 8. This shot gather is displayed using variable area display scheme and
variable density display scheme in both gray and colors respectively (see Figure 1.3):
1 load SeismicData.mat
2 shot_num =8;
3 p=0;
4 [Dshot ,dt ,dx ,t,offset ] = extracting_shots(D,H,shot_num ,p);
5 scale =1;
6 mwigb (Dshot ,scale ,offset ,t)
7 xlabel ('Offset (ft)','FontSize' ,14)
8 ylabel ('Time(s)','FontSize' ,14)
9 figure ,simage_display(Dshot ,offset ,t,0)
10 xlabel ('Offset (ft)','FontSize' ,14)
11 ylabel ('Time(s)','FontSize' ,14)
12 figure ,simage_display (Dshot ,offset ,t,1)
13 xlabel ('Offset(ft)','FontSize' ,14)
14 ylabel ('Time(s)','FontSize' ,14)

Figure 1.3: Various displays for seismic data shot gather number 8: (a) variable area display, (b)
grayscaled variable density display and (c) colored variable density display. The color bars in (b)
and (c) refers to the amplitude dynamic range of the data.

If we display shot gather number 16 (see Figure 1.4), notice that trace number 31 amplitudes are
increasing as time increases. This may require editing by muting this trace since it will affect the
subsequent processing steps. In chapter 2, we shed more light on this issue. You may also interested in
displaying a group of seismic shot gathers concatenated together using the same function
extracting_shots.m. For example, you can extract shot gathers number 4-6 where you must provide
shot_num=4:6; in line 6 of the above code. Figure 1.5 shows these extracted shot gathers in their variable
area display.

Figure 1.4: Various displays for seismic data similar to those in Figure 1.3 but for shot gather
number 16. Clearly, trace number 31 (at offset 0) requires muting (replacing it by zeros) as will be
discussed later in chapter 2.

Figure 1.5: Variable area display of seismic shot gathers 4-6.

4. PROPOSED PROCESSING WORKFLOW


Based on the examination of the seismic data and its header, you are now ready to perform the following
processing steps on the data:
1.
2.
3.
4.
5.
6.
7.
8.
9.

Preprocessing involving only the gain application using various methods


Ground roll removal via bandpass filtering
Spiking deconvolution
CMP sorting
Velocity analysis on several CMPs using the velocity spectrum method
Residual static correction using the surface-consistent method
NMO correction and muting
Stacking
Migration using Stolt (F-K) post-stack time migration

5. COMPUTER ASSIGNMENTS
1. Load the seismic data SeismicData.mat.
2. Examine the seismic data header information and obtain the following information: common depthpoint (CDP) values, number of time samples (nt), spatial sampling interval (dx) and time sampling
interval (dt).
3. Display shot gathers 1215 (as the case in Figure 1.5) using the:
a.
b.
c.
d.

Wiggle plotting
Gray-scaled image plotting
Colored image plotting
Wiggle on top of colored plotting.

Comment on the shot gather amplitudes .What do you notice from a trace to another?

6. USEFUL MATLAB FUNCTIONS


load, extracting_geometry.m, extracting_shots.m, plot, stacking_chart.m, mwigb.m, simage_display.m.

You might also like