EMpy - ElectroMagnetic Python
EMpy - ElectroMagnetic Python is a suite of algorithms widely known and used in electromagnetic problems and optics: the transfer matrix algorithm, the rigorous coupled wave analysis algorithm and more.
Run the examples in examples/* to have an idea how EMpy works.
Visit https://lbolla.github.io/EMpy/ for more information.
Installation
pip install ElectromagneticPython
Optionally, install bvp:
pip install scikits.bvp1lg
Development
First, download the source code from https://github.com/lbolla/EMpy.
EMpy is managed with uv (https://docs.astral.sh/uv/):
Install dev environment with:
make develop
Run tests with:
make test
Run examples with, e.g.:
uv run examples/ex_APRR.py
Upgrade dependencies with uv:
make upgrade
Release process
Package version is handled by setuptools_scm/uv:
make release PART=...
GitHub actions will build and upload the package to PyPI.
Citation
If you find EMpy useful in your job, please consider adding a citation.
As reference:
Bolla, L. (2017). EMpy [Computer software]. https://github.com/lbolla/EMpy/
As text:
We used EMpy (version x.y.z) to complete our work.
Release files for ElectroMagneticPython 2.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| electromagneticpython-2.2.3.tar.gz | 222.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| electromagneticpython-2.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 358.8 kB
Release files / electromagneticpython-2.2.3.tar.gz
| Download URL | electromagneticpython-2.2.3.tar.gz |
|---|---|
| Size | 222.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1302ec50d946e091f67c598f397f580183a301f6b686b8f95396e9a639b6c0d0
|
|
BLAKE2b-256 checksum How to use checksums |
d5b2a00f71ae9767c6bd451f2adf3011f7862cb0f8d9904a3610dc3a2a048929
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / electromagneticpython-2.2.3-py3-none-any.whl
| Download URL | electromagneticpython-2.2.3-py3-none-any.whl |
|---|---|
| Size | 136.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
309694b39bbea1840effa27b3b5ef286b2ad104fe0d9d17fba3239bd9e274b9a
|
|
BLAKE2b-256 checksum How to use checksums |
592ac683370039c884bf9a6b563653c0ed8f5e55da5dc604a5449f66e7f855a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|