Reading: Claerbout, Chapter 2. Start looking at Chapter 3.
Most of this lab involves making changes to ``extrap.java'' (as well as the ctris() complex tridiagonal matrix solver method included). To turn in the first frame of a movie, put the Plane Index slider on 0, then activate your machine's screen grab and print method. Remember that you have to Control-C or Command-Q out of the extrap application, not just close the plot movie window.
The following exercises are from Claerbout, p. 107-109. For each, turn in
your changes to
and the first frame of the resulting movie.
Do not accumulate changes as you progress through the exercises; just make
the changes specified to the original program, after copying it to a file
with a new name, and renaming the class at its declaration line.
ex. 1, p. 107.
Specify program changes that give an initial plane wave propagating downward
at an angle of 15 degrees to the right of vertical.
To the right means in the positive-x direction.
2. ex. 2, p. 108.
Given that the domain of computation is 0 < x <=
0 < z <= zmax ,
how would you modify the initial conditions at z=0
to simulate a point source at (x, z) =
3. ex. 3, p. 108.
Modify the program so that zero-slope side boundaries are replaced by zero-value
(The changes are easiest to see using one of the altered sources from exercise
1 or 2 above.)
4. ex. 4, p. 108.
Incorporate the 45 degree term
for the collapsing spherical
wave. Use zero-slope sides. Compare your result with the 15 degree result
obtained via the original extrap.java program.
Mark an X at the
theoretical focus location.
Remember that the 45 degree extrapolator fits on the same
differencing star as the 15 degree.
What differences in wave propagation can you see?
What are the approximate coordinates of the focus in each case?
Should it appear to change between the 15 degree and 45 degree solutions?
5. ex. 5, p. 108.
Make changes to the program to include a thin-lens term with a lateral
velocity change of 40% across the frame produced by a constant slowness
The easiest way is to split the calculation and do the thin-lens
extrapolation analytically at each z-step,
right after the diffraction part.
Identify other parts of the program which are affected by lateral
velocity variation. You need not make these other changes. Why are they
expected to be small?
6. ex. 6, p. 108.
Observe and describe various computational artifacts by testing the program
using a point source at (x, z) =
Such a source is rich in the high spatial frequencies for which difference
equations do not mimic their differential counterparts.
7. ex. 7, p. 109.
Section 4.4 (page 267) explains how to absorb energy at the side boundaries.
Make the necessary changes to the program.
We went over this in class too.
Use one of the expanding source configurations to show that your absorbing
boundaries work well.
8. The program ``wmig.java'' performs -domain migration by the method in Claerbout on page 111. Where are the original impulses? Move them in x to x = 1/2 xmax. Turn in the migrated section. What happened? Why were the impulses placed where they were originally?
to incorporate simple absorbing boundary conditions. Turn in
the migration for data impulses at
x = 1/2 xmax.