You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
HOPP: Hybrid Optimization and Performance Platform
As part of NREL's Hybrid Energy Systems Research, this
software assesses optimal designs for the deployment of distributed, commercial, and utility-scale hybrid energy plants, particularly considering wind,
solar and storage.
Software requirements
Python version 3.10, and 3.11 only
Installing from Package Repositories
HOPP is available as a PyPi package:
pip install HOPP
Installing from Source
Using Git, navigate to a local target directory and clone repository:
git clone https://github.com/NREL/HOPP.git
Navigate to HOPP
cd HOPP
Create a new virtual environment and change to it. Using Conda and naming it 'hopp':
If you also want development dependencies for running tests and building docs. Note the -e flag which installs HOPP in-place so you can edit the HOPP package files:
pip install -e ".[develop]"
The functions which download resource data require an NREL API key. Obtain a key from:
To set up the NREL_API_KEY and NREL_API_EMAIL required for resource downloads, you can create Environment Variables called NREL_API_KEY and NREL_API_EMAIL. Otherwise, you can keep the key in a new file called ".env" in the root directory of this project.
Create a file ".env" that contains the single line:
To set up NREL_API_KEY for resource downloads, first refer to section 6 and 7 above. But for the .env file method,
the file should go in the working directory of your Python project, e.g. directory from where you run python.
Getting Started
The Examples contain Jupyter notebooks and sample YAML files for common usage scenarios in HOPP. These are actively maintained and updated to demonstrate HOPP's capabilities. For full details on simulation options and other features, see the documentation.
Contributing
Interested in improving HOPP? Please see the Contributor's Guide
for more information.