Skip to main content

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)6
    • Fe7/8Se
    • La1.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


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)

Uploaded Source

Built Distribution

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

reaction_balancer-2.0.2-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

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

Hashes for reaction_balancer-2.0.2.tar.gz
Algorithm Hash digest
SHA256 d8d29a380107910962d81b77945103099427e51e41f15b73844284400cae6c40
MD5 d1eaa321cdaa2cdc93f33ec0322e9dfb
BLAKE2b-256 84b7cf79af4ec88d7ae47710e4829d01c9b4a134feabbc47a885c3f7a3ec0a29

See more details on using hashes here.

File details

Details for the file reaction_balancer-2.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for reaction_balancer-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 82be374f5c0c016579aac007ef69d90bae8a38c87ce3daa88db775916a726553
MD5 a67e2b74e4ce092174cf9b7d2b2a6c7e
BLAKE2b-256 a1323b5650beee20161808e600da6cf6667af3c3f5b463cab5443a32f3c73fa0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page