Equilibrium speciation
Pick a database, the components and the phases that may form, then press Compute equilibrium. Every phase you list ends up either present and saturated, or absent and undersaturated.
The first calculation loads Python, numpy, scipy, discopt and the pounce solver into the page (about 30 MB, cached afterwards). Nothing is sent to a server.
Aqueous species
Phases
Text summary
Sweep one variable and watch the speciation, the solids and the saturation indices change. Each point starts from the previous solution.
The species or solid holding the most of an element, at each point of a grid. With pH and pe this is a Pourbaix diagram; the conditions on the left (amounts, temperature, other fixed values) apply at every point. Try the Iron in chloride solution example.
A 25 × 25 grid is 625 equilibrium calculations, about 10–30 s in the browser.
Dissolution constants of the phases selected on the left, as written in the database.
The same calculation with the Python package
(pip install "discopt-speciation @ git+https://github.com/jkitchin/discopt-speciation"; see the documentation):