Dust in AstroBEAR - Update 2020/05/04

Objectives

  • Dust Source Terms for Dust Advection

Progress:

Issue: Code crashes with dust source routines

Previously, the dust source terms routines would always lead to the code crashing. I have no integrated the dust source terms with the new Riemann solver for the dust and the code no longer crashes. A simulation can be found here and here are two screencaps: Fig 1 and Fig 2. There are a few issues:

  • The dust momentum is incredibly small (~ 1e-50) which is not realistic. I suspect units/conversion issues which is not surprising and that's been on my debugging list for a while. Because the dust momentum is so small, the dust grains are not accelerated enough to noticeably move which is why the dust clump remains at rest.
  • The non-zero dust momentum structure in Fig 1 is strange and I'm not sure yet what's happening there. Might be a setup issue…

Issue: RK2/45 and the dust source terms

The drag calculations we use calculate the total change of the velocity of the dust over one timestep meaning dv (summary is here: PDF). However, the RK routines don't expect the new velocity but the change in velocity over time. For a simple integration scheme, I can simply declare dvdt = dv / dt where dt is the current timestep. This works if dt is constant throughout the integration but for RK45 for example, dt is not constant and the integration also features the RK h factors. I could rewrite the RK45 routine to adapt but that would be messy. I've been looking through different source routine now to see how other routines handle it, in particular, PointGravity and I'm a bit confused about the following:

  • Why does moving PointGravity from SrcDerivs to SourceCell improve the momentum conservation?
  • Does PointGravity simply change the q-vector before the integration? If so, how does that not become unstable?
  • From what I understand, the issue would be solved if I move my routines into SourceCell and instead of altering dqdt, I should be altering q directly?

Up Next:

  • Continue Debugging

Comments

No comments.