ASCL.net

Astrophysics Source Code Library

Making codes discoverable since 1999

Searching for codes credited to 'Stone, James M.'

Tip! Refine or expand your search. Authors are sometimes listed as 'Smith, J. K.' instead of 'Smith, John' so it is useful to search for last names only. Note this is currently a simple phrase search.

[ascl:1010.014] Athena: Grid-based code for astrophysical magnetohydrodynamics (MHD)

Athena is a grid-based code for astrophysical magnetohydrodynamics (MHD). It was developed primarily for studies of the interstellar medium, star formation, and accretion flows. The code has been designed to be easily extensible for use with static and adaptive mesh refinement. It combines higher-order Godunov methods with the constrained transport (CT) technique to enforce the divergence-free constraint on the magnetic field. Discretization is based on cell-centered volume-averages for mass, momentum, and energy, and face-centered area-averages for the magnetic field. Novel features of the algorithm include (1) a consistent framework for computing the time- and edge-averaged electric fields used by CT to evolve the magnetic field from the time- and area-averaged Godunov fluxes, (2) the extension to MHD of spatial reconstruction schemes that involve a dimensionally-split time advance, and (3) the extension to MHD of two different dimensionally-unsplit integration methods. Implementation of the algorithm in both C and Fortran95 is detailed, including strategies for parallelization using domain decomposition. Results from a test suite which includes problems in one-, two-, and three-dimensions for both hydrodynamics and MHD are given, not only to demonstrate the fidelity of the algorithms, but also to enable comparisons to other methods. The source code is freely available for download on the web.

[ascl:1101.005] CMHOG: Code for Ideal Compressible Hydrodynamics

CMHOG (Connection Machine Higher Order Godunov) is a code for ideal compressible hydrodynamics based on the Lagrange-plus-remap version of the piecewise parabolic method (PPM) of Colella & Woodward (1984, J. Comp. Phys., 74, 1). It works in one-, two- or three-dimensional Cartesian coordinates with either an adiabatic or isothermal equation of state. A limited amount of extra physics has been added using operator splitting, including optically-thin radiative cooling, and chemistry for combustion simulations.

[ascl:1306.014] ZEUS-2D: Simulation of fluid dynamical flows

ZEUS-2D is a hydrodynamics code based on ZEUS which adds a covariant differencing formalism and algorithms for compressible hydrodynamics, MHD, and radiation hydrodynamics (using flux-limited diffusion) in Cartesian, cylindrical, or spherical polar coordinates.

[ascl:1912.005] Athena++: Radiation GR magnetohydrodynamics code

Athena++ is a complete re-write of the Athena astrophysical magnetohydrodynamics (MHD) code (ascl:1010.014) in C++. Compared to earlier versions, the Athena++ code has much more flexible coordinate and grid options and supports new physics. It also offers significantly improved performance and scalability, and improved source code clarity and modularity. Athena++ supports compressible hydrodynamics and MHD in 1D, 2D, and 3D, and special and general relativistic hydrodynamics and MHD. In addition, it supports Cartesian, cylindrical, or spherical polar coordinates; static or adaptive mesh refinement in any coordinate system; mixed parallelization with both OpenMP and MPI; and a task-based execution model for improved load balancing, scalability and modularity.

[ascl:2306.026] Parthenon: Portable block-structured adaptive mesh refinement framework

The Parthenon framework, derived from Athena++ (ascl:1912.005), handles massively-parallel, device-accelerated adaptive mesh refinement. It provides a device first/device resident approach, transparent packing of data across blocks (to reduce/hide kernel launch latency), and direct device-to-device communication via asynchronous, one-sided MPI communication to enable high performance. Parthenon uses an intermediate abstraction layer to hide complexity of device kernel launches, offers support for particles and abstract variable control via metadata tags, and has a flexible plug-in package system.