Skip to content

gmlc-dispatches/dispatches

Repository files navigation

DISPATCHES

The Design Integration and Synthesis Platform to Advance Tightly Coupled Hybrid Energy Systems (DISPATCHES), is developed and used to identify and optimize Integrated Energy Systems for operation within the bulk power system via energy market signals.

DISPATCHES is part of the DOE Grid Modernization Laboratory Consortium (GMLC).

Project Status

Python package Documentation Status GitHub contributors Merged PRs Issue stats Downloads

Getting started

Example notebooks

The example notebooks showcase many of DISPATCHES' features and capabilities.

The example notebooks can be accessed in several ways:

  • In the Examples section of the DISPATCHES online documentation on ReadTheDocs
  • Interactively, in a temporary cloud environment, following the steps illustrated in the Binder README in this repository

Using Conda environments

The recommended way to install DISPATCHES is to use a Conda environment.

A Conda environment is a separate installation directory where packages and even different Python versions can be installed without conflicting with other Python versions installed on the system, or other environments.

To create a Conda environment, the conda command should be installed and configured for your operating system. Detailed steps to install and configure conda are available here.

For developers

(Recommended) Create a dedicated Conda environment for development work:

conda create -n dispatches-dev python=3.8 pip --yes
conda activate dispatches-dev

Clone the repository and enter the dispatches directory:

git clone https://github.com/gmlc-dispatches/dispatches
cd dispatches

Install the Python package and all dependencies required for development work using pip and the requirements-dev.txt file:

pip install -r requirements-dev.txt

The developer installation will install the cloned directory in editable mode (as opposed to the default behavior of installing a copy of it), which means that any modification made to the code in the cloned directory (including switching to a different branch with git switch/git checkout, or updating the repository with the latest changes using git pull) will be available when using the package in Python, regardless of e.g. the current working directory.

To test that the installation was successful, run the test suite using the pytest command:

pytest

As a developer, to ensure that all the .py files in your workspace have the correct copyright header info (as defineded in header_text.txt), use the addheader tool installed by requirements-dev.txt as follows:

addheader -c .addheader.yml

Documentation

For showing documentation from your code in the Sphinx (.rst) docs, see the Sphinx autodoc documentation for details on how to format and give options in your documentation file.

Funding acknowledgements

This work was conducted as part of the Design Integration and Synthesis Platform to Advance Tightly Coupled Hybrid Energy Systems (DISPATCHES) project with support through the Grid Modernization Lab Consortium with funding from the U.S. Department of Energy’s Office of Fossil Energy and Carbon Management, Office of Nuclear Energy, and Hydrogen and Fuel Cell Technology Office.