Geometrical Optics

Setup and coding instructions:

This session involves little coding from you part. In order to comply with pysit and the conventions of seismic imaging, the z-axis is now pointing downwards.

In order for the Helmholtz computations to run in a short enough time, it is highly recommended to not increase the resolution to more than 200 x 200. (if the 150 x 150 default already take too long, don't think about it !)

If your computer has trouble with the Helmholtz solve, download the precomputed Helmholtz solutions and set the variable MY_COMPUTER_CAN_TAKE_THE_PAIN to False. Unzip the file to your directory. This file contains precomputed solutions for n = [150, 200], Cchoice = [0,1], and nu = [5.0, 10.0, 2.0] Hz.

The parts of the code that you may play with are

IMPORTANT: in your dashboard, update the problem_number variable with the number of the problem you are working on. If this variable is set on another problem, it will simply not run.

Part 2: Approximation of the Helmholtz equation

The present session aims at testing the validity of the approximation

\[ \widehat{G}(x,x_s,\omega) = a(x,x_s) e^{-i\omega\tau(x,x_s)} + \text{smoother}, \]

where \(\widehat{G}(x,x_s,\omega)\) solves the Helmholtz equation in free space

\[ -\left(\Delta_x + \frac{\omega^2}{c(x)^2}\right)\widehat{G} = \delta(x-x_s), \]

\(\tau\) solves the eikonal equation

\[ c(x) | \nabla_x\tau | = 1, \\\\ \tau(x_s,x_s) = 0. \]

and the amplitude \(a\) solves the transport equation

\[ \nabla a\cdot\nabla\tau = -\frac{1}{2} a\Delta \tau \]

For both equations, the solvers are already coded. The computational domain is \([0,1]\times [0,1]\).

Problem 1 (approximation of the phase): The first thing to compare is the phase of the approximation with that of the exact solution to Helmholtz equation. Pick the sound speed of 'gradient' type and on two subplots of the same figure, visualize

Problem 2 (breakdown of the phase approximation): repeat the same experiment with the speed of 'lens' type. Are both phases in good agreement everywhere ?

Problem 3 (ripple effect on Helholtz equation): For the speed of 'lens' type,

Problem 4 (breakdown of the amplitude approximation): For the speed of 'lens' type,

\[ \frac{d}{dt}a(X(t), x_s) = - \frac{c^2(X(t))a(X(t),x_s)}{2} \Delta\tau(X(t)), \]

explain how the model for the amplitude of the GO approximation also breaks down after the caustics.