Works and Days

Presidents Summer Fellowship, Modeling Fluid Dynamics, Qiaoyu Yang

President’s Summer Fellow Qiaoyu Yang ’16, mathematics major, is testing a probabilistic particle model for studying fluid dynamics with Prof. Aleksandar Donev at the Courant Institute in New York City.

After finishing my study abroad program in Moscow, I flew to NYC on May 23rd. The weather is terribly hot here. It took me two days to settle down and then I went to meet my supervisor, Prof. Aleksandar Donev, in the Courant Institute.

Courant is really amazing. It’s a leading center for research and education in applied mathematical science, as well as in computational and some fields of pure math. There are researchers working on different areas of mathematical science, such as computational biology, fluid dynamics, mathematical finance, and so on. Prof. Donev is working on computational physics and chemistry, so my project is also closely related to these two subjects.

The meeting is quite personal. We briefly talked about several possibilities of the summer project. A first goal of the summer is to do stochastic simulation for chemical reactions in the molecular level. To accomplish this goal, we need to have code that does the simulation efficiently. There are two options: the first one is to use SPARTA, the open-source C++ code developed by Sandia National Laboratories, and the second one is to write our own Fortran code. For the first one, the advantage is that it is a well-written project that serves for a similar scientific goal. However, it is not exactly the same as what we want to do. Besides, since it’s a big project written in C++, any little modification would require lots of time and effort. Hence, we go for the second option, i.e., write our new Fortran code for the simulation.


I feel the need to provide some explanation about Fortran since it’s not a common programming language. Unlike python, C, C++, Matlab, Mathematica, or other mainstream language, Fortran is really, really old. It appeared about sixty years ago and was designed as a language for scientific and engineering purposes. Over the years, it evolved several times, first in 1977 as Fortran 77, then in 1990 as Fortran 90(also the dominating version nowadays), and most recently in 2003 as Fortran 03. Even after so many years, Fortran is still the top choice in many situations in scientific computation, most notably because of its excelling speed and the large number of old libraries written in Fortran.

OK, back to our discussion of the project. We finally agreed to use Fortran to write a new project. It’s a new one for me, so I need to spend some time picking up the basics of Fortran. Then, we talked about some other technical details in the project and Aleks gave me a few papers to read. After the meeting, he took me to my office. I was assigned to the office with one of his postdocs, Florencio.

The first two weeks have been busy for me. I learned a couple of things, like subversion, some linux stuff, Fortran, and so on. I tried to write the code that simulates the reaction-diffusion process based on Doi’s model. It now works for the diffusion case and I am modifying it so that it can handle the reaction process. That more or less sums up the first few days here. So far it’s been delightful and also fulfilling. NYC is also amazing, though I don’t have too much time to tour around.


Tags: psf, presidents summer fellowship, mathematics, math, programming, computation, fluid dynamics, computer science