A thermal network solver for GHE sizing.
Project description
ThermalNetwork
A library for sizing multiple ground heat exchangers distributed around a single-pipe thermal network.
Installation
pip install ThermalNetwork
Usage
This package has a command-line interface, intended to be used via URBANopt. To access the CLI directly, after installing call thermalnetwork --help
for all the commands.
Developer installation
- Clone the repository:
git clone https://github.com/NREL/ThermalNetwork.git
- Change directories into the repository:
cd ThermalNetwork
- We recommend using virtual environments on principle to avoid dependencies colliding between your Python projects. venv is the Python native solution that will work everywhere, though other options may be more user-friendly.
- Some popular alternatives are:
- pyenv and the virtualenv plugin work together nicely for Linux/Mac machines
- virtualenv
- miniconda
- Some popular alternatives are:
Once you have set up your environment:
- Update pip and setuptools:
pip install -U pip setuptools
- Install the respository with developer dependencies:
pip install -e .[dev]
- Activate pre-commit (only once, after making a new venv):
pre-commit install
- Runs automatically on your staged changes before every commit
- To check the whole repo, run
pre-commit run --all-files
- Settings and documentation links for pre-commit and ruff are in .pre-commit-config.yaml and pyproject.toml
- Pre-commit will run automatically during CI, linting and formatting the entire repository.
Testing
Once you are set up as a developer, run pytest
from the root dir. Increase verbosity with -v
and -vv
.
Test coverage will be reported to stdout.
Test files are in thermalnetwork/tests/
Test output will be written to thermalnetwork/tests/test_output/
Releasing
Increment the version in thermalnetwork/__init__.py. Use semantic versioning.
When a new release from the main
branch is made in GitHub, a workflow automatically releases to PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ThermalNetwork-0.2.3rc8.tar.gz
.
File metadata
- Download URL: ThermalNetwork-0.2.3rc8.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d01e9ad04d364e0d5afb6cb044c84cf8b8eac969d0c1d1fdca54c1367debd0b3 |
|
MD5 | cfdc8d8806a315b551becd98e7f2a8cb |
|
BLAKE2b-256 | 0c4df525b379c41c137b903f1682c72da4ad45228137ac60e547e13853baccca |
File details
Details for the file ThermalNetwork-0.2.3rc8-py3-none-any.whl
.
File metadata
- Download URL: ThermalNetwork-0.2.3rc8-py3-none-any.whl
- Upload date:
- Size: 18.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3adc9b2d95ab15ad2ce84e1af6c935d1cdcc1f25b9c45839bb5901061822a231 |
|
MD5 | 20154e8dfc64c44dd3fe7ebca83448d1 |
|
BLAKE2b-256 | 916b8b5a84de2a0155129ec179accd46feeab10ad49e27fe61a69b2c852c5b70 |