An electrical and mechanical analysis tool of overhead conductors.
Project description
ohmly - An electrical and mechanical analysis tool of overhead conductors
Ohmly is a lightweight Python library for engineers who work with overhead transmission and distribution lines.
It provides the core mechanical tools needed to evaluate conductor behavior under real-world loading conditions: sag, tension, wind, ice, temperature, variation, and more.
The library includes:
- A built-in database of conductor properties.
- Catenary-based sag-tension calculations.
- Multiple load-case (hypothesis evaluation).
- Temperature-dependent tension models.
- Wind & ice loading.
[!WARNING] Currently, all calculations follow the Spanish ITC-LAT 07 regulation only.
Electrical analysis modules will be added in future releases.
Why Use Ohmly?
- Fast and lightweight: Designed for quick analysis without heavy dependencies.
- Regulation-aware: All mechanical calculations follow ITC-LAT 07, ensuring compliance.
- Flexible scenarios: Easily define custom hypotheses, spans, and environmental conditions.
- Clear results: Sag-tension tables are easy to read and integrate into reports.
Installation
pip install ohmly
Getting Started
Here's a minimal example that shows how fast it is to compute sag-tension results.
from ohmly import ConductorRepository, MechAnalysis, MechAnalysisZone, MechAnalysisHypothesis
# 1. Load a conductor from the internal database
repo = ConductorRepository()
conductor = repo.get(legacy_code="LA 180")
# 2. Create a mechanical analysis context for zone A
mech = MechAnalysis(conductor, MechAnalysisZone.A)
# 3. Define hypotheses (scenarios) to evaluate
eds = MechAnalysisHypothesis(name="EDS", temp=15, rts_factor=0.15) # Every-Day Stress
chs = MechAnalysisHypothesis(name="CHS", temp=-5, rts_factor=0.2) # Cold-Hour Stress
hypos = [eds, chs]
# 4. Define span lengths (in meters)
spans = [100, 200, 300]
# 5. Compute sag-tension table
sagten_table = mech.stt(hypos, spans)
# 6. Print results
print(sagten_table)
Sample output:
EDS CHS
Span T (daN), RTS (%) T (daN), RTS (%)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
100 930.8383, 14.3338 1298.8000, 20.0000
200 974.1000, 15.0000 1160.4121, 17.8690
300 974.1000, 15.0000 1067.9360, 16.4450
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ohmly-0.0.7.tar.gz.
File metadata
- Download URL: ohmly-0.0.7.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.17.3-arch2-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7886c28f72bc7ba8578da477c1da9bc6edeef1b0f0a8bb9621c3c35a0378014
|
|
| MD5 |
7a656dacaefa8fb24d17ef8b2d91cf11
|
|
| BLAKE2b-256 |
ee9b0111a382c36a4515d5ccf923f2955b154913e49f46af808b95ee21af9862
|
File details
Details for the file ohmly-0.0.7-py3-none-any.whl.
File metadata
- Download URL: ohmly-0.0.7-py3-none-any.whl
- Upload date:
- Size: 13.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.17.3-arch2-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb75f5bade25746c3f8c3cd87f77beb6196f710f61a6f7764622e09b4f43822b
|
|
| MD5 |
9537cb306146f8c34186ddd398d0777c
|
|
| BLAKE2b-256 |
0959869f158ed5369d21b010b9c5a4e3ed47d7edc39122f3975a5c37d238aaa9
|