Calkulate is a Python 3.6+ package for determining total alkalinity from seawater titration data.
If you're using Conda, first create a new environment with Python 3.6+, NumPy 1.15+, and SciPy 1.1+ - or you can just allow Pip to install these dependencies for you. Other similar versions are probably fine, but untested. Then, to install:
pip install calkulate
To upgrade in existing installation when there is a new release:
pip install calkulate --upgrade --no-cache-dir
Since v2.2.0, Calkulate also requires PyCO2SYS v1.1.1 or greater. This will be automatically installed by Pip if you don't have it.
This documentation is intended to present a broad overview of how Calkulate works, rather than provide a detailed syntactic reference for every constituent module and function.
Within Python, the import convention is:
import calkulate as calk
To quickly get started with some analysis, jump straight to the workflow examples. These examples illustrate the different parts of Calkulate that you may need to use, and provide a framework that you can quickly modify to suit your own requirements.
To find out more about the principles by which Calkulate calculates things, take a look at the other parts of the documentation. These explain:
- Variables and conventions: the conventions for naming and defining the input and output variables;
- Data import: how to import titration data to work with;
- Total concentrations: estimating total concentrations from salinity, or defining your own;
- Equilibrium constants: defining stoichiometric equilibrium constants for the alkalinity solvers;
- Alkalinity solvers: the different methods by which alkalinity can be estimated from titration data;
- Titrant calibration: how to calibrate the acid titrant's concentration;
- Version history: changes from version to version; and
- Literature references: a key to the codes used for citations.
A paper describing Calkulate v2 is in preparation. For now, if you use the current version of Calkulate in your research, please cite it as:
- Humphreys, M. P. and Matthews, R. S. (2020). Total alkalinity from titration data in Python with Calkulate v2.3.0. doi:10.5281/zenodo.3737874.
For older Python versions, replace the version, year and DOI as follows:
For the original MATLAB version, please cite:
Humphreys, M. P. (2015). "Calculating seawater total alkalinity from open-cell titration data using a modified Gran plot technique," in Measurements and Concepts in Marine Carbonate Chemistry (PhD Thesis, Ocean and Earth Science, University of Southampton, UK), 25–44.
But please do check back here for any updates first (or get in touch)!
The entirety of Calkulate is licensed under the GNU General Public License version 3 (GPLv3).