학술논문

Mancha3D Code: Multipurpose Advanced Nonideal MHD Code for High-Resolution Simulations in Astrophysics
Document Type
Original Paper
Source
Solar Physics: A Journal for Solar and Solar-Stellar Research and the Study of Solar-Terrestrial Physics. 299(2)
Subject
MHD code
Realistic simulations
Split variables
Code stability and efficiency
Language
English
ISSN
0038-0938
1573-093X
Abstract
The Mancha3D code is a versatile tool for numerical simulations of magnetohydrodynamic (MHD) processes in solar/stellar atmospheres. The code includes nonideal physics derived from plasma partial ionization, a realistic equation of state and radiative transfer, which allows performing high-quality realistic simulations of magnetoconvection, as well as idealized simulations of particular processes, such as wave propagation, instabilities or energetic events. The paper summarizes the equations and methods used in the Mancha3D (Multifluid (-purpose -physics -dimensional) Advanced Non-ideal MHD Code for High resolution simulations in Astrophysics 3D) code. It also describes its numerical stability and parallel performance and efficiency. The code is based on a finite difference discretization and a memory-saving Runge–Kutta (RK) scheme. It handles nonideal effects through super-time-stepping and Hall diffusion schemes, and takes into account thermal conduction by solving an additional hyperbolic equation for the heat flux. The code is easily configurable to perform different kinds of simulations. Several examples of the code usage are given. It is demonstrated that splitting variables into equilibrium and perturbation parts is essential for simulations of wave propagation in a static background. A perfectly matched layer (PML) boundary condition built into the code greatly facilitates a nonreflective open boundary implementation. Spatial filtering is an important numerical remedy to eliminate grid-size perturbations enhancing the code stability. Parallel performance analysis reveals that the code is strongly memory bound, which is a natural consequence of the numerical techniques used, such as split variables and PML boundary conditions. Both strong and weak scalings show adequate performance up to several thousands of processors (CPUs).