Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aezi_v1_0.tar.gz(5184 Kbytes)
Manuscript Title: EMUstack: an open source route to insightful electromagnetic computation via the Bloch mode scattering matrix method
Authors: Björn C. P. Sturmberg, Kokou B. Dossou, Felix J. Lawrence, Christopher G. Poulton, Ross C. McPhedran, C. Martijn de Sterke, Lindsay C. Botten
Program title: EMUstack
Catalogue identifier: AEZI_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 202(2016)276
Programming 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.
Keywords: Finite Element Method, Scattering Matrix Method, Bloch modes.
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).

[1] P. Peterson, F2PY: A tool for connecting Fortran and Python programs, International Journal of Computational Science and Engineering 4 (4) (2009) 296.
[2] LAPACK, http://www.netlib.org/lapack
[3] T. A. Davis, Algorithm 832: UMFPACK V4.3 - An Unsymmetric-Pattern Multifrontal Method, ACM Transactions on Mathematical Software 30 (2) (2004) 165-195.
[4] Intel MKL, http://www.software.intel.com/intel-mkl
[5] C. Geuzaine, J.-F. Remacle, Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities, International Journal for Numerical Methods in Engineering 79 (2009) 1309-1331.