Conventions for solute codes

It is necessary to label each solute component in several places within Pytzer:

  1. In your CSV data files that quantify the solution composition;

  2. In the ions input to the Pitzer model functions;

  3. In the coefficient library that defines the interaction coefficients;

  4. In the functions defining solute properties;

  5. In the names of the interaction coefficient functions.

The convention in Pytzer is to write out the chemical formula for the relevant solute, including internal stoichiometry, excluding brackets, subscript markers and charges. The following tables list all of the codes used for solutes currently available in Pytzer.

Elemental ions

The elemental ions are arranged in groups and listed in order of atomic number.

Each transition metal may have multiple possible oxidation states. These are indicated in the code with j for each positive charge and q for each negative: for example, iron(II) and iron(III) (i.e. $\ce{Fe^2+}$ and $\ce{Fe^3+}$) become Fejj and Fejjj respectively, while $\ce{V-}$ would become Vq. The letters j and q are used because they do not appear in the symbol for any element.

Solute name Formula Name in Pytzer
Alkali metals
Hydrogen $\ce{H+}$ H
Lithium $\ce{Li^+}$ Li
Sodium $\ce{Na^+}$ Na
Potassium $\ce{K^+}$ K
Rubidium $\ce{Rb^+}$ Rb
Caesium $\ce{Cs^+}$ Cs
Alkaline earth metals
Magnesium $\ce{Mg^2+}$ Mg
Calcium $\ce{Ca^2+}$ Ca
Strontium $\ce{Sr^2+}$ Sr
Barium $\ce{Ba^2+}$ Ba
Transition metals
Manganese(II) $\ce{Mn^2+}$ Mnjj
Iron(II) $\ce{Fe^2+}$ Fejj
Iron(III) $\ce{Fe^3+}$ Fejjj
Cobalt(II) $\ce{Co^2+}$ Cojj
Nickel(II) $\ce{Ni^2+}$ Nijj
Copper(II) $\ce{Cu^2+}$ Cujj
Post-transition metals
Zinc(II) $\ce{Zn^2+}$ Znjj
Cadmium(II) $\ce{Cd^2+}$ Cdjj
Halogens
Fluoride $\ce{F^−}$ F
Chloride $\ce{Cl^−}$ Cl
Iodide $\ce{I^−}$ I
Lanthanides
Lanthanum $\ce{La^3+}$ La

Other ions

The other ions are listed approximately in order of the atomic number of their most interesting component.

Solute name Formula Name in Pytzer
Borate $\ce{B(OH)4-}$ BOH4
Bicarbonate $\ce{HCO3^−}$ HCO3
Carbonate $\ce{CO3^2−}$ CO3
TrisH+ $\ce{(HOCH2)3CNH3+}$ trisH
Nitrate $\ce{NO3^−}$ NO3
Hydroxide $\ce{OH^−}$ OH
Dihydrogen phosphate $\ce{H2PO4-}$ H2PO4
Thiocyanate $\ce{SCN^−}$ SCN
Bisulfate $\ce{HSO4^−}$ HSO4
Sulfate $\ce{SO4^2−}$ SO4
Thiosulfate $\ce{S2O3-}$ S2O3
Chlorate $\ce{ClO3^−}$ ClO3
Perchlorate $\ce{ClO4^−}$ ClO4
Magnesium hydroxide $\ce{MgOH^+}$ MgOH
Ferrocyanide $\ce{[Fe(CN)6]^4-}$ FejjCN6
Ferricyanide $\ce{[Fe(CN)6]^3-}$ FejjjCN6
Bromate $\ce{BrO3^−}$ BrO3
Iodate $\ce{IO3^−}$ IO3
Uranyl $\ce{UO2^2+}$ UO2

Neutral species

Neutral species are referred to as ions throughout Pytzer, for simplicity.

Solute name Formula Name in Pytzer
Tris $\ce{(HOCH2)3CNH2}$ tris

What actually matters?

For solutes, you could actually use whatever name you like, as long as it was applied consistently throughout the first four items on the list at the top of this page (i.e. in input files, in the ions variable, in the coefficient library, and in the solute properties functions). You could rename Na (sodium ion) as Rincewind in all of these places, and everything should still work fine. Using a matching name in the corresponding interaction coefficient functions would not be essential, but highly recommended.

The codes used for different literature references are for convenience only; they do not affect the program.