English | 中文文档
A precise chemical-equation balancer that uses exact rational arithmetic and CIAAW atomic weights to generate printable recipe sheets (Excel format) from Markdown input.
- Uses CIAAW (2024) standard atomic weights.
- All internal math uses sympy.Rational (exact fractions), eliminating round-off errors.
- Linear algebra–based solver ensures correct balancing or gives an informative error if impossible.
- 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.
- Produces a ready-to-print xlsx recipe sheet with formatted layout.
- Column widths, styles, and alignment handled automatically—no manual editing required.
- Input is a Markdown document, allowing you to record:
- sample IDs
- furnace schedule
- experimental notes
- Perfect for lab notebooks and long-term traceability.
Suitable for:
- solid-state reactions
- flux growth
- hydrothermal / sol-gel precursor balancing
- cuprates, pnictides, nickelates, chalcogenides, and general inorganic synthesis
pip install balanceror if using uv:
uv tool install balancerRun the following command in any directory:
python -m balancer
# or use uv:
# uv run balancerThis program needs an input file (default: ./input.md).
If input.md is not found, a template will be automatically created in the current working directory.
You may also specify an explicit filepath:
balancer <filepath>
