Skip to main content

EMpy - ElectroMagnetic Python

CI PyPI

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)

Source distribution for ElectroMagneticPython 2.2.3
File Size Uploaded
electromagneticpython-2.2.3.tar.gz 222.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ElectroMagneticPython 2.2.3
File Interpreter ABI Platform
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}

Release history Release notifications | RSS feed

This release

2.2.3 This release

2 release files

2.2.1

2 release files

2.1.5

2 release files

2.1.4

2 release files

2.0.0

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1

1 release file

1.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page