Balance chemical equations and generate printable forms
Project description
English | 中文文档
reaction-balancer
A precise chemical-equation balancer that uses exact rational arithmetic and CIAAW atomic weights to generate printable reaction preparation sheets (Excel format) from Markdown input.
Features
1. Exact scientific computation
- Uses CIAAW (2024) standard atomic weights.
- All internal math uses sympy.Rational (exact fractions), eliminating floating-point errors.
- Linear algebra–based solver ensures correct balancing or gives an informative error if impossible.
2. Flexible input syntax
- Supports parentheses and fractional subscripts:
Ni(NO3)2(H2O)6Fe7/8SeLa1.8Sr0.2CuO4.12
- Optional basis specification (e.g., ) allows partial balancing, which is useful for sol–gel and oxide-precursor routes.
3. Automatic Excel output
- Produces a ready-to-print xlsx recipe sheet with formatted layout.
- Column widths, styles, and alignment handled automatically—no manual editing required.
4. Reproducible and traceable
- Input is a Markdown document, allowing you to record:
- sample IDs
- furnace schedule
- experimental notes
- Perfect for lab notebooks and long-term traceability.
5. Designed for materials synthesis
Suitable for:
- solid-state reactions
- flux growth
- hydrothermal / sol-gel precursor balancing
- cuprates, pnictides, nickelates, chalcogenides, and general inorganic synthesis
Installation
pip install balancer
or if using uv:
uv tool install balancer
Usage
Run this command in a directory:
python -m balancer
# or use uv:
# uv run balancer
If input.md is missing, the program automatically creates a template in your working directory.
You may also specify an explicit filepath:
balancer <filepath>
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
reaction_balancer-2.0.2.tar.gz
(20.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reaction_balancer-2.0.2.tar.gz.
File metadata
- Download URL: reaction_balancer-2.0.2.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8d29a380107910962d81b77945103099427e51e41f15b73844284400cae6c40
|
|
| MD5 |
d1eaa321cdaa2cdc93f33ec0322e9dfb
|
|
| BLAKE2b-256 |
84b7cf79af4ec88d7ae47710e4829d01c9b4a134feabbc47a885c3f7a3ec0a29
|
File details
Details for the file reaction_balancer-2.0.2-py3-none-any.whl.
File metadata
- Download URL: reaction_balancer-2.0.2-py3-none-any.whl
- Upload date:
- Size: 20.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82be374f5c0c016579aac007ef69d90bae8a38c87ce3daa88db775916a726553
|
|
| MD5 |
a67e2b74e4ce092174cf9b7d2b2a6c7e
|
|
| BLAKE2b-256 |
a1323b5650beee20161808e600da6cf6667af3c3f5b463cab5443a32f3c73fa0
|