Mineral Solubility and Saturation Index
Equilibrium between Solid Phases and Aqueous Solution
In chemical thermodynamics, the dissolution or precipitation of solid phases (minerals, salts) is controled by the law of mass action. In other words, a mineral A_{a}B_{b} dissolves/precipitates according to the reaction formula^{1}
(1)  A_{a}B_{b} = aA + bB  with equilibrium constant K_{sp} 
defined by the law of mass action:
(2) 
The curly brackets indicate ionic activities (valid for nonideal solutions). The right hand side of Eq.(2) follows from the fact that the activity of a pure phase is, by convention, equal to 1:
(3)  pure solid phase:  {A_{a}B_{b}} = 1 
Inspired by the simple product form of Eq.(2), K_{sp} is named the “solubility product” – more precisely: thermodynamic solubility product.
Thermodynamic vs. Stoichiometric Solubility Product
When the solubility of the mineral is low only a small amount of ions will be dissolved (resulting in a water of low ionic strength). In this case, the activities of the ions can be replaced by the concentrations: {a}, {b} ⇒ [a], [b]. This simplification leads to the socalled stoichiometric solublity product K_{sp}^{*}. Therefore, we have to distinguish between:
(4a)  stoichiometric solubility product:  K_{sp}^{*} = [A]^{a}[B]^{b}  (concentrations) 
(4b)  thermodynamic solubility product:  K_{sp} = {A}^{a}{B}^{b}  (activities) 
For a given solid phase (mineral, salt) both quantities can differ considerably – especially in the case of highly soluble salts. Thus, when comparing literature data it is advisable to check which type of solubility product, K_{sp} or K_{sp}^{*}, is presented.
Of both quantities, K_{sp} plays the fundamental role, because it refers to ideal as well as to nonideal solutions. Hydrochemistry models and software, including aqion, rely on K_{sp} data (rather than K_{sp}^{*}).
Solubility product constants vary over several orders of magnitude. This favors the logarithmic notation (similar to the definition of pH):
(5)  pK_{sp} =  log_{10} K_{sp} 
pK_{sp} values for about 200 minerals and salts are listed here.
Classification rule (maybe the simplest one):
insoluble:  K_{sp} ≤ 1  ⇔  pK_{sp} ≥ 0 
soluble:  K_{sp} > 1  ⇔  pK_{sp} < 0 
Solubility S
The solubility is the maximum amount of solute (mineral, salt) that can be dissolved in 1 Liter water at equilibrium. Since we are searching for concentrations (instead activities), we will employ Eq.(4a). Together with the massbalance condition in Eq.(1) there are two equations to start with:
(6)  mass balance:  [A]/a = [B]/b bzw. [B] = (b/a)[A] 
(7)  stoichiometric solubility product:  K_{sp}^{*} = [A]^{a}[B]^{b} 
Inserting Eq.(6) into Eq.(7) yields K_{sp}^{*} = [A]^{a+b} (b/a)^{a+b} and, after rearranging,
(8) 
Dividing Eq.(8) by a, we obtain the (molar) solubility
(9)  solubility: 
Ion Activation Product (IAP) and Saturation Index (SI)
The law of mass action in Eq.(2) determines the activities at the state of equilibrium, {A}_{eq} and {B}_{eq}:
(10)  chem. equilibrium:  K_{sp} = {A}^{a}_{eq} {B}^{b}_{eq} 
However, a real solution may not be in the state of equilibrium. This nonequilibrium state is described by the ion activity product (IAP). It has the same form as the equilibrium constant K_{sp}, but involves the actual activities, {A}_{actual} and {B}_{actual}:
(11)  real solution:  IAP = {A}^{a}_{actual} {B}^{b}_{actual} 
The ratio between IAP and K_{sp} enters the definition of the saturation index:
(12)  saturation index:  SI = log_{10} (IAP / K_{sp}) 
The saturation index is a useful quantity to determine whether the water is saturated, undersaturated, or supersaturated with respect to the given mineral:
SI = 0  IAP = K_{sp}  →  saturated (in equilibrium) 
SI < 0  IAP < K_{sp}  →  undersaturated 
SI > 0  IAP > K_{sp}  →  supersaturated 
Examples
The following example calculations are provided:
 Dissolution of calcite
 Dissolution of gypsum
Remarks & Footnotes

In order to keep the notation straight, electrical charges are omitted in the equations. ↩