Now that the Spring semester has finished up and I am settling into my Summer routine, it’s time for a recap of research progress!
I’d like to say that research went a whole lot faster in the Spring semester than it did in the Fall, but unfortunately that’s not the case. After the transition from debugging a very broken anisotropic code, I moved to running magnetohydrodynamic (MHD) simulations! Ignoring the big impressive sounding word, I was essentially running simulations that included magnetic fields.
The point of these simulations is to model how a cold cloud of gas would interact with a warm wind passing by it. With that idea, I then told the code I wanted to also include magnetic fields. Pretty straight forward set up.
Even so, it was slow going. I had a lot of trouble getting the simulations to work correctly. They would crash very soon after they started, giving me very little to work with to determine what was wrong. Most notably, the simulations would decide that instead of blowing away and dissipating (as would be expected of a cloud in a wind) a corner of the cloud would decide to explode! No, I did not discover some fantastic new phenomena. The code was broken.
I tried several ‘hacks’ to avoid explosions like setting a maximum for the internal energy within a cell (this is like telling the code that a cell in the simulation can only get so hot), or giving the cloud a nice buffer of gas around it that was not moving initially. I emailed several people for advice, including the author of the particular code I was using. Nothing worked. This was incredibly frustrating. To add to that frustration, a collaborator was attempting to help sort out the problem, but when he tried to run the same simulation it worked fine!
Finally, with changing versions of code, we got it to work! Now we had a different problem. The cloud appeared to move upwind. Think about that for a minute. You have a cold, stationary cloud, a wind moves past it, and the cloud moves in the opposite direction as the wind? That can’t be.
Again, we considered many possibilities, could the magnetic fields be responsible? Is there some decrease in pressure near the front of the cloud that shouldn’t be there? Is the solver we’re using solving the equations of motion incorrectly, should we try another? Upon looking closer we saw that it wasn’t just the cloud, but the entire domain of the simulation shifted! When we tracked down the routine that was shifting the entire domain, it was an easy fix.
Now, come about May, I finally had code that worked how we expected it to. The next step was to run large simulations to get the high resolution data.
Now this is an adventure on its own. Supercomputers are awesome because they allow you to do massive amounts of computation – like MHD simulations. However, they can only run so many jobs at a time, they have a finite amount of processors they can allocate. So – I can go ahead and submit my simulation to run on Monday but then I have to wait for it to move up the queue before it actually runs. Unfortunately for the supercomputer I’m using, this waiting process can take about 5 days. Even submitting it on Monday results in me waiting the whole week, and then my job running over the weekend! Once it runs, I have so far found that it didn’t run as long as we wished and crashed somewhere along the way. So I do a little troubleshooting and resubmit, waiting yet another 5 days for it to run. I’ve had a lot of down time. (a.k.a. I’ve read a lot of academic papers in the meantime)
So! That brings us to other endeavors!
Just this week I have begun doing analysis on previous hydrodynamical simulations my advisor has done. I’m excited about this because not only does it give me something to do while I wait for my MHD simulations to run, it involves using a new software package that does some cool stuff.
One of the driving reasons we do simulations in astronomy is to understand phenomena that we can’t directly observe. However, it’s important to know what your simulations would look like if they were to be observed. That’s what this new software does! It “observes” simulated data. In particular it takes a hydro simulation and creates an absorption spectrum similar to what you would see if your simulation was actually somewhere in the universe and observational astronomers were able to observe it. There are lots of knobs you can turn; which direction you’re viewing the simulation, what types of elements are absorbing light, how far away your simulation is. This gives me a lot to play around with!
Yet another endeavor I am pursuing is my “2nd project” as required by my department. All graduate students within my department must work on two projects within their first two years. The idea is that this encourages interdisciplinary work as well as makes graduates well-rounded. This requirement also allows for something like a “trial period” before committing to your final dissertation project. While most students are certain of what they want to research coming into graduate school, [well, certain enough to persuade the admissions committee] there is an understanding that you may find your interests shift a bit upon arrival. This two project idea establishes a setting in which a student can switch projects/advisors with only mild discomfort rather than full on, potentially offensive, awkwardness. [no student really wants to tell their advisor that they don’t want work with them]
So – my 2nd project is a small instrumentation project. The hope is that the results from my project will better inform others when thinking about instruments they will use or build in the future. What I am doing is measuring the stability of a detector that is measuring a signal outside of it’s designated range. [Perhaps in a future post I will actually explain the science behind it. ] To do this I have needed to set up a spectrometer and develop a code to calculate the variance of the measurements from the detector. With the help of some fellow 1st years, I have succeeded in accomplishing those two things and soon I will begin to take data!
Here’s to a productive Summer!