GridPath
A versatile simulation and optimization platform for power-system planning and operations.
https://github.com/blue-marble/gridpath
Category: Energy Systems
Sub Category: Energy System Modeling Frameworks
Keywords
electricity energy optimization planning power power-system-analysis power-system-simulation power-systems renewable-energy renewables
Last synced: about 24 hours ago
JSON representation
Repository metadata
A versatile simulation and optimization platform for power-system planning and operations.
- Host: GitHub
- URL: https://github.com/blue-marble/gridpath
- Owner: blue-marble
- License: apache-2.0
- Created: 2016-08-12T18:13:28.000Z (over 8 years ago)
- Default Branch: develop
- Last Pushed: 2025-04-18T23:03:12.000Z (9 days ago)
- Last Synced: 2025-04-25T12:11:27.220Z (2 days ago)
- Topics: electricity, energy, optimization, planning, power, power-system-analysis, power-system-simulation, power-systems, renewable-energy, renewables
- Language: Python
- Homepage: https://www.gridpath.io
- Size: 27.3 MB
- Stars: 104
- Watchers: 10
- Forks: 41
- Open Issues: 77
- Releases: 30
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
README.md
Welcome to GridPath
GridPath is a versatile power-system planning platform capable of a range of
planning approaches including production-cost, capacity-expansion,
asset-valuation, and reliability modeling.
Documentation
GridPath's documentation is hosted on Read the Docs.
Installation
Python
GridPath is tested on Python 3.9, 3.10, and 3.11. Get one of those Python versions here.
GridPath Python environment
You should create a Python environment for your GridPath installation, e.g. via
venv
, a lightweight environment manager
that is part of the standard Python distribution. Make sure to create activate the environment before installing GridPath.
Install GridPath from PyPi
Once you have created and activated the GridPath Python environment, you
can install the latest version of GridPath from PyPi with:
pip install GridPath
Install GridPath from source
You can alternatively download the GridPath source code and install from
source.
pip install .[all]
NOTE: If you plan to edit the GridPath code, you should install with the -e
flag.
Solver
You will need a solver to use this platform. GridPath assumes you will be using Cbc (Coin-or branch and cut) by default, but you can specify a
different solver.
Usage
The gridpath_run and gridpath_run_e2e commands
If you install GridPath via the setup script following the instructions above,
you can use the command gridpath_run
to run a scenario from any directory
-- as long as your GridPath Python environment is enabled -- as follows:
gridpath_run --scenario SCENARIO_NAME --scenario_location
/PATH/TO/SCENARIO
If you are using the database, you can use the command gridpath_run_e2e
to
run GridPath end-to-end, i.e. get inputs for the scenario from the database,
solve the scenario problem, import the results into the database, and
process them. Refer to the documentation for how to build the database.
gridpath_run_e2e --scenario SCENARIO_NAME --scenario_location
/PATH/TO/SCENARIO
To see usage and other optional arguments, e.g. how to specify a
solver, check the help menu, e.g.:
gridpath_run --help
Owner metadata
- Name: Blue Marble Analytics
- Login: blue-marble
- Email: [email protected]
- Kind: organization
- Description:
- Website: https://www.bluemarble.run
- Location: San Francisco, CA
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/22780527?v=4
- Repositories: 2
- Last ynced at: 2025-04-24T12:54:04.986Z
- Profile URL: https://github.com/blue-marble
GitHub Events
Total
- Create event: 66
- Release event: 4
- Issues event: 5
- Watch event: 9
- Delete event: 11
- Issue comment event: 15
- Push event: 212
- Pull request review event: 4
- Pull request event: 146
- Fork event: 6
Last Year
- Create event: 66
- Release event: 4
- Issues event: 5
- Watch event: 9
- Delete event: 11
- Issue comment event: 15
- Push event: 212
- Pull request review event: 4
- Pull request event: 146
- Fork event: 6
Committers metadata
Last synced: 5 days ago
Total Commits: 1,528
Total Committers: 12
Avg Commits per committer: 127.333
Development Distribution Score (DDS): 0.212
Commits in past year: 121
Committers in past year: 5
Avg Commits per committer in past year: 24.2
Development Distribution Score (DDS) in past year: 0.124
Name | Commits | |
---|---|---|
Ana Mileva | a****a@g****m | 1204 |
Gerrit | g****m@g****m | 245 |
ranjitster | r****h@b****u | 35 |
Janie115 | 4****5 | 32 |
sriharid | s****i@p****g | 3 |
alexrob18 | 1****8 | 2 |
Milind R | m****d@c****n | 2 |
souissim | 7****m | 1 |
nmgeek | g****e@g****m | 1 |
elainekhart | 7****t | 1 |
PascalLesage | p****e@g****m | 1 |
Jessica Van Os | 1****s | 1 |
Committer domains:
- cstep.in: 1
- prayaspune.org: 1
- berkeley.edu: 1
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 338
Total pull requests: 930
Average time to close issues: 3 months
Average time to close pull requests: 8 days
Total issue authors: 20
Total pull request authors: 13
Average comments per issue: 1.16
Average comments per pull request: 0.54
Merged pull request: 769
Bot issues: 0
Bot pull requests: 118
Past year issues: 8
Past year pull requests: 130
Past year average time to close issues: about 1 month
Past year average time to close pull requests: 8 days
Past year issue authors: 6
Past year pull request authors: 6
Past year average comments per issue: 0.63
Past year average comments per pull request: 0.18
Past year merged pull request: 97
Past year bot issues: 0
Past year bot pull requests: 27
Top Issue Authors
- anamileva (152)
- gerritdm (105)
- sriharid (22)
- nmgeek (12)
- Janie115 (9)
- PascalLesage (9)
- milindsmart (8)
- ranjitster (6)
- MahavirSingh20 (2)
- ghost (2)
- jhimelic (2)
- alamincse32 (1)
- asjaiswal (1)
- alexrob18 (1)
- HaleyRoss (1)
Top Pull Request Authors
- anamileva (478)
- gerritdm (271)
- dependabot[bot] (118)
- Janie115 (38)
- sriharid (10)
- PascalLesage (3)
- alexrob18 (3)
- milindsmart (3)
- nmgeek (2)
- ranjitster (1)
- elainekhart (1)
- souissim (1)
- jessvanos (1)
Top Issue Labels
- type: enhancement (71)
- type: refactor (61)
- theme: database (56)
- type: feature (36)
- theme: model (36)
- priority: high (36)
- priority: low (34)
- type: bug (34)
- theme: viz (28)
- priority: mid (25)
- theme: ui (17)
- theme: csv-to-db (17)
- theme: db-model-db (16)
- theme: testing (12)
- theme: validation (10)
- help wanted (9)
- theme: docs (8)
- question (8)
- fixed - pending release (7)
- theme: product (6)
- type: test (4)
- type: chore (2)
- type: performance (1)
- dependencies (1)
Top Pull Request Labels
- type: refactor (123)
- dependencies (118)
- javascript (70)
- theme: database (68)
- type: bug (49)
- theme: docs (49)
- python (48)
- theme: validation (36)
- type: enhancement (35)
- priority: high (32)
- theme: csv-to-db (32)
- theme: ui (31)
- theme: viz (26)
- type: feature (23)
- theme: testing (21)
- theme: db-model-db (18)
- WIP (14)
- theme: model (12)
- priority: mid (2)
- type: chore (1)
- question (1)
Package metadata
- Total packages: 1
-
Total downloads:
- pypi: 380 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 10
- Total maintainers: 1
pypi.org: gridpath
A versatile simulation and optimization platform for power-system planning and operations.
- Homepage: https://www.gridpath.io
- Documentation: https://gridpath.readthedocs.io/en/latest/
- Licenses: Apache v2
- Latest release: 2025.4.0 (published about 2 months ago)
- Last Synced: 2025-04-25T12:10:59.551Z (2 days ago)
- Versions: 10
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 380 Last month
-
Rankings:
- Dependent packages count: 7.299%
- Average: 37.869%
- Dependent repos count: 68.439%
- Maintainers (1)
Dependencies
- actions/checkout v2 composite
- psf/black stable composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- 1228 dependencies
- @angular-devkit/build-angular ~0.13.0 development
- @angular/cli ~7.3.8 development
- @angular/compiler-cli ~7.2.0 development
- @angular/language-service ~7.2.0 development
- @types/jasmine ~2.8.8 development
- @types/jasminewd2 ~2.0.3 development
- @types/node ~8.9.4 development
- codelyzer ~4.5.0 development
- electron ^5.0.4 development
- electron-builder ^23.0.2 development
- jasmine-core ~2.99.1 development
- jasmine-spec-reporter ~4.2.1 development
- jquery ^3.4.1 development
- karma ~4.0.0 development
- karma-chrome-launcher ~2.2.0 development
- karma-coverage-istanbul-reporter ~2.0.1 development
- karma-jasmine ~1.1.2 development
- karma-jasmine-html-reporter ^0.2.2 development
- popper.js ^1.15.0 development
- protractor ~5.4.0 development
- ts-node ~7.0.0 development
- tslint ~5.11.0 development
- typescript ~3.2.2 development
- @angular/animations ~7.2.0
- @angular/common ~7.2.0
- @angular/compiler ~7.2.0
- @angular/core ~7.2.0
- @angular/forms ~7.2.0
- @angular/platform-browser ~7.2.0
- @angular/platform-browser-dynamic ~7.2.0
- @angular/router ~7.2.0
- @bokeh/bokehjs ~2.2.3
- @ng-bootstrap/ng-bootstrap ^4.2.1
- bootstrap ^4.3.1
- core-js ^2.5.4
- electron-json-storage ^4.1.6
- process ^0.11.10
- rxjs ~6.3.3
- socket.io ^2.2.0
- socket.io-client ^2.1.1
- tslib ^1.9.0
- zone.js ~0.8.26
- Babel ==2.11.0
- Flask ==2.0.1
- Flask-RESTful ==0.3.9
- Flask-SocketIO ==4.3.2
- Jinja2 ==3.0.3
- MarkupSafe ==2.1.2
- Pillow ==9.4.0
- PyUtilib ==6.0.0
- PyYAML ==6.0
- Pygments ==2.14.0
- Pyomo ==6.4.4
- Sphinx ==5.0.1
- Werkzeug ==2.0.2
- alabaster ==0.7.13
- aniso8601 ==9.0.1
- black ==22.12.0
- bokeh ==2.2.3
- certifi ==2022.12.7
- charset-normalizer ==3.0.1
- click ==8.1.3
- coverage ==6.5.0
- coveralls ==3.3.1
- dill ==0.3.6
- dnspython ==1.16.0
- docopt ==0.6.2
- docutils ==0.18.1
- eventlet ==0.33.1
- greenlet ==2.0.1
- gurobipy ==10.0.0
- idna ==3.4
- imagesize ==1.4.1
- importlib-metadata ==6.0.0
- itsdangerous ==2.1.2
- mypy-extensions ==0.4.3
- networkx ==3.0
- nose ==1.3.7
- numpy ==1.24.1
- packaging ==23.0
- pandas ==1.5.3
- pathspec ==0.10.3
- platformdirs ==2.6.2
- ply ==3.11
- pscript ==0.7.5
- psutil ==5.8.0
- python-dateutil ==2.8.2
- python-engineio ==3.14.2
- python-socketio ==4.6.1
- pytz ==2022.7.1
- requests ==2.28.2
- six ==1.16.0
- snowballstemmer ==2.2.0
- sphinx-argparse ==0.3.1
- sphinxcontrib-applehelp ==1.0.4
- sphinxcontrib-devhelp ==1.0.2
- sphinxcontrib-htmlhelp ==2.0.0
- sphinxcontrib-jsmath ==1.0.1
- sphinxcontrib-qthelp ==1.0.3
- sphinxcontrib-serializinghtml ==1.1.5
- tomli ==2.0.1
- tornado ==6.2
- typing_extensions ==4.4.0
- urllib3 ==1.26.14
- websocket-client ==1.4.2
- zipp ==3.11.0
- Jinja2 ==3.0.3
- PyUtilib ==6.0.0
- Pyomo ==6.4.4
- bokeh ==2.2.3
- dill ==0.3.6
- networkx ==3.0
- pandas ==1.5.3
- pscript ==0.7.5
Score: 13.626203056180527