Skip to main content

Open-Source Model Access

With the open-source Distributed Generation Market Demand (dGen™) model, you can either download it or view scenarios without having to run the model yourself.

Watch a presentation by the dGen team to learn how to use the model. 

Model Scenario Viewer

The dGen Scenario Viewer allows users to easily visualize and compare recent scenarios by geography and year. Also, scenario inputs and outputs can be downloaded for additional desktop analysis.

Note: The Scenario Viewer only visualizes previously generated scenarios and does not permit new configurations.

Try the dGen Scenario Viewer.

Model Download

To create their own scenarios, users may also download the dGen model. At its core, dGen requires three components:

  • A database of pre-generated “agents” or consumers to simulate. Each agent has a weighting factor to reflect their frequency in the population.
  • A scenario description, input by both a spreadsheet and input csv files
  • Model code, executed in Python.

The dGen model does not use a graphical user interface and is run via command line. Also, the model requires a connection to a database to run.

Download Model from GitHub

The GitHub repository features instructions on how to use dGen, set up a database, and much more.

Software License

The dGen model is governed under a Berkeley Software Distribution v3 (BSD-3) license. The license governs the fair-use of dGen by third parties. This license allows for redistribution so long as the license's warranty disclaimers and copyright notices are maintained in all future instances of the source code. Additionally, this license restricts the appearance of NREL or NREL staff having endorsed any derived work unless otherwise explicitly permitted by NREL’s Office of General Counsel. The dGen model embeds the use of the NREL System Advisor Model, which is also governed under a BSD-3 license.

Feedback and Code Contributions

Found a bug in the model code? Have an idea for a new dGen feature? We welcome any feedback.

We also welcome contributions to the code base. Read contribution policy on GitHub.

To provide feedback or to contribute code, contact us.