Application
openEMS is a free and open electromagnetic field solver using the FDTD method that supports cartesian and cylindrical coordinates. Matlab or Octave are used as an easy and flexible scripting interface.
Contributors
Thorsten Liebig1, Andreas Rennings1, Sebastian Held1, Daniel Erni1
Free
Free
Progress
Stable release v0.0.34 (GNU GPL v3 or later)
OpenEMS is a free and open source FDTD solver written in C++. OpenEMS supports cylindrical coordinates and is specifically developed for MRI applications. An extensive Matlab (or Octave) interface is used to define the FDTD options. The geometry used for the FDTD simulations is handled by the CSXCAD library which is part of the openEMS project.
Features:
- Efficient EC-FDTD method in full 3D cartesian coordinates (x,y,z)
- Efficient EC-FDTD method in full 3D cylindrical coordinates (ρ,φ, z)
- Supports virtual family voxel models
- Fully graded mesh
- Multi-threading, SIMD (SSE) and MPI support for high speed parallel FDTD
- Simple engine extensions API to easily introduce new features to the FDTD algorithm
- Matlab-Interface
- Absorbing boundary conditions (MUR, PML)
- Coordinate dependent material definitions
- Coordinate dependent excitation definitions (e.g. mode-profiles)
- Dispersive material (Drude/Lorentz/Debye type)
- Field dumps in time and frequency domain as vtk or hdf5 file format
- Flexible post-processing routines (mostly in Matlab)
- Subgrids to reduce simulation time in cylindrical coordinates
- Remote simulations using SSH (Linux only)
Publications
Affiliations
1General and Theoretical Electrical Engineering (ATE), Faculty of Engineering, University of Duisburg-Essen and GENIDE – Center for Nanointegration Duisburg-Essen, Duisburg, Germany