Spreadsheets and Calculators

TAS Diagram Plotter v2.0
Excel spreadsheet that allows for fast plotting onto a TAS (total alkali silica) diagram for use in naming your volcanic rock by composition. Created using coordinates as given in Le Maitre et al (2002).

Version 2.0 The user can now resize the TAS diagram chart and keep the region boundaries in tact. Beware that the region labels may still move around relative to their fields, however.

Glass Density Calc v3.2
Excel spreadsheet. Input the composition of a silicate glass/melt in terms of wt% and the H2O content in terms of wt% plus the temperature and pressure of the sample. Spreadsheet outputs the density of your glass/melt in terms of g/cm3 and g/L. User inputs go in blue boxes, output is automatically generated in red boxes.
References: Lange & Carmichael (1990); Ochs & Lange (1999); Also see Hack & Thompson (2011)

Version 3.2
3.2: Updated reference list to include all values and reference P and T values used. Updated 10 Apr 2017.
3.1: Minor tweaks to layout to clarify user inputs and program outputs. Fixed typo in reference temperature for H2O. Updated 29 Mar 2017.
3.0: Updated temperature dependence data to refer to correct reference temperature. Calculations now work at high temperature. Updated 26 Jan 2014.

Oxygen Fugacity (Redox) Buffer Plotter
Right click the link above and "Save Target As...". Python script that plots fO2 buffer values at any given pressure. User can edit the pressure in the python file (on line 7, change the value from 1 to the desired P in bars) and can run the script from a terminal by navigating to the folder where the .py file is and then typing "python Plot_fO2_buffers.py" into the terminal. References for buffer equations used are commented in the .py file.

WetMelts Conversion Tool
Excel spreadsheet with VisualBasic macros. Tool for converting anhydrous composition of a silicate melt in wt% plus known mol fraction of volatiles in the melt (H2O and CO2 mixture) to a hydrous melt composition in terms of both wt% and mol fraction. I created this tool as part of an independent study during my undergrad. Also see the tutorial.

WtpertoMolper Conversion Tool
Excel spreadsheet with VisualBasic macros. Tool for converting (hydrous or anhydrous) melt composition from wt% to mol%.

Oxide to Element Conversion Tool
Excel spreadsheet that will convert compositions measured in oxides (SiO2, FeO, K2O, etc) to elements (Si, Fe, K, etc), and vice versa.

Ferric/Ferrous iron ratio given known fO2
Excel spreadsheet. Tool for calculating the ferric/ferrous iron ratio in a melt for any given fO2. Also calculates new wt% and mole fraction values for FeO and Fe2O3 in your melt. Useful for determining theoretical iron speciation when total is given as FeOtotal or Fe2O3total and fO2 is known.
References: Kress & Carmichael (1991); B. R. Frost in Mineralogical Society of America "Reviews in Mineralogy" Volume 25.

Version 2.2
2.2: Fixed bug where dropdown box to choose oxygen fugacity buffer did not work. 11 October 2016.
2.1: Fixed a critical error in the calculation of XFeO based on the ratio given by the equation in Kress & Carmichael. 15 October 2015.

Calculate fO2 Buffer
Excel spreadsheet. Tool to calculate oxygen fugacity in terms of the common buffers when logfO2 is known or for translating between fO2 values expressed in terms of various buffers. This is useful for converting calculated oxygen fugacity values into and between delta buffer values (e.g. ΔNNO, ΔQFM...).
References: B. R. Frost in Mineralogical Society of America "Reviews in Mineralogy" Volume 25.

Version 1.1 Added ability to convert from a buffer value to the actual logfO2 value and into other buffers. Useful, for example, in comparing two data sets where one is expressed in terms of ΔNNO and the other in terms of ΔQFM. Updated 6 October 2016.

Water From Iron Reduction
Excel spreadsheet. Great for experimental petrologists. If a silicate melt is "fused" or "pre-melted" at the same oxygen fugacity that the experiments are ultimately run at, the ratio of ferric to ferrous iron in the melt will remain unchanged. If, however, the melt is fused in air and then run at more reducing conditions, some of the Fe2O3 will be reduced to FeO and will add water to your melt in the process. Use this tool to calculate just how much water was added to your melt due to the reduction of iron during your run. Only works if pre-run fO2 is in air (i.e. all iron is Fe2O3 before run), but calculation can be made for any experimental fO2.
References: Kress & Carmichael (1991); B. R. Frost in Mineralogical Society of America "Reviews in Mineralogy" Volume 25.

Version 1.1

External Spreadsheets and Calculators

Link: Gabbrosoft Mineralogical Spreadsheets
Spreadsheets for calculating mineral formulas based on an electron microprobe analysis. The spreadsheet does all the hard work, so you don't have to! Also find the Bulk KD calculator for calculating trace element bulk KD values given the mineral make-up of a sample, and the Magma Density calculator for calculating the density of a magma from its major element composition.

Link: Mineral Formula Calculations
Various excel spreadsheets from Carlton College. Useful tools for calculating formulas of various mineral types based on electron microprobe or EDX measurements (or anything where you have an analysis of a mineral in terms of wt% oxides).

Link: rockPTX
An excellent resource for optical petrology and mineralogy and some electron microscopy. This website is a resource put together by Frank Mazdab and contains numerous high resolution scans of thin sections (PPL and XPL) along with explanations of the mineralogy. Also lots of good tips for doing optical mineralogy.

Link: Chemical Equation Balancer
A fantastic tool that balances chemical equations (calculates reaction stoichiometry) and then allows for the calculation of moles or mass of product(s) given moles or mass of the reactant(s).

Models Available Online

Some of my favorite models, none of which are by me but all of which are used by me!


Papale model for H2O-CO2 partitioning/solubility in magmas
Calculate isobars, fluid/melt partitioning, saturation pressures, solubilities! Calculations straight from the model of Papale P, Moretti R, Barbato D (2006) The compositional dependence of the saturation surface of H2O + CO2 fluids in silicate melts. Chemical Geology 229, 78-95.

MagmaSat for Mac
MagmaSat is a calculator that determines the saturation conditions for a mixed H2O-CO2 fluid in natural composition silicate liquids. The calculator implements the thermodynamic model of Ghiorso and Gualda (2015).

This software calculates H2O-CO2-melt equilibrium for the rhyolite and basalt systems. The software is written as Visual Basic for Applications Macros within Microsoft Excel. Calculations from the model of Newman, S., Lowenstern, J.B., 2002, VolatileCalc: a silicate melt-H2O-CO2 solution model written in Visual Basic for Excel: Computers and Geosciences vol. 28 no. 5, pp. 597-604.

This model calculates basaltic melt and coexisting vapor compositions in the system C–O–H–S–Cl. In the forward model, total volatile inventories and melt composition are specified by the user. The parameterisation of Dixon (1997, p. 368) is used to predict the partitioning of CO2 and H2O between vapour and melt phases. An iterative procedure is employed to predict the partitioning of S and Cl components between fluid and melt phases. Melt and gas compositions and gas volume fraction are thereby modelled over pressures in the range 5–4000 bar. This approach satisfactorily reproduces independent literature data on S and Cl behaviour in basalt. SolEx is a user-friendly software package available for OS X and Windows, facilitating modelling of closed- and open-system C–O–H–S–Cl degassing in basalts. Computers and Geosciences vol. 45, pp. 87–97.

MELTS, rhyoloiteMELTS, and pMELTS
MELTS is a software package designed to facilitate thermodynamic modeling of phase equilibria in magmatic systems. It provides the ability to compute equilibrium phase relations for igneous systems. MELTS works over the temperature range 500-2000 °C and the pressure range 0-2 GPa. rhyoliteMELTS is identical to the MELTS calibration but is adjusted specifically for silicic compositions containing quartz and feldspar (P/T range equal to that of MELTS). pMELTS is optimized for bulk mantle compositions and is suitable over the temperature range 1000-2500°C and the pressure interval 1-3 GPa.

MELTS for Excel
MELTS for Excel is a macro-enabled Microsoft Excel workbook that provides a graphical user interface to set up, run, retrieve, and display calculations made with MELTS. Original publication: Gualda G.A.R., Ghiorso M.S. (2015) MELTS_Excel: A Microsoft Excel-based MELTS interface for research and teaching of magma properties and evolution. Geochemistry, Geophysics, Geosystems 16(1), 315-324 doi:10.1002/2014GC005545

Model for Viscosity of Volatile-bearing Melts
From the paper Viscosity of magmatic liquids: A model by Giordano D, Russell JK & Dingwell DB (2008). Calculate the viscosity of a melt given composition, temperature, and H2O. The link above is a version of the model in javascript. There is also an Excel spreadsheet version.

QUILF is a program originally written in Pascal to assess equilibria among Fe-Mg-Mn-Ti oxides, pyroxenes, olivine, and quartz. The program can calculate mineral equilibria, P, T, and fO2 given the right parameters. Only works on Windows. This version of QUILF was made to run on Windows 3.1 and 95, but I have successfully run it on Windows XP. Be sure to read the QUILF Basics file, included in the zipped archive or as a standalone download. Original publication: Anderson, DJ, Lindsley, DH, and Davidson, PM (1993) A Pascal program to assess equilibria among Fe-Mg-Mn-Ti oxides, pyroxenes, olivine, and quartz. Computers and Geosciences vol. 19, no. 9, pp. 1333-1350. doi:10.1016/0098-3004(93)90033-2

Thermodynamic Tools, References & Calculators

I always find it difficult to find the thermodynamic data that I need when I need it. So, I'm starting a running list here. Below are some references and online tools and tables that I consult often when I need to get my fugacity on.


Fugacity Coefficient Tables
Some very handy tables that are hosted as course materials for a geoscience class at Penn State.

Patrick Barrie's program for solving cubic equations of state
A man to whom I owe a great debt, Patrick Barrie, has made this online applet for calculating Z, V, φ, H & S using a variety of equations of state, including the Redlich-Kwong. You must know critical temperature (Tcrit), pressure (Pcrit), and the acentric factor ω.

Critical Constants and Acentric Factors for Selected Fluids
A page out of the book Molecular Thermodynamics of Fluid-Phase Equilibria, Third Edition by John M. Prausnitz - University of California, Berkeley; Rüdiger N. Lichtenthaler - University of Heidelberg; Edmundo Gomes de Azevedo - Institute Superior Técnico, Lisbon

Critical constants and accentric factors for some inorganic compounds
A page out of Perry's Chemical Engineers' Handbook, 1999.

Selected Properties of Molecules
This is an image of Table 2 from Holloway (1977) Fugacity and Activity of Molecular Species in Supercritical Fluids. In Fraser, D.G., Thermodynamics in Geology, 161-181.

Thermodynamic Quantities for Substances and Ions at 25°C
Link to a table of values for ΔH, ΔG, and ΔS for various substances.

Heats, free energies, and equilibrium constants of some reactions involving O2, H2, H2O, C, CO, CO2, and CH4
Wagman et al. (1945). Paper with calculations and thermodynamic data for reactions involving the above species. This is useful when an equilibrium constant of reaction (rather than equilibrium constant of formation from the elements) is required. For example, when dealing with the reaction CO + 1/2O2 = CO2. Jump to Table 8 for equilibrium constant values.


  1. Joaquin Cortes
    October 2, 2015


    A couple of years ago I wrote Pingu, which is an online tool to generate petrologic diagrams in the context of the Vhub cyberinfrastructure and I would love if you can include it as a resource in your page. In order to access the tool you need to sign for Vhub (https://vhub.org) and join the Pingu group at https://vhub.org/groups/pingu

    Then the tool can be launched at https://vhub.org/tools/pingu


  2. Maryam
    December 19, 2015

    I’m Maryam Khosravi, a PhD student of economic geology from Department of Earth Sciences at Shiraz University. I am working on porphyry copper deposit in my PhD thesis. Could I ask you kindly to reply my question or to introduce papers and references? About this topic can you help me, if possible?
    My question is that what analysis can I use for the exact determination of oxygen fugacity (fO2, quantity not quality) in alteration zones such as potassic and sercite alterations, and granitoid intrusions on porphyry copper deposits?
    I’d pleasure to help me.

  3. Grace
    November 14, 2016

    Hello, where do I find a reference to the TAS spreadsheet. I’m using it in an assignment and would like to reference the creator. Thank you

  4. Kayla Iacovino
    November 14, 2016

    Hi Grace. The coordinates that I used to plot the TAS diagram in excel are given in Le Maitre et al (2002), which is linked above. All I did was plot those up in excel to use as a template for plotting data. You’re welcome to cite this webpage with my name (Kayla Iacovino) as the author, but it’d be good to cite Le Maitre et al (2002), too.

  5. Franco
    July 19, 2017

    Hello, thanks for your TAS spreadsheet!
    But if I insert more than 20 data in “YOUR DATA” table, it does not give the plot.
    Ho to modify this table?
    Thanks, Franco

  6. Kayla Iacovino
    August 29, 2017

    Hi Franco! Great question. First, put in all the data you want to plot. Then, right click on the graph and click on “Select data…”. Now you should see a box that lists all of the Legend entries. Click on “Your Data”, and adjust the box to the right of “X values” and “Y values” to include all rows that have your data in it. For now, to help with this a bit, I’ve re-uploaded the spreadsheet with a new version that will plot data down to row 100.

  1. Tools for Petrologists » kaylaiacovino3.0 - [...] Tools for Petrologists [...]
  2. New Tool for Petrologists – Oxide to Element Conversion Tool » kaylaiacovino3.0 - [...] Tools for Petrologists [...]
  3. New Tool for Petrologists – Glass Density Calc » kaylaiacovino3.0 - [...] Tools for Petrologists [...]
  4. New Tool For Petrologists: Link to the Giordano Viscosity Model » kaylaiacovino3.0 - [...] Tools for Petrologists [...]
  5. Correction to Glass Density Calc in Tools for Petrologists » kaylaiacovino3.0 - [...] Tools for Petrologists [...]
  6. New Tool for Petrologists: Calculate fO2 Buffer » kaylaiacovino3.0 - [...] Tools for Petrologists [...]

Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>