15 unstable releases (5 breaking)
0.6.0 | Feb 12, 2022 |
---|---|
0.5.0 | Oct 14, 2021 |
0.4.0 | Dec 6, 2020 |
0.3.0 | Jul 29, 2020 |
0.1.1 | Jul 19, 2020 |
#352 in Science
36 downloads per month
59KB
1.5K
SLoC
StoichKit
A toolkit for stoichiometry.
Features
balance
: Balances a chemical equationyield
: Calculates percent yield- given a fully balanced chemical reaction, and respective masses (in grams)
moles
calculates moles given formula and mass (grams)theoretical-yield
: Calculate theoretical yield of all products- given fully balanced chemical equation and reagent masses
Usage
stoichkit 0.6.0
A stoichiometry toolkit.
USAGE:
stoichkit <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
balance
help Print this message or the help of the given subcommand(s)
moles
theoretical-yield
yield
Examples
Balance
$ stoichkit balance H2O O2 = H2O2
2*H2O + O2 = 2*H2O2
$ stoichkit balance -x H2O O2 = H2O2
2*H2O + 1*O2 = 2*H2O2
Moles
$ stoichkit moles C4H6 0.7254
0.013410485 mol
Theoretical Yield
$ stoichkit theoretical-yield "2*H2O2" 4.0 = "2*H2O" O2
H2O 2.1185393 g
O2 1.8814605 g
$ stoichkit theoretical-yield --units moles "2*H2O2" 4.0 = "2*H2O" O2
H2O 0.11759864 mol
O2 0.05879932 mol
Yield
$ stoichkit yield '2*H2O2' 4.0 = '2*H2O' 2.1184621`
H2O 0.9999635 %
Installation
- Clone this repo
- With cargo installed, run
cargo build --release
- Run
./target/release/stoichkit
or copy that binary to a bin folder.
stoichkit
equation balancer uses the nalgebra-linalg
solver, which requires a BLAS installation.
On macOS BLAS can be installed via brew install openblas
.
Roadmap
- Accept all reagents and determine limiting reagent.
- Add desktop GUI (maybe)
- Use StoichKit to power a web UI (
stoichkitweb
available here) - Implement chemical equation balancer
- Test linear algebra suite on other platforms
- Ideal Gas calculations
Dependencies
~12–22MB
~308K SLoC