Skip to main content

Read the Docs testing codecov Supported python versions DOI PyPI version status

pyEQL logo

A python interface for water chemistry

Description

The goal of pyEQL is to provide a stable, intuitive, easy to learn python interface for water chemistry that can be connected to a variety of different modeling engines

Specifically, pyEQL defines a Solution class to represent an aqueous electrolyte solution. The Solution class allows the user to manipulate solutions as Python objects, providing methods to populate them with solutes, calculate species-specific properties (such as activity and diffusion coefficients), and retrieve bulk properties (such as density, conductivity, or volume).

>>> from pyEQL import Solution
>>> s1=Solution({"Na+":"1 mol/L", "Cl-": "1 mol/L"})
>>> s1.density
<Quantity(1.03710384, 'kilogram / liter')>
>>> s1.conductivity
<Quantity(8.09523295, 'siemens / meter')>
>>> s1.osmotic_pressure.to('atm')
<Quantity(46.7798197, 'standard_atmosphere')>
>>> s1.get_amount('Na+', 'ug/L')
<Quantity(22989769.3, 'microgram / liter')>

pyEQL also includes a number of other utilities to support water chemistry analysis, including a built-in property database of diffusion coefficients, activity correction parameters, and other data on a variety of common electrolytes.

It is designed to be customizable and easy to integrate into projects that require modeling of chemical thermodyanmics of aqueous solutions. It aspires to provide a flexible, extensible framework for the user, with a high level of transparency about data sources and calculation methods.

Key Features

  • Build accurate solution properties using a minimum of inputs. Just specify the identity and quantity of a solute and pyEQL will do the rest.

  • "Graceful Decay" from more sophisticated, data-intensive modeling approaches to simpler, less accurate ones depending on the amount of data supplied.

  • Not limited to dilute solutions. pyEQL contains out of the box support for the Pitzer Model and other methods for modeling concentrated solutions.

  • Built in database containing hundreds of model parameters and physicochemical properties for different ions.

  • Units-aware calculations (by means of the pint library)

Documentation

Detailed documentation is available at https://pyeql.readthedocs.io/

Dependencies

  • Python 3.11+. This project will attempt to adhere to NumPy's NEP 29 deprecation policy for older version of Python.
  • pint - for units-aware calculations
  • pymatgen-core - periodic table and chemical formula information
  • phreeqpython - for PHREEQC-based speciation calculations
  • iapws - equations of state for water
  • monty - serialization and deserialization utilities
  • maggma - interface for accessing the property database
  • scipy - for certain nonlinear equation solvers

pyEQL is licensed under LGPL.

This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyeql-1.6.5.tar.gz (14.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyeql-1.6.5-cp313-cp313-win_amd64.whl (23.5 MB view details)

Uploaded CPython 3.13Windows x86-64

pyeql-1.6.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyeql-1.6.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (19.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pyeql-1.6.5-cp313-cp313-macosx_11_0_arm64.whl (19.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyeql-1.6.5-cp313-cp313-macosx_10_13_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

pyeql-1.6.5-cp312-cp312-win_amd64.whl (23.5 MB view details)

Uploaded CPython 3.12Windows x86-64

pyeql-1.6.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyeql-1.6.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (19.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pyeql-1.6.5-cp312-cp312-macosx_11_0_arm64.whl (19.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyeql-1.6.5-cp312-cp312-macosx_10_13_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

pyeql-1.6.5-cp311-cp311-win_amd64.whl (23.5 MB view details)

Uploaded CPython 3.11Windows x86-64

pyeql-1.6.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyeql-1.6.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (19.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pyeql-1.6.5-cp311-cp311-macosx_11_0_arm64.whl (19.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyeql-1.6.5-cp311-cp311-macosx_10_9_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file pyeql-1.6.5.tar.gz.

File metadata

  • Download URL: pyeql-1.6.5.tar.gz
  • Upload date:
  • Size: 14.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pyeql-1.6.5.tar.gz
Algorithm Hash digest
SHA256 92a278b90d410b4a4a062b4d8eab7c79a1fb4431f4b342709abde9181580ea3c
MD5 817189d2aeda147a4ab24fecf3fd1019
BLAKE2b-256 cff2beb3d85a36f9f65e4fc4db9daf6835619bf12a2dfaafc95f6c03b26a57eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5.tar.gz:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyeql-1.6.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 23.5 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pyeql-1.6.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c5ea2385786fb1fc8879ea6199653737ca488b867f68e3735d7b1d02ef347186
MD5 b5ed867111385d4e39d1390b8f506cda
BLAKE2b-256 2d68762db6c28539260d15c8db63c2c3fa6aca9e33946035ef20beb4da86d354

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp313-cp313-win_amd64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 37247c09009ae4bc1f71aed2b95eddd70ecb49127947654d9a442f77630587f6
MD5 01efe5add0c2d254430912d20728d669
BLAKE2b-256 7066f87adcc0279748c741952983a9153abf3273f45fde5885d5af74ff98e6e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 30fe0776e30fb53836e25625721b0e3a6d78c5e451d85500c22c8028a60ea045
MD5 a33806c1c9ec62fed1de6ef1b3ea4f11
BLAKE2b-256 e3b68d6960a472163969d6b2d310498c8f32255055f04aa052a0fd587cbbb511

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 28933ebfc1df76c44edd35bd59ae12dbb4e382b1e0453b7ee40c33cb84382a9d
MD5 d618f2098fcdd84eb607c441a9f74cef
BLAKE2b-256 c22fbbba37ffe5087cd888398a61adabbb786de0db1bbbb1ab218b934a352fe3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b8942b496006ad2d32eb5bf0e02ee5dd5f30181ffe5e356c0fd104700b8c4941
MD5 13579680de078ebad4d19ed79a6d84dd
BLAKE2b-256 7b2a22e06d51501660744b15ce932a40c0e2f83c6d1efa18fc4f96559fd32d93

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyeql-1.6.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 23.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pyeql-1.6.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5daab6478bc9ae0f8b1f9b04879c652ca7c0bb7c282dc3868d03053f1c2aee5e
MD5 14fac2b978fa680f0b929052e938fbea
BLAKE2b-256 e58f851611315aae6dd02f0a36c8f42538d435171ca7d0e35b4d5cd47ba2d837

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp312-cp312-win_amd64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b89e4a07b051f84e71435added8b2116cc90eafb49f050dfe54f554762342740
MD5 05076fdbc0c51281af76b528aabca2c1
BLAKE2b-256 99f34c0985d573d75cae73db37de3347a69c56bc1c2f03a4c8cfacd3b05d6564

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9ec8fa61fc683e99549c772604c1d22c75ad751a126258e3fb821d2e23430609
MD5 9b70081999716c17c1d2b4200b0d46fd
BLAKE2b-256 2bdc942afb3dc9bbcd5ca4cff5b44a5c6d1b8dfc08a88a4f29450f1f7c8b42dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 009b326a4cd3c9e8077dd785650d14cb709e1909beb6ffbec71bb5e48797bf08
MD5 7c427049bb51963909438a3822904847
BLAKE2b-256 adc5e5010a029ff8b3d87e6550ec4c99e7df84ac1c96685abe3c4f2bce4e1a13

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8993e737509df8bc24718487391c414ba896524700f742494ee4bdd3ef84bbfd
MD5 0767f1e2cd2a0e8d12565fb4baaf8b64
BLAKE2b-256 a24f07f5d1fe4c4401a8ca6e018ebaf0f57b64babbc28733aa0f84a317987d74

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyeql-1.6.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 23.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pyeql-1.6.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f4e2d24a4754ee35814ad2cc9cbb1ce2dc47315db3a8ffa0e5097a192a6ba9cf
MD5 194d2d114bba155f10c4c9012e4e1cdc
BLAKE2b-256 379a64d459b56fcc750ec265d12f802076c6cf8c5a474920f237b144ae20be36

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp311-cp311-win_amd64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0bdaeb1cc37beb1dbe3988f7cd5d61fd9a3fc91eaae221723a0e9d320d3e5d41
MD5 f7effd5baee4a42e8cdb8f2db36a0463
BLAKE2b-256 5a1d13dac753fe2bd2774ff13f3bc784851a34f280950039962bab3df9285064

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1725fb9c4d19ac72907269419768908538b7a2e4fe77fe8be07b216c5ba8e53b
MD5 7e9b32361e34ccccf3884d97fa2d33ae
BLAKE2b-256 3bfede0e9fa8da137957037b3f6d50cc45ad3281f6125f43f823e14db43f8bb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c54cad031626a9783074853fd39ae3cba4a8fd8c784d35dfba59de943ec3e26a
MD5 0bd8f4ee924ab5c6f24dfce7d0c67f19
BLAKE2b-256 e7112d10b8046060f9bd7f154647348e3e9fa824c1805be6cfd9ffe3a624b78c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyeql-1.6.5-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyeql-1.6.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0466ffb93b500b46e1d2a24a706d32da3436d6cb05d9d378681fd0d93c2f6d6a
MD5 560cbc714c1f6dfed0d8306cc978378a
BLAKE2b-256 3e260cf918c6e99b2ad1f820b5cee059d43cc969a05815b418e796f607830672

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeql-1.6.5-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release.yml on KingsburyLab/pyEQL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.6.5 This release

16 files

1.6.1

16 files

1.5.0

16 files

1.4.0

21 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.6

2 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

3 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.15.1

2 files

0.15.0

2 files

0.14.0

2 files

0.13.0

2 files

0.12.2

2 files

0.12.1

2 files

0.12.0

2 files

0.11.1

2 files

0.11.0

2 files

0.10.1

2 files

0.10.0

2 files

0.9.2

2 files

0.9.1

2 files

0.9.0

2 files

0.8.1

2 files

0.8.0

2 files

0.7.1

2 files

0.7.0

2 files

0.6.1

2 files

0.6.0

2 files

0.5.2

2 files

0.5

1 file

0.4

2 files

0.3.1

2 files

0.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page