%x1=============================== n = length(x1); w = zeros(1,n); for k = 1:n if x1(k)>1; w(k)=x1(k); else w(k)=1; end end w(1) = 1; w(n) = 1; plot(x1,t1,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t1,'k'); set(gca,'YDir','Reverse');
%x2=============================== n = length(x2); w = zeros(1,n); for k = 1:n if x2(k)>2; w(k)=x2(k); else w(k)=2; end end w(1) = 2; w(n) = 2; plot(x2,t2,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t2,'k'); set(gca,'YDir','Reverse');
%x3=============================== n = length(x3); w = zeros(1,n); for k = 1:n if x3(k)>3; w(k)=x3(k); else w(k)=3; end end w(1) = 3; w(n) = 3; plot(x3,t3,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t3,'k'); set(gca,'YDir','Reverse');
%x4=============================== n = length(x4); w = zeros(1,n); for k = 1:n if x4(k)>4; w(k)=x4(k); else w(k)=4; end end w(1) = 4; w(n) = 4; plot(x4,t4,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t4,'k'); set(gca,'YDir','Reverse');
%x5=============================== n = length(x5); w = zeros(1,n); for k = 1:n if x5(k)>5; w(k)=x5(k); else w(k)=5; end end w(1) = 5; w(n) = 5; plot(x5,t5,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t5,'k'); set(gca,'YDir','Reverse');
%x6=============================== n = length(x6); w = zeros(1,n); for k = 1:n if x6(k)>6; w(k)=x6(k); else w(k)=6; end end w(1) = 6; w(n) = 6; plot(x6,t6,'k'); set(gca,'YDir','Reverse'); hold on; patch(w,t6,'k'); set(gca,'YDir','Reverse');
xlabel('OFFSET (meter)') ylabel('WAKTU (detik)') title('REKAMAN DATA SINTETIK SINYAL SEISMIK DARI 6 VARIASI OFFSET','fontsize',20)
C. RICKER WAVELET
A. Script 1 function [rw,t] = ricker(f,n,dt,t0,t1) %RICKER creates an causal ricker wavelet signal % % RICKER creates and plots a default causal ricker wavelet with: % % peak frequency = 20 Hz % sampling time = 0.001 seconds % number of points = 100; % peak location = 1/F = 1/20Hz % % RW = RICKER(...) returns the default wavelet in RW. % % [RW,T] = RICKER(...) returns the time vector in T. % % Specifying parameters of peak frequency (F, Hz), number of points (N), % and sampling time (DT) are specified by the syntax: % % [RW,T] = RICKER(F) % [RW,T] = RICKER(F,N) % [RW,T] = RICKER(F,N,DT) % % [RW,T] = RICKER(F,N,DT,T0) creates a ricker wavelet with peak centered % at T0. % % [RW,T] = RICKER(F,N,DT,T0,T1) creates a 2 dimensional symmetric % ricker wavelet with sift in 1st dimension of T0 and second dimension of % T1. % % Example 1: % ricker % plots a 20 Hz Ricker Wavelet over 0.1 seconds % % Example 2: % % create a ricker wavelet with 40 Hz, 200 points, and 0.02 s between % % samples % [rw,t] = ricker(40,200,0.002); % plot(t,rw), xlabel('Time'), ylabel('Amplitude')
% Define inputs if needed switch nargin case 0 f = 20; n = 100; dt = 0.001; t0 = 1/f; is2d = false; case 1 n = 100; dt = 0.001; t0 = 1/f; is2d = false; case 2 dt = 0.001; t0 = 1/f; is2d = false; case 3 t0 = 1/f; is2d = false; case 4 % use all values is2d = false; case 5 % use all inputs is2d = true; otherwise warning('RICKER:tooManyInputs','Ignoring additional inputs') end
% Create the wavelet and shift in time if needed T = dt*(n-1); t = 0:dt:T; tau = t-t0; if ~is2d s = (1-tau.*tau*f^2*pi^2).*exp(-tau.^2*pi^2*f^2); else [t1,t2] = meshgrid(tau,t-t1); s = (1-(t1.^2+t2.^2)*f^2*pi^2).*exp(-(t1.^2+t2.^2)*pi^2*f^2); end
if nargout == 0 plot(t,s,'linewidth',3) xlabel('WAKTU (s)') ylabel('AMPLITUDO') title('RICKER WAVELET','fontsize',20) else rw = s; end
Figure
B. Script 2
% contoh Ricker Wavelet Zero Phase
fm=10; t=0:0.05:1; a = 1-2*pi^2*fm^2*t.^2; b = exp(-1*(pi*fm*t).^2); F = a .* b; fl = fliplr(F); FF = [fl(1:end-1) F]; tt=-1:0.05:1; plot(tt,FF,'linewidth',3); xlabel('WAKTU (s)') ylabel('AMPLITUDO') title('RICKER WAVELET ZERO PHASE','fontsize',20)