Skip to main content

DSSData

PyPI version DOI License

Tests PyPI Downloads stars

⚡A python micro-framework for steady-state simulation and data analysis of electrical distribution systems modeled on OpenDSS.

Mode support: Static and Time-series.

Why DSSData?

The purpose of DSSData is to facilitate the steady-state simulation of modern electrical distribution systems, such as microgrids, smart grids, and smart cities.

With DSSData you can easily make your own super new fancy operation strategies with storage or generators, probabilistic simulation, or simple impact studies of a distributed generator. See an example in our Tutorial.

All you need is your base distribution system modeled in OpenDSS!!!

Easy to simulate

We built the DSSData for you just write what you want in a simple function, plugin on a power flow mode, and run.

You don't need anymore write a routine to run each power flow per time.

Quick Start

Installation

We strongly recommend the use of virtual environments manager.

pip install dssdata

Static Power Flow (Snapshot)

First, comment any solve, output command (e.g: show), or solve configurations (e.g: set mode=Snap) from your .dss file.

NOTE: Any Monitor is needed to get the data.

Supposing that you file is in the path master.dss:

from dssdata import SystemClass
from dssdata.pfmodes import run_static_pf
from dssdata.tools import voltages

distSys = SystemClass(path="master.dss", kV=[13.8, 0.230], loadmult=1.0)

[voltageDataFrame] = run_static_pf(distSys, tools=[voltages.get_all])
print(voltageDataFrame)

Time series Power Flow

First, comment any solve, output command (e.g: show), or solve configurations (e.g: set mode=daily stepsize=5m time=...) from your .dss file.

NOTE: Any Monitor is needed to get the data.

NOTE: The Loadshape must be defined in the .dss file

Supposing that you file is in the path master.dss:

from dssdata import SystemClass
from dssdata.pfmodes import cfg_tspf, run_tspf
from dssdata.tools import lines, voltages

distSys = SystemClass(path="master.dss", kV=[13.8], loadmult=1.2)
cfg_tspf(distSys, step_size="5m", initial_time=(0, 0))

[voltageDataFrame] = run_tspf(distSys, tools=[voltages.get_all], num_steps=288)
print(voltageDataFrame)

Documentation

We provide an full API documentation and examples in the DSSData Documentation.

Citing

If you find DSSData useful in your work, we kindly request that you cite it as below:

@software{Monteiro_felipemarkson_dssdata_v0_1_7_2022,
  author = {Monteiro, Felipe},
  doi = {10.5281/zenodo.6784238},
  license = {MIT},
  month = {6},
  title = {{felipemarkson/dssdata: v0.1.7}},
  url = {https://github.com/felipemarkson/dssdata},
  version = {0.1.7},
  year = {2022}
}

Help us to improve DSSData

See our Issue section, our Development Guidelines, and our Code of conduct.

Contributors:

Metadata

Release files for dssdata 0.2.0

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

Source distribution (sdist)

Source distribution for dssdata 0.2.0
File Size Uploaded Provenance
dssdata-0.2.0.tar.gz 12.5 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 26.9 kB

Release files / dssdata-0.2.0.tar.gz

Download URL dssdata-0.2.0.tar.gz
Size 12.5 kB
Tags Source
SHA-256 checksum
How to use checksums
5f95e984c37420fc4f3dd380f8792b2adc42f3bc764184c017750cd0b57d9649
BLAKE2b-256 checksum
How to use checksums
9da9f0a36f3e265c6a7caeb06ca6a18f5ebb347a6d64588ead3cdc287d31c612
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.3

Release files / dssdata-0.2.0-py3-none-any.whl

Download URL dssdata-0.2.0-py3-none-any.whl
Size 14.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f243d38cf43ae40b22e763510d0430608bd743c200f653280de8ab4f4f14d5fe
BLAKE2b-256 checksum
How to use checksums
739f9fbf8ea60aea3bd4bd3a9d3413250d91889443563a6c5afe99409f569287
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.3

Security for dssdata 0.2.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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