Evan's research blogBlogging about stuff
http://evaneschneider.github.io/site/
Thermal Instability<p>In this post, I’ll describe how I’ve set up two-phase ISM initial conditions for a future superbubble test. At present, the method mostly follows the description given in Kim & Ostriker (2015).</p>
Fri, 09 Feb 2018 00:00:00 +0000
http://evaneschneider.github.io/site//2018/Thermal-Instability/
http://evaneschneider.github.io/site//2018/Thermal-Instability/X-ray Profiles<p>In the last post, I showed soft x-ray (0.3 - 2 keV) surface brightness maps for two of my outflow simulations at <script type="math/tex">512\times512\times1024</script> (20 pc) resolution. I’ve now made the same maps for the full <script type="math/tex">2048\times2048\times4096</script> (5 pc) resolution simulations. Here they are at 60 Myr for the isotropic feedback model (adiabatic sim), and for the clustered feedback model (radiative sim):</p>
Wed, 31 Jan 2018 00:00:00 +0000
http://evaneschneider.github.io/site//2018/Xray-Profiles/
http://evaneschneider.github.io/site//2018/Xray-Profiles/X-ray Emission<p>In an attempt to connect the outflow simulations I’ve been doing to observations, I’ve decided to try to model the x-ray emission from the hot plasma and compare it to what’s seen in M82. I’ll start with a simple model for the diffuse soft x-ray emission. Briefly, for a given cell in the simulation, I’ve got a density <script type="math/tex">\rho</script>, that I can convert to a number density, <script type="math/tex">n</script>, by assuming that the gas is ionized, so <script type="math/tex">n = \rho / \mu m_p</script>, where <script type="math/tex">\mu = 0.6</script> and <script type="math/tex">m_p</script> is the mass of a proton. Given this number density, I can also calculate a volume-averaged temperature for the gas in the cell, <script type="math/tex">T = e (\gamma - 1.0) / n k_B</script>, where <script type="math/tex">e</script> is the internal energy density (tracked in the dual-energy version of Cholla), <script type="math/tex">\gamma</script> is the adiabatic index (assumed to be 5/3), and <script type="math/tex">k_B</script> is the Boltzmann constant. I can then calculate the total radiative luminosity from the cell via a cooling function <script type="math/tex">\Lambda</script>.</p>
Mon, 29 Jan 2018 00:00:00 +0000
http://evaneschneider.github.io/site//2018/Xray-Emission/
http://evaneschneider.github.io/site//2018/Xray-Emission/Outflow Parameters<p>The Chevalier & Clegg outflow model is characterized by just three parameters: the starburst radius, <script type="math/tex">R_*</script>, the mass injection rate, <script type="math/tex">\dot{M}</script>, and the energy injection rate, <script type="math/tex">\dot{E}</script>. These parameters can be set for a given star formation rate by specifying how the total mass and energy injection compare to the rates that would be expected from the products of stellar evolution. In previous posts, I’ve used the term <script type="math/tex">\beta</script> to indicate the multiplicative factor that accounts for mass in the hot outflow that is not a product of supernovae and stellar winds, i.e. <script type="math/tex">\dot{M}_\mathrm{hot} = \beta_\mathrm{hot} \dot{M}_\mathrm{SN+SW}</script> - this is the usage that appears in Strickland and Heckman (2009). However, by selecting an IMF and making some (reasonable) assumptions about stellar evolution, this <script type="math/tex">\beta_\mathrm{hot}</script> can be converted into a different definition of mass loading, i.e. <script type="math/tex">\dot{M}_\mathrm{hot} = \beta_\mathrm{SFR} \dot{M}_\mathrm{SFR}</script>. In this version, <script type="math/tex">\beta_\mathrm{SFR}</script> tells us how the total mass in the hot outflow compares to the star formation rate in the galaxy. A wind that has zero mass-loading (and therefore only contains mass from the byproducts of stellar evolution) would have <script type="math/tex">\beta_\mathrm{hot} = 1</script> and <script type="math/tex">\beta_\mathrm{SFR} \sim0.25</script> (see discussion in Section 2.1.1 of Veilleux et al. 2005 or results from Starburst 99 models in Leitherer 1999). The same calculation yields an estimate of the energy injected by supernovae and stellar winds as a function of star formation rate, with a typical number of <script type="math/tex">\dot{E}_\mathrm{SN} = 3.0\times10^{41}</script> erg <script type="math/tex">\mathrm{s}^{-1}</script> <script type="math/tex">\alpha \dot{M}_\mathrm{SFR}</script>, where the factor <script type="math/tex">\alpha</script> accounts for the fraction of the energy that is thermalized in the hot plasma (see Section 2.1 of Thompson et al. 2016).</p>
Thu, 22 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/Outflow-Parameters/
http://evaneschneider.github.io/site//2017/Outflow-Parameters/Flux Correction<p>This post is dedicated to describing the simple but effective first-order flux correction I mentioned in my last post. When using one of Cholla’s unsplit integrators (CTU or Van Leer), simulations that involve extreme temperature/density contrasts and/or high mach numbers have a tendency to cause the code to crash. Typically, these sorts of crashes start when the high-order flux update of the conserved variables yields a negative pressure. These pressure errors then propagate, eventully leading to negative densities or total energies (or NANs) that cause the code to crash. In a previous effort to solve this problem, I introduced a dual-energy update in Cholla, described in a series of posts starting <a href="http://evaneschneider.github.io/site/2015/dual-energy-1/">here</a>, that allows the code to separately track and update the internal energy of the cells, and uses this non-conservative energy estimate if the total energy yields a negative pressure. While the dual-energy update did help, it was not able to completely solve the problem.</p>
Tue, 20 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/Flux-Correction/
http://evaneschneider.github.io/site//2017/Flux-Correction/CC85 outflow (for real)<p>A lot has happened in the last 4 days. To quickly summarize:</p>
<ul>
<li>Once I started injecting the correct amount of mass and energy, the code started breaking.</li>
<li>I implemented a first-order flux correction to deal with the negative pressures.</li>
<li>Combined with the dual-energy scheme, the first order flux correction works!</li>
<li>I’ve successfully run several models of M82 with a Chevalier & Clegg style outflow.</li>
<li>The simulations are awesome.<br />
<br />
I’m dedicating a quick separate post to the first-order flux correction, so I’ll skip those bullet points for now. The important part is that the fix seems pretty robust, and so far, has been able to completely eliminate negative temperatures and densities in the simulation. I haven’t yet tested it with cooling…
<br />
<br />
<strong>The Simulation</strong></li>
</ul>
Mon, 19 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/CC85-outflow-2/
http://evaneschneider.github.io/site//2017/CC85-outflow-2/More outflow models<p>Recall that in the last post, I tested two outflow models. For a <script type="math/tex">256^3</script> simulation, when I used <script type="math/tex">R_{*} = 200</script>pc, <script type="math/tex">\dot{M}_{\odot} = 1 M_{\odot}</script>/yr, and <script type="math/tex">\dot{E} = 10^{43}</script>erg/s (aka CC85 parameters), I was able to generate an outflow, though the simulation crashed after 327 Myr. When I used <script type="math/tex">R_{*} = 300</script>pc, <script type="math/tex">\dot{M}_{\odot} = 2 M_{\odot}</script>/yr, and <script type="math/tex">\dot{E} = 10^{42}</script>erg/s (aka SR17 parameters), no outflow was generated, just a bubble of warm gas near the center.</p>
Thu, 15 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/More-Outflow-Models/
http://evaneschneider.github.io/site//2017/More-Outflow-Models/CC85 outflow<p>At the end of the last post, I showed an M82 simulation with mass and energy input that failed to drive an outflow. The model parameters were set to match the CC85 model we used in our 2017 paper: <script type="math/tex">R_{*} = 300</script>pc, <script type="math/tex">\dot{M}_{\odot} = 2 M_{\odot}</script>/yr, and <script type="math/tex">\dot{E} = 10^{42}</script>erg/s. At all times during the simulation, a small bubble of heated disk gas can be seen near the starburst region, but the bubble never propagates into the halo.</p>
Mon, 12 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/CC85-outflow/
http://evaneschneider.github.io/site//2017/CC85-outflow/M82 models<p>At some point, I’ll fill in some of the backstory from the past three months. In the meantime,
here’s where things stand currently:</p>
<ul>
<li>We have a working equilibrium model for the Milky Way with a hot, hydrostatic halo and a rotating disk in vertical hydrostatic equilibrium that is stable for a Gyr.</li>
<li>We have a working equilibrium model for M82 with the same structure.</li>
</ul>
Mon, 05 Jun 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/M82-models/
http://evaneschneider.github.io/site//2017/M82-models/Hydrostatic Blues<p>In the last post, I described the analytic calculation I’m doing in order to set up a 3D
disk in vertical hydrostatic equilibrium with my NFW + Miyamoto-Nagai profile. Here’s a density
projection of what the resulting disk looks like:</p>
Wed, 08 Mar 2017 00:00:00 +0000
http://evaneschneider.github.io/site//2017/Hydrostatic-Blues/
http://evaneschneider.github.io/site//2017/Hydrostatic-Blues/