Open-Source Astrophysics with the Enzo Community Code Brian W. O’Shea Michigan State University
What is Enzo? • N-body + hydro (+MHD + RHD + ...) block- structured AMR code originally written at NCSA (by Greg Bryan & Mike Norman) • Publicly available: http://enzo-project.org • One of the PRAC codes for Blue Waters (two separate projects: O’Shea et al., Nagamine et al.)
What science does Enzo enable? ➡ cosmology (large scale structure, dark energy, galaxy clusters) ➡ galaxy formation (both in cosmological context and isolated) ➡ star formation (Pop III/high redshift, modern-day) ➡ accretion disks ➡ turbulence (HD, MHD, self-gravitating) ➡ instabilities in compressible fluids ➡ probably more
History
1996-2003: closed-source!
March 2004: Enzo 1.0
November 2008: Enzo 1.5
June 2010: Enzo 2.0
June 2010: Enzo 2.0
June 2010: Enzo 2.0
June 2010: Enzo 2.0
June 2010: Enzo 2.0 October 2011: Enzo 2.1
The Enzo community today • 25 contributors (~12 active developers) at >10 institutions • ~200 people on enzo-users mailing list (~50% active?) • ~80 million SUs devoted to Enzo simulations in 2011 from NSF, NASA, DOE (with more in 2012) • Financial support from NSF (AST, OCI, PHY), NASA, and DOE • Complementary community: yt (http://yt- project.org): see tomorrow’s talk by Matt Turk!
Development model • Entirely distributed development model: small number of devs per institution! • Code distribution using mercurial (BitBucket) • Use code forks / pull requests to move features from development branches into main branch of the code • Almost all development discussion takes place on archived, public mailing list and on Google DOcs (meeting notes emailed out)
Community support • Most developers are astrophysicists “scratching their own itch” (and funded to do science!) • Development spurred by ~1.5 workshops/year + periodic task-oriented “code sprints” • Active mailing lists for users and developers • Development funded by many streams: universities, federal agencies, postdoctoral fellowships • Complementary yt development has helped to spur usage of Enzo!
Impact • Enthusiastic and heavily-involved user/developer community • Enzo is widely known in astrophysics - strongly represented in code comparisons, conference talks/posters - and highly trusted • Code is flexible and extensible: high science/ dollar! • Has spurred development of open-source science • Involvement in this community has strongly affected young scientists’ career trajectories
Challenges • No “Fearless Leader” of development process: hard to make major code revisions (esp. user-facing) • Part-time developers: distractions, hard to do “boring but important” infrastructure projects • Significant work required to build consensus and keep community together!
Recent Enzo- enabled results
Radio emission from cosmic ray electrons in galaxy clusters Skillman, Hallman, O’Shea, Burns, Smith & Turk 2011, Astrophysical Journal, 735, 96 and Skillman, et al. 2012, ApJ, submitted
Evolution of the intergalactic medium Smith, Hallman, Shull & O’Shea 2011, Astrophysical Journal, 731, 6
Phase Flux
Self-gravitating star forming clouds Collins et al. 2012, ApJ, 750, 13
Reionization of the Universe So, Norman, Harkness, Reynolds 2012 (in prep.)
Conclusions • Conversion of a code from closed-source to an open-source community code is not without technical and sociological challenges.
Conclusions • For the Enzo collaboration, this transition has been worth it: • Enhanced transparency/reproducibility (more trust in the code) • Larger user base: more eyes on the code, wider adoption • More and better science per dollar!
Conclusions • The benefits can be seen in the wide variety of science produced by Enzo users! ➡ cosmology ➡ galaxy formation ➡ star formation ➡ accretion disks ➡ turbulence ➡ fluid instabilities ➡ and more!
Questions?
Acknowledgments • Collaborators: Michael Norman (UCSD/SDSC), Matthew Turk (Columbia), Jack Burns (CU/Boulder), Eric Hallman (CfA/Tech-X), Robert Harkness (SDSC), Dan Reynolds (SMU), Sam Skillman (CU/ Boulder), Britton Smith (MSU), Geoffrey So (UCSD), Rick Wagner (UCSD/SDSC), John Wise (GATech) • The Enzo development consortium • Funding through NSF (AST, OCI, PHY), NASA, DOE • Computational time through NSF (Teragrid/XSEDE), NASA, DOE
Recommend
More recommend