Abstract

This paper describes GMES, a free Python package for solving Maxwell’s equations using the finite-difference time-domain (FDTD) method. The design of GMES follows the object-oriented programming (OOP) approach and adopts a unique design strategy where the voxels in the computational domain are grouped and then updated according to its material type. This piecewise updating scheme ensures that GMES can adopt OOP without losing its simple structure and time-stepping speed. The users can easily add various material types, sources, and boundary conditions into their code using the Python programming language. The key design features, along with the supported material types, excitation sources, boundary conditions and parallel calculations employed in GMES are also described in detail. Program summaryProgram title: GMESCatalog identifier: AEOK_v1_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEOK_v1_0.htmlProgram obtainable from: CPC Program Library, Queen’s University, Belfast, N. IrelandLicensing provisions: GNU General Public License v3.0No. of lines in distributed program, including test data, etc.: 17700No. of bytes in distributed program, including test data, etc.: 89878Distribution format: tar.gzProgramming language: C++, Python.Computer: Any computer with a Unix-like system with a C++ compiler, and a Python interpreter; developed on 2.53 GHz Intel CoreTM i3.Operating system: Any Unix-like system; developed under Ubuntu 12.04 LTS 64 bit.Has the code been vectorized or parallelized?: Yes. Parallelized with MPI directives (optional).RAM: Problem dependent (a simulation with real valued electromagnetic field uses roughly 0.18 KB per Yee cell.)Classification: 10.External routines: SWIG [1], Cython [2], NumPy [3], SciPy [4], matplotlib [5], MPI for Python [6]Nature of problem: Classical electrodynamicsSolution method:Finite-difference time-domain (FDTD) methodAdditional comments:This article describes version 0.9.5. The most recent version can be downloaded at the GMES project homepage [7].Running time:Problem dependent (a simulation with real valued electromagnetic field takes typically about 0.16 μs per Yee cell per time-step.)

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