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.
pip install ElectromagneticPythonOptionally, install bvp:
pip install scikits.bvp1lgFirst, 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 developRun tests with:
make testRun examples with, e.g.:
uv run examples/ex_APRR.pyUpgrade dependencies with uv:
make upgradePackage version is handled by setuptools_scm/uv:
make release PART=...GitHub actions will build and upload the package to PyPI.
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.