Skip to main content

Hybrid Systems Optimization and Performance Platform.

Project description

HOPP: Hybrid Optimization and Performance Platform

PyPI version CI Tests image License

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.

Part of the WETO Stack

HOPP is primarily developed with the support of the U.S. Department of Energy and is part of the WETO Software Stack. For more information and other integrated modeling software, see:

Software requirements

  • Python version 3.11 or higher

Installing from Package Repositories

  1. HOPP is available as a PyPi package:

    pip install HOPP
    

Installing from Source

  1. Using Git, navigate to a local target directory and clone repository:

    git clone https://github.com/NREL/HOPP.git
    
  2. Navigate to HOPP

    cd HOPP
    
  3. Create a new virtual environment and change to it. Using Conda and naming it 'hopp':

    conda create --name hopp python=3.11 -y
    conda activate hopp
    
  4. Install HOPP and its dependencies:

    conda install -y -c conda-forge coin-or-cbc glpk
    

    Note if you are on Windows, you will have to manually install Cbc: https://github.com/coin-or/Cbc.

    • If you want to just use HOPP:

      pip install .  
      
    • If you want to work with the examples:

      pip install ".[examples]"
      
    • 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]"
      
  5. The functions which download resource data require an NREL API key. Obtain a key from:

    https://developer.nrel.gov/signup/

  6. 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:

    NREL_API_KEY=key
    NREL_API_EMAIL=your.name@email.com
    
  7. Verify setup by running tests:

    pytest tests/hopp
    
  8. 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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hopp-3.4.1.tar.gz (123.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hopp-3.4.1-py3-none-any.whl (118.4 MB view details)

Uploaded Python 3

File details

Details for the file hopp-3.4.1.tar.gz.

File metadata

  • Download URL: hopp-3.4.1.tar.gz
  • Upload date:
  • Size: 123.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hopp-3.4.1.tar.gz
Algorithm Hash digest
SHA256 b157e10dcc63a7fe651664bb788e3573c7ed92a30a2171516636edc12f4333da
MD5 119147de9f24c56833bcafc753545c64
BLAKE2b-256 ce0570a1d3305dc6fcb5506f245fb93e7bbe3145e1d72ce27d9ea24a2ab7b79f

See more details on using hashes here.

Provenance

The following attestation bundles were made for hopp-3.4.1.tar.gz:

Publisher: publish_to_pypi.yml on NatLabRockies/HOPP

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hopp-3.4.1-py3-none-any.whl.

File metadata

  • Download URL: hopp-3.4.1-py3-none-any.whl
  • Upload date:
  • Size: 118.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hopp-3.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a7c2bf9ffffce7afe90c49845e8032dae1f1de86ec6426e3b2fa5894458c552b
MD5 c938777a3edef2aa544ceba6b139c26a
BLAKE2b-256 ee99d82916168c5becf331563e992342b81a551b7203fc868a6deee1e4d3f752

See more details on using hashes here.

Provenance

The following attestation bundles were made for hopp-3.4.1-py3-none-any.whl:

Publisher: publish_to_pypi.yml on NatLabRockies/HOPP

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page