Recent Releases of GHEDesigner
GHEDesigner - GHEDesigner v3.0 - Release Candidate 1
This is a release candidate for GHEDesigner v3.0, which include a key new feature for one-pipe ambient temperature loop system design and simulation.
Full Changelog: https://github.com/BETSRG/GHEDesigner/compare/v2.1.0...v3.0-RC1
Renewable Energy - Geothermal Energy
- Python
Published by mitchute about 2 months ago
GHEDesigner - GHEDesigner v2.1.0
What's Changed
- Minor updates by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/157
- Modernization updates by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/162
Full Changelog: https://github.com/BETSRG/GHEDesigner/compare/v2.0...v2.1.0
Renewable Energy - Geothermal Energy
- Python
Published by axelstudios 2 months ago
GHEDesigner - GHEDesigner v2.0
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP) systems.
What's Changed
- Hybrid Load Issue Workaround by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/107
- Miscellaneous Fixes by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/111
- Correcting Pipe Cell Thickness in Radial BH Model by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/112
- Modernize project management to use pyproject.toml by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/113
- Add Timestamps to Unit Test Outputs by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/120
- Cleanup Odd Warning Messages by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/119
- Follow up fixes to the project-management changes recently enacted by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/117
- Use Mkdocs for documentation instead of Sphinx by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/118
- Resolve documentation deployment issues by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/121
- Clean up the docs dir during change to MKDocs by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/123
- Quick Performance Cleanups for the Rowwise Method by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/122
- Change schema
unitsfield toformatso it renders properly on the docs site by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/126 - Comprehensive improvements by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/129
- Refining the Input Structure by @Myoldmopar in https://github.com/BETSRG/GHEDesigner/pull/131
- Allow write_input_file to create parent dirs as needed by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/132
- Update Error Handling for Manager Function Arguments by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/133
- Top-level exports by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/135
- Pythonic Error Handling by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/136
- Schema fixes by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/137
- Cleanup and Small Refactor by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/138
- Remove tests from build by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/139
- Fix demo_outputs directories by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/140
- Allow providing GHE parameters without design, and also a tremendous refactor of GHE code by @Myoldmopar in https://github.com/BETSRG/GHEDesigner/pull/141
- Dataclasses and cleanup by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/142
- Fixed schema errors by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/143
- Transition to
BHResistfor Resistance Calcs by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/145 - Patch Rowwise by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/146
- Move click-decoarated function from return-ing to exit-ing by @Myoldmopar in https://github.com/BETSRG/GHEDesigner/pull/149
- Handle CSV Loads Files by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/150
- Upgrade to latest
pygfunctionrelease by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/151 - Schema Updates by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/152
- Use Local
SecondaryCoolantPropsby @mitchute in https://github.com/BETSRG/GHEDesigner/pull/153 - Modularized and Refactored Output by @axelstudios in https://github.com/BETSRG/GHEDesigner/pull/154
New Contributors
- @axelstudios made their first contribution in https://github.com/BETSRG/GHEDesigner/pull/129
Full Changelog: https://github.com/BETSRG/GHEDesigner/compare/v1.5...v2.0
Renewable Energy - Geothermal Energy
- Python
Published by mitchute 7 months ago
GHEDesigner - GHEDesigner v1.5
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP) systems.
What's Changed
- Use compatible-release dependency specification by @vtnate in https://github.com/BETSRG/GHEDesigner/pull/104
- 95 small design method fixes bupcrs and bi zoned rectangle by @TNWest in https://github.com/BETSRG/GHEDesigner/pull/103
- Update Example and Test File Assumptions by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/102
- Update Version, Prep Release v1.5 by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/106
New Contributors
- @vtnate made their first contribution in https://github.com/BETSRG/GHEDesigner/pull/104
Full Changelog: https://github.com/BETSRG/GHEDesigner/compare/v1.4...v1.5
Renewable Energy - Geothermal Energy
- Python
Published by mitchute almost 2 years ago
GHEDesigner - GHEDesigner v1.4
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP) systems.
Release Summary
This release includes the work described below:
What's Changed
- Bump ReadTheDocs to Python v3.9 by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/92
- Add New Input Field for Max Boreholes Allowed by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/99
- Improve Error Handling When Design Unmet by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/100
- Bump Version to 1.4 to Prep for Release + Assorted Fixes by @mitchute in https://github.com/BETSRG/GHEDesigner/pull/101
Full Changelog: https://github.com/BETSRG/GHEDesigner/compare/v1.3...v1.4
Renewable Energy - Geothermal Energy
- Python
Published by mitchute about 2 years ago
GHEDesigner - GHEDesigner v1.3
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP) systems.
Release Summary
This release includes the work described below:
- Several testing improvements #88, #85
- CLI and other code cleanups #83, #87
- Adds new CLI option to export results to IDF objects for EnergyPlus #86
- Fixes issue where odd, imbalanced loads were causing the wrong borehole field to be selected #84
Renewable Energy - Geothermal Energy
- Python
Published by mitchute over 2 years ago
GHEDesigner - GHEDesigner v1.1
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP) systems.
Release Summary
This release includes the work described below:
- Eliminate the need for the OpenCV python library, which was used for evaluating a point location relative to a polygon #73
- Add a new feature for computing STS g-functions based on the temperature rise at the borehole wall. #79
Renewable Energy - Geothermal Energy
- Python
Published by mitchute over 2 years ago
GHEDesigner - GHE Designer v1.0
GHEDesigner - A Flexible and Automatic Ground Heat Exchanger Design Tool
GHEDesigner is a Python package for designing ground heat exchangers (GHE) used with ground source heat pump (GSHP)
systems. Compared to currently available tools such
as GLHEPRO, GHEDesigner:
- is flexible. It can synthesize borehole fields that are custom fit to the user's property description,
- implements the RowWise algorithm (Spitler, et al. 2022a) for
automatically placing and sizing boreholes in any land area with complex geometry, - is highly automated. It can select library configurations or custom configurations and determine the final number and
depth requirement of boreholes, - can make automated conversion of hourly loads to an improved hybrid time step
representation (Cullin and Spitler 2011), and - is under continuing development at Oklahoma State University (OSU), Oak Ridge National Laboratory (ORNL), and the
National Renewable Energy Laboratory (NREL). (GLHEPRO remains under development at OSU.)
Background
GHEDesigner was originally funded through US Department of Energy contract DE‐AC05‐00OR22725 via a subcontract from Oak
Ridge National Laboratory. The project led by Dr. Xiaobing Liu developed an
online screening tool (Liu, et al. 2022)
for techno-economic analysis and design of ground-source heat pump systems. The Oklahoma State University team led by
Prof. Jeffrey D. Spitler was contracted to investigate fast methods for computing g-functions. An outgrowth of this
research was a tool for automatically selecting and sizing borehole configurations. This tool, originally called GHEDT,
is described in an MS thesis (Cook 2021). Since that time, the tool has been
renamed GHEDesigner, and work has continued at Oklahoma State University, Oak Ridge National Laboratory, and the
National Renewable Energy Laboratory.
Updates since Cook (2021) include:
- Development and addition of RowWise algorithm to efficiently place boreholes in the available land area.
- Extensive refactoring for creating a user-focused, stable API.
- Simplification of library dependencies.
- Development of automated testing and deployment procedures.
Borehole Field Design Algorithms
- Long time-step g-functions are calculated using pygfunction (Cimmino 2018) using the equivalent borehole
method (Prieto and Cimmino 2021). It's also possible to read
g-functions from a library (Spitler, et al. 2021). - Borehole thermal resistance is computed for single and double U-tube configurations via the multipole
method (Claesson and Hellström 2011). For coaxial ground heat
exchangers, it is computed from fundamental heat transfer relationships. - Short time-step g-functions are computed using the
Xu and Spitler (2006) method. - GHEDesigner contains a novel design methodology for automated selection of borehole fields. The advanced methodology
performs optimization based on a target drilling depth. An integer bisection routine is utilized to quickly search
over a uni-modal domain of boreholes. GHEDesigner can consider the available land area for drilling and no-drilling
zones defined as polygons. - GHEDesigner can synthesize a range of regularly shaped borehole configurations, including previously available
shapes (rectangles, open rectangles, L-shape, U-shape, line) and shapes not previously available (C-shapes and zoned
rectangles). More information about these shapes can be found in the documentation for a publicly available g-function
library. (Spitler, et al. 2021,
2022b) - GHEDesigner can synthesize on the fly irregularly shaped borehole configurations using the RowWise
algorithm (Spitler, et al. 2022a) or the bi-uniform polygonal constrained
rectangular search (BUPCRS) (Cook 2021). Both configurations are adapted to the
user-specified property boundaries and no-drill zones, if any. Spitler, et al. 2022a
gives an example where the RowWise algorithm saves 12-18% compared to the BUPCRS algorithm. The RowWise algorithm takes
longer to run, though. - A set of search routines can be used to size different types of configurations:
- The unconstrained square/near-square search will search a domain of square (n x n) and near-square
(n-1 x n) boreholes fields, with uniform spacing between the boreholes. - Uniform and bi-uniform constrained rectangular searches will search domains of rectangular configurations that
have either uniform spacing or "bi-uniform" spacing – that is, uniform in the x direction and uniform in the y
direction, but the two spacings may be different. - The bi-uniform constrained zoned rectangular search allows for rectangular configurations with different interior
and perimeter spacings. - The bi-uniform polygonal constrained rectangular search (BUPCRS) can search configurations with an outer perimeter
and no-go zones described as irregular polygons. This is still referred to as a rectangular search because it is
still based on a rectangular grid, from which boreholes that are outside the perimeter or inside a no-go zone are
removed. - The RowWise method generates and searches custom borehole fields that make full use of the available property. The
RowWise algorithms are described by Spitler et al. (2022a).
- The unconstrained square/near-square search will search a domain of square (n x n) and near-square
Limitations
GHEDesigner does not have every feature that is found in a tool like GLHEPRO. Features that are currently missing
include:
- Heat pumps are not modeled. Users input heat rejection/extraction rates.
- An hourly simulation is available, but it doesn't make use of load aggregation, so is very slow.
- GHEDesigner only covers vertical borehole ground heat exchangers. Horizontal ground heat exchangers are not treated.
- GHEDesigner does not calculate the head loss in the ground heat exchanger or warn the user that head loss may be
excessive. - GHEDesigner does not have a graphical user interface.
- GHEDesigner is a Python package and requires some Python knowledge to use.
Requirements
GHEDesigner is supported for Python versions >= 3.8, and is tested with Python 3.8 and 3.9. GHEDesigner is dependent on
the following packages:
- [click][#click] (>=8.1.3)
- [jsonschema][#jsonschema] (>=4.17.3)
- [numpy][#numpy] (>=1.24.2)
- [opencv-python][#opencv] (==4.7.0.68)
- [pygfunction][#pygfunction] (>=2.2.2)
- [scipy][#scipy] (>=1.10.0)
Quick Start
Users - Install GHEDesigner via the package installer for Python ([pip][#pip]):
pip install ghedesigner
Developers - Clone the repository via git:
git clone https://github.com/betsrg/ghedesigner
Renewable Energy - Geothermal Energy
- Python
Published by mitchute about 3 years ago
GHEDesigner - Test Release Workflow
This is a test and will be deleted.
Renewable Energy - Geothermal Energy
- Python
Published by mitchute about 3 years ago