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.4.tar.gz
(20.8 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.4.tar.gz.
File metadata
- Download URL: reaction_balancer-2.0.4.tar.gz
- Upload date:
- Size: 20.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f04746db8a2da2535beae0d448cd02178be5023918fee07a6ca55683bf973f17
|
|
| MD5 |
64813e6d1831d2ddcf7a5fc6150e5f92
|
|
| BLAKE2b-256 |
931607d97a6276e797dd987937f409a1acc1dd545a3c2b07db078f3605b2dac3
|
File details
Details for the file reaction_balancer-2.0.4-py3-none-any.whl.
File metadata
- Download URL: reaction_balancer-2.0.4-py3-none-any.whl
- Upload date:
- Size: 20.7 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 |
618ba87305ca0e3800b00c0dcf5fb4cfd708ae560493b14d43ad3a53a29fd12c
|
|
| MD5 |
2df24ab9696458de7c4851c2b8f025cd
|
|
| BLAKE2b-256 |
c2d040a167d8aeae16a6d750e12d31c90eb2cc11aa486079eab83dd0278eff75
|