EIKONAL MODELING COMPUTER EXERCISE

Objective: Determine traveltime field from eikonal equation. Estimate reflection times.


Model on left and traveltime field on right
for a source in upper left corner.


Load time1.m; load raymodel3.m; load ricker.m; load traveltimesrc.mat; load migvsp.m; load Mray.m; load vel.m; load velvector.mat; load vel.mat. Type "time1" after downloading everything in this directory. Script will compute matrix traveltimesrc(100,100,100) which are traveltime fields "traveltimesrc(x,y,ixsrc)" for 100 sources on surface in the 100x100 model. These travetimes are the 1st arrival times from src to (x,z) gridpt in model. Velocity model is "vel.mat".

  1. Type "time1".
  2. Plot the velocity model by typing "subplot(211);imagesc([1:100]*dx,[1:100]*dx,vel1);xlabel('X( m)');ylabel('Z (m)')".
  3. Plot the traveltime contours by typing "subplot(212);imagesc([1:100]*dx,[1:100]*dx,traveltimesrc(:,:,ixsrc))". Check to see if the direct wave time is correct. Plot out the direct wave traveltime curve by typing "plot([1:nx]*dx,traveltimesrc(1,:,ixsrc)):. Print out the curves. Alternatively, type "[C,h]=contour(traveltimesrc(:,:,ixsrc),20);clabel(C,h)".
  4. From the contour plot trace the ray from the source to a buried scatterering point.
  5. The traveltime for a reflection ray is given by the sum of the traveltimes for the up and downgoing rays. For two different source points a=5 and b=99, define the traveltime fields ta=traveltimesrc(:,:,5) and tb=traveltimesrc(:,:,99). You will define two traveltime matrices ta and tb. The reflection time for a scatterer at the (50,50) coordinate will be tik=ta(100,100)+tb(100,100). Trace the reflection ray to this scatterer point from your traveltime contours.
  6. Use Fermat's principle to determine the specular reflection ray for the interface reflection for a specified source and receiver point. Create and use a two layer model for this exercise. Note, "min(ta(50,:)+tb(50,:))" gives the minimum traveltime for horizontal reflection points at depth 50.
  7. Generate the total traveltime field "total=ta+tb". It is the sum of downgoing and upgoing traveltimes, and should define elliptical contours with the src and rec and the focal points. Use the contour plot to show this.
  8. Rays can be plotted from the traveltime code by noting that the sum of the traveltimes from a=5 to some point x on the actual ray added to the traveltime from b=99 to x on the ray should always be the same as long as x is in on the ray. Thus ta(:,:)+tb(:,:,99)-ta(5,99)=0 for all points on the ray. This ray can be visualized by "imagesc(1./(abs(ta(:,:)+tb(:,:,99)-ta(5,99))))". Plot the rays for different source-receiver pairs of interest.