Registry / data / chemicals

chemicals

JSON →
library1.5.2pypypiunverified

Chemical properties component of the Chemical Engineering Design Library (ChEDL). Provides pure component and mixture properties, phase equilibria, transport properties, and reaction stoichiometry. Current version 1.5.1, released regularly.

pip install chemicals
INSTALL
IMPORT
SIG · CHEMICALS
C
chemicals
datapythonv1.5.2
Install
12.4s avg
Import
Disk
382MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.5.2 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 382.3MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 12.4s · import 0.000s · 370MB
382MB installed
● package 382MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Chemical
from chemicals import Chemical
from chemicals import Chemical

Basic usage: instantiate a Chemical and compute properties.

from chemicals import Chemical from chemicals.reaction import balance_stoichiometry # Create a chemical object for water H2O = Chemical('water') print(f"Molecular weight: {H2O.MW} g/mol") print(f"Critical temperature: {H2O.Tc} K") # Balance a simple reaction rxn = balance_stoichiometry(['H2', 'O2'], ['H2O']) print(f"Balanced: {rxn}")
Debug
Known issues
gotchaChemical names can be ambiguous. Use CAS numbers or exact names to avoid picking the wrong isomer. e.g., 'ethanol' vs 'ethyl alcohol' both work, but 'propanol' raises an error due to multiple isomers.
fix
Always specify a unique CAS number if possible, e.g., Chemical(CAS='64-17-5').
affects: all
breakingIn version 1.2.0, numpy 2.0 and scipy 1.14 compatibility introduced breaking changes for some internal routines. Old code relying on numpy <2.0 may break.
fix
Upgrade chemicals to 1.3.0+ or pin numpy<2.0. For chemicals 1.2.0, ensure numpy 2.0 and scipy 1.14 compatibility is acceptable.
affects: >=1.2.0,<1.3.0
gotchaThe 'chemicals' package uses the 'fluids' library as a dependency. If you installed it via pip, fluids is included, but if you manually install chemicals from source, ensure fluids >= 1.0.26 (since chemicals 1.2.0).
fix
Run pip install 'chemicals' which auto-installs correct fluids version.
affects: >=1.2.0
deprecatedThe function 'VaporPressure.from_method' using deprecated argument 'method' with string names might be removed. Use integer or method handle instead.
fix
Use method as integer or use the new VaporPressure class directly.
affects: >=1.4.0
Upgrade
Version history
1.5.2latest on PyPI · released Jun 7, 2026
Audit
Dependencies
fluidsrequiredUsed for fluid dynamics calculations; version >= 1.0.26 required since chemicals 1.2.0
numpyrequiredArray computations
scipyrequiredInterpolation and optimization
Agent activity
12 hits · last 30 days
node
10
Amazon
1
OpenAI (training)
1
Resources
chemicals — pip install chemicals · libregistry