sysloss

Power tree analysis of circuits, boards and systems.

https://github.com/geddy11/sysloss

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.2%) to scientific vocabulary

Keywords

analysis battery-life board circuits components current efficiency electronics energy loss power power-tree python system tree voltage
Last synced: 4 months ago · JSON representation ·

Repository

Power tree analysis of circuits, boards and systems.

Basic Info
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 0
  • Open Issues: 1
  • Releases: 14
Topics
analysis battery-life board circuits components current efficiency electronics energy loss power power-tree python system tree voltage
Created almost 2 years ago · Last pushed 8 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation Security

README.md

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

bash $ pip install sysloss or bash $ conda install conda-forge::sysloss

Usage

Analyze the power tree of a simple battery-powered bluetooth sensor: ```python from sysloss.components import * from sysloss.system import System

bts = System("Bluetooth sensor", Source("CR2032", vo=3.0, rs=10)) bts.addcomp("CR2032", comp=Converter("Buck 1.8V", vo=1.8, eff=0.87)) bts.addcomp("Buck 1.8V", comp=PLoad("MCU", pwr=13e-3)) bts.addcomp("CR2032", comp=Converter("Boost 5V", vo=5.0, eff=0.82)) bts.addcomp("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 python df = bts.solve() print(df) ``` result

Create graphical power tree diagrams: ```python import sysloss.diagram as sd

sd.make_diag(bts, fname="bts.png") ``` tree

And heat diagrams: python sd.make_hdiag(bts, fname="bts-heat.png") heat

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.

Owner

  • Name: Geir Drange
  • Login: geddy11
  • Kind: user
  • Location: Norway

Citation (CITATION.cff)

cff-version: 1.2.0
title: sysLoss
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Geir
    family-names: Drange
    affiliation: Inventas AS
    orcid: 'https://orcid.org/0009-0009-6795-8583'
identifiers:
  - type: doi
    value: 10.5281/zenodo.11086060
repository-code: 'https://github.com/geddy11/sysloss'
url: 'https://github.com/geddy11/sysloss'
abstract: sysLoss is a tool for analyzing system power and losses.
keywords:
  - system
  - power
  - loss
license: MIT
version: "1.10.0"

GitHub Events

Total
  • Create event: 6
  • Issues event: 1
  • Release event: 6
  • Push event: 35
Last Year
  • Create event: 6
  • Issues event: 1
  • Release event: 6
  • Push event: 35