CHNOSZ: Thermodynamic Calculations and Diagrams for Geochemistry

An integrated set of tools for thermodynamic calculations in aqueous geochemistry and geobiochemistry. Functions are provided for writing balanced reactions to form species from user-selected basis species and for calculating the standard molal properties of species and reactions, including the standard Gibbs energy and equilibrium constant. Calculations of the non-equilibrium chemical affinity and equilibrium chemical activity of species can be portrayed on diagrams as a function of temperature, pressure, or activity of basis species; in two dimensions, this gives a maximum affinity or predominance diagram. The diagrams have formatted chemical formulas and axis labels, and water stability limits can be added to Eh-pH, oxygen fugacity- temperature, and other diagrams with a redox variable. The package has been developed to handle common calculations in aqueous geochemistry, such as solubility due to complexation of metal ions, mineral buffers of redox or pH, and changing the basis species across a diagram ("mosaic diagrams"). CHNOSZ also has unique capabilities for comparing the compositional and thermodynamic properties of different proteins.

Version: 1.3.6
Depends: R (≥ 3.1.0)
Imports: grDevices, graphics, stats, utils
Suggests: limSolve, testthat, knitr, rmarkdown, tufte
Published: 2020-03-16
Author: Jeffrey Dick ORCID iD [aut, cre], R Core Team [ctb] (code derived from R's pmax())
Maintainer: Jeffrey Dick <j3ffdick at>
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
NeedsCompilation: yes
Citation: CHNOSZ citation info
Materials: NEWS
In views: ChemPhys
CRAN checks: CHNOSZ results


Reference manual: CHNOSZ.pdf
Vignettes: An Introduction to CHNOSZ
Regressing thermodynamic data
Thermodynamic data in CHNOSZ
Equilibrium in CHNOSZ
Hot-spring proteins in CHNOSZ
Package source: CHNOSZ_1.3.6.tar.gz
Windows binaries: r-devel:, r-release:, r-oldrel:
macOS binaries: r-release: CHNOSZ_1.3.6.tgz, r-oldrel: CHNOSZ_1.3.6.tgz
Old sources: CHNOSZ archive

Reverse dependencies:

Reverse depends: LipidMS
Reverse imports: canprot, ecipex, iemisc


Please use the canonical form to link to this page.