Skip to main content

ThermalNetwork

A library for sizing multiple ground heat exchangers distributed around a single-pipe thermal network.

Installation

pip install ThermalNetwork

Documentation

Available at https://natlabrockies.github.io/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/NatLabRockies/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.

Once you have set up your environment:

  • Update pip and setuptools: pip install -U pip setuptools
  • Install the repository 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
    • Includes linting and formatting via ruff
  • 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 ruff.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 results will be saved to htmlcov/index.html.

Test files are in tests/

Test output will be written to tests/test_output/

Releasing

Versioning is done by GitHub tag, thanks to SetupTools-SCM. Use semantic versioning when tagging. When a new release is made in GitHub, a workflow automatically publishes to PyPI.

Metadata

Release files for ThermalNetwork 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ThermalNetwork 0.5.0
File Size Uploaded
thermalnetwork-0.5.0.tar.gz 12.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for ThermalNetwork 0.5.0
File Interpreter ABI Platform
thermalnetwork-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 25.3 MB

Release files / thermalnetwork-0.5.0.tar.gz

Download URL thermalnetwork-0.5.0.tar.gz
Size 12.6 MB
Tags Source
SHA-256 checksum
How to use checksums
2206a0a4ac862c6c647fff1f77582bd320db925386350ac6ed49504e73aa7d89
BLAKE2b-256 checksum
How to use checksums
fbc22d3c1d30313eca935c52077a3a2b105e7326429674aa8756d5b73251aaee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 27, 2026.

Transparency log

Release files / thermalnetwork-0.5.0-py3-none-any.whl

Download URL thermalnetwork-0.5.0-py3-none-any.whl
Size 12.8 MB
Tags Python 3
SHA-256 checksum
How to use checksums
249e3bd50d75d51e15bea2803c7ffc2e6b80f0c6ddc5848e03799cf1d6de200c
BLAKE2b-256 checksum
How to use checksums
37927781207245c38b8f815fef91e9e99b8eb3abbc0b95287bbe527c257da4c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 27, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page