Skip to main content

Python support for the Transactive Energy Simulation Platform

Project description

Transactive Energy Simulation Platform (TESP) simulates the electric power distribution grid with transactive control of loads and resources. Current features include:

The goal of TESP is that researchers can focus their work on the last item, to push advances in the field.

Installation

tesp_support can be installed using pip:

$ pip install tesp_support

However, in order to be useful, tesp_support needs custom versions of GridLAB-D and EnergyPlus. It also requires Python 3.8 or later, with NumPy, SciPy, NetworkX, Matplotlib and PYPOWER. There are cross-platform installers of the complete TESP for Windows, Linux and Mac OS X on GitHub. A Docker version is also available for users.

Development Work Flow for tesp_support

  • From this directory, ‘pip install -e .’ points Python to this cloned repository for any calls to tesp_support functions

  • See the https://github.com/pnnl/tesp/tree/master/src/tesp_support/tesp_support for a roadmap of existing Python source files, and some documentation. Any changes or additions to the code need to be made in this directory.

  • Run tests from any other directory on this computer

  • When ready, edit the tesp_support version number and dependencies in setup.py

  • To deploy follow the instructions in the Python Packaging Guide:
    1. Create an account on PyPI if you haven’t yet.

    2. Install twine and build: pip install twine build

    3. Create the source distribution, change to tesp_support directory execute: python3 -m build .

    4. Check your distribution files for errors: twine check dist/*

    5. (Optional) Upload to the PyPI test server first (note: separate user registration required): twine upload –repository-url https://test.pypi.org/legacy/ dist/*

    6. Upload to PyPI: twine upload dist/*

  • Any user gets the changes with ‘pip install tesp_support –upgrade’

  • Use ‘pip show tesp_support’ to verify the version and location on your computer

Using TESP

This is a developer’s platform for electric power grid research. See http://tesp.readthedocs.io/en/latest/ for user instructions, and http://github.com/pnnl/tesp for source code.

Subdirectories

  • tesp_support; Python code for agents, configuration and post-processing.

  • test; scripts that support testing the package; not automated.

Changelog

Version 1.0.0 (2017-06-08)

  • Initial release

Version 0.2 (2017-10-14)

  • For NIST TE Challenge 2

Version 0.1.4 (2018-09-30)

  • For GridAPPS-D Demo

  • GridLAB-D feature/1146 branch with FNCS-controlled switching

Version 0.1.9 (2018-12-13)

  • Three desktop version installers for Mac, Windows and Linux

  • Tutorial video

  • DSO+T study files

Version 0.9.2 (2020-09-11)

  • Support for HELICS and EnergyPlus 9.3

  • Bundled with ns-3 (HELICS) and opendsscmd (FNCS)

  • Execution on Linux or Docker

  • Postprocessing on Linux, Windows or Mac OS X

Version 0.9.5 (2021-03-09)

  • Standalone housing generator

  • Plot functions can save files

  • Case-generated SGIP1 example

  • Fixed the FNCS SGIP1 example

Version 1.0.1 (2021-04-23)

  • No longer supports Windows

  • Updates to consensus mechanism

  • Balanced three-phase houses for housing generator

  • Remove deprecated solar and battery attributes

  • Update to HELICS 2.6.1

Version 1.2.0 (2022-10-3)

  • Added data.py to for shared data with TESP, recommended using TESP install

  • Added several APIs for plot GridLABD and EnergyPlus attributes

  • Added player server

  • Added DSOT agents and feeder generators

  • Update to HELICS 3.3.0

Version 1.2.3 (2022-11-22)

  • Fix the EngeryPlus to work with newer compiler and updated version number

  • Fix read the docs document warnings and fix clean shell script for energyplus

  • Added Ubuntu apt install version dependencies for 18.04,20.04,22.04

  • Revised pip and venv for install script

  • Revised clean scripts, clean up models directory

  • Add loadshed* examples for auto test

  • Fixed the installation for Ubuntu 22.04

  • Fixed monitor.py and tesp_case.py when not using engeryplus,

  • Minor fix for feeders generator when using name_prefix

  • Fixed complex python to use helics complex type

Version 1.2.4 (2022-12-1)

  • Fix version number in tesp_support for PyPI distribution and read the docs

  • Fix the version.sh, move documentaion to end of the install, fix warning in Consensus_Usecase.rst

  • Fix git patch warning for FNCS and EnergyPlus

  • GRIDLabD triplex_node no longer uses power_12_real and power12_reac, this has commented out for SGIP1*.glm files

  • Add pypi packaging to stamping process, refined docker build in scripts/docker, moved HELICS version checker to build

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

tesp_support-1.2.4.tar.gz (501.2 kB view hashes)

Uploaded Source

Built Distribution

tesp_support-1.2.4-py2.py3-none-any.whl (551.1 kB view hashes)

Uploaded Python 2 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