We note that the definition of comoving B used here is such that a uniform field is constant in a homogeneous expanding universe and is also the quantity used in the MHD-CT solver described below; however, it is not universal, and is slightly different from that used both in Li et al.
Despite this invested expertise, the Eulerian solvers in their original form have a serious drawback: they do not provide an easy method of adaptively increasing the spatial and temporal resolution in small volumes of the simulation. Numerical simulations of astronomical phenomena now play a key role, along with observations and analytic theory, in pushing forward our understanding of the cosmos (e.g., Astronomy and Astrophysics Survey Committee 2001, 2010). We believe that those developing simulation tools must fulfill two key obligations: the first is to make those tools available to the community as a whole, much in the way that astronomical data are now regularly made publicly available.
Such flexibility is essential for following physical processes such as gravitational instability. 2005), the intergalactic medium (IGM; Fang & Bryan 2001; Smith et al. 2013), cooling flows (Li & Bryan 2012; Skory et al. 2008), and the formation of stars in our own Galaxy (Collins et al. The second is to document, test and refine those methods so that they can be critically evaluated and expanded upon by others.
The third term describes both the cosmological redshift and dilution of radiation.
On the right hand side, the first term captures absorption (κ)) from any sources of radiation (whether point or diffuse).
In addition, it is possible to add other, more advanced physics including—for the adaptive mesh refinement (AMR) implementation in the astrophysics code presented in this paper—comoving coordinates, self-gravity, radiative cooling, chemistry, heat conduction, collisionless fluids, magnetohydrodynamics, radiation transport, star formation and a range of other physical effects. It has grown to become a general tool for astrophysical fluid dynamics and is intended to be efficient, accurate and easily extended to include new capabilities. In this paper we provide that description, filling in many previous omissions and showing the code's performance for a wide variety of test problems. Next, in Sections 3 through 10, we describe the methods we use in detail, reserving some of the longer descriptions of particular components for the Appendix in order to not interrupt the flow of the paper.
There have been a number of numerical methods described in the astronomical literature that contain elements of SAMR or have a similar aim. 2001; Yahagi & Yoshii 2001; Teyssier 2002; Quilis 2004; Ziegler 2005; Zhang & Mac Fadyen 2006; Miniati & Colella 2007; Cunningham et al. Although many of the components of the Enzo code have been described in previous publications (Bryan et al. The Enzo code has been extensively used over the last two decades in a wide variety of problems, resulting in the publication of more than 100 peer-reviewed papers. The Enzo testing framework and code tests are described in Section 11.
For example, the -body solver developed by Villumsen (1989) used non-adaptive meshing to increase the resolution in pre-selected regions. 1995, 2001; Bryan 1996, 1999; Bryan & Norman 1997a, 1997b; Norman & Bryan 1999; O'Shea et al. The variety of astrophysical systems that Enzo has been used for include galaxies (Tassis et al. The parallelism strategy and scaling results are described in Section 12.
This static approach was later used extensively when applied to hydrodynamics (e.g., Ruffert 1994; Anninos et al. Adding adaptivity is a more recent enhancement, and there are now a number of codes that possess this feature, both with and without hydrodynamics (Couchman 1991; Jessop et al. Finally, we discuss the code's development methodology (which is, as far as we know, unique in the astrophysics community) in Section 13.
In addition to explaining the algorithms implemented, we present solutions for a wide range of test problems, demonstrate the code's parallel performance, and discuss the Enzo collaboration's code development methodology.
Due to the high spatial and temporal dynamical ranges involved, astrophysical and cosmological phenomena present a taxing challenge for simulators.
Terms representing radiative cooling (Λ) and heating (Γ) enter on the right-hand side of the energy equation (3), as does the flux due to thermal heat conduction (F is the mean density.