Dennis M. Sullivan

Electromagnetic Simulation Using the FDTD Method with Python


Скачать книгу

industry. In 2016, she received the M.S. degree in electrical engineering from the University of Idaho and has since been active in quantum and electromagnetic simulation. She is presently the Vice President for Research at Moscow‐Berlin Simulations.

      Dennis M. Sullivan is a professor of Electrical and Computer Engineering at the University of Idaho. He has done extensive work in the fields of electromagnetic and quantum simulation including EM dosimetry, hyperthermia cancer therapy, nonlinear optics, and quantum semiconductors. In 1997, Dr. Sullivan received the award for the “Best Paper by a Young Investigator” from the IEEE Antennas and Propagation Society. In 2013, he was made a fellow of IEEE. He is also the author of Quantum Mechanics for Electrical Engineers and Signals and Systems for Electrical Engineers I.

      PREFACE

      The purpose of the third edition of this book remains the same as that of the first two editions: to enable the reader to learn the use of the finite‐difference time‐domain (FDTD) method in a manageable amount of time. For this reason, the first four chapters are fundamentally the same as previous editions. The major difference is the code has now been written in Python and each program contains the code for graphical outputs. The goal of these four chapters is to take the reader through one‐, two‐, and three‐dimensional FDTD simulation and, at the same time, present the techniques for dealing with more complicated media. In addition, some basic applications of signal processing theory are explained to enhance the effectiveness of FDTD simulation.

      Chapter 5 addresses some of the advantages of Python and presents some programming topics the reader may not be familiar with. Some general programming strategies and best practices are discussed, and these practices are applied to an FDTD program. Finally, an introduction to interactive widgets is presented. This is a very useful feature that can help make programs that are user‐friendly to those without programming knowledge. This chapter is geared toward those who know a limited amount about Python.

      Jennifer E. Houle and Dennis M. Sullivan

      GUIDE TO THE BOOK

      This book has one purpose only: it enables the reader or student to learn and do three‐dimensional electromagnetic simulation using the finite‐difference time‐domain (FDTD) method. It does not attempt to explain the theory of FDTD simulation in great detail. It is not a survey of all possible approaches to the FDTD method, nor is it a “cookbook” of applications. It is aimed at those who would like to learn and do FDTD simulation in a reasonable amount of time.

      This book is tutorial in nature. Every chapter attempts to address an additional level of complexity. The text increases in complexity in two major ways:

Dimension of Simulation Type of Material
One‐dimensional Free space
Two‐dimensional Complex dielectric material
Three‐dimensional Frequency‐dependent material

      Chapter 5 focuses on Python as an object‐oriented language, coding strategies, and features to enhance FDTD simulations in the language. Chapter 6 presents a real‐world application of the FDTD method and breaks down strategies for solving the problem.

      There are many ways to handle individual topics having to do with FDTD simulation. This book does not attempt to address all of them. In most cases, a single approach is taken and used throughout the book for the sake of clarity. Our philosophy is that when first learning the FDTD method, it is better to learn one specific approach and learn it well, rather than to be confused by switching to different approaches. In most cases, the approach being taught is the author’s own preference. This does not make it the only approach or even the best; it is just the approach that the author has found to be effective. In particular, the following are some of the choices that have been made.

      1 The Use of Normalized Units. Maxwell’s equations have been normalized by substitutingThis is a system similar to Gaussian units, which are frequently used by physicists. The reason for using it here is the simplicity in the formulation. The E and the H fields have the same order of magnitude. This has an advantage in formulating the PML, which is a crucial part of FDTD simulation.

      2 Maxwell’s Equations with the Flux Density. There is some leeway in forming the time‐domain Maxwell’s equations from which the FDTD formulation is developed. The following is used in Chapter 1:(1) (2) This is a straightforward formulation and among those commonly used. However, by Chapter 2, the following formulation using the flux density is adopted:(3) (4) (5)

. However, we will be dealing with a broad range of dielectric properties, so Eq. (4) could be a complicated convolution. There is a reason for this formulation: Eq. (3) and Eq. (5) remain the same regardless of the material; any complicated mathematics stemming from the material lies in Eq. (4). We will see that the solution of Eq. (4) can be looked upon as a digital filtering problem. In fact, the use of signal processing techniques in FDTD simulation will be a recurring theme in this book.

      As mentioned above, the solution of Eq. (4) for most complicated materials can be viewed as a digital filtering problem. This being the case, the most direct approach to solve the problem is to take Eq. (4) into the Z domain. Z transforms are a regular part of electrical engineering education, but not that of physicists, mathematicians,