python-electric is a lightweight Python package designed to support the conceptual design and verification of low-voltage (LV) electrical networks in buildings. The library implements fundamental protection principles inspired by and aligned with IEC standards, enabling engineers to perform:
- Cable sizing
- Overload protection verification
- Short-circuit protection verification (maximum and minimum fault currents)
- Basic current-based selectivity analysis
- Time-based selectivity estimation for industrial circuit breakers
- Earthing system verification including protection against electric shock due to indirect contact
python-electric focuses on conceptual design and verification of LV installations. It is intended for engineers who want to explore, document, and validate design choices early in the design process, before moving to manufacturer-specific tools or certified calculation software.
An example Jupyter notebook is provided (/examples/example_01/ex01_LV_design.ipynb)
demonstrating the workflow and the steps that are taken in the design of a
low-voltage electrical network. This notebook reproduces a worked example from
the reference book Laagspanningsinstallaties: technologie en ontwerp.
The design philosophy of python-electric is to remain transparent, conservative, and standard-oriented, favoring clarity and traceability over black-box accuracy.
- The model intentionally avoids the use of manufacturer-specific curves.
- Selectivity is computed only in a normative, conservative sense.
- Arc-energy reduction, breaker coordination classes, and cascading effects (back-up protection) are outside scope.
- The package currently supports TN earthing systems and IT earthing systems.
This project is licensed under the MIT License. See the LICENSE file for details.
This software is provided for engineering support only.
python-electric is an engineering-oriented Python library intended to support electrical calculations such as short-circuit analysis, cable sizing, protection studies, and related topics.
The results produced by this software are based on mathematical models, assumptions, and reference standards commonly used in electrical engineering. They are provided for informational and educational purposes only.
python-electric is not a certified calculation tool and does not replace normative calculations, manufacturer documentation, or professional engineering judgement.
All results must be independently verified by a qualified engineer and checked against the applicable standards, regulations, and project-specific requirements before being used for design, execution, or safety-related decisions.
The author assumes no responsibility for the use or misuse of the results generated by this software.