Welcome to Enzo’s documentation!¶
This is the development site for Enzo, an adaptive mesh refinement (AMR), grid-based hybrid code (hydro + N-Body) which is designed to do simulations of cosmological structure formation. Links to documentation and downloads for all versions of Enzo from 1.0 on are available.
Enzo development has been primarily supported by the US National Science Foundation, National Aeronautics and Space Administration, and Department of Energy. In addition, significant funding has been contributed by a large number of academic institutions, private foundations, and other funding agencies across the globe.
- Enzo Public License
- User Guide
- Quickstart Guide to Enzo
- Obtaining and Building Enzo
- Writing Enzo Parameter Files
- Controlling Enzo Data Output
- Running Enzo
- Running Enzo with CUDA
- Running Enzo with Grackle
- Measuring Simulation Progress
- Running Test Problems
- Analyzing Enzo Data
- Creating Cosmological Initial Conditions
- Running Large Simulations
- Enzo Output Formats
- Supplementary Information
- Enzo Test Problems
- Enzo Parameter List
- Initialization Parameters
- I/O Parameters
- Hierarchy Control Parameters
- Gravity Parameters
- Hydrodynamics Parameters
- Cooling Parameters
- Particle Parameters
- Star Formation and Feedback Parameters
- Active Particles
- SmartStar Parameters
- Radiation Parameters
- Cosmology Parameters
- Massive Black Hole Physics Parameters
- Shock Finding Parameters
- Cosmic Ray Two-Fluid Model Parameters
- Conduction
- Subgrid-scale (SGS) turbulence model
- Fuzzy Dark matter model
- Other Parameters
- Inline Analysis
- Problem Type Parameters
- Physics and Analysis Capabilities
- Frequently Asked Questions
- Developer’s Guide
- Introduction to Enzo Modification
- How to Develop Enzo
- Programming Guide
- Enzo Test Suite
- File naming conventions and routine locations
- Debugging Enzo with GDB
- Fine Grained Output
- Adding a new parameter to Enzo
- How to add a new baryon field
- Variable precision in Enzo
- Adding new refinement criteria
- Auto adjusting refine region
- Accessing Data in BaryonField
- Grid Field Arrays
- Adding a new Local Operator.
- Adding a new Test Problem.
- Using Parallel Root Grid IO
- MHD Methods
- MHDCT Details
- Doing a Release
- Reference Information
- Enzo Primary References
- Enzo Algorithms
- Enzo Internal Unit System
- Enzo Particle Masses
- The Enzo Hierarchy File - Explanation and Usage
- The Flux Object
- Header files in Enzo
- The
Enzo
Makefile System - Parallel Root Grid IO
- Getting Around the Hierarchy: Linked Lists in Enzo
- Machine Specific Notes
- Particles in Nested Grid Cosmology Simulations
- Must Refine Particles
- Dynamic Refinement Regions in Nested Cosmology Simulations
- Nested Grid Particle Storage in RebuildHierarchy
- Estimated Simulation Resource Requirements
- SetAccelerationBoundary (SAB)
- Star Particle Class
- Building the Documentation
- Performance Measurement
- Presentations Given About Enzo
Enzo Mailing Lists¶
There are two mailing lists for Enzo hosted on Google Groups, enzo-users and enzo-dev.
enzo-users¶
Everyone Enzo user should sign up for the enzo-users mailing list. This is is used to announce changes to Enzo, and sometimes major changes Enzo-related analysis tools. This list is appropriate for anything else Enzo-related, such as machine-specific compile problems, discussions of the science and physics behind what Enzo does, or queries about problem initialization. We recommend using the Enzo users mailing list liberally - by this we mean that any question asked on the list will educate everyone else on the list, and is manifestly not a stupid question. As long as a good effort has been made to try to figure out the answer before mailing the list, all questions about Enzo are welcome! Please follow the link below to sign up for this list and a link to discussion archives:
http://groups.google.com/group/enzo-users
To post a message to this list, send an email to:
The archives for the old Enzo users mailing list can be found linked below. A search of the list archives should be performed before emailing the list to prevent asking a question that has already been answered (using, for example, an advanced web search limited to that page).
enzo-dev¶
The second mailing is for developers of Enzo. This is for Enzo “old-hats”, or anyone interested in adding new features to Enzo, or anyone who wants a deeper understanding of the internals of Enzo. Please follow the link below to sign up for the list and a link to the discussion archives:
http://groups.google.com/group/enzo-dev
To post a message to this list, send an email to:
Regression Tests¶
Enzo has an internal testing suite (Enzo Test Suite) that performs regression tests that verifies that the code is producing expected results on a wide variety of platforms. It also aids in discovering bugs that may have been introduced in the development process of Enzo. The Enzo codebase is tested before every point release and routinely by Enzo developers.
Citing Enzo¶
Guidelines for citing enzo are available in the CITATION
file in the root of
the enzo git repository.
If you use Enzo for a scientific publication, we ask that you cite the code in the following way in the acknowledgments of your paper:
Computations described in this work were performed using the
publicly-available \texttt{Enzo} code (http://enzo-project.org), which is
the product of a collaborative effort of many independent scientists from
numerous institutions around the world. Their commitment to open science
has helped make this work possible.
In addition, we request that you link to the project webpage in a footnote and
add a citation to the Enzo method paper. See the CITATION
file for BibTeX
and LaTeX formatted citations.