openEMS is a free and open electromagnetic field solver using the FDTD method. Octave/Matlab and Python are available as easy and flexible scripting interfaces.
Website: https://openEMS.de
Documentation: https://docs.openEMS.de
Github: https://github.com/thliebig/openEMS-Project
- Fully 3D Cartesian and cylindrical coordinates graded mesh
- Multi-threading and SIMD (SSE) support for high speed FDTD
- Octave/Matlab and Python-Interface
- Dispersive material (Drude/Lorentz/Debye type)
- Field dumps in time and frequency domain as vtk or hdf5 file format
- Flexible post-processing routines in Octave/Matlab and Python
- and many more
https://docs.openems.de/en/latest/install/index.html
Pull requests are welcome. AGENTS.md has the working rules — build,
submodule handling, documentation and commit conventions — and applies to human
and AI-assisted contributions alike. Disclosure and sign-off requirements are in
AI_POLICY.md. The simulation code lives in the submodules; each
has its own AGENTS.md.
