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 figures
Some figures made using BurnMan. Left to right: a) Heat capacity of quartz through the alpha-beta transition, b) volume change through the spin transition of ferropericlase, c) anisotropic thermal expansivity of periclase, d) the olivine phase diagram.

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.
  • 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).
  • 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.
  • 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., and Unterborn, C. (2021):
    BurnMan v1.0.1 [Software]. Computational Infrastructure for Geodynamics. Zenodo.
  • 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]
  • Myhill, R., Cottaar, S., Heister, T., Rose, I., and Unterborn, C.:
    BurnMan. Technical Reference (latest version).

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.

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 Github

Some publications using BurnMan

  1. 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.
  2. 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.
  3. 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.
  4. Unterborn, C.T. and Panero, W.R., 2016. Effects of Mg/Si on Exoplanetary Refractory Oxygen Budget. arXiv preprint arXiv:1604.08309.
  5. 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.
  6. 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–SiO 2–H 2 O experiments. Geochimica et Cosmochimica Acta, 200, pp.408-421.
  7. 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.
  8. 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.


There are many ways to contact us, depending on what you want to say:
  • Questions about how to use the code, or how it works? Try our forum.
  • Found a bug? Want to suggest an improvement? Try raising an issue on Github.
  • Want to submit some code? Open a Pull Request on Github (or ask in the Forum or via email if you want advice).
  • Something else? Drop us an email.