ERAD

Graph based Python library for computing resilience metrics for power distribution systems.
https://github.com/nlr-distribution-suite/erad

Category: Energy Systems
Sub Category: Grid Analysis and Planning

Keywords

distribution-system hazard-modeling resilience

Last synced: about 5 hours ago
JSON representation

Repository metadata

Graph based python library for computing resilience metrics for power distribution systems.

README.md

CodeFactorcodecovGitHub licenseGitHub issuesPyPI - DownloadsUpload to PyPideploy-bookPytestDOIMCP ServerMCP Tools

ERAD (Energy Resilience Analysis for electric Distribution systems)

Visit full documentation here.

Understanding the impact of disaster events on people's ability to access critical services is key to designing appropriate programs to minimize the overall impact. Flooded roads, downed power lines, flooded power substation etc. could impact access to critical services like electricity, food, health and more. The field of disaster modeling is still evolving and so is our understanding of how these events would impact our critical infrastructures such power grid, hospitals, groceries, banks etc.

ERAD is a free, open-source Python toolkit for computing energy resilience measures in the face of hazards like earthquakes and flooding. It uses graph database to store data and perform computation at the household level for a variety of critical services that are connected by power distribution network. It uses asset fragility curves, which are functions that relate hazard severity to survival probability for power system assets including cables, transformers, substations, roof-mounted solar panels, etc. recommended in top literature. Programs like undergrounding, microgrid, and electricity backup units for critical infrastructures may all be evaluated using metrics and compared across different neighborhoods to assess their effects on energy resilience.

ERAD is designed to be used by researchers, students, community stakeholders, distribution utilities to understand and possibly evaluate effectiveness of different post disaster programs to improve energy resilience. It was funded by National Laboratory of the Rockies (NLR) and made publicly available with open license.

flowchart TD
A([Start])
B[Select entry point<br/>CLI or Python API or MCP tools]
C[Load Asset System<br/>Distribution model from file or cache]
D{Hazard input available?}
E[Load Hazard Model<br/>from JSON or model reference]
F[Create Empty Hazard System]
G[Add Historic Hazard Events<br/>Earthquake, Hurricane, Wildfire]
H[Validate fragility curve set<br/>DEFAULT_CURVES or custom]
I[Run Simulation<br/>asset system id plus hazard system id]
J[Simulation Result ID<br/>asset states and probabilities]
K[Analyze Results<br/>query assets, stats, topology]
L{Need uncertainty scenarios?}
M[Generate Monte Carlo Scenarios<br/>num samples and seed]
N[Tracked Changes Output]
O{Need exports?}
P[Export to SQLite<br/>for downstream analytics]
Q[Export to JSON<br/>asset and hazard systems]
R[Export Tracked Changes<br/>scenario deltas]
S[Clear loaded systems<br/>free memory and reset state]
T([End])

A --> B --> C --> D
D -- Yes --> E --> H
D -- No --> F --> G --> H
H --> I --> J --> K --> L
L -- Yes --> M --> N --> O
L -- No --> O
O -- Yes --> P
O -- Yes --> Q
O -- Yes --> R
O -- No --> S
P --> S
Q --> S
R --> S
S --> T

classDef startEnd fill:#0f172a,color:#ffffff,stroke:#0f172a,stroke-width:2px
classDef intake fill:#e0f2fe,color:#0c4a6e,stroke:#0284c7,stroke-width:1.5px
classDef decision fill:#fff7ed,color:#9a3412,stroke:#f97316,stroke-width:2px
classDef output fill:#f5f3ff,color:#4c1d95,stroke:#8b5cf6,stroke-width:1.5px
classDef cleanup fill:#f1f5f9,color:#334155,stroke:#64748b,stroke-width:1.5px

class A,T startEnd
class B,C,E,F,G,H,I,K,M intake
class D,L,O decision
class J,N,P,Q,R output
class S cleanup

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 187
Total Committers: 8
Avg Commits per committer: 23.375
Development Distribution Score (DDS): 0.246

Commits in past year: 110
Committers in past year: 4
Avg Commits per committer in past year: 27.5
Development Distribution Score (DDS) in past year: 0.118

Name Email Commits
Aadil Latif a****f@g****m 141
Duwadi k****i@n****v 17
Duwadi, Kapil K****i@n****v 11
dependabot[bot] 4****] 9
Dugan, Jesse j****n@n****v 3
Bryan Palmintier (NREL) b****r@n****v 3
Latif a****f@n****v 2
Wischmeyer t****e@n****v 1

Committer domains:


Issue and Pull Request metadata

Last synced: 4 days ago

Total issues: 0
Total pull requests: 26
Average time to close issues: N/A
Average time to close pull requests: about 1 month
Total issue authors: 0
Total pull request authors: 4
Average comments per issue: 0
Average comments per pull request: 0.27
Merged pull request: 22
Bot issues: 0
Bot pull requests: 7

Past year issues: 0
Past year pull requests: 24
Past year average time to close issues: N/A
Past year average time to close pull requests: 21 days
Past year issue authors: 0
Past year pull request authors: 4
Past year average comments per issue: 0
Past year average comments per pull request: 0.29
Past year merged pull request: 21
Past year bot issues: 0
Past year bot pull requests: 7

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/nlr-distribution-suite/erad

Top Issue Authors

Top Pull Request Authors

  • AadilLatif (17)
  • dependabot[bot] (7)
  • m1muralid (1)
  • twischmeyer (1)

Top Issue Labels

Top Pull Request Labels

  • dependencies (7)
  • github_actions (4)
  • python (3)

Package metadata

pypi.org: nrel-erad

Graph based scalable tool for computing energy resilience metrics for distribution systems.

  • Homepage: https://github.com/NLR-Distribution-Suite/erad
  • Documentation: https://nrel-erad.readthedocs.io/
  • Licenses: BSD License
  • Latest release: 1.0.0 (published almost 2 years ago)
  • Last Synced: 2026-08-13T14:00:53.729Z (1 day ago)
  • Versions: 16
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 465 Last month
  • Rankings:
    • Dependent packages count: 7.49%
    • Forks count: 30.209%
    • Stargazers count: 32.235%
    • Average: 37.346%
    • Downloads: 46.986%
    • Dependent repos count: 69.808%
  • Maintainers (3)

Dependencies

requirements.txt pypi
  • OpenDSSDirect.py *
  • boto3 *
  • botocore *
  • ditto.py *
  • geojson *
  • geopandas *
  • geopy *
  • graphdatascience *
  • jupyter *
  • matplotlib *
  • neo4j-driver *
  • networkx *
  • pandas *
  • plotly *
  • pytest *
  • python-dotenv *
  • pyyaml *
  • scipy *
  • shapely *
  • stateplane *
requirements_dev.txt pypi
  • black * development
  • mkdocs * development
  • mkdocs-jupyter * development
  • mkdocs-material * development
  • mkdocstrings * development
  • pylint * development

Score: 11.446785662465683