Pytheas is a Python package for creating, running and postprocessing electrodynamic simulations. It is based on open source software Gmsh for creating geometries and mesh generation, and GetDP for solving the underlying partial differential equations with the finite element method.
It features built in models of:
periodic media in 2D and 3D with computation of diffraction efficiencies
scattering analysis in 2D and 3D
Bloch mode analysis of metamaterials
treatment of open geometries with perfectly matched layers
tools to define arbitrary permittivity distributions
quasi-normal mode analysis
two scale convergence homogenization
tools for topology optimization in 2D
built-in refractive index database