A Free, Fast, Simple and Efficient TVD MHD Code
Ue-Li Pen, Phil Arras, ShingKwong Wong
Abstract
We describe a numerical method to solve the magnetohydrodynamic (MHD) equations. The fluid variables are updated along each direction using the flux conservative, 2nd order, total variation diminishing (TVD), upwind scheme of Jin and Xin. The magnetic field is updated separately in two-dimensional advection-constraint steps. The electromotive force (EMF) is computed in the advection step using the TVD scheme, and this same EMF is used immediately in the constraint step in order to preserve .B=0 without the need to store intermediate fluxes. Operator splitting is used to extend the code to three dimensions, and Runge-Kutta is used to get second order accuracy in time. The advantages of this code are high resolution per grid cell, second order accuracy in space and time, enforcement of the .B=0 constraint to machine precision, no memory overhead, speed, and simplicity. A 3-D Fortran implementation less than 400 lines long is made freely available. We also implemented a fully scalable message-passing parallel MPI version. We present tests of the code on MHD waves and shocks.
Create a lesson
Related papers
On binary pulsars and the force of gravity
Davor Palle
Tidal torques. A critical review of some techniques
Michael Efroimsky, James G. Williams
Dynamics of a Spherical Accretion Shock with Neutrino Heating and Alpha-Particle Recombination
Rodrigo Fernández, Christopher Thompson
Asymptotically FRW black holes
J. T. Firouzjaee, Reza Mansouri
Reaction of Accretion Disks to Abrupt Mass Loss During Binary Black Hole Merger
Sean M. O'Neill, M. Coleman Miller, Tamara Bogdanovic et al.
A Gamma-Ray Burst/Pulsar for Cosmic-Ray Positrons with a Dark Matter-like Spectrum
Kunihito Ioka