Skip to main content

The py-dss-interface is a Python package that provides a Python interface to the OFFICIAL version of OpenDSS (Open-source Distribution System Simulator) software. OpenDSS is a free, open-source software for simulating and analyzing power distribution systems.

Project description

The py-dss-interface is a Python package that provides a Python interface to the OFFICIAL version of OpenDSS (Open-source Distribution System Simulator) software. OpenDSS is a free, open-source software for simulating and analyzing power distribution systems.

The current py-dss-interface works only with Windows. The reason is that EPRI provides only Windows versions of OpenDSS. The package will work for Linux when EPRI releases the Linux version of OpenDSS.

The py-dss-interface package allows users to interact with OpenDSS using Python code, which can be particularly useful for automating tasks, performing simulations, and analyzing results. The package provides a range of functionality, including:

  • Creating and modifying OpenDSS circuit models

  • Running simulations and analyzing results

  • Accessing and manipulating data within the circuit model

  • Plotting results

The package is available on the Python Package Index (PyPI) and can be installed using pip, the Python package installer. OpenDSS does not have to be installed on the user’s system to use the package, as the py-dss-interface provides an OpenDSS version.

Overall, the py-dss-interface is a powerful tool for anyone working with power distribution systems who wants to use Python for simulation and analysis.

Disclaimer

This Python Package is purely responsibility of Paulo Radatz and not his employer. Use this package at your own risk.

Installation

pip install py-dss-interface

Examples

You can find several examples of Python scripts at this link: https://github.com/PauloRadatz/py-dss-interface-examples

Thanks

I want to thank Ênio Viana and Rodolfo Pilar Londero for all their contribution to the new version of the tool.

Changelog

2.0.4 (2024-03-20)

  • BUS methods do not raise errors.

2.0.3 (2024-03-05)

  • Updated OpenDSS to DDLL built as v9.8.0.1

  • OpenDSS is using pointers now instead of variants.

2.0.2 (2023-06-04)

  • Tom updated OpenDSS to DDLL built as v9.6.1.2

  • Moving away from variant. Capacitor is done. Need other elements

  • Tom worked on direct dll with progress bar wired in for daily solution mode

2.0.1 (2023-05-24)

  • Description corrected

2.0.0 (2023-05-24)

  • py-dss-interface version 2 or above does not have backward compatibility with version 1

  • Methods replaced by Python property and setter. For example, instead of using dss.lines_read_r1() and dss.lines_write_r1() to read and write, respectively, we can use dss.lines.r1 to either read (variable = dss.lines.r1) or write (dss.lines.r1 = value) in the current version.

  • Update OpenDSS version to: OpenDSS Version 9.6.1.1; License Status: Open

1.0.2 (2021-10-10)

  • Code refactored

  • PEP 8 in some methods

1.0.1

  • Working only on Windows due EPRI offical OpenDSS is available only on Windows

1.0.0 (2021-01-21)

  • Code refactored

  • Works on Linux version of OpenDSS provided in the package. This version is from 2020.

  • Tests included

  • Methods renamed to satisfy PEP 8 – Style Guide for Python Code

0.1.0 (2021-01-21)

  • Update OpenDSS version to: OpenDSS Version 9.2.0.1; License Status: Open

0.0.9 (2021-01-21)

  • text method returns string values (Jouni request)

  • OpenDSS exe 64bits included

0.0.8 (2020-12-10)

  • Allowing run multiple instances of DDLL without problems with memory - Gustavo asked it

  • Allowing run multiple OpenDSS’ DLLs

  • Update OpenDSS version to: OpenDSS Version 9.1.3.3 (64-bit build); License Status: Open

0.0.7 (2020-10-22)

  • PVsystems updated.

  • Update OpenDSS version to: OpenDSS Version 9.1.0.1 (64-bit build); License Status: Open.

  • Allowing to write values into Variant methods.

0.0.4 (2020-08-17)

  • DSS class can receive OpenDSS folder in order to use the user own OpenDSS.

0.0.1 (2020-06-12)

  • Integrating CI.

0.0.0 (2020-06-12)

  • First release on PyPI.

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

py-dss-interface-2.0.4.tar.gz (53.7 MB view hashes)

Uploaded Source

Built Distribution

py_dss_interface-2.0.4-py3-none-any.whl (52.8 MB view hashes)

Uploaded Python 3

Supported by

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