Distributed memory parallelism on any system supporting the MPI standard.
Fully-vectorial 1d, 2d, 3d calculations. Iterative eigensolver techniques are employed to make large calculations possible.
Direct, frequency-domain eigensolver as opposed to indirect methods, e.g. time-domain. This means that you get both eigenvalues (frequencies) and eigenstates (electromagnetic modes) at the same time. See comparison of time-domain and frequency-domain techniques.
Targeted eigensolver. Iterative eigensolvers normally compute states (harmonic modes) with the lowest few frequencies. MPB can alternatively compute the modes whose frequencies are closest to a specified target frequency. This greatly reduces the number of bands that must be computed in guided or resonant mode calculations.
Support for arbitrary, anisotropic dielectrics including gyrotropic/magneto-optic materials and non-orthogonal unit cells. Lossy and wavelength-dependent ε and μ are not supported.
MPB is a free and open-source software package for computing electromagnetic band structures and modes.
Features
Citing MPB
We kindly request that you cite the following reference in any publication for which you use MPB:
Documentation
See the manual on readthedocs for the latest documentation.