Skip to main content

Green Hydrogen Energy and Renewable Technologies

Project description

GreenHEART: Green Hydrogen Energy and Renewable Technologies

GreenHEART: Green Hydrogen Energy and Renewable Technologies

PyPI version CI Tests image License

Hybrid project power-to-x component-level system performance and financial modeling for control and design optimization. GreenHEART currently includes renewable energy, hydrogen, ammonia, and steel. Other elements such as desalination systems, pipelines, compressors, and storage systems can also be included as needed.

Software requirements

  • Python version 3.9, 3.10, 3.11 64-bit
  • Other versions may still work, but have not been extensively tested at this time

Installing from Package Repositories

  1. GreenHEART is available as a PyPi package:

    pip install greenheart
    

Installing from Source

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

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

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

    conda create --name greenheart python=3.9 -y
    conda activate greenheart
    
  4. Install GreenHEART and its dependencies:

    conda install -y -c conda-forge coin-or-cbc=2.10.8 glpk
    pip install electrolyzer@git+https://github.com/jaredthomas68/electrolyzer.git@smoothing
    pip install ProFAST@git+https://github.com/NREL/ProFAST.git
    

    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 GreenHEART:

      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:

      pip install -e ".[develop]"
      
    • In one step, all dependencies can be installed as:

      pip install -e ".[all]
      
  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
    
  8. To set up NREL_API_KEY for resource downloads, first refer to section 7 and 8 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.

Parallel processing for GreenHEART finite differences and design of experiments

GreenHEART is set up to run in parallel using MPI and PETSc for finite differencing and for design of experiments runs through OpenMDAO. To use this capability you will need to follow the addtional installation instruction below:

conda install -c conda-forge mpi4py petsc4py

For more details on implementation and installation, reference the documentation for OpenMDAO.

To to check that your installation is working, do the following:

cd tests/greenheart/
mpirun -n 2 pytest test_openmdao_mpi.py

Getting Started

The Examples contain Jupyter notebooks and sample YAML files for common usage scenarios in GreenHEART. These are actively maintained and updated to demonstrate GreenHEART's capabilities. For full details on simulation options and other features, documentation is forthcoming.

Contributing

Interested in improving GreenHEART? Please see the Contributing section 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

greenheart-0.1.0a1.tar.gz (3.4 MB view details)

Uploaded Source

Built Distribution

greenheart-0.1.0a1-py3-none-any.whl (827.3 kB view details)

Uploaded Python 3

File details

Details for the file greenheart-0.1.0a1.tar.gz.

File metadata

  • Download URL: greenheart-0.1.0a1.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for greenheart-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 a9b976f4ae474b027b37f0ee869644767b14f57bf33af0a78eb085d423474d38
MD5 a7dc1640b18cbe3251dbb00e2a7ee507
BLAKE2b-256 ec6efd82b120350381944b2b3951dea476354078b2080d50780adb091b70a738

See more details on using hashes here.

Provenance

File details

Details for the file greenheart-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: greenheart-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 827.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for greenheart-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 0afa41f7f70698a357988cb0d91be7a1b9a2bcc80abd686963d51ecb86d64ea6
MD5 0fff33f2fbd6cc8fbf2e223df7edc65b
BLAKE2b-256 bef78ede92c0ec2e9d0688481ee8586ae10e7b1c7188f7e1ea2ca4b3642ad7c1

See more details on using hashes here.

Provenance

Supported by

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