The CHNOSZ package for R provides an integrated set of tools for thermodynamic calculations in geochemistry and geobiochemistry. The thermodynamic properties of liquid water are calculated using Fortran code from SUPCRT92 (Johnson et al., 1992) or an implementation in R of the IAPWS-95 formulation (Wagner and Pruß, 2002). Thermodynamic properties of other species are taken from a database for minerals and inorganic and organic aqueous species including biomolecules, or from amino acid group additivity for proteins (Dick et al., 2006). The corresponding high-temperature properties are calculated using the Berman-Brown (1985) equations for minerals and the revised Helgeson-Kirkham-Flowers (1981) equations for aqueous species. The HKF equations are augmented with the Deep Earth Water (DEW) model (Sverjensky et al., 2014) and estimates of parameters in the extended Debye-Hückel equation (Manning et al., 2013) to calculate standard-state properties and activity coefficients for given ionic strength at high pressure (to 6 GPa). Functions are provided to calculate standard-state properties of species and reactions, define the basis species of a chemical system, automatically balance reactions, calculate the chemical affinities of formation reactions for selected species, calculate the equilibrium activities of those species, and plot the results on chemical activity diagrams.
canprot is a package that uses CHNOSZ for compositional and thermodynamic analysis of proteomic datasets.
CHNOSZ is on R-Forge. Updates to the package will be made there before being posted to this website or to CRAN. Get the latest development version using:
install.packages("CHNOSZ", repos = "http://R-Forge.R-project.org")
CHNOSZ and canprot are free software made available under the GPL.
The maintainer of these packages is Jeffrey Dick. Please contact him at firstname.lastname@example.org.
To cite CHNOSZ in publications, use this reference: Dick, 2008. The thermodynamic database depends on the work of many researchers. If you publish results using any of these data, please cite the primary sources! For a list of references, use the thermo.refs() function in the package, or access the table of references here.