Abstract

We describe EMUstack, an open-source implementation of the Scattering Matrix Method (SMM) for solving field problems in layered media. The fields inside nanostructured layers are described in terms of Bloch modes that are found using the Finite Element Method (FEM). Direct access to these modes allows the physical intuition of thin film optics to be extended to complex structures. The combination of the SMM and the FEM makes EMUstack ideally suited for studying lossy, high-index contrast structures, which challenge conventional SMMs. Program summaryProgram title: EMUstackCatalogue identifier: AEZI_v1_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEZI_v1_0.htmlProgram obtainable from: CPC Program Library, Queen’s University, Belfast, N. IrelandLicensing provisions: GNU General Public License, version 3No. of lines in distributed program, including test data, etc.: 154301No. of bytes in distributed program, including test data, etc.: 5308635Distribution format: tar.gzProgramming language: Python, Fortran.Computer: Any computer with a Unix-like system with Python, a Fortran compiler and F2Py [1]. Also required are the following free libraries LAPACK and BLAS [2], UMFPACK [3]. Developed on 1.6 GHz Intel Core i7.Operating system: Any Unix-like system; developed on Ubuntu 14.04 (using Linux kernel 3.16).RAM: Problem dependent; specifically on the resolution of the FEM mesh and the number of modes included. The given example uses approximately 100 MB.Classification: 10.External routines: Required are the following free libraries LAPACK and BLAS [2], UMFPACK [3]. Optionally exploits additional commercial software packages: Intel MKL [4], Gmsh [5].Nature of problem: Time-harmonic electrodynamics in layered media.Solution method: Finite element method and the scattering matrix method.Running time: Problem dependent (typically about 3 s per wavelength including plane wave orders ≤3).

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call