Meep
Meep is a free and open-source software package for simulating electromagnetic systems via the finite-difference time-domain (FDTD) method. Meep is an acronym for MIT Electromagnetic Equation Propagation.
Features
- Free and open-source software under the GNU GPL.
- Complete scriptability via Python, Scheme, or C++ APIs.
- Simulation in 1d, 2d, 3d, and cylindrical coordinates.
- Distributed memory parallelism on any system supporting the MPI standard.
- Portable to any Unix-like operating system such as Linux, macOS, and FreeBSD.
- Arbitrary anisotropic electric permittivity ε and magnetic permeability μ, along with dispersive ε(ω) and μ(ω) including loss/gain, nonlinear (Kerr & Pockels) dielectric and magnetic materials, and electric/magnetic conductivities σ.
- PML absorbing boundaries and/or perfect conductor and/or Bloch-periodic boundary conditions.
- Exploitation of symmetries to reduce the computation size — even/odd mirror planes and 90°/180° rotations.
- Field output in the HDF5 data format.
- Arbitrary current sources including a guided-mode launcher.
- Materials library containing list of predefined broadband, complex refractive indices.
- Frequency-domain solver for finding the response to a continuous-wave source.
- Field analyses including flux spectra, near to far transformations, modal decomposition, frequency extraction, local density of states, modal volume, Maxwell stress tensor, arbitrary functions; completely programmable.
Documentation
See the manual on readthedocs for the latest documentation.