Skip to main content

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

ohmly-0.0.7.tar.gz (12.6 kB view details)

Uploaded Source

Built Distribution

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

ohmly-0.0.7-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

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

Hashes for ohmly-0.0.7.tar.gz
Algorithm Hash digest
SHA256 c7886c28f72bc7ba8578da477c1da9bc6edeef1b0f0a8bb9621c3c35a0378014
MD5 7a656dacaefa8fb24d17ef8b2d91cf11
BLAKE2b-256 ee9b0111a382c36a4515d5ccf923f2955b154913e49f46af808b95ee21af9862

See more details on using hashes here.

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

Hashes for ohmly-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 bb75f5bade25746c3f8c3cd87f77beb6196f710f61a6f7764622e09b4f43822b
MD5 9537cb306146f8c34186ddd398d0777c
BLAKE2b-256 0959869f158ed5369d21b010b9c5a4e3ed47d7edc39122f3975a5c37d238aaa9

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