E4ST

A modeling and optimization framework for integrated energy systems.
https://github.com/e4st-dev/e4st.jl

Category: Energy Systems
Sub Category: Energy System Modeling Frameworks

Last synced: about 16 hours ago
JSON representation

Repository metadata

Engineering, Economic, and Environmental Electricity Simulation Tool (E4ST)

README.md

E4ST.jl

GitHub contributors
GitHub last commit
License: GPL v3
CI
Code Coverage
In Development

This is the Julia rewrite of the Engineering, Economic, and Environmental Electricity Simulation Tool (E4ST), originally written in MATLAB, based on top of MATPOWER. The idea for E4ST was developed in a joint effort at Cornell University and Resources for the Future by Daniel Shawhan and Ray Zimmerman, with major contributions from Biao Mao, Paul Picciano, Christoph Funke, Steven Witkin, Ethan Russell, and Sally Robson.

At the heart of E4ST is a detailed engineering representation of the power grid, and an optimization problem that represents the decisions of the system operators, electricity end-users, generators, and generation developers. The model represents these operation, consumption, investment, and retirement decisions by minimizing the sum of generator variable costs, fixed costs, investment costs, and end-user consumer surplus losses. E4ST provides detailed analysis to better inform policymakers, investors, and stakeholders.
The power sector is increasingly complex, with challenging emission reduction aspirations, new energy technologies, an ever-changing policy backdrop, growing demand, and much uncertainty. Some of the challenges of representing the sector include:

  • Regional and national markets for clean electricity credits
  • Diverse generation mixes with temporal variations
  • Markets for various fuel types and captured CO2
  • Increasing energy storage requirements

To provide relevant analysis for such a complex and dynamic sector, models must to be fast to adapt and use. The previous version of E4ST was written as a wrapper for MATPOWER, a powerful Matlab-language package for solving steady-state power system simulation and optimization problems. However, as powerful as MATPOWER is, we desired the additional flexibility and speed that Julia can provide.

E4ST.jl was written with maximum flexibility and speed in mind. E4ST.jl is a bring-your-own-solver JuMP-based package. We leverage clever interfaces to inject custom modifications into the data loading, model setup, and results processing steps to allow for extreme configurability and extensibility. We allow for flexible time representations and time-varying inputs with space-and-time-efficient data retrieval.

E4ST.jl uses the speed and extensibility of Julia to enable faster deployment of detailed and adaptable models to inform policy decision-makers and technology developers.

Warning
As with most models, quality of analysis using E4ST.jl is heavily dependent on the inputs and assumptions. For this reason, the E4ST team at RFF does not implicitly endorse all analysis done using E4ST.jl. If you have questions about the model inputs and assumptions used for our work at RFF, please contact us.

Citation

If you use E4ST.jl in your work, we request that you cite the following paper:

@article{Shawhan2014,
    author = {Daniel Shawhan, John T. Taber, Di Shi, Ray D. Zimmerman, Jubo Yan, Charles M. Marquet, Yingying Qi, Biao Mao, Richard E. Schuler, William Schulze, D.J. Tylavsky},
    title = {{D}oes a {D}etailed {M}odel of the {E}lectricity {G}rid {M}atter? {E}stimating the {I}mpacts of the {R}egional {G}reenhouse {G}as {I}nitiative},
    journal = {Resource and Energy Economics},
    year = {2014},
    doi = {10.1016/j.reseneeco.2013.11.015}}

Alternatively, you can cite the following paper:

@article{Shawhan2014,
    author = {Daniel Shawhan, Paul D. Picciano},
    title = {{C}osts and benefits of saving unprofitable generators: {A} simulation case study for {US} coal and nuclear power plants},
    journal = {Energy Policy},
    year = {2019},
    doi = {https://doi.org/10.1016/j.enpol.2018.07.040}}

Installation

In the Julia REPL, run the following command:

using Pkg
Pkg.add("E4ST") # Or Pkg.develop("E4ST")

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 4 days ago

Total Commits: 845
Total Committers: 6
Avg Commits per committer: 140.833
Development Distribution Score (DDS): 0.391

Commits in past year: 117
Committers in past year: 5
Avg Commits per committer in past year: 23.4
Development Distribution Score (DDS) in past year: 0.068

Name Email Commits
Ethan Russell e****l@r****g 515
sallyrobson s****n@R****g 207
Peplinski m****i@r****g 116
Ethan Ziegler y****u@e****m 5
Steven Witkin w****n@g****m 1
Nicholas Roy 4****y 1

Committer domains:


Issue and Pull Request metadata

Last synced: 4 days ago

Total issues: 36
Total pull requests: 50
Average time to close issues: about 2 months
Average time to close pull requests: 12 days
Total issue authors: 5
Total pull request authors: 6
Average comments per issue: 0.64
Average comments per pull request: 2.5
Merged pull request: 39
Bot issues: 0
Bot pull requests: 0

Past year issues: 11
Past year pull requests: 11
Past year average time to close issues: 2 months
Past year average time to close pull requests: 6 days
Past year issue authors: 3
Past year pull request authors: 5
Past year average comments per issue: 0.55
Past year average comments per pull request: 1.64
Past year merged pull request: 7
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/e4st-dev/e4st.jl

Top Issue Authors

  • Ethan-Russell (14)
  • sallyrobson (11)
  • mckennapep (9)
  • NicholasHRoy (1)
  • adienes (1)

Top Pull Request Authors

  • Ethan-Russell (28)
  • mckennapep (9)
  • sallyrobson (8)
  • ez7532 (3)
  • NicholasHRoy (1)
  • swit22 (1)

Top Issue Labels

  • enhancement (2)
  • bug (1)

Top Pull Request Labels

  • bug (1)

Package metadata

juliahub.com: E4ST

Engineering, Economic, and Environmental Electricity Simulation Tool (E4ST)

  • Homepage:
  • Documentation: https://docs.juliahub.com/General/E4ST/stable/
  • Licenses: GPL-3.0
  • Latest release: 0.1.3 (published almost 2 years ago)
  • Last Synced: 2026-03-21T03:23:42.267Z (about 2 months ago)
  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 7 Last month
  • Rankings:
    • Dependent repos count: 10.14%
    • Average: 36.496%
    • Dependent packages count: 40.481%
    • Stargazers count: 42.335%
    • Forks count: 53.026%

Score: 7.629489916393995