Computational tools for electronics engineering
Project description
UliEngineering
A Python3 library for: - Data science - Electronics Engineering - Specialized algorithms - Physics which contains a collection of functions I haven't found elsewhere. Some algorithms have also been accepted on my blog https://techoverflow.net/
Pull requests and bugreports of any kind are happily accepted.
Installation
Run this command on your favourite shell:
sudo pip3 install UliEngineering
In order to install the latest bleeding-edge version, use:
sudo pip3 install git+https://github.com/ulikoehler/UliEngineering.git
We highly recommend you also install scipy:
sudo pip3 install scipy
(you can also use sudo apt install python3-scipy
on Debian-based Linux distros).
While scipy is technically optional and listed as an optional dependency, many UliEngineering modules can't be used without it, including (might not be complete!):
- UliEngineering.Length
- UliEngineering.SignalProcessing.Interpolation
- UliEngineering.SignalProcessing.Correlation
- UliEngineering.Physics.JohnsonNyquistNoise
- Some functions in UliEngineering.SignalProcessing.Simulation
- Some functions in UliEngineering.SignalProcessing.Selection
After that you can use UliEngineering from any Python3 instance. Example:
$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from UliEngineering.EngineerIO import *
>>> format_value(0.015, "V")
'15.0 mV'
Getting started
On my blog, I've posted several easy-to-use examples on how to solve real-world problems using UliEngineering:
- Normalizing electronics engineering value notations using Python
- Finding the nearest E96 resistor value in Python
- Easy zero crossing detection in Python using UliEngineering
- Easily generate sine/cosine wave test data in Python using UliEngineering
- Easily generate square/triangle/sawtooth/inverse sawtooth waveform data in Python using UliEngineering
- Easily compute & visualize FFTs in Python using UliEngineering
- Computing resistor power dissipation in Python using UliEngineering
- Computing crystal load capacitance using Python & UliEngineering
- How to convert Celsius/Fahrenheit/Kelvin temperatures in Python using UliEngineering
- How to get unit/resolution of NumPy np.timedelta64 object
- How to get unit/resolution of NumPy np.datetime64 object
- How to iterate all days of year using Python
- How to get number of days in month in Python
- How to compute candelas from lumens by apex angle
- How to compute resistor voltage divider ratio using Python
- How to generate datetime for every hour on a given day in Python
- How to generate datetime for every minute on a given day in Python
- How to generate datetime for every second on a given day in Python
- How to compute MRI Larmor frequency for a given magnetic field using Pythonf
- How to compute voltage divider output voltage using Python
- How to format axis as dB (decibel) using matplotlib
- How to compute Buck/Boost/LDO output voltage by feedback resistors using Python
- How to compute the weight of a titanium or stainless steel rod using UliEngineering in Python
- How to compute non-inverting OpAmp amplifier gain using UliEngineering in Python
- How to generate filename with date & time in Python
Testing
In order to run the unit tests, first install tox:
pip install --user tox
and then just run it in the root directory of the cloned repository
tox
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file uliengineering-0.4.21.tar.gz
.
File metadata
- Download URL: uliengineering-0.4.21.tar.gz
- Upload date:
- Size: 84.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-47-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5cef6550608819661fe1add21095f5c1e0dd49127aa99467e042e6d15609c88 |
|
MD5 | 125f7f2414d58370b46d0ff6f491241b |
|
BLAKE2b-256 | 3ce447f90ce88247face6919c8b70c744ac294a545f229fc0e114e2e690c296c |
File details
Details for the file uliengineering-0.4.21-py3-none-any.whl
.
File metadata
- Download URL: uliengineering-0.4.21-py3-none-any.whl
- Upload date:
- Size: 110.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-47-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 585234660fb353b0a7ad11d82d802b32373a3767e04dc3adcf24f388b8d2df71 |
|
MD5 | 5b1a8496f8a22c2dd808f2d38d6ba379 |
|
BLAKE2b-256 | e5341cc910c23dde9a065ee2a8397c785d5333d444877925ed2abbd03f689ac4 |