ray tracing in matlab

25
RAY TRACING IN MATLAB RAY TRACING IN MATLAB Ruiqing He University of Utah Feb. 2003

Upload: macey-barnes

Post on 31-Dec-2015

176 views

Category:

Documents


10 download

DESCRIPTION

RAY TRACING IN MATLAB. Ruiqing He University of Utah Feb. 2003. Outline. Introduction Modeling Strategy and steps Reflection and multiple ray tracing Examples Conclusion. Introduction. Role of ray tracing in geophysics Practical requirements: accuracy, speed, ray path , - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: RAY TRACING IN MATLAB

RAY TRACING IN MATLABRAY TRACING IN MATLAB

Ruiqing He

University of Utah

Feb. 2003

Page 2: RAY TRACING IN MATLAB

OutlineOutline

• Introduction

• Modeling

• Strategy and steps

• Reflection and multiple ray tracing

• Examples

• Conclusion

Page 3: RAY TRACING IN MATLAB

IntroductionIntroduction

• Role of ray tracing in geophysics

• Practical requirements:

accuracy, speed, ray path,

reflection, multiples, 3D, amplitude.

• Matlab

Page 4: RAY TRACING IN MATLAB

Ray Tracing MethodsRay Tracing Methods

• Shortest path methods:

Fischer (1993), Moser (1991)

• Wave-equation-based:

Sava (2001)

Page 5: RAY TRACING IN MATLAB

This Ray TracerThis Ray Tracer

• Shortest path method:

Grid of velocity is finer than or

equal to the grid of ray path.

• Versatile: reflection & multiples

• Accurate

• Robust

Page 6: RAY TRACING IN MATLAB

ModelingModeling• Block model & grid model

Page 7: RAY TRACING IN MATLAB

StrategyStrategy• Fermat’s principle

• Huygen’s principle:

original source and secondary source

• Data structure: V(x,z), T(x,z), Ray(x,z,1:2)

• Flag(x,z): 0-unvisited; 1-visited; 2-decided

Page 8: RAY TRACING IN MATLAB

StepsSteps• Step 0: T(x0,z0)=0; Flag(x0,z0)=2;

Ray(x0,z0,1)=x0; Ray(x0,z0,2)=z0;

• Step 1: sub-ray tracing from the original source.

Page 9: RAY TRACING IN MATLAB

SearchSearch

• Step 2: all visited nodes record:

T(x,z) and Ray(x,z,1:2), Flag(x,z)=1.• Step 3: search nodes Flag(x,z)==1 & min(T(x,z)).• Step 4: decided node = next secondary source, as

original source, repeat from step 0, until all

interested nodes are decided.

Page 10: RAY TRACING IN MATLAB

SelectionSelection

Page 11: RAY TRACING IN MATLAB

Reflections and MultiplesReflections and Multiples

• Step 1: do one transmission ray tracing until all nodes on the reflector are decided.

• Step 2: keep these nodes and make them Flag=1, refresh all other nodes.

• Step 3: jump directly into step 3 in the transmission ray tracing loop.

So, 1 reflection ray tracing = 2 transmission ray tracing; 1 first order multiple ray tracing = 4 transmission ray tracing; 1 2nd order multiple ray tracing = 6 transmission ray tracing;

Page 12: RAY TRACING IN MATLAB

Reflections and MultiplesReflections and Multiples

Page 13: RAY TRACING IN MATLAB

Reflections and MultiplesReflections and Multiples

Frozen exploding reflector

Page 14: RAY TRACING IN MATLAB

ExamplesExamples• Linear gradient model

50 m 100 m

50 m

100 m

Travel time field Sec.

0.05

0.08

0

Page 15: RAY TRACING IN MATLAB

ComparisonComparison

T

Distance 95 m

0.09 s

0.07 s

75 m

Page 16: RAY TRACING IN MATLAB

Ray pathRay path

50 m100 m

100 m

50 m

Page 17: RAY TRACING IN MATLAB

Reflection ray tracingReflection ray tracing

50 m

50 m

100 m

100 m

Page 18: RAY TRACING IN MATLAB

Multiple ray tracingMultiple ray tracing

50 m

50 m

100 m

100 m

Page 19: RAY TRACING IN MATLAB

3D ray tracing3D ray tracing

Page 20: RAY TRACING IN MATLAB

Complex model ray tracingComplex model ray tracing

12000 ft

6000 ft

25000 ft 50000 ft

14000

6000

ft/sSalt Dome Model

Page 21: RAY TRACING IN MATLAB

Travel Time FieldTravel Time Field

12000 ft

6000 ft

25000 ft 50000 ft

Sec.5

3

0

Page 22: RAY TRACING IN MATLAB

Ray PathRay Path

6000 ft

12000 ft

25000 ft 50000 ft

Page 23: RAY TRACING IN MATLAB

SpeedSpeed

10,000 40,000 90,000

Grid size

CPU Time(Sec.)

2

10

16

CPU Time on a 2.2 GHZ AMD

Page 24: RAY TRACING IN MATLAB

ConclusionConclusion

• Flexibility: ray path, reflections & multiples

• Speed: depends on sub ray tracing length

• Accuracy and robustness

• Applications: tomography and migration

• Extendable: C or Fortran

• Available by email: [email protected]

Page 25: RAY TRACING IN MATLAB

ThanksThanks

• 2002 members of UTAM for financial support.