A spreadsheet to help teach the rudiments of seismic tomography

Geologists, and especially petrologists, commonly see results from seismic tomographic studies. These are used, for example, to image the distribution of magma (or at least slightly molten rock, or hydrothermal fluids) beneath volcanic areas, or the velocity (and thus, perhaps, thermal) structure under hotspots. Seismic tomography is a difficult subject and comprises an entire huge subspecialty of geophysics, so in a petrology class we cannot hope to teach students all of its intricacies. We can, however, introduce them to a key concept in understanding tomographic results: nonuniqueness. Just about any practical application of seismic tomography results in seriously underdetermined sets of equations (huge sets of equations) that have a correspondingly huge set of solutions. It is really important that students, and practicing petrologists, understand the basics of how tomography works, and the uncertainties built into the method.

One way to teach about this issue is with a spreadsheet designed to mimic, in a tiny way, the procedure by which tomography is done, and so I concocted this exercise to help get these concepts across. This took up about half an hour of class time as an in-class exercise. Consider the following:

Seismic tomography spreadsheet problem. White values are time units (say, seconds) that a P-wave takes to cross that square; these are a priori data, observed, perhaps, by measurements in drill holes. Seismic travel-time studies have yielded the “Observed” values for total travel time in a given column or row (e.g., 18 for a wave traversing the first column). Your job is to fill in the blank squares so that your model values make the "Model” sums for rows and columns (red values) match the Observed values, in which case the differences will be zero.

The image above is from a spreadsheet used in the exercise. I typically had groups of two or more students work on this together. Their job was to put numbers in the blank (white) cells and see if they could zero out the differences between the model results and the observed results. The only allowable values are positive integers ranging from 1 to 5.

The starting 6x6 matrix that I used to generate the observed values was this:

The starting matrix. To make the spreadsheet given to students I simply deleted the cells containing the black values.

It would generally take student groups no more than 10 minutes to solve the problem and zero out all the differences. When done they would give me their solutions; I compiled them on a slide and projected them all together for discussion. Here is a typical set of solutions for the matrix above:

Various solutions to the spreadsheet tomographic problem.

These are six out of a presumably large number of solutions, all of which achieve the goal of making the model exactly match the observations. In real-life tomography a perfect match is not achievable, of course, but this example shows a fundamental truth of seismic tomography: there is no unique solution, and the one presented in a given paper is considered best by some criterion (that is in the paper but might take careful reading to appreciate).

When the set of solutions was up on the screen I could get the students to make general observations about how they differ, and perhaps more importantly, what they have in common. These all have general slowness (red colors) in the upper left, and generally faster colors (blues) in the lower right. They differ in detail, but they generally agree on the general pattern. It is clear that making too much of out a given bright red patch (e.g., one of the 5s) is not very sensible, but making sense of general patterns is

I lied.

OK, these aren’t typical student results. The three in the left column were produced by humans, but the three in the second column were found by the AI Claude 3.7 Sonnet. All I did was give Claude the spreadsheet, and it solved it. I asked for more solutions, and it gave them to me. I asked it if it could find a solution using one or more 6s, and it did (lower right).

That’s scary.

The spreadsheet used in this example can be obtained by clicking the button below. All the cells but the 20 blank ones are locked (in Excel, Format…Cells…Protection…Locked), and this locking is invoked by protecting the worksheet (Tools…Protection…Protect Sheet). Conditional formatting is used to make the values in the 6x6 matrix go from red to blue as values vary from 5 to 1.

Next
Next

Announcing “Teaching Notes”