Skip to main content

Cable Thermal Model (CTM) is a physical model used to calculate dynamic cable temperatures.

Project description

Cable thermal model

Cable Thermal Model is a physical model which can be used to calculate cable temperature profiles in situations with dynamic profiles for loads, ambient temperature, soil properties. The model uses an implicit Euler finite difference approach to discretize the heat equation. Moreover, it relies on the NEN-IEC norms for cable ratings. Cable Thermal Model supports different bonding types, circuit types and environments in soil as well as in air.

Getting started

System Requirements

  • Python Version: Python 3.11 or higher
  • Operating System: Windows, Linux, or macOS
  • Package Manager: Poetry

Installation

For Users

Installation via Poetry (Recommended)

For better dependency management, use Poetry:

poetry add cable-thermal-model

For Developers

If you plan to contribute to the Cable Thermal Model, follow these steps to set up your development environment:

1. Clone the Repository

git clone https://github.com/alliander-opensource/cable-thermal-model
cd cable-thermal-model

2. Install Dependencies with Poetry

We recommend using Poetry for development:

# Install all dependencies including development tools
poetry install --with dev

3. Enable Pre-commit Hooks

Pre-commit hooks ensure code quality and proper licensing headers:

# Install pre-commit hooks
pre-commit install --install-hooks

The reuse pre-commit hook ensures that all files have proper copyright headers (MPL-2.0 license).

Verifying Your Installation

After installation, verify that the package is correctly installed by importing some of the main classes:

from cable_thermal_model import (
    CircuitType,
    BondingType,
    StaticEnvSoil,
    StaticEnvAir,
    ModelFactory,
    CableKey
)

# Check the installed version
from cable_thermal_model  import __version__
print(f"Cable Thermal Model version: {__version__}")

If the import succeeds without errors, your installation is complete!

Documentation

For more information regarding the model, technical documentation and working examples, please visit the documentation:

https://alliander-opensource.github.io/cable-thermal-model/

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

cable_thermal_model-1.15.2.tar.gz (83.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cable_thermal_model-1.15.2-py3-none-any.whl (109.7 kB view details)

Uploaded Python 3

File details

Details for the file cable_thermal_model-1.15.2.tar.gz.

File metadata

  • Download URL: cable_thermal_model-1.15.2.tar.gz
  • Upload date:
  • Size: 83.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.14.4 Linux/6.6.114.1-microsoft-standard-WSL2

File hashes

Hashes for cable_thermal_model-1.15.2.tar.gz
Algorithm Hash digest
SHA256 50930d24d24528f289f48c1472a7b5775c9a99d062e51fcf1df9be584620ba52
MD5 a479ea4e816ac56926498bab0aec79dd
BLAKE2b-256 b6ccbe5746fcbedf544ed496ac4e6b83510c7866f78c3c4778e83d1a3668f17e

See more details on using hashes here.

File details

Details for the file cable_thermal_model-1.15.2-py3-none-any.whl.

File metadata

  • Download URL: cable_thermal_model-1.15.2-py3-none-any.whl
  • Upload date:
  • Size: 109.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.14.4 Linux/6.6.114.1-microsoft-standard-WSL2

File hashes

Hashes for cable_thermal_model-1.15.2-py3-none-any.whl
Algorithm Hash digest
SHA256 59ef6c5d13afdf13441f6ba51ca01eeb16296367e429e645832c7e6267bd33d0
MD5 f13e4a6d45bc234f5993db00f4ef3350
BLAKE2b-256 95330d612362ac79b9678501d53892c2705542edaf3c2e7e7dc54283a9855cfb

See more details on using hashes here.

Supported by

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