As part of NREL's Hybrid Energy Systems Research, this software assesses optimal designs for the deployment of utility-scale hybrid energy plants, particularly considering wind, solar and storage.
- Python version 3.5+ 64-bit
-
Using Git, navigate to a local target directory and clone repository:
git clone https://github.com/NREL/HOPP.git -
Open a terminal and navigate to /HOPP
-
Create a new virtual environment and change to it. Using Conda and naming it 'hopp':
conda create --name hopp python=3.8 -y conda activate hopp -
Install requirements:
conda install -c conda-forge coin-or-cbc -y conda install -c conda-forge shapely==1.7.1 -y pip install -r requirements.txtNote if you are on Windows, you will have to manually install Cbc: https://github.com/coin-or/Cbc
-
Run install script:
python setup.py develop -
The functions which download resource data require an NREL API key. Obtain a key from:
-
To set up the
NREL_API_KEYrequired for resource downloads, you can create an Environment Variable calledNREL_API_KEY. 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:
NREL_API_KEY=key -
Verify setup by running an example:
python examples/simulate_hybrid.py
-
HOPP is available as a PyPi package:
pip install HOPPor as a conda package:
conda install hopp -c nrel -c conda-forge -c sunpowerNOTE: If you install from conda you will need to install
global-land-maskfrom PyPi:pip install global-land-mask -
To set up
NREL_API_KEYfor resource downloads, first refer to section 7 and 8 above. But for the.envfile method, the file should go in the working directory of your Python project, e.g. directory from where you runpython.
The examples can be run by installing HOPP, then cloning the repo and calling each example file.
python examples/simulate_hybrid.py
python examples/flicker.py
python examples/analysis/single_location.py
python examples/optimization/layout_opt/wind_run.py
python examples/optimization/layout_opt/hybrid_run.py
The https://github.com/dguittet/HOPP-demos repo contains a more full featured example with detailed technical and financial inputs, a few scenarios and the optimal PV, Wind, and Battery design results.