Skip to main content
License Python 3.9+ Documentation Coverage 98%

An open-source Python toolkit for power system automation, providing a high-performance wrapper for PowerWorld’s Simulator Automation Server (SimAuto). Transforms complex COM calls into intuitive, Pythonic operations.

  • Intuitive Indexing – Access grid data with pw[Bus, "BusPUVolt"] syntax

  • Full SimAuto Coverage – All PowerWorld API functions through modular mixins

  • Pandas Integration – Every query returns a DataFrame

  • Pythonic Settings – Solver and GIC options as descriptor attributes (pw.max_iterations = 250)

  • Convenience Methods – Flows, overloads, PTDF/LODF, snapshot context manager, case summary

  • Transient Stability – Fluent API with TS field intellisense

  • Analysis Utilities – Built-in GIC, network topology, and contingency tools

Installation

Requires Windows with PowerWorld Simulator (SimAuto enabled) and Python 3.9+.

pip install esapp

Quick Example

from esapp import PowerWorld
from esapp.components import *

pw = PowerWorld("path/to/case.pwb")

# Read data
bus_data = pw[Bus, ["BusName", "BusPUVolt"]]

# Solve power flow
V = pw.pflow()

# Inspect and modify
violations = pw.violations(v_min=0.95)
pw[Gen, "GenMW"] = 100.0

Documentation

Full tutorials, API reference, and examples at esapp.readthedocs.io.

Testing

pip install .[test]
pytest tests/

Citation

@article{esa2020,
  title={Easy SimAuto (ESA): A Python Package for PowerWorld Simulator Automation},
  author={Mao, Zeyu and Thayer, Brandon and Liu, Yijing and Birchfield, Adam},
  year={2020}
}

Authors

Developed by Luke Lowery and Adam Birchfield at Texas A&M University (Birchfield Research Group). See my personal (research website).

License

Distributed under the Apache License 2.0.

Metadata

Release files for esapp 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for esapp 0.2.1
File Size Uploaded
esapp-0.2.1.tar.gz 977.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for esapp 0.2.1
File Interpreter ABI Platform
esapp-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.9 MB

Release files / esapp-0.2.1.tar.gz

Download URL esapp-0.2.1.tar.gz
Size 977.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4e4a600263423b469a61f5f5e2bae0043c56d983fea32a2c328eb8dc577f41bc
BLAKE2b-256 checksum
How to use checksums
52f98484b0af1623a1d7877d9218185bf50462b2ca940337d84d42b53c37d9a7
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 1, 2026.

Transparency log

Release files / esapp-0.2.1-py3-none-any.whl

Download URL esapp-0.2.1-py3-none-any.whl
Size 971.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7602f529754a63da67322f3cbbd43dda4cbc039460fc2cbbedffd697767f5f60
BLAKE2b-256 checksum
How to use checksums
f0a9491ea7d1787e7e0b55c76596193469d1748341b539b4f6041e6bab1e3054
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 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page