time vs depth migration insensitive to v(z) model sensitive to v(z) model time migration uses best...

Post on 05-Jan-2016

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Time vs Depth Time vs Depth MigrationMigration

Insensitive to v(z) modelInsensitive to v(z) model Sensitive to v(z) modelSensitive to v(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

Depth migration uses bestDepth migration uses bestguess moveout curveguess moveout curve

Incoherent summationIncoherent summationif guess is wrongif guess is wrong

Coherent summationCoherent summation

Time MigrationTime Migration Depth MigrationDepth Migration

CMP GatherCMP Gather

tim

eti

me

CMP GatherCMP Gather

tim

eti

me

Easy calculation of v(z)Easy calculation of v(z) Expensive calculation of t(x,y,z)Expensive calculation of t(x,y,z)

False StructuresFalse Structures True StructuresTrue Structures

Time MigrationTime Migration Depth MigrationDepth Migration

Stacked SectionStacked Section

tim

eti

me

Stacked SectionStacked Section

tim

eti

me

M(x,T)M(x,T) M(x,z)M(x,z)

False structureFalse structure

Low-velocityLow-velocity zonezone

Low-velocityLow-velocity zonezone

Depth Migration -> Time MigrationDepth Migration -> Time Migration

We know 2z/c=We know 2z/c=TT so so

m(x,z) = m(x,z) = gg

d (d (gg, 4[(x-, 4[(x-gg)/c] + ()/c] + (2z/c2z/c) ) ) ) 22 22

zz

2-way vertical traveltime2-way vertical traveltime

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = gg

22 22

Depth Migration: Maps data into Depth Migration: Maps data into function(x,z)function(x,z)

Time Migration: Maps data into Time Migration: Maps data into function(x,function(x,TT))

m(x,z(m(x,z(TT)) = )) = gg

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) 22 22

Prestack Time MigrationPrestack Time Migration

m(x,z) = m(x,z) = g,sg,s

d (d (g,sg,s, [(x-, [(x-gg)/c] + ()/c] + (z/cz/c) ) 22 22

Depth Migration: Maps data into Depth Migration: Maps data into function(x,z)function(x,z)

[(x-[(x-ss)/c] + ()/c] + (z/cz/c) ) ) ) 2222

++

[(x-[(x-ss)/c] + )/c] + TT d (d (gg,s, [(x-,s, [(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = g,sg,s

22 22 22 22++

Time Migration for c(T)Time Migration for c(T)

d (d (gg, 4[(x-, 4[(x-gg)/c()/c(TT)] + )] + TT ) ) M(x,M(x,TT) = ) = gg

22 22

Time Migration: Maps data into function(x,Time Migration: Maps data into function(x,TT))

v1v1

v2v2

v3v3

v4v4

v5v5v6v6

TT

cc(T)(T) More generally, More generally, cc((TT) is a function of ) is a function of T!T!

MATLAB ZO Depth MigrationMATLAB ZO Depth Migration

d (d (gg, ) , ) xxggm(x,z) = m(x,z) = gg

for ixtrace=1:ntrace; for ixs=istart:iend; for izs=1:nz; r = sqrt(4*(ixtrace*dx-ixs*dx )^2+(2*izs*dx)^2); time = 1 + round( r/c/dt ); mig(ixs,izs) = mig(ixs,izs)/r + data(ixtrace,time); end; end;end;

TraveltimeTraveltime

Loop over x in modelLoop over x in modelLoop over z in modelLoop over z in model

Traveltime Table

MATLAB ZO Time MigrationMATLAB ZO Time Migration

for ixtrace=1:ntrace; for ixs=istart:iend; for iT=1:nT; time = sqrt(4*([ixtrace*dx-ixs*dx]/c(iT))^2+(iT*dt)^2); time = 1 + round( time/dt ); mig(ixs,iT) = mig(ixs,iT)/r + data(ixtrace,time); end; end;end;

TraveltimeTraveltime

Loop over x in modelLoop over x in modelLoop over iT in modelLoop over iT in model

M(x,M(x,TT) = ) = gg

22 22d (d (gg, 4[(x-, 4[(x-gg)/c()/c(TT)] + )] + TT ) )

Note: c(iT) or c(ixtrace,iT)Note: c(iT) or c(ixtrace,iT)

for ixtrace=1:ntrace; for ixs=istart:iend; for izs=1:nz; r = sqrt(4*(ixtrace*dx-ixs*dx )^2+(2*izs*dx)^2); time = 1 + round( r/c/dt ); mig(ixs,izs) = mig(ixs,izs)/r + data(ixtrace,time); end; end;end;

TraveltimeTraveltime

Loop over x in modelLoop over x in modelLoop over z in modelLoop over z in model

Traveltime Table

MATLAB ZO Time MigrationMATLAB ZO Time Migration

for ixtrace=1:ntrace; for ixtrace=1:ntrace; for ixs=istart:iend; for ixs=istart:iend; for iT=1:for iT=1:nTnT; ; time = sqrt(4*([ixtrace*dx-ixs*dx]/c(iT))^2+(iT*dt)^2); time = sqrt(4*([ixtrace*dx-ixs*dx]/c(iT))^2+(iT*dt)^2); time = 1 + round( time/dt ); time = 1 + round( time/dt ); mig(ixs,iT) = mig(ixs,iT)/r + data(ixtrace,time); mig(ixs,iT) = mig(ixs,iT)/r + data(ixtrace,time); end; end; end;end;end; end;

TraveltimeTraveltime

Loop over x in modelLoop over x in modelLoop over iT in modelLoop over iT in model

M(x,M(x,TT) = ) = gg

22 22d (d (gg, 4[(x-, 4[(x-gg)/c()/c(TT)] + )] + TT ) )

Note: c(iT) or c(ixtrace,iT)Note: c(iT) or c(ixtrace,iT)

Time Migration vs Depth MigrationTime Migration vs Depth Migration

Insensitive to c(z) modelInsensitive to c(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

Time Migration vs Depth MigrationTime Migration vs Depth Migration

Insensitive to v(z) modelInsensitive to v(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

Time Migration vs Depth MigrationTime Migration vs Depth Migration

Insensitive to v(z) modelInsensitive to v(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

Time Migration vs Depth MigrationTime Migration vs Depth Migration

Insensitive to v(z) modelInsensitive to v(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

Summary: Time Migration vs Depth MigrationSummary: Time Migration vs Depth Migration

Insensitive to v(z) modelInsensitive to v(z) model Sensitive to v(z) modelSensitive to v(z) model

Time migration uses bestTime migration uses bestfit hyperbolafit hyperbola

Depth migration uses bestDepth migration uses bestguess moveout curveguess moveout curve

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

d (d (gg, t ) , t ) M(M(x,zx,z) = ) = ggx x

Incoherent summationIncoherent summationif guess is wrongif guess is wrong

Coherent summationCoherent summation

Cheaper: no ray tracingCheaper: no ray tracing More expensive: ray tracingMore expensive: ray tracing

Uniform wavelet thicknessUniform wavelet thickness Stretched wavelet thicknessStretched wavelet thickness

=c/f=c/f1/f1/f

Best focusing if v(x,z) correctBest focusing if v(x,z) correctBest focusing if v(x,z) really wrongBest focusing if v(x,z) really wrong

Good focusing if v(x,z) smoothGood focusing if v(x,z) smooth

•Depth Migration in Deep GOM is only Way to Go if V(x,y,z) Depth Migration in Deep GOM is only Way to Go if V(x,y,z) CorrectCorrect

•Therefore, spend time to get v(x,y,z) Correct: Tomography, Therefore, spend time to get v(x,y,z) Correct: Tomography, MVA, Waveform InversionMVA, Waveform Inversion

ConclusionsConclusions

NMO Velocity AnalysisNMO Velocity Analysis

CMPCMP

Tim

eT

ime

xx

TT

cc

d (d (gg, 4[(x-, 4[(x-gg)/c] + )/c] + TT ) ) M(x,M(x,TT) = ) = 22 22

C(T)C(T)

Nyquist Sampling Nyquist Sampling Frequency & AliasingFrequency & Aliasing

Data Aliasing ProblemData Aliasing Problemt > T/2t > T/2

Aliasing SolutionAliasing Solution

Low-pass filtering dataLow-pass filtering dataFancy InterpolationFancy InterpolationFiner time spacingFiner time spacing

digital signal

High freq. masqerade as low freq.

Migration AliasingMigration Aliasing

Data Aliasing ProblemData Aliasing Problemx > x > xx/2/2

Aliasing SolutionAliasing Solution

Low-pass filtering dataLow-pass filtering dataFancy InterpolationFancy InterpolationFiner rec-src spacingFiner rec-src spacing

2D dot product of migration 2D dot product of migration Operator and d(g,t)Operator and d(g,t)

No data aliasing: (dx/dt)min Tmin/2 > x

xx/2/2

Operator Aliasing Operator Aliasing (m(x)=dot product data by mig. Operator)(m(x)=dot product data by mig. Operator)

2D dot product of migration 2D dot product of migration Operator and d(g,t)Operator and d(g,t)

(dx/dt)min Tmin/2 > x

top related