
Lab 1: Examine Seismic Data
Description of the data set:
-
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.
Reformatting
Objective :
To reformat raw data
Theory :
geophysicists need to 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.
Practical :
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.
steps to do this practical are as below:
1. loading the raw seismic data and its header
2.extracting a certain shot gather or a group of shot gathers from the data matrix D and header structure H
3.plotting the number of seismic traces versus the number shot gathers
load('Book_Seismic_Data.mat','H')
[sx,sy,gx,gy,shot_gathers,num_trace_per_sg,sz,gz]=extracting_geometry(H);
figure,stem(shot_gathers,num_trace_per_sg)
xlabel('Shot gather numbers','FontSize',14)
ylabel('Number of traces/shot gather','FontSize',14)
axis([0,max(shot_gathers)+1,0,max(num_trace_per_sg)+2])
set(gca,'YMinorGrid','on')
4.plotting the number of sources x-axis locations versus the number of traces
figure,plot(sx,'.')
xlabel('Number of traces','FontSize',14)
ylabel('Sources x-axis locations (ft)','FontSize',14)
axis tight
5.plotting the number of receivers x-axis locations versus the number of traces
figure,plot(gx,'.')
xlabel('Number of traces','FontSize',14)
ylabel('Receivers x-axis locations (ft)','FontSize',14)
axis tight
grid
6.plotting the sources elevation versus the number of traces
figure,plot(sz,'*-')
xlabel('Number of traces','FontSize',14)
ylabel('Sources elevation (ft)','FontSize',14)
grid
7.plotting the receivers elevation versus the number of traces
figure,plot(gz,'*-')
xlabel('Number of traces','FontSize',14)
ylabel('Receivers elevation (ft)','FontSize',14)
grid
8.viewing the stacking chart
num_shots=length(shot_gathers);
stacking_chart(sx,gx,num_shots,num_trace_per_sg)
9) plotting shot gathers and display in various formats
load SeismicData.mat
shot_num =8;
p=0;
[Dshot ,dt ,dx ,t,offset ] = extracting_shots(D,H,shot_num ,p);
scale =1;
mwigb (Dshot ,scale ,offset ,t)
xlabel ('Offset (ft)','FontSize' ,14)
ylabel ('Time(s)','FontSize' ,14)
figure ,simage_display(Dshot ,offset ,t,0)
xlabel ('Offset (ft)','FontSize' ,14)
ylabel ('Time(s)','FontSize' ,14)
figure ,simage_display (Dshot ,offset ,t,1)
xlabel ('Offset(ft)','FontSize' ,14)
ylabel ('Time(s)','FontSize' ,14)







shot record in "wiggle" display
shot record in grey scale
shot record in positive color fill