BurnMan
A thermodynamic and geophysics toolkit for the
Earth and planetary sciences
BurnMan is an open source, extensible mineral physics toolbox written in Python. The goal of the toolbox is to provide easy-to-use functions to calculate the physical properties within the Earth and other planets.
At the heart of the BurnMan module lie classes that describe endmember minerals, solutions and composite materials (rocks / assemblages). These can be interrogated to return thermodynamic and thermoelastic properties at a given pressure, temperature and composition. The user may select minerals and melt phases from several datasets already coded up in BurnMan, or they can easily define one of their own.
BurnMan is used for many purposes, including phase equilibria studies, the generation of seismic models, and the inversion of observations for the interior structure of planetary bodies.
Install the latest stable version of BurnMan via pip:
python -m pip install burnman!
(other options are available here)
BurnMan features
Implemented models
- Many equations of state (Vinet, Birch Murnaghan, Mie-Debye-Grüneisen, Modified Tait, ...).
- Several solid solution models (ideal, symmetric, asymmetric, subregular), with class constructors designed to make solid solutions easy to read and create.
- Composites of arbitrary combination of minerals.
- Anisotropic classes to return tensor properties of anisotropic minerals.
- Different averaging schemes (Reuss, Voigt, VRH, Hashin-Shtrikman).
- "Layer" and “Planet” classes that self-consistently calculate gravity profiles, mass, moment of inertia of planets given the chemical and temperature structure of a planet.
Databases
- An extensive collection of mineral databases (including those of Holland and Powell and Stixrude and Lithgow-Bertelloni).
- Several different geotherms (inc. Stacey, 1977; Brown and Shankland, 1981; Anderson, 1982).
Tools
- Plotting and comparison of seismic profiles from 1D (and soon) 3D seismic models.
- Parameter fitting for equations of state with experimental data not only in P-V-T, but in any thermodynamic property, such as seismic velocities and enthalpies.
- Calculation of chemical activities, potentials and fugacities of mineral assemblages.
- Propagation of uncertainty, both when fitting parameters and when forward modeling.
- Creation of input to software used to generate synthetic seismograms: Mineos (Masters et al. 2014) and AxiSEM (Nissen-Meyer et al. 2014).
- Generation smoothed property grids to create 1D adiabatic profiles which can be used by the geodynamics code ASPECT.
- Equilibrium function to equilibrate assemblages under user-defined constraints.
Examples
- Provides many examples highlighting different features of BurnMan.
- Contains a repository of work published using BurnMan (we accept script submissions from the community).
Citing BurnMan
If you use BurnMan in your publications, please cite the following papers:
- Myhill, R., Cottaar, S., Heister, T., Rose, I., Unterborn, C.,
Dannberg, J. and Gassmoeller, R. (2023):
BurnMan - a Python toolkit for planetary geophysics, geochemistry and thermodynamics.
Journal of Open Source Software. https://doi.org/10.21105/joss.05389 - Myhill, R., Cottaar, S., Heister, T., Rose, I., Unterborn, C.,
Dannberg, J., Gassmoeller, R. and Farla, R. (2024):
BurnMan v2.0 [Software]. Computational Infrastructure for Geodynamics. Zenodo.
https://doi.org/10.5281/zenodo.14165625 - Cottaar, S., Heister, T., Rose, I., and Unterborn, C:
BurnMan - a lower mantle mineral physics toolkit
Geochemistry, Geophysics, Geosystems 15.4 (2014): 1164-1179. [preprint] [DOI]
Try and Download
Trying BurnMan
You can try BurnMan without installing it! There are several tools online that you can use to do this, but binder is probably one of the easiest. We've set up a multipart tutorial as ipython notebooks to get you started.- Go to Part 01: The Material Classes
- Go to Part 02: The Composition Class
- Go to Part 03: Layer and Planets
- Go to Part 04: Fitting
- Go to Part 05: Solving equilibrium problems
- Access the latest repository (if you want to try out your own ipython notebooks from scratch)
Download the latest stable release
The easiest way to install the latest stable version of BurnMan is via pip: "python -m pip install burnman" or see the package info on Pypi. Alternatively, you can download a zip file containing the release:Download the development version
To download the development version, please visit our repository on GithubSome publications using BurnMan
- Zhang, S., Cottaar, S., Liu, T., Stackhouse, S. and Militzer, B., 2016. High-pressure, temperature elasticity of Fe-and Al-bearing MgSiO 3: Implications for the Earth's lower mantle. Earth and Planetary Science Letters, 434, pp.264-273.
- Unterborn, C.T., Dismukes, E.E. and Panero, W.R., 2016. Scaling the Earth: A Sensitivity Analysis of Terrestrial Exoplanetary Interior Models. E The Astrophysical Journal, 819(1), p.32.
- Cottaar, S. and Deuss, A., 2016. Large‐scale mantle discontinuity topography beneath Europe: Signature of akimotoite in subducting slabs. Journal of Geophysical Research: Solid Earth, 121(1), pp.279-292.
- Unterborn, C.T. and Panero, W.R., 2016. Effects of Mg/Si on Exoplanetary Refractory Oxygen Budget. arXiv preprint arXiv:1604.08309.
- Gu, T., Li, M., McCammon, C. and Lee, K.K., 2016. Redox-induced lower mantle density contrast and effect on mantle structure and primitive oxygen. Nature Geoscience, 9(9), pp.723-727.
- Myhill, R., Frost, D.J. and Novella, D., 2017. Hydrous melting and partitioning in and above the mantle transition zone: Insights from water-rich MgO-SiO2-H2O experiments. Geochimica et Cosmochimica Acta, 200, pp.408-421.
- Shim, S.H., Grocholski, B., Ye, Y., Alp, E.E., Xu, S., Morgan, D., Meng, Y. and Prakapenka, V.B., 2017. Stability of ferrous-iron-rich bridgmanite under reducing midmantle conditions. Proceedings of the National Academy of Sciences, p.201614036.
- Ballmer, M.D., Houser, C., Hernlund, J.W., Wentzcovitch, R.M. and Hirose, K., 2017. Persistence of strong silica-enriched domains in the Earth/'s lower mantle. Nature Geoscience, 10(3), pp.236-240. Supplementary Information
Acknowledgement and Support
- This project was initiated at, and follow-up research support was received through, CIDER (NSF FESD grant 1135452).
- The authors are partially supported by the Computational Infrastructure for Geodynamics initiative (CIG), through the National Science Foundation (U.S.) under Award No. EAR-0949446, the Science and Technologies Funding Council (U.K.) under Award No. ST/R001332/1 and through the Natural Environment Research Council (U.K.) Large Grant MC-squared (Award No. NE/T012633/1). They have also recieved support from The University of California-Davis.
- The BurnMan code has been contributed to the Computational Infrastructure for Geodynamics (CIG) and is hosted at geodynamics.org.