Paul Fischer can’t remember a time when he wasn’t interested in aeronautical and mechanical engineering. His passion for solving seemingly unsolvable problems came just a bit later.
Fischer, now a computational scientist with the Mathematics and Computer Science Division at Argonne National Laboratory, connects that interest to an early fascination with the Apollo space program. “I remember when I was eight years old, getting up to watch Apollo 8 take off,” he says.
That carried over to Ithaca High School, in the shadow of Cornell University in upstate New York, when “I started writing code to solve different equations. I decided it was easier to let the computer do the math for me than to do it myself.”
Fischer, 50, says he was lucky to attend a high school with a strong science program. “Given that I knew I really wanted to do aeronautics, I focused on math and physics. I just loaded up on those courses.”
He still tells budding scientists that “when you’re a student, take as many courses as you can. Don’t sell yourself short. Latch onto opportunities to take courses, as many as you can in the core areas.”
As an undergraduate at Cornell, Fischer gravitated toward mechanical engineering when it became clear to him the field was more stable than the aerospace industry. He became interested in both solid and fluid mechanics, but it was hard to decide which to specialize in. A roommate finally told him to choose whichever is harder.
“But I went into fluids, which is actually easier,” Fischer says, though not everyone would agree.
He took several graduate-level mechanical engineering courses his senior year, then went to Stanford University for a master’s, focusing on computational fluid mechanics.
“I knew I enjoyed that,” he says. “But I really wanted to get into the mathematical side of mechanical engineering – and also the software and algorithm side.”
Fischer worked for three years on the design of gas bearings for disc drives. He did computational experiments, but he says, “I was always interested in the companion validation of the experiments. It’s the only way you know you’re actually doing the right thing.”
At the Massachusetts Institute of Technology, Fischer earned a doctoral degree in mechanical engineering with a dissertation on developing code for high-performance parallel computers.
He started moving into applied mathematics because he knew he was going to write software to simulate physical phenomena. “It’s extremely beneficial to have a strong math background” for those endeavors, Fischer says. His Ph.D. adviser was an applied mathematician, he did a postdoctoral fellowship in applied mathematics and he taught the subject before coming to Argonne.
“It’s essential for writing advanced simulation codes and for understanding when you can prove the correctness of your code.”
Just as physics isn’t enough without the math, when writing complex codes, “the math in and of itself isn’t sufficient,” Fischer says. “There are subtle things associated with boundary conditions that need a deep understanding of the physics involved.”
For example, electromagnetic equations are fairly simple, but their boundary conditions are not. “I can write an electromagnetic code that solves for trivial boundary conditions, but for more complex boundary conditions, you need to understand the physics.”
Fischer was the first recipient of the Computational Research Postdoctoral Fellowship at Cal Tech, which was a hopping place for parallel computing at the time. He then won the 1999 Gordon Bell Prize for scaling to 4,096 processors with a simulation code. “It was really a recognition of scalable algorithms.”
His team at Argonne has won several Department of Energy Innovative and Novel Computational Impact on Theory and Experiment (INCITE) awards, earning time on the most powerful computers in the world to work on astrophysical problems. In 2006, he won the first external science award, which got him 3 million hours of processing time. “That’s not too many hours now, but it was back then.”