Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

LinkedInCover

GitHub License GitHub Release PyPI - Downloads DOI

Introduction

EMerge is a python based FEM EM library for the time harmonic helmholtz formulation. It is thus best suited for Electromagnetic wave phenomenon. You can use it to simulate:

  • RF Filters
  • Signal propagation through PCBs
  • Antennas
  • Optycal systems
  • Arrays and periodic structures
  • Much more!

It is designed to be as easy to use and compatible as possible. It runs on all operating systems and on all hardware.

EMerge is designed to have your entire simulation start and finish in the same Python script (or more if you want). You require no awkward configuration files, JSON's, external software to do modelling etc. It allows you to do everything in Python:

  • Geometry Creation/description |
  • Material assignment |
  • Meshing + mesh settings and adaptive mesh refinement |
  • Boundary condition setup |
  • Solving |
  • Post processing and visualization |

If you have questions, suggestions, bug reports or just want to hang out, feel free to join the discord!

Discord Invitation


How to install

You can now install the basic version of emerge from PyPi!

pip install emerge

Direct solvers

EMerge solves all systems with direct solvers only. Some are faster than others. Depending on the operating system and hardware you have, some might work better and/or are easier to install than others.

MacOS (ARM)

It is advised to use the Apple Accelerate sparse solver for all cases. On all versions before 2.5.3 install through

pip install https://github.com/FennisRobert/emerge-aasds

By default the Accelrate solver will be limited to a single thread for frequency distributed sweeps. To allow for more threads either set the environment variable manually:

VECLIB_MAXIMUM_THREADS = 4

Or in Python before loading EMerge:

import os
os.environ['VECLIB_MAXIMUM_THREADS'] = '4'

Of from 2.5.3 onwards also through the config sister module

from emerge_config import config
config.set_acc_threads(4)
MacOS (ARM, GPU)

To utilize the GPU on Apple silicon you can install the open source GPU based sparse direct solver SPARTA.

pip install git+https://github.com/FennisRobert/SPARTA

To activate the GPU, set:

model.set_solver(em.EMSolver.SPARTA)
Windows (x86)

Windows has easy access to the lightning fast PARDISO solver out of the box, no installation needed. If you want to install the UMFPACK solver for distributed sweeps this distribution should work through conda forge:

conda install conda-forge::scikit-umfpack

Otherwise try the solution in the user manual.

https://www.emerge-software.com/resources

GPU based CuDSS solver

If you have a new NVidia card you can try the first test implementation of the cuDSS solver. The dependencies can be installed through:

pip install emerge[cudss]
GPU based SPARTA solver

You can utilize the GPU on AMD devices through Vulkan using the open source SPARTA solver.

pip install git+https://github.com/FennisRobert/SPARTA

To activate the GPU, set:

model.set_solver(em.EMSolver.SPARTA)

Install GMSH Version 5.0.0 MacOS

pip install https://gmsh.info/python-packages-dev/gmsh/gmsh-5.0.0.dev1-py2.py3-none-macosx_12_0_arm64.whl --force-reinstall

Dependencies

EMerge ships compiled Rust kernels (the emr module, source in emr/). PyPI wheels include them; installing from source (pip install /path/to/EMerge or pip install git+https://github.com/FennisRobert/EMerge.git) compiles them automatically and requires a Rust toolchain (https://rustup.rs).

To run this FEM library you need the following libraries Optional:
  • numpy
  • scipy
  • gmsh
  • loguru
  • matplotlib (for the matplotlib base display)
  • pyvista (for the PyVista base display)
  • mkl (x86 devices only)
  • emsutil
  • scikit-umfpack
  • cudss
  • ezdxf
  • emcad

PCB and CAD readers

You can read Gerber and ODB++ files using the optional emcad dependency which I also maintain. To get all the dependencies its easiest to do:

pip intall emerge[cad]

Resources / Manual

You can find the latest versions of the manual on: https://www.emerge-software.com/resources/

Metadata

Release files for emerge 3.0.0b3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for emerge 3.0.0b3
File Size Uploaded Provenance
emerge-3.0.0b3.tar.gz 866.5 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for emerge 3.0.0b3
File
emerge-3.0.0b3-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
emerge-3.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details
emerge-3.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64 Details
emerge-3.0.0b3-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
emerge-3.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details

Total release size: 9.7 MB

Release files / emerge-3.0.0b3.tar.gz

Download URL emerge-3.0.0b3.tar.gz
Size 866.5 kB
Tags Source
SHA-256 checksum
How to use checksums
cb6553d73c25aad13ea1b64d14093e194cd16f3aa132aae293b2c8b5c4bfc19a
BLAKE2b-256 checksum
How to use checksums
d3d5a4baeac9f8dab28027c7e21d5a5147f9c2f4e33f89a19bd4919fdc115c0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / emerge-3.0.0b3-cp310-abi3-win_amd64.whl

Download URL emerge-3.0.0b3-cp310-abi3-win_amd64.whl
Size 1.8 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
c525555a7def89c3075423b2aa0374ae5d867e1b62a301cc063bef2ce1696d7e
BLAKE2b-256 checksum
How to use checksums
41768e07f418e59464945866cc1ee6e5b98384b9fe50c7c9125c7dc3fed98b21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / emerge-3.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL emerge-3.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.8 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
bb8b8b25fc16297b6c97e8141bbd4e5daf8be8da11ee67c48c437fc27fa0bffd
BLAKE2b-256 checksum
How to use checksums
4f8c4eec778e416466d11c067cb3e2aa6e663ada1f92099ff8294e566c7bac93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / emerge-3.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL emerge-3.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.8 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
270d9421edf01dccdc620232fa53e9d0cc90ebd4b3034a3dd42c3dee85913fbe
BLAKE2b-256 checksum
How to use checksums
447132a38dea2a8f776c293d076fb0822c3f98eeaf94c41c78c96af49a9dbf2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / emerge-3.0.0b3-cp310-abi3-macosx_11_0_arm64.whl

Download URL emerge-3.0.0b3-cp310-abi3-macosx_11_0_arm64.whl
Size 1.7 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
96b7c26a439308a4580deca75244039f072f6b8136430f7db14412d457e0e95a
BLAKE2b-256 checksum
How to use checksums
0c84a0687a09a2c426b45de9833773eeab7d0faa14ef54fa40b98397c3c15296
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / emerge-3.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl

Download URL emerge-3.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl
Size 1.8 MB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
af0834591d50134ba5fd30e975e6003df91cb0ae456d2f93a0ec03f72ba7314e
BLAKE2b-256 checksum
How to use checksums
8afd9f5c0bfd6aed0f590b3e142a8b3d528f7ad8b7aec69fa989ac5999c0a4a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for emerge 3.0.0b3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 6 files in this release have been uploaded with provenance metadata.

Select from 6 files

Attestation for emerge-3.0.0b3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release
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