Skip to main content

Power tree analysis of circuits, boards and systems.

Project description

Actions Status Code coverage Codacy PyPI Conda Code style: black Conv. commits Zenodo DOI

sysLoss

sysLoss is a tool for analyzing power trees, system power and losses. From the smallest IoT sensor to large industrial installations. The tool is efficient and easy to use, the analysis result provides a detailed report on voltages, currents, power and efficiency for every component defined in the system. Output format is Pandas DataFrame: Create charts, plots and export to Excel and other formats.

Installation

$ pip install sysloss

or

$ conda install conda-forge::sysloss

Usage

from sysloss.components import *
from sysloss.system import System

bts = System("Bluetooth sensor", Source("CR2032", vo=3.0, rs=10))
bts.add_comp("CR2032", comp=Converter("Buck 1.8V", vo=1.8, eff=0.87))
bts.add_comp("Buck 1.8V", comp=PLoad("MCU", pwr=13e-3))
bts.add_comp("CR2032", comp=Converter("Boost 5V", vo=5.0, eff=0.82))
bts.add_comp("Boost 5V", comp=RLoss("RC filter", rs=6.8))
bts.add_comp("RC filter", comp=ILoad("Sensor", ii=6e-3))
bts.tree()
Bluetooth sensor
└── CR2032
    ├── Boost 5V
    │   └── RC filter
    │       └── Sensor
    └── Buck 1.8V
        └── MCU
df = bts.solve()
print(df)

result

from sysloss.diagram import make_diag

make_diag(bts, fname="bts.png")

tree

Documentation

The documentation includes tutorials in the form of Jupyter notebooks, located in docs/nb.

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

sysloss was created by Geir Drange. It is licensed under the terms of the MIT license.

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

sysloss-1.7.0.tar.gz (26.9 kB view details)

Uploaded Source

Built Distribution

sysloss-1.7.0-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file sysloss-1.7.0.tar.gz.

File metadata

  • Download URL: sysloss-1.7.0.tar.gz
  • Upload date:
  • Size: 26.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for sysloss-1.7.0.tar.gz
Algorithm Hash digest
SHA256 d73d4d95886bab0f2c2055812cb36a33f547fc41edea999b2acf48a12f8ffcf2
MD5 67884c97e9c71a323262c369c6f4d342
BLAKE2b-256 3397b3668c934b02f999089c6c1082e4d48e4d71d44612a066650271a5c7b7d8

See more details on using hashes here.

File details

Details for the file sysloss-1.7.0-py3-none-any.whl.

File metadata

  • Download URL: sysloss-1.7.0-py3-none-any.whl
  • Upload date:
  • Size: 27.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for sysloss-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84be50863364897115fda9bdd442bb0f20e44c863919139bbe30a0eccd956ab2
MD5 b02cefafe082e29137ac1f7c196b583c
BLAKE2b-256 76c6509ea921d76085e5745e345235f3ef9e9f83d3780b055578d48518837032

See more details on using hashes here.

Supported by

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