TNO Intern

Commit 555c1ca5 authored by Zanne Korevaar's avatar Zanne Korevaar
Browse files

Merge branch '3-upload-to-pypi' into 'main'

Resolve "upload to pypi"

Closes #3

See merge request !4
parents f761f290 19066a54
Loading
Loading
Loading
Loading
Loading
+20 −10
Original line number Diff line number Diff line
@@ -3,17 +3,23 @@
[![PyPI](https://img.shields.io/pypi/v/geoloop.svg)](https://pypi.org/project/geoloop/)
[![Documentation](https://img.shields.io/badge/docs-latest-blue)](https://geoloop-8f7a36.ci.tno.nl/)

## What is *Geoloop*?
## What is **Geoloop**?

*Geoloop* is a Python package for evaluating borehole heat exchanger (BHE) performance
with depth-dependent thermal properties, temperature profiles, and borehole design options.
**Geoloop** is a Python package for simulating borehole heat exchanger (BHE) systems,
with a focus on optimal implementation of subsurface thermal properties and their impact on system performance.

It integrates realistic subsurface models to improve simulation reliability and supports
informed decision-making for both research and practical applications.
**Geoloop** incorporates (uncertainty in) depth-variations in subsurface thermal conductivity, subsurface temperature, 
BHE design and diverse operational boundary conditions such as seasonal load variations or 
minimum fluid temperatures, in a tool for deterministic or stochastic performance analyses with the opportunity
for optimization of the system design and operation. This makes Geoloop ideal for scenario analyses and sensitivity 
studies in both research and practical applications.

The package is based on thermal response factors (or *g*-functions) for borehole heat exchangers, calculated
using an analytical solution to the Finite Line Source model. The model set-up with *g*-functions is extended 
into a stacked, depth-dependent formulation for depth-dependent thermal response calculations.
**Geoloop** uses thermal response factors (*g*-functions) calculated using the analytical Finite Line Source model from 
the *pygfunction* package. This setup is extended into a stacked approach for depth-dependent thermal response calculations. 
A detailed description and benchmark of this depth-dependent semi-analytical method is provided in Korevaar & Van Wees (in prep.).
**Geoloop's** generic framework allows for easy switching between simulation methods, including the innovative depth-dependent
semi-analytical approach, the depth-uniform implementation of g-functions as implemented in *pygfunction* and a numerical 
finite volume approach.

---

@@ -25,14 +31,14 @@ Install from PyPI using:
pip install geoloop
```

For detailed setup instructions (including Pixi-based environments and development setup),
For detailed setup instructions (including uv-based environments and development setup),
see the [Installation Guide](https://geoloop-8f7a36.ci.tno.nl/installation/install/).

---

## Requirements

Geoloop requires **Python 3.10 or higher**.
Geoloop requires **Python 3.12 or higher**.

Core dependencies include:
- pygfunction
@@ -72,3 +78,7 @@ See the [LICENSE.md](LICENSE.md) file for details.
## Acknowledgments

Developed with the support of the Dutch funding agency **RVO**, in a consortium project with grant nr. MOOI322009.

---

+13 −9
Original line number Diff line number Diff line
@@ -6,17 +6,21 @@
</p>


*Geoloop* is a Python package for simulation of borehole heat exchanger (BHE) systems. It offers 
broad functionality for fast calculations of BHE system performance, while including uncertainty in subsurface 
thermal properties and operational conditions. 
**Geoloop** is a Python package for simulating borehole heat exchanger (BHE) systems,
with a focus on optimal implementation of subsurface thermal properties and their impact on system performance.

*Geoloop* incorporates depth-variations in subsurface thermal conductivity, subsurface temperature, and 
borehole design, and diverse operational boundary conditions such as seasonal load variations or 
minimum fluid temperatures in a tool for deterministic or stochastic performance analyses with the opportunity
**Geoloop** incorporates (uncertainty in) depth-variations in subsurface thermal conductivity, subsurface temperature, 
BHE design and diverse operational boundary conditions such as seasonal load variations or 
minimum fluid temperatures, in a tool for deterministic or stochastic performance analyses with the opportunity
for optimization of the system design and operation. This makes Geoloop ideal for scenario analyses and sensitivity 
studies.

It offers a tool to support informed decision-making in both research and practical applications.
studies in both research and practical applications.

**Geoloop** uses thermal response factors (*g*-functions) calculated using the analytical Finite Line Source model from 
the *pygfunction* package. This setup is extended into a stacked approach for depth-dependent thermal response calculations. 
A detailed description and benchmark of this depth-dependent semi-analytical method is provided in Korevaar & Van Wees (in prep.).
**Geoloop's** generic framework allows for easy switching between simulation methods, including the innovative depth-dependent
semi-analytical approach, the depth-uniform implementation of g-functions as implemented in *pygfunction* and a numerical 
finite volume approach.

---

+1 −1
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@ pip install geoloop

This installs *Geoloop* along with its required dependencies.

Geoloop requires **Python 3.12 or newer**.
Geoloop requires **Python 3.12 or higher**.

---

+11 −13
Original line number Diff line number Diff line
[build-system]
requires = ["setuptools>=61", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "geoloop"
version = "1.0.0"
description = "This is a Python code for simulationo of (deep) Borehole Heat Exchangers (BHEs)"
readme = "README.md"
license = { text = "Apache 2.0" }
description = "This is a Python package for simulation of (deep) Borehole Heat Exchanger (BHE) systems"
authors = [
    { name = "Zanne Korevaar", email = "zanne.korevaar@tno.nl" },
    { name = "Jan-Diederik", email = "jan_diederik.vanwees@tno.nl" }
    { name = "Jan-Diederik van Wees", email = "jan_diederik.vanwees@tno.nl" }
]
readme = "README.md"
license = { file = "LICENSE" }
requires-python = ">=3.12,<3.14"
keywords = [
    "BHE", "geothermal", "ground source heat pump",
    "deep borehole heat exchanger", "geoloop"
    "borehole heat exchanger", "BHE", "geothermal", "ground-source heat pump",
    "deep borehole heat exchanger"
]

requires-python = ">=3.12,<3.14"

dependencies = [
    "pygfunction>=2.2.2",
    "matplotlib>=3.10.1",
@@ -47,10 +49,6 @@ dev = [
    "mkdocstrings-python>=1.18.2",
]

[build-system]
requires = ["setuptools>=61", "wheel"]
build-backend = "setuptools.build_meta"

[tool.setuptools.packages.find]
where = ["src"]

setup.py

deleted100644 → 0
+0 −8
Original line number Diff line number Diff line
from setuptools import find_packages, setup

setup(
    name="geoloop",
    version="1.0.0",
    packages=find_packages(),
    install_requires=[],
)