dssdata

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

https://github.com/felipemarkson/dssdata

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary

Keywords

distribution eletricity opendss opendssdirect pandas powerflow python
Last synced: 6 months ago · JSON representation ·

Repository

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

Basic Info
Statistics
  • Stars: 16
  • Watchers: 2
  • Forks: 2
  • Open Issues: 5
  • Releases: 9
Topics
distribution eletricity opendss opendssdirect pandas powerflow python
Created almost 6 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Code of conduct Citation

README.md

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.

console 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:

```python from dssdata import SystemClass from dssdata.pfmodes import runstaticpf from dssdata.tools import voltages

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

[voltageDataFrame] = runstaticpf(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:

```python from dssdata import SystemClass from dssdata.pfmodes import cfgtspf, runtspf from dssdata.tools import lines, voltages

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

[voltageDataFrame] = runtspf(distSys, tools=[voltages.getall], 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:

bibtex @software{Monteiro_felipemarkson_dssdata_2022, author = {Monteiro, Felipe}, doi = {10.5281/zenodo.6784237}, license = {MIT}, month = {6}, title = {{felipemarkson/dssdata}}, url = {https://github.com/felipemarkson/dssdata}, year = {2022} }

Help us to improve DSSData

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

Contributors:

Owner

  • Name: Felipe Markson dos Santos Monteiro
  • Login: felipemarkson
  • Kind: user
  • Location: Curitiba
  • Company: Siemens

Electrical Engineer. D.Sc. Candidate in Power Systems - EESC/USP

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Monteiro"
  given-names: "Felipe"
  orcid: "https://orcid.org/0000-0002-3774-8384"
title: "felipemarkson/dssdata"
type: software
doi: 10.5281/zenodo.6784237
date-released: 2022-06-30
url: "https://github.com/felipemarkson/dssdata"
contact:
- email: "fmarkson@outlook.com"
  given-names: "Felipe"
  family-names: "Monteiro"
license: MIT

GitHub Events

Total
  • Watch event: 2
Last Year
  • Watch event: 2

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 148
  • Total Committers: 3
  • Avg Commits per committer: 49.333
  • Development Distribution Score (DDS): 0.5
Past Year
  • Commits: 7
  • Committers: 1
  • Avg Commits per committer: 7.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Felipe Markson f****n@o****m 74
Felipe Markson dos Santos Monteiro 4****n 64
Jonas Villela 4****l 10

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 36
  • Total pull requests: 64
  • Average time to close issues: about 2 months
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 3
  • Total pull request authors: 2
  • Average comments per issue: 0.78
  • Average comments per pull request: 0.08
  • Merged pull requests: 58
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • felipemarkson (34)
  • JonasVil (1)
  • solyron (1)
Pull Request Authors
  • felipemarkson (55)
  • JonasVil (9)
Top Labels
Issue Labels
enhancement (15) Project Task (15) documentation (13) question (9) bug (7) help wanted (6) good first issue (2) CI (2) user report (1)
Pull Request Labels
enhancement (1) Project Task (1) CI (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 23 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 9
  • Total maintainers: 1
pypi.org: dssdata

Organizing OpenDSS data

  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 23 Last month
Rankings
Dependent packages count: 10.1%
Stargazers count: 16.1%
Forks count: 16.9%
Average: 20.4%
Dependent repos count: 21.6%
Downloads: 37.6%
Maintainers (1)
Last synced: 6 months ago

Dependencies

poetry.lock pypi
  • 106 dependencies
pyproject.toml pypi
  • black ^22.* develop
  • flake8 ^4.* develop
  • matplotlib ^3.* develop
  • mkdocs-jupyter ^0.* develop
  • mkdocs-material ^8.* develop
  • mkdocstrings ^0.* develop
  • notebook ^6.* develop
  • OpenDSSDirect.py ^0.6.*
  • pandas ^1.*
  • python ^3.8
.github/workflows/publish.yml actions
  • JRubics/poetry-publish v1.16 composite
  • actions/checkout v2 composite
.github/workflows/test.yml actions
  • abatilo/actions-poetry v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite