Solverz Utilities
This lib provides the simulation routines for integrated energy systems, including electric power, natural gas and heat.
A simple usage of this library can be
from SolUtil import GasFlow
gf = GasFlow('belgium.xlsx')
gf.run()
print(gf.Pi) # get the node Pressure results
print(gf.f) # get the pipe mass-flow results
The required .xlsx data format can be found in SolUtil/energyflow/test directory for reference.
Installation
pip install SolUtil
Requirements
This package requires the ipopt optimization solver.
On windows, download the latest release here. Then add the bin
directory to the system path. Make sure that you can call ipopt in your terminal.
On macos, use brew install ipopt to perform the installation.
MATPOWER case files
The power flow also reads a MATPOWER case file directly:
from SolUtil import PowerFlow
pf = PowerFlow('case118.m')
pf.run()
print(pf.Vm, pf.Va) # get the bus voltage magnitudes and angles
A .m file is parsed with matpowercaseframes and prepared as MATPOWER runpf prepares it: generators out of service are dropped, the generators in service at one bus are summed, a PV or reference bus without a generator in service becomes a PQ bus, and every generator bus starts at its voltage setpoint. For large cases it is much faster to read than the .xlsx format.
Release files for SolUtil 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| solutil-0.1.0.tar.gz | 141.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| solutil-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:296.9 kB
Release files / solutil-0.1.0.tar.gz
| Download URL | solutil-0.1.0.tar.gz |
|---|---|
| Size | 141.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f2c3be0b03d93dea760d0a359ae244d9c714d8364f7db46b77091a3f99437019
|
|
BLAKE2b-256 checksum How to use checksums |
d6fb1c9ada87b4906c784c77fb0a0db4276fbe371918aba6a2b86520d0327556
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.
Transparency logRelease files / solutil-0.1.0-py3-none-any.whl
| Download URL | solutil-0.1.0-py3-none-any.whl |
|---|---|
| Size | 155.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1e0f33a8b969c4c9f93ba19aa583673f83f70437208318fa81f313b9b7f59540
|
|
BLAKE2b-256 checksum How to use checksums |
3ed984fa09630fa7e26afa290f16c790d9920c75b6d0c4be96d7aadeece7dd5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 12, 2026.
Transparency log