Thomas Thompson (who goes by Ben, his middle name) held computing and software development jobs as a high school student. As undergraduate at the Massachusetts Institute of Technology, however, he turned to a fascination with rocks.
“There was this adventurous aspect of like, wow, I could do field work for a profession,” says Thompson, now a Harvard University geophysics doctoral candidate. He loved the outdoors and liked the idea of spending every summer in the wild, doing surveys and collecting rock samples.
“Then I did that and it was a pretty rough experience that I do not want to repeat,” laughs Thompson, a Department of Energy Computational Science Graduate Fellowship (DOE CSGF) recipient. As an undergraduate, he accompanied an MIT graduate student for three months of work in the plains of western Mongolia. A native graduate student and a guide accompanied them. For three months they had little contact with others.
“It was a pretty isolating experience,” Thompson recalls. At one point, he called his girlfriend (now his wife) via the remarkably good cellphone service. “I said something like, ‘Yeah, we ran out of oatmeal. It’s horrible.’ And she freaked out. ‘Oh no! Are you starving?’ ‘No, we just have Cream of Wheat.’”
He laughs about it now, but Thompson says he learned two things.
First, “I like a keyboard. I’ll do outdoorsy things on the weekend.”
And second, how fascinating geophysics can be. Now Thompson combines that interest with computing to improve earthquake models.
Thompson wants to quantify interactions between quakes and the Earth’s geometry – topography such as mountains and the irregular shapes of below-ground faults and plates. Thompson builds algorithms that are fast and efficient enough to capture those complexities without demanding years of computing time.
He addresses issues in the boundary element method (BEM), a standard technique that divides an earthquake simulation into thousands of triangles. Big models – and complex geometries, such as irregular faults and topography – require calculating interactions between tens of thousands of triangles, creating a dense data matrix that is slow to compute.
Thompson, with advisor Brendan Meade, applies fast multipole methods, a longstanding approach in other fields, to accelerate the calculations. Interactions between distant sets of triangle elements are likely to be similar, so the method compresses the matrix representing the strength of the interactions, producing a more manageable sparse matrix.
The approach, implemented in software called Tectosaur, also addresses a model assumption that fault slip is constant for each triangle element. That leads to widely varying forces in adjoining elements, causing calculations to fail. Tectosaur allows slip values to differ at each triangle corner and interpolates values across each individual element. Slip then can be similar on either side of a boundary between two elements, avoiding a large difference between them.
Thompson and Meade used Tectosaur to address a longstanding problem: Calculations based on ground-motion monitoring indicated that the shallowest parts of a fault slip less than expected during an earthquake – a shallow slip deficit. Yet there’s no evidence that the shallow fault slips in the decades between tremors. “It has to slip some other time. But we can’t figure out when that other time is,” Thompson says.
The researchers modeled the 1992 Landers earthquake in California and the 2008 Wenchuan earthquake in China. When they included topography (relatively flat for Landers; mountainous for Wenchuan) in their fault movement calculations, the “shallow slip deficit seemed to go away. In other words, the observation is an artifact of leaving topography out of the model.” Thompson is finishing a paper on the project.
Thompson’s 2015 Oak Ridge National Laboratory practicum dealt with a bottleneck in parallelizing calculations to simultaneously run on multiple processors. Working with Ed D’Azevedo, he first studied programs for task parallelism, which casts a computation as a graph of interconnected tasks. Thompson found most software is directed at large-scale HPC systems with thousands of processor nodes or, on the industry side, at big but simple problems requiring repeated actions. There was no “task parallelism for the little guy,” built to handle a complex graph but easy to use on small clusters.
His solution, called Taskloaf, fits that slot. Task parallelism programs for large-scale HPC can use tens of thousands of lines of code. Taskloaf has fewer than 2,000.
Thompson hopes to refine the code but is largely focused on finishing his dissertation and graduating, probably in spring 2019. Then he’d like to work on the engineering aspects of earthquake science while venturing into software development, perhaps working part time in industry and part time as an entrepreneur. “You might call it freelancer/contractor plus independent researcher,” Thompson says.
Image caption: A three-dimensional perspective of the Wenchuan fault model looking south from high above the Earth’s surface through transparent mountainous topography. The fault is color-coded by depth, going from the surface down to 20 kilometers. The Tibetan Plateau is on the right and the Sichuan basin is on the left, with mountains in between. Credit: Thomas Thompson.