A Free EM FEM Solver in Python!
EMerge
EMerge is an upcoming free Python library designed to provide powerful electromagnetic solvers in a user-friendly format. Currently in the early stages of development, EMerge is focused on building its FEM solver first. The ultimate goal is to offer a comprehensive 2D and 3D solver with all the essential features you'd expect from popular software—completely free of charge.
Heavi Circuit Simulator
Heavi is a second project under emerge that delivers a linear component RF circuit simulator in Python. Contrary to EMerge’s FEM solver, this is currently available for free in the Download section!
Why Python?
Python may not be the fastest programming language, but that’s not a drawback here. The computationally intensive tasks required for FEM solvers are efficiently handled by powerful libraries like NumPy and SciPy. These optimised packages ensure high performance while allowing EMerge to leverage Python’s ease of use and flexibility.
Python’s simplicity and versatility make it a natural fit for seamless integration into the engineering design process. While commercial tools like HFSS and Comsol provide scripting support for Python or MATLAB, EMerge takes it a step further by keeping the entire simulation framework in Python. This approach allows you to embed your simulations directly into your code, enabling a fully integrated and streamlined design workflow.
What are the advantages?
Using Python scripts for your FEM simulations comes with significant advantages:
Free High-Performance and Parallel Computing
Commercial FEM tools often charge steep fees for parallel computing licenses. With EMerge, this capability is free and unrestricted. Every simulation boils down to solving the linear equation Ax=b. EMerge provides direct access to the assembled matrices and vectors, giving you full control over how many cores, processes, or even computers handle each task.Custom Optimization Without Extra Costs
Optimization toolboxes can also come at a premium with commercial solvers. With EMerge, this isn’t an issue. Since simulations are essentially a single function call, you can seamlessly integrate them into your favorite optimization algorithms—at no extra cost.Streamlined Pre- and Post-Processing
Say goodbye to cumbersome data exports. Many commercial solvers make you deal with clunky file formats and tedious data parsing. With EMerge, you have direct access to all the simulation data, making post-processing and visualization as intuitive as any other Python computation.