Completed First Order MHD!


Advecting Field Loop

This is done and in PR #273. Last week I discovered that the issues I was having with it were just due to some errors in how I was computing the mean magnetic pressure during each time step (I was including ghost cells) and now that’s fixed and the test passes. It did highlight some issues with MHD I/O though.


Previously MHD was outputting one extra cell in each direction for each of the magnetic fields when it should have just been outputting one extra in the direction of the field. In PR #270 I fixed that, added a restart test for MHD and hydro, and replaces all custom PI macros with built in M_PI.

MHD Compiler Warnings

There have been some compiler warnings with MHD builds for awhile, mostly related to non-MHD code. In PR #272 I fixed them with a mix of converting char arrays to std::strings and the use of the [[maybe_unused]] attribute specifier.

MHD Blast Wave Test

I added initial conditions and a regression test for the MHD blast wave detailed in Gardiner & Stone 2008. This test passes and the new code is detailed in PR #274

Orszag-Tang Vortex Test

I added initial conditions and a regression test for the Orszag-Tang Vortex detailed in Gardiner & Stone 2008. This test passes. The PR will be up once previous PRs are merged as it depends on some of the utility functions implemented in them.


  • Automated testing is now ready. See PR #229 for details.
  • Updated this website to v5.6.0
  • Fixed failing tests on automated testing. Just had some corrupted data that needed reset.
  • Opened an issue on converting from int to size_t/ptrdiff_t where appropriate. Issue #271
This post is licensed under CC BY 4.0 by the author.