development of software for antenna analysis and design using … · abstract this work presents...

114
Development of Software for Antenna Analysis and Design using FDTD Henrique Manuel Lindgr´ en Amaral Fernandes Disserta¸ ao para a obten¸ ao do Grau de Mestre em Engenharia Electrot´ ecnica e de Computadores uri Presidente: Prof. Doutor Ant´ onio Rodrigues Orientador: Prof. Doutor Ant´ onio Alves Moreira Co-Orientador: Prof. Doutor Vitor Mal´ o Machado Vogais: Prof. Doutor Carlos Fernandes Setembro 2007

Upload: others

Post on 09-Nov-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

1

GUIA DE PREPARAÇÃO

DA DISSERTAÇÃO E RESUMO ALARGADO

PARA OS CURSOS DE MESTRADO NO IST

1. TRAMITAÇÃO DE DISSERTAÇÃO/PROJECTO .................................................................................. 2

2. INFORMAÇÃO A INTRODUZIR NO SISTEMA FÉNIX ........................................................................ 4

3. CONFIDENCIALIDADE ............................................................................................................................. 4

4. ESTRUTURA E FORMATO DA DISSERTAÇÃO.................................................................................. 5

4.1 Impressão da Dissertação ............................................................................................................... 5 4.2 Capa e Lombada ............................................................................................................................... 5 4.3 Equações e Expressões................................................................................................................... 5 4.4 Referências e Bibliografia ................................................................................................................ 5 4.5 Tabelas e Figuras.............................................................................................................................. 5

5. ESTRUTURA DO RESUMO ALARGADO .............................................................................................. 5

6. ESTRUTURA DO CD................................................................................................................................. 6

7. MODELO DE CAPA E LOMBADA ........................................................................................................... 6

8. MODELO DE CAPA DE CD...................................................................................................................... 9

9. FICHA DE HOMOLOGAÇÃO de JÚRI.................................................................................................. 10

10. CONTEÚDO DE identificacao.pdf.......................................................................................................... 11

11. DECLARAÇÃO RESPEITANTE À DIVULGAÇÃO DA DISSERTAÇÃO .......................................... 13

12. EXEMPLO DE DECLARAÇÃO DE CONFIDENCIALIDADE ............................................................. 13

Development of Software for Antenna Analysis andDesign using FDTD

Henrique Manuel Lindgren Amaral Fernandes

Dissertacao para a obtencao do Grau de Mestre em

Engenharia Electrotecnica e de Computadores

Juri

Presidente: Prof. Doutor Antonio Rodrigues

Orientador: Prof. Doutor Antonio Alves Moreira

Co-Orientador: Prof. Doutor Vitor Malo Machado

Vogais: Prof. Doutor Carlos Fernandes

Setembro 2007

Page 2: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Acknowledgments

First, I must thank Professor Antonio Alves Moreira and Professor Vitor Malo Machado for the

excellent support and guidance they have given me during the execution of this work. I am very grateful for

their faith in me.

I would also like to thank Instituto de Telecomunicacoes for making available the commercial software

used for the validation of the obtained results, and the ACE network (Antenna Centre of Excellence) for

accepting the attendance, as a student, of the European Course on Time Domain Techniques for Antenna

Analysis, held in the university of Nice-Sophia Antipolis, 20-24 November 2006.

At last, my warmest thanks go to my parents, my brother and my girlfriend, not only for the

constant support and motivation, but also for the patience and understanding demonstrated during this work’s

execution. I dedicate this thesis to them.

i

Page 3: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Agradecimentos

Primeiro que tudo, gostaria de agradecer aos Professores Antonio Alves Moreira e Vitor Malo

Machado pelo excelente apoio e orientacao que me dispensaram na realizacao deste trabalho. Estou muito

grato pela confianca que em mim depositaram.

Agradeco tambem o apoio do Instituto de Telecomunicacoes, que facultou o software comercial uti-

lizado na validacao dos resultados obtidos, e ao programa ACE (Antenna Centre of Excellence) pela aceitacao,

como estudante, na frequencia do “European Course on Time Domain Techniques for Antenna Analysis”,

realizado na universidade de Nice-Sophia Antipolis entre 20 e 24 de Novembro de 2006.

Finalmente, queria deixar um agradecimento especial aos meus pais, ao meu irmao e a minha

namorada, nao so pelo apoio e incentivo constantes, mas tambem pela paciencia e compreensao que demons-

traram durante a realizacao deste trabalho. E a eles que dedico esta dissertacao.

ii

Page 4: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Abstract

This work presents the development of a complete software package for antenna analysis and design

using the Finite-Difference Time-Domain (FDTD) method. The formulation of the implemented FDTD algo-

rithm is described, as well as the analysis of its fundamental properties. A description of the complementary

techniques and algorithms that allow the effective implementation of a simulator for the analysis of problems

of engineering value is also presented. These include a Perfectly Matched Layer (PML) capable of terminat-

ing heterogeneous media, a thin-wire model, excitation source models and a near-to-far-field transformation.

The aforementioned techniques are implemented in a modular fashion and integrated into a graphical user

interface that, besides allowing the configuration and three-dimensional visualization of the structures being

analyzed, also features a non-uniform mesh generation algorithm that automatically performs the discretization

of the 3D objects. Different solutions for the visualization of simulation results have been developed, namely

three-dimensional radiation pattern plots and field animations.

The new software, named FDTD Antenna Simulator, has an open-source license and has been

entirely written in Java, which not only makes it compatible with the major operating systems, but also

facilitates its future expansion.

The effectiveness and flexibility of the developed software are illustrated by the analysis of different

types of antennas, namely dipoles, monopoles and printed and horn antennas. The obtained results are

compared with simulations and measurements published by other authors.

Keywords

FDTD methods, software packages, perfectly matched layers, mesh generation, antenna feed models,

graphical user interfaces.

iii

Page 5: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Resumo

Este trabalho descreve o desenvolvimento de uma ferramenta de software para projecto e analise

de antenas utilizando o metodo das diferencas finitas no domınio do tempo (FDTD). E apresentada a for-

mulacao do algoritmo FDTD utilizado, bem como o estudo das suas principais caracterısticas. Sao descritas

as tecnicas e algoritmos que, complementando o algoritmo FDTD, possibilitam a implementacao de um si-

mulador para a analise de problemas de real interesse em engenharia. Destacam-se a implementacao de uma

camada perfeitamente adaptada (Perfectly Matched Layer - PML) compatıvel com meios heterogeneos, um

modelo de condutores finos, modelos de fontes de excitacao e uma transformacao de campos de zona-proxima

para zona-distante. Estas tecnicas sao implementadas de forma modular e integradas numa interface grafica

cuidada que, alem de permitir a configuracao e visualizacao tridimensional das estruturas que compoem a

simulacao, possui ainda um algoritmo de geracao de malha nao-uniforme que, de forma automatica, efectua

a discretizacao dos objectos tridimensionais. O software possui diversas funcionalidades para a visualizacao

dos resultados de simulacao, destacando-se a possibilidade de representar tridimensionalmente diagramas de

radiacao e animacoes dos campos.

O novo programa, denominado FDTD Antenna Simulator, possui uma licenca open-source e foi

totalmente desenvolvido em Java, o que alem de o tornar compatıvel com os principais sistemas operativos,

facilita a sua expansao futura.

A eficacia e flexibilidade do software desenvolvido sao ilustradas pela analise de diferentes tipos

de antenas, nomeadamente dipolos, monopolos, antenas impressas e cornetas, sendo os resultados obtidos

comparados com simulacoes e medidas publicadas por outros autores.

Palavras chave

Metodo FDTD, pacotes de software, PML - camadas perfeitamente adaptadas, geracao de malha,

modelos de excitacao de antenas, interfaces graficas.

iv

Page 6: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Contents

1 Introduction 1

1.1 Brief historical background of Computational Electromagnetics . . . . . . . . . . . . . . . . . 1

1.2 Currently available software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Objectives of this work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4 Why FDTD? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4.1 Techniques in Computational Electromagnetics . . . . . . . . . . . . . . . . . . . . . 3

1.4.2 FDTD advantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.5 List of implemented features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 The Finite-Difference Time-Domain Method 6

2.1 Maxwell’s Equations in Three Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 The Yee Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.1 The Yee cell and the leapfrogging scheme . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.2 Discretization of Maxwell’s Equations using the Yee algorithm . . . . . . . . . . . . . 9

2.2.3 Computer Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3 Numerical Dispersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3.1 Derivation of the numerical dispersion relation for three-dimensional wave propagation 15

2.3.2 Comparison with the ideal dispersion case and anisotropy of the numerical phase velocity 16

2.3.3 Choice of the spatial sampling density and other sources of numerical error . . . . . . 17

2.4 Numerical Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.4.1 The Courant stability criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.4.2 Other potential sources of instability . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5 Extension to non-uniform Cartesian meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5.1 Benefits of non-uniform meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5.2 Required modifications to the algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.5.3 Numerical accuracy and stability for non-uniform FDTD . . . . . . . . . . . . . . . . 21

v

Page 7: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

3 Absorbing Boundary Conditions 22

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2 Berenger’s Split-Field PML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 Uniaxial PML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.3.1 UPML Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.3.2 Theoretical and Practical Performance of the UPML . . . . . . . . . . . . . . . . . . 28

3.3.3 Application to a Three-Dimensional Problem Space . . . . . . . . . . . . . . . . . . . 29

3.3.4 Implementation in FDTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.3.5 Computer Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.3.6 UPML validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4 Sub-cellular methods 35

4.1 FDTD Formulation using the Integral Form of Maxwell’s Equations . . . . . . . . . . . . . . 36

4.2 Thin-wire model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.3 Effective material parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5 Antenna Feed Models 42

5.1 Excitation Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.2 Point Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.3 Resistive voltage source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.3.1 Model description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.3.2 Calculation of Impedance and S parameters . . . . . . . . . . . . . . . . . . . . . . . 46

5.4 Simple Waveguide Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.4.1 Model description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.4.2 Calculation of S parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6 Near-to-Far-Field Transformation 51

6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

6.2 Frequency-Domain Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6.2.1 Analytical expressions for the transformation . . . . . . . . . . . . . . . . . . . . . . . 52

6.2.2 Calculation of the equivalent MS and JS currents . . . . . . . . . . . . . . . . . . . . 55

6.2.3 Averaging of the ~E and ~H fields on the virtual surface . . . . . . . . . . . . . . . . . 56

7 Mesh Generation Algorithm 57

7.1 Meshing Algorithm Structure and Architecture of the FDTD Simulator . . . . . . . . . . . . . 57

7.2 Spatial Discretization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

vi

Page 8: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

7.3 Material Mapping Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

8 Numerical Experiments and Results Validation 66

8.1 Dipole Interaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

8.2 Monopole Antenna on a Conducting Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

8.3 Microstrip Patch Antenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

8.4 UWB Antenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

8.5 Pyramidal Horn Antenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

9 Conclusions 78

9.1 Suggestions for Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

A Finite-difference schemes and order of accuracy 81

A.1 Forward-differences approximation to the first derivative . . . . . . . . . . . . . . . . . . . . . 81

A.2 Backward-differences approximation to the first derivative . . . . . . . . . . . . . . . . . . . . 82

A.3 Central-differences approximation to the first derivative . . . . . . . . . . . . . . . . . . . . . 82

A.4 Central-differences approximation to the second derivative . . . . . . . . . . . . . . . . . . . 83

B Verification of Gauss’ laws for the Yee Algorithm 84

C Code Examples 87

C.1 Simple Three-Dimensional FDTD Update Algorithm . . . . . . . . . . . . . . . . . . . . . . . 87

C.2 Three-Dimensional FDTD Update Algorithm with the UPML . . . . . . . . . . . . . . . . . . 88

D UPML Update Equations and Coefficients 89

D.1 Update equations for the E-field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

D.2 Update equations for the H-field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

E Modeling of Thin Metalizations 92

F Other Experiments and Applications 94

F.1 Low-pass microstrip filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

F.2 SAR Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

vii

Page 9: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

List of Figures

1.1 Categories within computational electromagnetics. . . . . . . . . . . . . . . . . . . . . . . . . 4

2.1 Position of the electric and magnetic field vector components about the cell(i,j,k) of the Yee

space lattice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Space-time chart that illustrates Yee algorithm’s use of central differences for the space deriva-

tives and leapfrogging for the time derivatives for a simplified one-dimensional case. . . . . . . 10

2.3 Variation of the numerical phase velocity along the grid’s axes and diagonals as a function of

the sampling density Nλ, for S = 0.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4 (a) A circular metallic patch and (b) its meshed version where the staircased approximation of

the curved boundary can be observed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.5 Comparison between (a) an uniform mesh and (b) a non-uniform mesh regarding the capability

to adapt to the geometry of multiple objects. . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.6 Comparison between (a) an uniform mesh and (b) a non-uniform mesh regarding the capability

to use different levels of spatial resolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.1 2D-cut of a three-dimensional FDTD grid employing the Berenger PML ABC. . . . . . . . . . 25

3.2 Reflection error versus frequency for different values of the UPML thickness. . . . . . . . . . . 32

3.3 Geometry of the microstrip line and computational domain used to assess UPML’s capacity for

terminating heterogeneous media. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.4 Return loss of the microstrip line terminated with a 10 cell UPML. . . . . . . . . . . . . . . . 34

4.1 Integration contours Ci and associated surfaces Si used for the derivation of the Yee algorithm

using the integral form of Maxwell’s equations. . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.2 (a) Application of Faraday’s Law for derivation of the thin wire model. (b) H-field components

updated using the thin wire model and integration path for calculation of the current I. . . . 38

4.3 Interface between cells of different materials and integration path C for the application of

Maxwell-Ampere’s Law for effective parameters calculation. . . . . . . . . . . . . . . . . . . . 40

5.1 Excitation signals available in the developed software. . . . . . . . . . . . . . . . . . . . . . . 43

5.2 Representation of the unidimensional virtual transmission line used to implement the resistive

voltage source and coupling to the 3D FDTD grid. . . . . . . . . . . . . . . . . . . . . . . . 45

viii

Page 10: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

5.3 Illustration of the application of a waveguide source to a rectangular waveguide connected to

an arbitrary structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.4 Calculation of the incident field distribution for a rectangular waveguide. (a) Initial electric

field distribution; (b) Numerically calculated electric field distribution of the TE01 mode. . . . 48

6.1 Virtual surface used for the near-to-far-field transformation and coordinate system used for its

calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6.2 Geometry used for the averaging of the ~E and ~H fields’ tangential components for the calcu-

lation of the equivalent currents ~MS and ~JS . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

7.1 Flowchart illustrating the high-level architecture of the FDTD simulator. . . . . . . . . . . . . 58

7.2 Geometry of the structure used to illustrate the spatial discretization algorithm’s operation. . . 61

7.3 Two-dimensional Cartesian grid that results from the non-uniform discretization of the structure

of Fig. 7.2 using the spatial discretization algorithm with parameters Dx,min = Dy,min = 10and Dx,max = Dy,max = 30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

7.4 Illustration of the material mapping algorithm’s operation. (a) Two-dimensional view of the

component being meshed and the Cartesian grid that resulted from spatial discretization; (b)

Operation of the ray-crossing algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

7.5 Illustration of how the assignment of different meshing priorities to the elements of a three-

dimensional model can influence the characteristics of the resultant component. (a) Three-

dimensional view of the mesh for a coaxial cable; (b) Three-dimensional view of the mesh for

a cylindrical waveguide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.1 FDTD problem space for the analysis of coupling between two dipoles. . . . . . . . . . . . . . 66

8.2 Mesh used to discretize the computational domain. . . . . . . . . . . . . . . . . . . . . . . . 66

8.3 Self-admittance for antenna 1 calculated with the developed software and compared with results

obtained with other methods/applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

8.4 Mutual admittance calculated with the developed software and compared with results obtained

with other methods/applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

8.5 Comparison of the mutual admittances Y12 and Y21 calculated with the developed software,

for the purpose of port reciprocity analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

8.6 Geometry and dimensions of the monopole antenna on a conducting box. The monopole wire

radius is r=0.5 mm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

8.7 2D view of the mesh used to discretize the problem. . . . . . . . . . . . . . . . . . . . . . . . 69

8.8 Input impedance for monopole antenna on a conducting box computed using the developed

software and compared with measurements. . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

8.9 Calculated x-z plane radiation pattern at 1.5 GHz for the monopole antenna on a conducting

box and comparison with reference results obtained with MoM. . . . . . . . . . . . . . . . . . 70

8.10 Geometry of the line fed rectangular microstrip patch antenna. (a) Top view (b) Perspective

view, dimensions of the computational domain and placement of the excitation. . . . . . . . 71

ix

Page 11: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

8.11 Calculated electric field distribution of the microstrip line’s quasi-TEM mode used in the exci-

tation of the rectangular patch antenna. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

8.12 Return loss of the line-fed rectangular patch antenna. . . . . . . . . . . . . . . . . . . . . . . 72

8.13 Three-dimensional radiation patterns for the line-fed rectangular patch antenna calculated using

(a) FDTD Antenna Simulator and (b) CST Microwave Studio R©. . . . . . . . . . . . . . . . 72

8.14 Geometry of the beveled planar monopole antenna and feed region. . . . . . . . . . . . . . . 73

8.15 Detail of the feed region and placement of the excitation source. . . . . . . . . . . . . . . . . 73

8.16 Return loss of the beveled monopole antenna. . . . . . . . . . . . . . . . . . . . . . . . . . . 74

8.17 Calculated x-z radiation pattern for the beveled monopole antenna at 8.5 GHz. . . . . . . . . 74

8.18 Calculated y-z radiation pattern for the beveled monopole antenna at 8.5 GHz. . . . . . . . . 75

8.19 Calculated x-y radiation pattern for the beveled monopole antenna at 8.5 GHz. . . . . . . . . 75

8.20 Geometry of the pyramidal horn antenna and detail of the mesh used in its simulation. . . . . 76

8.21 Directivity of the pyramidal horn at 10.1 GHz: (a) E -plane pattern, (b) H-plane pattern. . . . 77

8.22 Calculated return loss of the pyramidal horn antenna. . . . . . . . . . . . . . . . . . . . . . . 77

E.1 Geometry of the microstrip line used to illustrate the technique for modeling thin metalizations. 92

E.2 FDTD grid for the microstrip line and representation of the Ex and Ez field components. . . 93

F.1 Geometry of the low-pass filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

F.2 Return loss of the low-pass filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

F.3 Insertion loss of the low-pass filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

F.4 Geometry of the SAR calculation problem.(a) Perspective view of the SAM and cell phone. (b)

View of the tissue simulating liquid inside the SAM, obtained by rendering the outer shell with

transparency. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

F.5 Three-dimensional SAR plot for the CENELEC 50361 SAM phantom head. . . . . . . . . . . 97

F.6 Illustration of the SAM phantom head’s effect on the radiation pattern (directivity) of the

cellular phone at 900 MHz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

x

Page 12: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

List of Tables

3.1 Number of variables and number of operations per FDTD cell for different types of Perfectly

Matched Layer Absorbing Boundary Conditions. . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2 Parameterization of the different UPML regions for a three-dimensional computational domain. 30

7.1 Coordinates of the vertices shown in Fig. 7.2. . . . . . . . . . . . . . . . . . . . . . . . . . . 61

F.1 Material properties used to model the CENELEC 50361 SAM phantom head at 900 MHz. . . 96

xi

Page 13: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

List of Abbreviations

ABC, Absorbing Boundary Condition

ADI-FDTD, Alternating Direction Implicit FDTD

API, Application Programming Interface

CAD, Computer-Aided Design

CEM, Computational Electromagnetics

CPU, Central Processing Unit

DFT, Discrete Fourier Transform

EM, Electromagnetic

EMP, Electromagnetic Pulse

FDTD, Finite-Difference Time-Domain

FEM, Finite-Element Method

FFT, Fast Fourier Transform

FIT, Finite Integration Technique

GTD, Geometrical Theory of Diffraction

GUI, Graphical User Interface

HPM, High-Power Microwave

MoM, Method of Moments

MRTD, Multi-Resolution Time Domain

NFFT, Near-to-Far-Field Transformation

PEC, Perfect Electric Conductor

PML, Perfectly Matched Layer

SAM, Specific Anthropomorphic Mannequin

SAR, Specific Absorption Rate

TEM, Transverse Electromagnetic

UHF, Ultra High Frequency

UPML, Uniaxial Perfectly Matched Layer

UWB, Ultra-wideband

xii

Page 14: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 1

Introduction

1.1 Brief historical background of Computational Electromagnetics

Maxwell’s equations’ solutions play a fundamental role in today’s society. They are presently being

used not only to design key electrical engineering technologies like electrical machinery, cellphones, computers,

lasers and photonic devices, but also in fields like bioelectromagnetics, to study how electromagnetic fields

interact with and influence biological processes. As a matter of fact, one can say that many of the technological

advances achieved in the last fifty years would not have been possible without the ability to rapidly and

accurately solve Maxwell’s equations on large scales.

The interest in this kind of problems dates back to the beginning of World War II, when the military

were developing UHF and microwave radar technology and used mechanical calculators to obtain closed-

form and infinite-series analytical solutions. After 1960, with the availability of programmable electronic

digital computers, the first computational approaches for Maxwell’s equations appeared. These included high-

frequency asymptotic methods such as GTD and integral equations, such as the Method of Moments, that

were used by several defense agencies to study electromagnetic pulse (EMP) penetration and coupling and

high-power microwave (HPM) beams. It was the birth of Computational Electromagnetics (CEM), broadly

defined as the discipline that intrinsically and routinely involves using a digital computer to obtain numerical

results for electromagnetic problems [1].

During the 1970s and 1980s many defense agencies identified some important limitations of the

frequency-domain techniques used to that date, like the inability to treat nonmetallic materials and the volu-

metric details of a structure. This led to explorations of direct time-domain solutions of Maxwell’s differential

equations on spatial grids, being the FDTD method, introduced by Yee [2] in 1966, the first technique of this

kind. FDTD and related techniques have been subject of continuous development, especially since the early

90’s, when the engineers in the general electromagnetics community became aware of its capabilities, partic-

ularly well suited for the development of high-speed communications and computing. As a result, the field of

computational electromagnetics has shifted from defense technology to commercial applications. This shift,

alongside with the increasing storage and processing power of all sorts of computers, including, of course, per-

sonal computers, has allowed the development of numerous commercial and non-commercial electromagnetic

simulation codes for all sorts of engineering applications.

1

Page 15: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

1.2 Currently available software

In order to better understand the objectives of this work, it is the author’s opinion that something

should be mentioned about the software currently available for EM problems. After a survey of currently

existent codes, the following categorization by capabilities and availability emerged:

• Commercial software: Currently, there at least ten extremely powerful commercial software applications

that can tackle an impressive range of EM problems. They employ mature algorithms and techniques and

are used not only at the industry level but also at research laboratories worldwide. The code is closed and

the software frequently uses proprietary algorithms. Since this software is targeted to industry/academia,

the price of a license to use this kind of software normally is out of the reach of a single user;

• Academic/In-house software: There are also some very good codes developed at research centers in

universities, but their use is normally restricted to the institution’s research staff and/or students. Since

these codes are very often developed by researchers in the field of CEM, they usually possess unique,

state-of-the-art features that normally, after publication in scientific journals or conferences, are included

in commercial applications;

• Freeware/Shareware codes: These codes are freely available but may require the payment of a small

fee (when compared to the price of the previously mentioned commercial codes) to continue using

the software after a trial period or to be able to use all the features. Usually the problem range

that this kind of software is able to handle is only a small subset of the available in the much more

expensive commercial codes. Nevertheless, these programs are very useful, yielding good results for some

applications and having the advantage of being more easily accessible to students who are interested in

electromagnetic problems;

• Open source software: Generally speaking, these codes are free in the sense that the source code

is made available to the user, who is allowed to freely modify, extend and distribute the original or

modified versions of the code. The number of “degrees of freedom” is determined by the type of open

source license. Codes with this kind of license are still rare but they have the potential to compete with

commercial software packages. An excellent example of software having this kind of license is MIT’s

Meep [3].

1.3 Objectives of this work

The main objective of this work is the development of an integrated software tool, using the FDTD

method, for the analysis of antenna problems for educational and research purposes. This goal was essentially

motivated by the following factors:

• The need to shed light on some of the techniques currently used in CEM since a reasonable understanding

of the principles on which electromagnetic software is based can avoid its misuse and the incorrect

interpretation of results;

• The need of a customizable, expandable tool, easily accessible to students and researchers. Due to this

need, the tool will be licensed as open-source software and thus falls in the last category of codes of

Section 1.2. It’s important to mention that there is no purpose to compete with commercial software

packages since those programs have around a decade of development and are aimed at a much broader

range of problems.

2

Page 16: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Since flexibility is an essential requirement, the tool will have a modular structure, making it rela-

tively easy to add new functionalities or even to include some part of the tool in a different program. The

programming language chosen for the development of the software was Java [4]. The main reasons for this

choice were the author’s fluency with the language, the possibility to use a high-level, scenegraph based API for

3D graphics (Java 3D) [5][6] and the seamless portability of the software between different types of machines

and operating systems. Nevertheless, since the program possesses a modular structure, some modules can

easily be rewritten in a different language, as could be the case if one desired to optimize the computationally

intensive part of the code by writing it in a native language.

Having mentioned the objectives of this work and their motivations, it is now necessary to justify

the choice of the FDTD technique. That discussion is presented in the following section.

1.4 Why FDTD?

1.4.1 Techniques in Computational Electromagnetics

The collection of techniques in CEM can be classified in various ways. One possible classification

is similar to that used in [7], which can be seen in Fig. 1.1. This classification divides CEM into two major

categories: numerical methods and high-frequency or asymptotic methods.

Numerical methods are best suited for problems where the size of the structure under analysis is

in the order of the wavelength to a few tens of wavelenghts. These methods take into account the wave

nature of the electromagnetic phenomenon and are therefore based on discretizations of differential or integral

formulations of Maxwell’s equations. Both integral and differential equation based numerical methods can be

divided in two parts: frequency domain and time domain.

On the other hand, high frequency methods are used when the size of the objects is many wavelengths

in extent and the wave nature need not be fully considered. Geometrical optics, for example, relies essentially

on the concept of rays to model the field behavior.

Since this work’s objective is to study antennas whose sizes are in the order of a few wavelengths,

only a numerical method can be chosen, category to which FDTD belongs.

1.4.2 FDTD advantages

For antenna analysis and design in the sub-wavelenght domain, there are currently three well estab-

lished methods: The method of moments (MoM), the finite-element method (FEM) and the finite difference

time-domain method (FDTD).

MoM is an integral equation based numerical method that has been used for several decades. It

started as, and generally speaking, still is used as a frequency-domain technique although there has been some

recent work on time-domain formulations. Besides scattering problems involving large structures, as aircrafts

and missiles, it has been used to successfully analyze wire antennas of almost arbitrary configuration, aperture

antennas, reflector antennas, etc.

FEM is a differential equation based numerical method that dates back to the 1940s and originated

from the needs for solving complex elasticity, structural analysis problems in civil and aeronautical engineering.

Similarly to MoM, it is generally known as a frequency-domain method, although time-domain formulations

also exist. Its application to antenna analysis has been primarily in scattering problems and microstrip patch

3

Page 17: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 1.1: Categories within computational electromagnetics (adapted from [7]).

antennas.

The FDTD method has a number of characteristics that really make it stand out when compared

with the other techniques commonly used for antenna design and analysis. These characteristics are:

• FDTD is a fully explicit computation: This means that FDTD avoids the difficulties with linear algebra,

namely matrix inversion, that limit the size of frequency-domain integral equation (MoM) and finite-

element electromagnetics models to about 106 field unknowns. FDTD simulations have been run with

109 field unknowns and this limit only depends on the amount of physical memory available for the

computation;

• FDTD naturally calculates the impulse response of an electromagnetic system since it is a time-domain

method. Therefore, a single FDTD run can provide ultrawideband temporal waveforms that can be

used to, by means of a discrete Fourier transform (DFT), obtain the antenna’s response over a broad

frequency range;

• The ability to model most materials, including lossy dielectrics, magnetic materials, lossy metals and

unconventional materials, including anisotropic plasmas and magnetized ferrites;

• The ability to model nonlinear materials, since nonlinear behavior can more easily be treated in time-

domain than in the frequency-domain;

• FDTD, unlike methods that rely on integral equations, does not require the calculation of structure-

dependent Green’s functions—the specification of a new structure for analysis just requires the generation

of a new mesh. Although the problem of mesh generation can be quite complex, since the majority of

FDTD codes currently available use Cartesian meshes (hexahedral cells), the problem of mesh generation

is considerably simpler than that of mesh generation for FEM codes (which use tetrahedral elements);

4

Page 18: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

• Although powerful visualization capabilities exist for all methods, FDTD can provide field visualization

in both time and frequency-domain, which provides more insight to the problem under analysis;

• FDTD is both easier to understand and to implement than either MoM or FEM. Additionally, the FDTD

marching-in-time field update procedure is relatively easy to parallelize in order to take advantage of

multiple CPUs or even multiple computers to speed up the simulation of complex problems.

1.5 List of implemented features

The software tool’s name is FDTD Antenna Simulator and it has the following features:

• Powerful 3D Graphical User Interface (GUI) using Swing and Java 3D, supporting both OpenGL and

Direct3D;

• Native modeling of boxes, cylinders and spheres;

• Importing of Wavefront OBJ [8] files, which allows the software to use models that have been designed

in other CAD programs;

• Mesh generation algorithm that supports both uniform and non-uniform cartesian grids;

• Different kinds of sources: point sources, resistive voltage sources and simple waveguide sources;

• Thin wire approximation and modeling of thin PEC metalizations;

• Different kinds of materials: PEC, Normal and Anisotropic;

• Perfectly matched layer absorbing boundary conditions implemented with an UPML formulation that is

able to terminate not only free space but also heterogeneous media, such as waveguides;

• Full-3D visualization of the fields in both frequency- and time-domain;

• Calculation of radiation patterns and visualization in both two and three dimensions;

• Calculation of port currents, port voltages and scattering, impedance and admittance matrices.

5

Page 19: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 2

The Finite-Difference Time-Domain

Method

This chapter presents the fundamentals of the finite difference time-domain method and the deriva-

tion of the algorithm used in this work.

The derived algorithm follows very closely that introduced by Yee in 1966 [2], which is the foundation

for FDTD electromagnetic field simulation. Despite its age and the recent appearance of different formulations

such as ADI-FDTD [11, 12] and MRTD [13], Yee’s algorithm still remains the primary choice for FDTD, due

to its robustness and simplicity.

2.1 Maxwell’s Equations in Three Dimensions

The time-dependent Maxwell’s equations in a region of space without imposed electric or magnetic

current sources, but that may have materials that absorb electric or magnetic field energy, are given in

differential form, by

∇× E˜ = −∂B˜∂t− J˜m (2.1)

∇×H˜ =∂D˜∂t

+ J˜ (2.2)

∇ ·D˜ = ρ (2.3)

∇ ·B˜ = ρm (2.4)

where

E˜ : electric field (V/m)

H˜ : magnetic field (A/m)

D˜ : electric flux density (C/m2)

B˜ : magnetic flux density (Wb/m2)

J˜: electric current density (A/m2)

ρ: free electric charge density (C/m3)

6

Page 20: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

J˜m: equivalent magnetic current density (V/m2)

ρm: free magnetic charge density (Wb/m3).

In a linear, nondispersive, anisotropic material the constitutive relations are given by

D˜ = εo ¯εrE˜ (2.5)

B˜ = µ0 ¯µrH˜ (2.6)

J˜ = ¯σE˜ (2.7)

Jm˜ = ¯σ∗H˜ (2.8)

where

εo: free-space electrical permitivity (F/m)

¯εr: relative electrical permitivity tensor

µo: free-space magnetic permeability (H/m)

¯µr: relative magnetic permeability tensor

¯σ: electric conductivity tensor (S/m)

¯σ∗: equivalent magnetic loss tensor (Ω/m).

It is important to mention that magnetic charge density and conductivity are non-physical quantities

since magnetic charges have not yet been observed in Nature. Nevertheless, these quantities are mathematically

useful to implement Perfectly Matched Layer Absorbing Boundary Conditions, as will be seen in Chapter 3,

and their inclusion does not increase the computational requirements of the algorithm.

For the derivation of the FDTD algorithm used in this work only diagonal tensors will be considered,

i.e., having the following matrix representations

¯εr =

εxx 0 00 εyy 00 0 εzz

(2.9)

¯µr =

µxx 0 00 µyy 00 0 µzz

(2.10)

¯σ =

σxx 0 00 σyy 00 0 σzz

(2.11)

¯σ∗ =

σ∗xx 0 00 σ∗yy 00 0 σ∗zz

(2.12)

Substituting the constitutive relations (2.5) to (2.8) into (2.1) and (2.2) yields Maxwell’s curl equations in

7

Page 21: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

linear, (diagonally) anisotropic, nondispersive, lossy materials:

∂E˜∂t

=1ε0

¯ε−1r

(∇×H˜ − ¯σE˜

)(2.13)

∂H˜∂t

= − 1µ0

¯µ−1r

(∇× E˜ + ¯σ∗H˜

)(2.14)

By writing the curl components of equations (2.13) and (2.14) in Cartesian coordinates one obtains

the following system of six coupled scalar equations:

∂Ex

∂t=

1εoεxx

[∂Hz

∂y− ∂Hy

∂z− σxxEx

](2.15a)

∂Ey

∂t=

1εoεyy

[∂Hx

∂z− ∂Hz

∂x− σyyEy

](2.15b)

∂Ez

∂t=

1εoεzz

[∂Hy

∂x− ∂Hx

∂y− σzzEz

](2.15c)

∂Hx

∂t=

1µoµxx

[∂Ey

∂z− ∂Ez

∂y− σ∗xxHx

](2.16a)

∂Hy

∂t=

1µoµyy

[∂Ez

∂x− ∂Ex

∂z− σ∗yyHy

](2.16b)

∂Hz

∂t=

1µoµzz

[∂Ex

∂y− ∂Ey

∂x− σ∗zzHz

](2.16c)

The previous six equations form the basis of the FDTD method. By discretizing them using finite-differences

it is possible to obtain a numerical algorithm that models three-dimensional electromagnetic field phenomena.

2.2 The Yee Algorithm

2.2.1 The Yee cell and the leapfrogging scheme

It is important to notice that although the Gauss’ Law relations (2.3) and (2.4) are implicit in the

set of equations (2.15) and (2.16), that may not necessarily hold true for an arbitrary discretization of this

set. This means that the sampling points for the E and H field components must be positioned in such a way

that the numerical space-derivative operations of the curl operator enforce Gauss’ laws. In his 1966 paper,

Yee[2] proposed a gridding scheme that satisfied this requirement and later became widely known as the Yee

cell, whose structure is shown in Fig. 2.1.

As can be seen in Fig. 2.1, Yee’s gridding scheme positions its field components such that every~E component is surrounded by four circulating H˜ components and each H˜ component is surrounded by four

circulating E˜ components, thus replicating Ampere’s Law and Faraday’s Law at the grid level. As a matter

of fact, Yee’s scheme simulates both the pointwise differential form and the macroscopic integral form of

8

Page 22: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Maxwell’s equations, being the latter very useful as will be seen in Chapter 4.

Figure 2.1: Position of the electric and magnetic field vector components about the cell(i,j,k) of the Yee spacelattice. Only the electric field components in blue and the magnetic field components in red belong to thecell(i,j,k).

Based on this gridding scheme, Yee discretized a version of the set of equations (2.15) and (2.16)

particularized for lossless isotropic media using central-difference expressions, for both space and time deriva-

tives. The fact that central-difference expressions, having second-order accuracy, are more accurate than either

forward- or backward-differences, greatly contributes to the robustness of the Yee algorithm. For a proof of

the second-order accuracy of central differences please refer to Appendix A.

One of the most important characteristics of the Yee algorithm, resulting from its central-difference

scheme, is the arrangement of E˜ and H˜ components in time in a leapfrog fashion. This means that the

E˜ components for a time t are calculated from previously stored H˜ components that correspond to a time

t − ∆t/2, where ∆t is the time-step. Then the H˜ components for time t + ∆t/2 are calculated from the

stored E˜ components for time t, as shown in Fig. 2.2. This characteristic makes the algorithm fully explicit,

avoiding problems like simultaneous equations and inversion of big matrices.

The leapfrogging continues until a criterion to stop the simulation is verified. Normally this criterion

is the simulation of a predetermined number of time-steps or it is based on energetic considerations, such as

stopping the simulation when the total electromagnetic energy in the computational domain falls a certain

amount, normally 40 dB to 60 dB, below the maximum energy value that occurred during the simulation.

Both these criteria are available in the developed software.

2.2.2 Discretization of Maxwell’s Equations using the Yee algorithm

Before continuing with the discretization of Maxwell’s equations, it is convenient to introduce an

appropriate notation for space points and functions of time and space. A space point in a uniform, rectangular

lattice is denoted as

(i, j, k) = (i∆x, j∆y, k∆z) (2.17)

9

Page 23: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 2.2: Space-time chart that illustrates Yee algorithm’s use of central differences for the space derivativesand leapfrogging for the time derivatives for a simplified one-dimensional case.

where ∆x, ∆y and ∆z are the lattice space increments in the x, y and z coordinate directions, and i, j and

k are integers.

A function u(x, y, z, t), evaluated at a discrete point in the grid and at a discrete point in time is

denoted as

u(i∆x, j∆y, k∆z, n∆t) = u|ni,j,k (2.18)

where ∆t is a constant time increment and n is an integer.

Using central-differences, the expressions for the first partial space derivatives of u, evaluated at

t = n∆t, are given by

∂u

∂x(i∆x, j∆y, k∆z, n∆t) =

uni+1/2,j,k − un

i−1/2,j,k

∆x+ O[(∆x)2] (2.19a)

∂u

∂y(i∆x, j∆y, k∆z, n∆t) =

uni,j+1/2,k − un

i,j−1/2,k

∆y+ O[(∆y)2] (2.19b)

∂u

∂z(i∆x, j∆y, k∆z, n∆t) =

uni,j,k+1/2 − un

i,j,k−1/2

∆z+ O[(∆z)2] (2.19c)

The expression for the first partial time derivative of u, evaluated at

(i∆x, j∆y, k∆z), is

∂u

∂t(i∆x, j∆y, k∆z, n∆t) =

un+1/2i,j,k − u

n−1/2i,j,k

∆t+ O[(∆t)2] (2.19d)

being the finite-difference performed over a ±∆t/2 interval due to Yee’s intention to implement a leapfrogging

algorithm.

10

Page 24: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Applying this notation, a numerical approximation of the set of equations (2.15) and (2.16) can

now be obtained. Starting with equation (2.15a), we obtain

Ex|n+1/2i+1/2,j,k − Ex|n−1/2

i+1/2,j,k

∆t=

1εoεxx|i+1/2,j,k

Hz|ni+1/2,j+1/2,k −Hz|ni+1/2,j−1/2,k

∆y

−Hy|ni+1/2,j,k+1/2 −Hy|ni+1/2,j,k−1/2

∆z

− σxx|i+1/2,j,kEx|ni+1/2,j,k

(2.20)

where it is important to notice the exact correspondence of each field component’s spatial position with that

shown in Fig. 2.1. Also note that all the field components on the right-hand side correspond to time-step n.

The H˜ field components for time-step n are stored in memory as well as the E˜ field components for time-

step n − 1/2. However, the electric field Ex appearing due to the electric conductivity σxx is not available

in memory, so it must be estimated as the arithmetic average of the stored values of Ex and the not yet

computed new values of Ex for time-step n + 1/2, which is called a semi-implicit approximation [9, Chapter

3, pp. 80-85]:

Ex|ni+1/2,j,k =Ex|n+1/2

i+1/2,j,k + Ex|n−1/2i+1/2,j,k

2(2.21)

By inserting (2.21) into (2.20) and isolating Ex|n+1/2i+1/2,j,k on the left-hand side we obtain

(1 +

∆tσxx

2εoεxx

)Ex|n+1/2

i+1/2,j,k =(

1− ∆tσxx

2εoεxx

)Ex|n−1/2

i+1/2,j,k

+∆t

εoεxx∆y

(Hz|ni+1/2,j+1/2,k −Hz|ni+1/2,j−1/2,k

)− ∆t

εoεxx∆z

(Hy|ni+1/2,j,k+1/2 −Hy|ni+1/2,j,k−1/2

) (2.22)

Dividing both sides of (2.22) by 1 + ∆tσxx/2εoεxx gives the explicit time-stepping formula for the

Ex field component:

Ex|n+1/2i+1/2,j,k =

2ε0εxx −∆tσxx

2ε0εxx + ∆tσxxEx|n−1/2

i+1/2,j,k +1

∆y

2∆t

2ε0εxx + ∆tσxx

(Hz|ni+1/2,j+1/2,k −Hz|ni+1/2,j−1/2,k

)− 1

∆z

2∆t

2ε0εxx + ∆tσxx

(Hy|ni+1/2,j,k+1/2 −Hy|ni+1/2,j,k−1/2

)(2.23a)

Applying a similar procedure to equations (2.15b) and (2.15c) the time-stepping relations for the

Ey and Ez components are found to be:

Ey|n+1/2i,j+1/2,k =

2ε0εyy −∆tσyy

2ε0εyy + ∆tσyyEy|n−1/2

i,j+1/2,k +1

∆z

2∆t

2ε0εyy + ∆tσyy

(Hx|ni,j+1/2,k+1/2 −Hx|ni,j+1/2,k−1/2

)− 1

∆x

2∆t

2ε0εyy + ∆tσyy

(Hz|ni+1/2,j+1/2,k −Hz|ni−1/2,j+1/2,k

)(2.23b)

11

Page 25: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Ez|n+1/2i,j,k+1/2 =

2ε0εzz −∆tσzz

2ε0εzz + ∆tσzzEz|n−1/2

i,j,k+1/2 +1

∆x

2∆t

2ε0εzz + ∆tσzz

(Hy|ni+1/2,j,k+1/2 −Hy|ni−1/2,j,k+1/2

)− 1

∆y

2∆t

2ε0εzz + ∆tσzz

(Hx|ni,j+1/2,k+1/2 −Hx|ni,j−1/2,k+1/2

)(2.23c)

By analogy with the procedure taken for the E˜ field components, it is also possible to obtain explicit

time-stepping relations for the H˜ field components through discretization of the set of equations (2.16), noting

that the spatial indices of the H˜ field components are those shown in Fig. 2.1. The time-stepping relations

resulting from the discretization of equations (2.16a)–(2.16c) are:

Hx|n+1/2i,j+1/2,k+1/2 =

2µ0µxx −∆tσ∗xx

2µoµxx + ∆tσ∗xx

Hx|n−1/2i,j+1/2,k+1/2 +

1∆z

2∆t

2µoµxx + ∆tσ∗xx

(Ey|ni,j+1/2,k+1 − Ey|ni,j+1/2,k

)− 1

∆y

2∆t

2µoµxx + ∆tσ∗xx

(Ez|ni,j+1,k+1/2 − Ez|ni,j,k+1/2

)(2.24a)

Hy|n+1/2i+1/2,j,k+1/2 =

2µ0µyy −∆tσ∗yy

2µoµyy + ∆tσ∗yy

Hy|n−1/2i+1/2,j,k+1/2 +

1∆x

2∆t

2µoµyy + ∆tσ∗yy

(Ez|ni+1,j,k+1/2 − Ez|ni,j,k+1/2

)− 1

∆z

2∆t

2µoµyy + ∆tσ∗yy

(Ex|ni+1/2,j,k+1 − Ex|ni+1/2,j,k

)(2.24b)

Hz|n+1/2i+1/2,j+1/2,k =

2µ0µzz −∆tσ∗zz

2µoµzz + ∆tσ∗zz

Hz|n−1/2i+1/2,j+1/2,k +

1∆y

2∆t

2µoµzz + ∆tσ∗zz

(Ex|ni+1/2,j+1,k − Ex|ni+1/2,j,k

)− 1

∆x

2∆t

2µoµzz + ∆tσ∗zz

(Ey|ni+1,j+1/2,k − Ey|ni,j+1/2,k

)(2.24c)

It is important to remark that although the algorithm was derived from Maxwell’s curl equations, it

implicitly enforces Gauss’ Laws (2.3) and (2.4), as discussed in Appendix B.

2.2.3 Computer Implementation

The discretized equations (2.23) and (2.24) are now ready to be implemented in a computer lan-

guage. Considering that it is possible to have a continuous variation of material properties with spatial position,

it is desirable to define the following constant updating coefficients, to be stored in computer memory, for

each of the field components:

Updating Coefficients for the Ex field component:

C1(i,j,k)x =

2ε0εxx|i+1/2,j,k −∆tσxx|i+1/2,j,k

2ε0εxx|i+1/2,j,k + ∆tσxx|i+1/2,j,k(2.25a)

C2(i,j,k)x =

1∆y

2∆t

2ε0εxx|i+1/2,j,k + ∆tσxx|i+1/2,j,k(2.25b)

C3(i,j,k)x =

1∆z

2∆t

2ε0εxx|i+1/2,j,k + ∆tσxx|i+1/2,j,k(2.25c)

12

Page 26: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Updating Coefficients for the Ey field component:

C1(i,j,k)y =

2ε0εyy|i,j+1/2,k −∆tσyy|i,j+1/2,k

2ε0εyy|i,j+1/2,k + ∆tσyy|i,j+1/2,k(2.26a)

C2(i,j,k)y =

1∆z

2∆t

2ε0εyy|i,j+1/2,k + ∆tσyy|i,j+1/2,k(2.26b)

C3(i,j,k)y =

1∆x

2∆t

2ε0εyy|i,j+1/2,k + ∆tσyy|i,j+1/2,k(2.26c)

Updating Coefficients for the Ez field component:

C1(i,j,k)z =

2ε0εzz|i,j,k+1/2 −∆tσzz|i,j,k+1/2

2ε0εzz|i,j,k+1/2 + ∆tσzz|i,j,k+1/2(2.27a)

C2(i,j,k)z =

1∆x

2∆t

2ε0εzz|i,j,k+1/2 + ∆tσzz|i,j,k+1/2(2.27b)

C3(i,j,k)z =

1∆y

2∆t

2ε0εzz|i,j,k+1/2 + ∆tσzz|i,j,k+1/2(2.27c)

Updating Coefficients for the Hx field component:

D1(i,j,k)x =

2µoµxx|i,j+1/2,k+1/2 −∆tσ∗xx|i,j+1/2,k+1/2

2µoµxx|i,j+1/2,k+1/2 + ∆tσ∗xx|i,j+1/2,k+1/2(2.28a)

D2(i,j,k)x =

1∆z

2∆t

2µoµxx|i,j+1/2,k+1/2 + ∆tσ∗xx|i,j+1/2,k+1/2(2.28b)

D3(i,j,k)x =

1∆y

2∆t

2µoµxx|i,j+1/2,k+1/2 + ∆tσ∗xx|i,j+1/2,k+1/2(2.28c)

Updating Coefficients for the Hy field component:

D1(i,j,k)y =

2µoµyy|i+1/2,j,k+1/2 −∆tσ∗yy|i+1/2,j,k+1/2

2µoµyy|i+1/2,j,k+1/2 + ∆tσ∗yy|i+1/2,j,k+1/2(2.29a)

D2(i,j,k)y =

1∆x

2∆t

2µoµyy|i+1/2,j,k+1/2 + ∆tσ∗yy|i+1/2,j,k+1/2(2.29b)

D3(i,j,k)y =

1∆z

2∆t

2µoµyy|i+1/2,j,k+1/2 + ∆tσ∗yy|i+1/2,j,k+1/2(2.29c)

Updating Coefficients for the Hz field component:

D1(i,j,k)z =

2µoµzz|i+1/2,j+1/2,k −∆tσ∗zz|i+1/2,j+1/2,k

2µoµzz|i+1/2,j+1/2,k + ∆tσ∗zz|i+1/2,j+1/2,k(2.30a)

D2(i,j,k)z =

1∆y

2∆t

2µoµzz|i+1/2,j+1/2,k + ∆tσ∗zz|i+1/2,j+1/2,k(2.30b)

D3(i,j,k)z =

1∆x

2∆t

2µoµzz|i+1/2,j+1/2,k + ∆tσ∗zz|i+1/2,j+1/2,k(2.30c)

The updating coefficients depend not only on the material properties but also on the chosen time-

step ∆t and mesh space increments ∆x, ∆y and ∆z. For the general case, the required memory to store the

field components and updating coefficients is (6 × 3 + 6)N = 24N where N is the number of cells in the

computational domain. For the case of a mesh with cubical cells ∆x = ∆y = ∆z = ∆, and the coefficients

C2 = C3 and D2 = D3 thus reducing the required memory to 18N.

It is possible to reduce the memory requirements by calculating the update coefficients on the fly,

i.e., for each time-step a pointer associated with each cell would point to an entry in an array of materials (with

13

Page 27: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

a number of entries much smaller than N) from which the coefficients could be calculated. Unfortunately, the

memory savings would come at the expense of a longer simulation time, so a tradeoff must be made. For

the purposes of this work the first approach has been chosen since computation time was considered a more

important aspect.

Using the coefficients (2.25)–(2.30), equations (2.23) and (2.24) can be rewritten more compactly

as:

Ex|n+ 1

2i+ 1

2 ,j,k=C1(i,j,k)

x Ex|n− 1

2i+ 1

2 ,j,k+ C2(i,j,k)

x

(Hz|ni+ 1

2 ,j+ 12 ,k −Hz|ni+ 1

2 ,j− 12 ,k

)− C3(i,j,k)

x

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni+ 1

2 ,j,k− 12

) (2.31a)

Ey|n+ 1

2i,j+ 1

2 ,k=C1(i,j,k)

y Ey|n− 1

2i,j+ 1

2 ,k+ C2(i,j,k)

y

(Hx|ni,j+ 1

2 ,k+ 12−Hx|ni,j+ 1

2 ,k− 12

)− C3(i,j,k)

y

(Hz|ni+ 1

2 ,j+ 12 ,k −Hz|ni− 1

2 ,j+ 12 ,k

) (2.31b)

Ez|n+ 1

2i,j,k+ 1

2=C1(i,j,k)

z Ez|n− 1

2i,j,k+ 1

2+ C2(i,j,k)

z

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni− 1

2 ,j,k+ 12

)− C3(i,j,k)

z

(Hx|ni,j+ 1

2 ,k+ 12−Hx|ni,j− 1

2 ,k+ 12

) (2.31c)

Hx|n+ 1

2i,j+ 1

2 ,k+ 12

=D1(i,j,k)x Hx|

n− 12

i,j+ 12 ,k+ 1

2+ D2(i,j,k)

x

(Ey|ni,j+ 1

2 ,k+1 − Ey|ni,j+ 12 ,k

)−D3(i,j,k)

x

(Ez|ni,j+1,k+ 1

2− Ez|ni,j,k+ 1

2

) (2.32a)

Hy|n+ 1

2i+ 1

2 ,j,k+ 12

=D1(i,j,k)y Hy|

n− 12

i+ 12 ,j,k+ 1

2+ D2(i,j,k)

y

(Ez|ni+1,j,k+ 1

2− Ez|ni,j,k+ 1

2

)−D3(i,j,k)

y

(Ex|ni+ 1

2 ,j,k+1 − Ex|ni+ 12 ,j,k

) (2.32b)

Hz|n+ 1

2i+ 1

2 ,j+ 12 ,k

=D1(i,j,k)z Hz|

n− 12

i+ 12 ,j+ 1

2 ,k+ D2(i,j,k)

z

(Ex|ni+ 1

2 ,j+1,k − Ex|ni+ 12 ,j,k

)−D3(i,j,k)

z

(Ey|ni+1,j+ 1

2 ,k − Ey|ni,j+ 12 ,k

) (2.32c)

Using equations (2.31) and (2.32) and taking into account that the field components that be-

long to the cell (i, j, k) are Ex|i+1/2,j,k, Ey|i,j+1/2,k, Ez|i,j,k+1/2, Hx|i,j+1/2,k+1/2, Hy|i+1/2,j,k+1/2 and

Hz|i+1/2,j+1/2,k , a simple FDTD update algorithm using a C-like programming language could have a struc-

ture like that of the code example C.1 presented in Appendix C.

2.3 Numerical Dispersion

FDTD algorithms for Maxwell’s equations cause nonphysical dispersion of the simulated waves even

in the case of free-space propagation simulation. This means that the phase velocity of numerical wave modes

differs from c by an amount that varies with the wavelength, direction of propagation and grid discretization,

which can lead to imprecise results since the propagating numerical waves accumulate delay and phase errors.

This section presents the key relations for numerical dispersion, applicable to the FDTD algorithm developed

for this work, and ways to mitigate it.

14

Page 28: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

2.3.1 Derivation of the numerical dispersion relation for three-dimensional wave

propagation

Consider the three-dimensional scalar wave equation

∂2u

∂t2= c2

(∂2u

∂x2+

∂2u

∂y2+

∂2u

∂z2

)(2.33)

where u is an arbitrary component of the E˜ or H˜ fields.

Replacing the partial derivatives in (3.10) by central-difference approximations (see Appendix A.4),

we obtain the following discretization of the wave equation:

un+1I,J,K − 2un

I,J,K + un−1I,J,K

(∆t)2≈c2

(un

I+1,J,K − 2unI,J,K + un

I−1,J,K

(∆x)2

)+ c2

(un

I,J+1,K − 2unI,J,K + un

I,J−1,K

(∆y)2

)+ c2

(un

I,J,K+1 − 2unI,J,K + un

I,J,K−1

(∆z)2

)(2.34)

Now let us consider a continuous solution of the wave equation (3.10), written in phasor form:

u(x, y, z, t) = ej(ωt−kxx−kyy−kzz) (2.35)

where kx, ky and kz are the possibly complex-valued wavenumbers along the three spatial directions. The

discretely sampled wave, which has possibly complex-valued wavenumbers kx, ky and kz, is given by

unI,J,K = ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z) (2.36)

Inserting the “numerical” wave (2.36) in the discretized wave equation (2.34) and rearranging terms

yields

ej(ω(n+1)∆t−kxI∆x−kyJ∆y−kzK∆z) =(

c∆t

∆x

)2

ej(ωn∆t−kx(I+1)∆x−kyJ∆y−kzK∆z)

−2 ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z)

+ej(ωn∆t−kx(I−1)∆x−kyJ∆y−kzK∆z)

+(

c∆t

∆y

)2

ej(ωn∆t−kxI∆x−ky(J+1)∆y−kzK∆z)

−2 ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z)

+ej(ωn∆t−kxI∆x−ky(J−1)∆y−kzK∆z)

+(

c∆t

∆z

)2

ej(ωn∆t−kxI∆x−kyJ∆y−kz(K+1)∆z)

−2 ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z)

+ej(ωn∆t−kxI∆x−kyJ∆y−kz(K−1)∆z)

+2 ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z)

−ej(ω(n−1)∆t−kxI∆x−kyJ∆y−kzK∆z)

(2.37)

Eliminating the common factor ej(ωn∆t−kxI∆x−kyJ∆y−kzK∆z) and using Euler’s identity yields the

15

Page 29: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

desired numerical dispersion relation

ejω∆t + e−jω∆t

2− 1︸ ︷︷ ︸

− sin2( ω∆t2 )

=(

c∆t

∆x

)2(

ejkx∆x + e−jkx∆x

2− 1

)︸ ︷︷ ︸

− sin2( kx∆x2 )

+(

c∆t

∆y

)2(

ejky∆y + e−jky∆y

2− 1

)︸ ︷︷ ︸

− sin2(ky∆y

2 )

+(

c∆t

∆z

)2(

ejkz∆z + e−jkz∆z

2− 1

)︸ ︷︷ ︸

− sin2( kz∆z2 )

⇔[

1c∆t

sin(

ω∆t

2

)]2=

[1

∆xsin

(kx∆x

2

)]2

+

[1

∆ysin

(ky∆y

2

)]2

+

[1

∆zsin

(kz∆z

2

)]2

(2.38)

In order to make the FDTD dispersion relation’s spatial direction dependence more evident, (2.38)

can be written using spherical coordinates as

[1

c∆tsin(

ω∆t

2

)]2=

[1

∆xsin

(k sin θ cos φ∆x

2

)]2

+

[1

∆ysin

(k sin θ sinφ∆y

2

)]2

+

[1

∆zsin

(k cos θ ∆z

2

)]2(2.39)

2.3.2 Comparison with the ideal dispersion case and anisotropy of the numerical

phase velocity

The analytical dispersion relation for a physical plane wave propagating in three dimensions in a

homogeneous lossless medium is (ω

c

)2

= (kx)2 + (ky)2 + (kz)2 (2.40)

which seems to be quite different from the numerical dispersion relation (2.38). However, in the limit as ∆x,

∆y, ∆z and ∆t approach zero, it can easily be shown that the two relations are identical. This suggests that

numerical dispersion can be reduced to any desired level by using fine enough FDTD gridding.

By solving the numerical dispersion relation with an appropriate iterative method [9], such as New-

ton’s method, it can be seen that the error due to numerical dispersion, relatively to the analytical solution, is

maximum when propagation occurs along the grid’s axes and minimal when propagation occurs along the grid

diagonals. For the former case, and assuming propagation in a cubic grid, the numerical dispersion relation

becomes:

k|axis =2∆

sin−1

[1S

sin(

πS

)](2.41)

where S = c∆t/∆ is known as the Courant stability factor and Nλ = λ0/∆ is the grid sampling density. The

corresponding numerical phase velocity is:

vp|axis =ω

k=

πc

Nλ sin−1[

1S sin

(πSNλ

)] (2.42)

For the case of propagation along a grid diagonal in a cubic grid, the numerical dispersion relation

becomes:

k|diag =2√

3∆

sin−1

[1

S√

3sin(

πS

)](2.43)

16

Page 30: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

and the corresponding numerical phase velocity is:

vp|diag =πc

√3 sin−1

[1

S√

3sin(

πSNλ

)] (2.44)

As will be seen in the next section, for three dimensional simulation the value of S must be less than

or equal to 1/√

3, so a common value used in practice for S is around 0.5. For the case of S = 0.5, a plot

of the numerical phase velocities (2.42) and (2.44) as a function of the grid sampling density Nλ is shown in

Fig. 2.3. It can be seen that for a typical values of S, a value of Nλ = 10, i.e., ten cells per wavelength, yields

Figure 2.3: Variation of the numerical phase velocity along the grid’s axes and diagonals as a function of thesampling density Nλ, for S = 0.5.

values for the numerical phase velocity that differ from the analytical one by less than 1.4%.

Although the error in numerical phase velocity relatively to the theoretical value can be made

reasonably small with at least ten cells per wavelength, it is also important to account for the anisotropy of

the phase velocity. This is an issue that cannot be neglected when doing FDTD simulation of antennas, since

it can, for example, corrupt farfield results, as discussed in Chapter 6. From Fig. 2.3 it is possible to calculate

the relative error between the two numerical velocities – For a value of Nλ = 10 this difference is less than

1% and for a value of Nλ = 20 it is less than 0.2%.

2.3.3 Choice of the spatial sampling density and other sources of numerical error

For the FDTD simulation of antennas, it is generally considered that 10 cells per wavelength is the

minimum sampling density that one should use if accurate farfield results are required. However, if accurate

S-parameters or input impedance/admittance values are desired, a value of 20 or 30 cells per wavelength might

be necessary.

In such cases, the numerical errors are not due to numerical dispersion but essentially due to

differences between the meshed version of the structure and its real geometry. For a cartesian grid, these

errors are generally associated with its inability to conform to curved surfaces or boundaries not aligned with

17

Page 31: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

its axes, and are called staircasing errors. An example of staircasing is shown in Fig. 2.4. Therefore, an even

finer mesh might be necessary if the structure being simulated has very fine geometrical features.

Figure 2.4: (a) A circular metallic patch and (b) its meshed version where the staircased approximation of thecurved boundary can be observed.

It is also important to mention that errors in numerical phase velocity are cumulative and, as a

consequence, the simulation of electrically large structures in FDTD may require a sampling density that

increases with the size of the structure under analysis.

As for the anisotropy of phase velocities, it can be said that for practical purposes, if the error in

numerical phase velocity is small, for example 1%, then the anisotropy error will be even smaller, and the

former can be used as an upper bound for the latter.

2.4 Numerical Stability

In the previous section we have seen that the numerical error in FDTD simulations resulting from nu-

merical dispersion can be mitigated by using an appropriate grid sampling density, i.e., by choosing appropriate

values for ∆x, ∆y and ∆z.

This section shows that the time-step ∆t must also be bounded in order to avoid numerical instability

which is an undesirable possibility with explicit numerical differential equation solvers.

2.4.1 The Courant stability criterion

The approach taken to analyze the numerical stability of the FDTD algorithm is called Complex-

Frequency Analysis [9] and, as the name suggests, is based on the possibility that the angular frequency ω in

the numerical dispersion relation can assume complex values. Indeed, if we consider that the discretized wave

(2.36) can have a numerical angular frequency ω = ωreal + jωimag, then we have

unI,J,K = e−ωimagn∆tej(ωrealn∆t−kxI∆x−kyJ∆y−kzK∆z) (2.45)

where we see that if ωimag > 0 the time-stepping algorithm will be dissipative, i.e., numerical waves will suffer

a non-physical attenuation which obviously leads to numerical errors. For the case that ωimag < 0, numerical

waves will be amplified and the algorithm is said to be unstable.

Given these conclusions, the only acceptable value for ωimag is zero, which means that the numerical

angular frequency must be a real number. Considering that the numerical dispersion relation (2.38) can have

18

Page 32: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

a complex angular frequency and solving for ω yields

ω =2

∆tsin−1 (ξ) (2.46)

where

ξ = c∆t

√√√√ 1(∆x)2

sin2

(kx∆x

2

)+

1(∆y)2

sin2

(ky∆y

2

)+

1(∆z)2

sin2

(kz∆z

2

)(2.47)

We note that

0 ≤ ξ ≤ c∆t

√1

(∆x)2+

1(∆y)2

+1

(∆z)2≡ ξupper bound (2.48)

To guarantee that the simulation is stable we must have ξupper bound ≤ 1, yielding the following

stability criterion, which is known as Courant stability criterion:

∆t ≤ 1

c√

1(∆x)2 + 1

(∆y)2 + 1(∆z)2

≡ ∆tmax (2.49)

The Courant stability criterion establishes an upper bound for the time-step in order to achieve a

stable simulation. However, choosing ∆t = ∆tmax for a simulation can still lead to instability due to the small

numerical truncation errors that occur in computers. For this reason many authors often choose ∆t in the

interval [0.95∆tmax, 0.99∆tmax].

For the case of a grid with cubical cells, i.e., ∆x = ∆y = ∆z = ∆, the Courant stability factor

S = c∆t/∆ is

S =1√3

(2.50)

2.4.2 Other potential sources of instability

Although the Courant stability criterion establishes the stability conditions for the basic Yee algo-

rithm’s leapfrog field updating scheme, the stability of the entire FDTD procedure depends upon more than

the stability of the Yee algorithm. This happens because a FDTD program needs other augmenting algorithms

to be useful for engineering problems. Examples of such algorithms are absorbing boundary conditions (ABCs),

excitation sources, subcellular techniques, lumped elements and non-uniform or non-orthogonal meshing. The

interaction between FDTD and the augmenting algorithms leads to a generalized stability problem for which

a stability analysis may not be feasible. Nevertheless, normally the augmenting algorithms have their own

partly-analytical/partly-empirical stability criteria which have been used to successfully simulate numerous

problems of engineering interest. For the augmenting algorithms used in this work prone to be unstable, a

stability criterion or empirical rule will be presented in the respective section.

2.5 Extension to non-uniform Cartesian meshes

2.5.1 Benefits of non-uniform meshes

All the material presented so far in this chapter assumed that the FDTD grid is uniform, that is,

all cells have the same dimensions ∆x, ∆y and ∆z. There are, however, situations for which a non-uniform

cartesian grid would be desirable.

19

Page 33: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

One of such situations is represented in Fig. 2.5(a) where it can be seen that an uniform mesh

can only adapt to the boundaries of shape A, failing to adapt to B’s boundaries, which can lead to incorrect

results since Yee’s algorithm assumes that the medium is homogeneous within a cell. As can be seen in Fig

2.5(b), a non-uniform mesh can adapt to the boundaries of both shapes, yielding a better discretization of the

problem’s geometry.

Figure 2.5: Comparison between (a) an uniform mesh and (b) a non-uniform mesh regarding the capability toadapt to the geometry of multiple objects.

Another situation, of particular interest in antenna problems, is that represented in Fig. 2.6. As

mentioned in 2.3.3, antenna problems often require high sampling densities to yield accurate nearfield data.

Besides this fact, some additional space must be added between the discretized structure and the boundaries

of the computational domain in order to be able to use an absorbing boundary condition for the radiated

fields1, which increases the size of the computational domain. If a uniform mesh is used for such a case, like

in Fig. 2.6(a), the distance between the structure and the domain boundary must be discretized with cells

having the same (small) size of those used for the structure. With a non-uniform mesh, like that shown in

Fig. 2.6(b), it is possible to have a refined lattice only in the region of interest and to use bigger cells for the

rest of the domain, thus reducing the memory requirements, especially for 3D problems.

Figure 2.6: Comparison between (a) an uniform mesh and (b) a non-uniform mesh regarding the capability touse different levels of spatial resolution.

2.5.2 Required modifications to the algorithm

The algorithm derived in section 2.2 was extended relatively easily to allow the simulation of non-

uniform grids, having only been necessary to modify the updating coefficients (2.25) to (2.30) that depended

on the cell’s dimensions ∆x, ∆y or ∆z, i.e., the C2, C3, D2 and D3 coefficients.

At first glance, it may seem that ∆x, ∆y and ∆z only have to be replaced by ∆x(i, j, k), ∆y(i, j, k)and ∆z(i, j, k), that are the dimensions of the cell to which the update coefficient refers to. However, when

using a non-uniform mesh the finite-difference expressions are no longer second-order accurate because the

field components used to calculate the spatial derivatives are not equidistant from the field location assumed

1This topic is treated in Chapter 3.

20

Page 34: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

in central-differences. This leads to numerical errors resulting from non-physical reflections at the cell’s

boundaries.

In order to reduce these spurious reflections, the following approach, proposed by Yu and Mittra

[14], was used in the developed software to modify the Ex and Hx field components’s update coefficients.

Modifications to the C2x and C3x coefficients:

C2x =1

0.5× [∆y(i, j − 1, k) + ∆y(i, j, k)]2∆t

2ε0εxx|i+1/2,j,k + ∆tσxx|i+1/2,j,k(2.51a)

C3x =1

0.5× [∆z(i, j, k − 1) + ∆z(i, j, k)]2∆t

2ε0εxx|i+1/2,j,k + ∆tσxx|i+1/2,j,k(2.51b)

Modifications to the D2x and D3x coefficients:

D2x =1

AA

2∆t

2µoµxx|i,j+1/2,k+1/2 + ∆tσ∗xx|i,j+1/2,k+1/2(2.52a)

D3x =1

BB

2∆t

2µoµxx|i,j+1/2,k+1/2 + ∆tσ∗xx|i,j+1/2,k+1/2(2.52b)

with

AA = 0.125× (∆z(i, j, k − 1) + 6.0×∆z(i, j, k) + ∆z(i, j, k + 1)) (2.53a)

BB = 0.125× (∆y(i, j − 1, k) + 6.0×∆y(i, j, k) + ∆y(i, j + 1, k)) (2.53b)

The modifications to the other update coefficients are analogous to those shown above.

2.5.3 Numerical accuracy and stability for non-uniform FDTD

When dealing with non-uniform meshes it is often very difficult, if not impossible, to obtain an-

alytical expressions for numerical errors and/or stability criteria. Nevertheless, part-analytical/part-empirical

criteria exist for the choice of the time-step ∆t and mesh characteristics that have permitted many successful

engineering applications using non-uniform meshes. For the case of a non-uniform cartesian grid, the follow-

ing partly-empirical/partly-analytical rules should be followed in order to reduce numerical error and to avoid

instability:

• Use the modified update coefficients (2.51) and (2.52) to reduce the truncation error. Interestingly, it

has been shown by Monk [15] that although the truncation error resulting from the use of a non-uniform

cartesian mesh is locally first-order, globally the method remains second order convergent regardless of

the non-uniformity of the mesh, an effect known as supra-convergence;

• To keep the truncation error within acceptable limits (i.e., to achieve better results with non-uniform

meshing than those obtained with a uniform mesh), the ratio between two adjacent cell lengths should

not be bigger than about 1.4 [16, 17];

• The biggest cell length in any direction ∆max(i, j, k) should be the same that would be used for a

simulation using a uniform grid, in order to limit the error resulting from numerical dispersion;

• To avoid numerical instability, the time-step should be chosen in accordance with the Courant stability

criterion, using for the calculation the set of minimum cell lengths ∆xmin, ∆ymin and ∆zmin that occur

in the mesh [9, Chapter 11, Sec. 2].

21

Page 35: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 3

Absorbing Boundary Conditions

3.1 Introduction

Unlike methods based on integral equations, like the Method of Moments, the FDTD method

performs its calculations on a computational domain that discretizes a finite region of space. As can be seen

in the simple FDTD update algorithm presented in Sec. 2.2.3, both the E-field components located on the

i=0, j=0 and k=0 boundaries and the H-field components located on the i=TotalCellsX-1, j=TotalCellsY-

1 and k=TotalCellsZ-1 boundaries are not updated due to the absence of neighboring cells from which to

get the field values required to calculate the new field values. Taking into account that all field values are

initially set to zero, this effectively corresponds to having a computational domain with electrical and magnetic

boundaries that totally reflect all incident fields. Since antenna problems normally involve structures defined

in open regions of space, this kind of totally reflective boundaries is completely inappropriate for the FDTD

simulation of antennas.

As a consequence, in order to simulate a computational domain of infinite extent, an additional

algorithm must be implemented on the domain’s outer boundary. This kind of algorithm is called an absorbing

boundary condition (ABC) and its goal is theoretically to suppress, but for practical purposes to attenuate,

the spurious numerical reflections of the outgoing numerical waves, to a level sufficiently low so that the fields

in the vicinity of the structure are not significantly affected by them. There are two major classes of ABCs:

analytical [9, Chapter 6] and absorbing-material ABCs.

The principle of analytical ABCs is to use differential operators, based on the wave equation, that

either force waves to propagate outside the computational domain, like the Engquist-Majda one-way wave

equation and the Higdon radiation operator, or provide estimates of the field values outside the computational

domain, like the Liao extrapolation method, that are used to update the field values at the boundaries.

One of the most popular analytical ABCs is based on the Engquist-Majda one-way operators and

was developed by Mur [18] [19]. The reasons for its popularity are the relatively simple implementation and

sufficiently low reflection coefficients, between -40 dB and -25 dB. Although the other mentioned analytical

ABCs are able to provide reflection coefficients as low as -60 dB, they are more cumbersome to implement

and computationally heavier since the discretization of the differential operators requires a number of terms

that increases with the desired order of accuracy.

The principle of absorbing-material ABCs is to surround the computational domain with a material

that absorbs the outgoing numerical waves, similarly to the walls of an anechoic chamber. Since the first

implementations of this kind of ABCs relied on conventional lossy dispersionless media that were only matched

22

Page 36: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

to normally incident plane waves, their application to electromagnetic problems was very limited.

However, in 1994, Berenger [20] introduced a revolutionary absorbing-material ABC that was able

to absorb plane waves of arbitrary incidence, polarization and frequency, with reflection coefficients below -50

dB and in some cases even close to -100 dB. This ABC was designated perfectly matched layer, or PML. The

main advantage of the PML resides in the fact that, through a relatively simple implementation, it provides

smaller reflection errors than the much more difficult to implement analytical ABCs. Moreover, in the last

years, modified versions of the PML have been developed that can match inhomogeneous, lossy, dispersive and

nonlinear media, which is something very difficult to achieve with an analytical ABC. In order to distinguish

Berenger’s PML from other PML formulations, it will be referred to as Split-Field PML where confusion could

occur.

Given the advantages of PMLs over analytical ABCs, it was determined that it should be the type

of ABC to implement in the developed software. At this point it is important to mention that although

the effectiveness and robustness of Berenger’s PML have been confirmed by the many papers that appeared

validating the technique, the formulation has some limitations. In fact, the fields and governing equations

within the PML medium are based on a mathematical model that uses field-splitting, which prevents direct

physical insight into the phenomena and doubles the number of floating-point operations relatively to the

standard FDTD method.

A more computationally efficient and physically insightful technique was proposed by Gedney [21]

in 1996. Gedney’s formulation is based on a lossy uniaxial medium that is both physically and mathematically

equivalent to Berenger’s PML but avoids field-splitting by using Maxwell’s equations in their original (real)

form. It has been designated uniaxial perfectly matched layer, or more simply, UPML. A comparison of the

computational efficiency of different PML formulations [22] is shown in Table 3.1.

PML type Storage Operations Multiplications AdditionsRegular Split PML 10 56 16 40

Eight-variable Split PML 8 60 18 42Uniaxial PML 8 48 20 28

CPML1 10 56 20 36NPML2 10 52 20 32

Table 3.1: Number of variables and number of operations per FDTD cell for different types of PerfectlyMatched Layer Absorbing Boundary Conditions. The PMLs are matched to a vacuum.

As can be observed, the UPML is the most computationally efficient technique, with the lowest

storage and CPU time requirements. For this reason, the UPML was the PML formulation chosen to be

implemented in the developed software. Before describing the UPML in detail in Section 3.3, an overview of

Berenger’s PML will be presented in Section 3.2.

Although the Mur ABC was not used to terminate the computational domain, a simplified formu-

lation was used to terminate the unidimensional transmission line employed in the resistive voltage source

presented in Chapter 5.

1Convolutional PML.2Near PML.

23

Page 37: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

3.2 Berenger’s Split-Field PML

The PML formulation initially proposed by Berenger [20] was based on the use of a medium with

electrical and magnetic losses σ and σ∗ and a modified version of Maxwell’s equations in the PML region.

The use of electrical and magnetic losses results from the fact that a wave, propagating in a lossless

medium with electrical permittivity ε and magnetic permeability µ, which is normally incident on a lossy

material, is totally transmitted if the loss parameters are chosen such that

σ∗

µ=

σ

ε(3.1)

However, the previous condition by itself only provides perfect matching for normally incident waves. As a

matter of fact, the absorbing-material ABC’s used before the PML’s introduction in 1994 relied solely on this

condition, which limited their applicability.

Berenger’s insight was to derive a novel split-field formulation of Maxwell’s equations where each

field component is split into two orthogonal components. By doing that, he was able to explore the additional

degrees of freedom to develop an ABC perfectly matched for waves of any frequency and angle of incidence.

The resulting coupled set of first-order partial differential equations is [23](ε

∂t+ σy

)Exy =

∂y(Hzx + Hzy) (3.2a)(

ε∂

∂t+ σz

)Exz = − ∂

∂z(Hyx + Hyz) (3.2b)(

ε∂

∂t+ σz

)Eyz =

∂z(Hxy + Hxz) (3.2c)(

ε∂

∂t+ σx

)Eyx = − ∂

∂x(Hzx + Hzy) (3.2d)(

ε∂

∂t+ σx

)Ezx =

∂x(Hyx + Hyz) (3.2e)(

ε∂

∂t+ σy

)Ezy = − ∂

∂y(Hxy + Hxz) (3.2f)

for the split-field formulation of the Maxwell-Ampere equation (2.2), and(µ

∂t+ σ∗y

)Hxy = − ∂

∂y(Ezx + Ezy) (3.3a)(

µ∂

∂t+ σ∗z

)Hxz =

∂z(Eyx + Eyz) (3.3b)(

µ∂

∂t+ σ∗z

)Hyz = − ∂

∂z(Exy + Exz) (3.3c)(

µ∂

∂t+ σ∗x

)Hyx =

∂x(Ezx + Ezy) (3.3d)(

µ∂

∂t+ σ∗x

)Hzx = − ∂

∂x(Eyx + Eyz) (3.3e)(

µ∂

∂t+ σ∗y

)Hzy =

∂y(Exy + Exz) (3.3f)

for the split-field formulation of the Maxwell-Faraday equation (2.1).

The parameters σw and σ∗w, where w = x, y, z, are chosen so that at a normal-to-w interface,

the PML region has the parameter pair (σw, σ∗w) satisfy (3.1) and all the other parameters equal to zero.

24

Page 38: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

For a region that is normal to more than one interface, i.e., a corner region, the PML is configured with the

parameter pairs (σw, σ∗w) corresponding to each of the PMLs that form the corner. A representation of the

PML technique is shown in Fig. 3.1.

Figure 3.1: 2D-cut of a three-dimensional FDTD grid employing the Berenger PML ABC. The overlappingPML regions are dihedral-corners.

As can be seen in Fig. 3.1, for practical purposes the PML medium must be backed by PEC walls

since the PML cannot extend to infinity. This fact implies that after crossing the layer, a wave is reflected

by the PEC wall and, after a second crossing of the interface, re-enters the computational domain. So, an

apparent reflection factor can be defined as

R(θi) = e−2(σ cos θi/ε0c)δ (3.4)

where θi is the angle of incidence and δ is the thickness of the layer.

From (3.4) it can be seen that the reflection factor depends on the product σδ and theoretically,

for a given layer attenuation, δ could be as small as desired, which would translate into a one-cell thick PML

for FDTD computations. However, when applied to a numerical algorithm, a sharp variation of conductivity

between the main computational domain and the PML medium gives rise to considerable numerical reflections.

So, to mitigate these reflections the conductivities inside the PML have to be gradually increased from zero

at the interface to a value σm close to the PEC walls. For a conductivity σ(ρ) the reflection factor is then

given by

R(θi) = e−2(cos θi/ε0c)R δ0 σ(ρ)dρ (3.5)

A conductivity profile, initially proposed by Berenger, that has been reported to yield good results is

σ(ρ) = σm

δ

)n

; σ∗(ρ) = σ∗m

δ

)n

(3.6)

for which the apparent reflection factor is

R(θi) = e−(2/(n+1))(σmδ/ε0c) cos θi

(3.7)

25

Page 39: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

3.3 Uniaxial PML

3.3.1 UPML Formulation

Consider an arbitrarily polarized plane wave that is propagating in Region 1, a homogeneous, non-

dispersive, but possibly anisotropic and lossy medium, corresponding to the half-space x < 0. This wave is

incident on Region 2, the half-space x > 0, which is comprised of the UPML medium. We begin by considering

Maxwell’s curl equations written in the frequency-domain:

∇× H˜ = jωε0 ¯εE˜ (3.8a)

∇× E˜ = −jωµ0 ¯µH˜ (3.8b)

where

¯ε =

εxx + σxx

jωε00 0

0 εyy + σyy

jωε00

0 0 εzz + σzz

jωε0

¯V︷ ︸︸ ︷ a 0 0

0 b 00 0 b

(3.9a)

¯µ =

µxx + σ∗xx

jωµ00 0

0 µyy + σ∗yy

jωµ00

0 0 µzz + σ∗zz

jωµ0

¯W︷ ︸︸ ︷ c 0 0

0 d 00 0 d

(3.9b)

and ¯V and ¯W are dimensionless tensors, rotationally symmetric around the x axis, that will be used for the

UPML medium.

Considering that the solutions of (3.8) are plane waves of the form A˜(x, y, z) = A˜0e−jβxxe−jβyye−jβzz,

the ∇ operator is given by ∇ ≡ −j(βxx˜+ βy y˜+ βz z˜

)= −jβ˜ and can be inserted into (3.8) to yield the

following wave equation:

β˜ × ¯ε−1(β˜ × H˜

)+ k2

0¯µ H˜ = 0 (3.10)

Considering, for simplicity, that propagation occurs in the x-y plane, the wave equation (3.10) can

be written, in matrix form, as k20µxxc− ε−1

zz b−1β2y ε−1

zz b−1βxβy 0ε−1

zz b−1βxβy k20µyyd− ε−1

zz b−1β2x 0

0 0 k20µzzd− β2

xε−1yy b−1 − β2

yε−1xx a−1

Hx

Hy

Hz

=

000

(3.11)

From the determinant of the matrix operator, we conclude that the medium supports TMz and TEz

modes, which satisfy the following dispersion relations:

TMz : k20µxxµyyc d− µxxε−1

zz b−1cβ2x − µyyε−1

zz b−1dβ2y = 0 (3.12a)

TEz : k20µzzd− ε−1

yy b−1β2x − ε−1

xx a−1β2y = 0 (3.12b)

If we assume a TEz incident wave in Region 1, where the parameters a, b, c and d are equal to

26

Page 40: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

unity, the superposition of the incident and reflected fields can be written as

H˜ 1 = z˜H0

(1 + Γe2jβx1x

)e−jβ1xxe−jβ1yy (3.13a)

E˜ 1 =[−x˜ β1y

ωε0ε1xx

(1 + Γe2jβx1x

)+ y˜

β1x

ωε0ε1yy

(1− Γe2jβx1x

)]H0e

−jβ1xxe−jβ1yy (3.13b)

and the corresponding dispersion relation (3.12b) can be put in the form

β1x =√

ε1yyµ1zzk20 − ε−1

1xxε1yyβ21y (3.14)

The wave transmitted into Region 2, where the parameters a, b, c and d have not yet been assigned

any values, is also TEz and its propagation is governed by (3.12b). The field transmitted into this region is

given by

H˜ 2 = z˜ H0τe−jβ2xxe−jβ2yy (3.15)

E˜ 2 =(−x˜ β2y

ωε0ε2xxa+ y˜

β2x

ωε0ε2yyb

)H0τe−jβ2xxe−jβ2yy (3.16)

Enforcing the continuity of the tangential E and H fields across x = 0 yields the following relations

β1y = β2y (3.17)

τ = 1 + Γ (3.18)

Γ =β1xε2yyb− β2xε1yy

β1xε2yyb + β2xε1yy(3.19)

Having (3.17) in account, the dispersion relation for medium 2 can be written as

β2x =√

ε2yyµ2zz b d k20 − ε−1

2xxε2yy a−1 b β21y (3.20a)

If in the previous expression we make d = b and a−1 = b, we get

β2x = b√

ε2yyµ2zz k20 − ε−1

2xxε2yy β21y (3.20b)

Finally, if we consider that ε2xx = ε1xx, ε2yy = ε1yy and µ2zz = µ1zz, and take the dispersion relation for

Region 1 (3.14) into account, we get

β2x ≡ bβ1x (3.20c)

Substituting (3.20c) into (3.19) and having in account the previous considerations, the following reflection

factor at the interface is obtained:

Γ =β1xε1yyb− bβ1xε1yy

β1xε1yyb + bβ1xε1yy= 0 (3.21)

A similar procedure can be followed for an incident TMz wave, which also yields a null reflection

factor if the medium in Region 2 has the following characteristics:

d = b ; c−1 = d ; µ2xx = µ1xx ; µ2yy = µ1yy ; ε2zz = ε1zz (3.22)

From the previous analysis we conclude that the interface between Region 1 and Region 2 is re-

flectionless for waves of arbitrary frequency, polarization and angle of incidence if the complex εii and µii

27

Page 41: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

parameters of Region 2 are the same as in Region 1 and the dimensionless tensors ¯V and ¯W are such that

¯V = ¯W = ¯sx =

s−1x 0 00 sx 00 0 sx

(3.23)

To be useful for FDTD applications the medium in Region 2 should be highly lossy, in order to

minimize the reflections that occur at the PEC wall that backs the PML medium. With this purpose in mind,

Gedney proposed the constitutive parameters

sx = kx +σx

jωε0(3.24)

which leads to the tensor

¯sx =

(kx + σx

jωε0

)−1

0 0

0 kx + σx

jωε00

0 0 kx + σx

jωε0

(3.25)

For this case, the dispersion relation (3.20c) is expressed as

β2x =(

kx − jσx

ωε0

)β1x (3.26)

where it is important to note that for kx = 1 the real part of β2x is identical to that of the incident wave but

in Region 2 the wave is also being attenuated along the x direction. For the case of a complex propagation

constant in Region 1 (associated to an evanescent mode or losses in medium 1), i.e, β1x ≡ γ1x = β′1x− jα1x,

β2x is given by

β2x =(

β′1xkx − α1xσx

ωε0

)− j

(β′1x

σx

ωε0+ α1xkx

)(3.27)

where it can be seen that the real term kx increases the attenuation of non-propagating modes and σx

attenuates propagating modes.

3.3.2 Theoretical and Practical Performance of the UPML

If we consider a propagating, non-attenuative mode incident from Region 1, which is assumed

isotropic, and that kx = 1, the apparent reflection factor due to the reflection at the PEC wall, is given by

R(θi) = e−2(√εrµrσx cos θi/ε0c)δ (3.28)

where δ is the thickness of the UPML layer. It’s important to notice that for the case of free-space in

Region 1 (εr = 1 and µr = 1) the expression for the apparent reflection factor is the same as that for

Berenger’s Split-Field PML (3.4).

Analogously to Berenger’s PML, in a discretized version of the UPML numerical artifacts arise due

to the variation of constitutive parameters at the interface between the main computational domain and the

UPML layer. For this reason, the ki and σi parameters of the ¯si tensor have to be increased respectively from

one and zero at the interface, to values ki,max and σi,max at the PEC outer boundary.

For the UPML implemented in the developed software, the following polynomial grading was used

28

Page 42: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

[9, Section 7.6.2]:

σi(i) = (i/δ)nσi,max ; ki(i) = 1 + (ki,max − 1) · (i/δ)n (3.29)

where i = x, y, z. For this case the theoretical reflection factor is given by

R(θi) = exp

(−2√

εrµr

ε0c

σi,maxδ

n + 1cos θi

)(3.30)

In practice, the value of σi,max is calculated from a given error estimate, i.e, by choosing the theoretical

reflection factor at normal incidence R(0), σi,max can be calculated as

σi,max = − (n + 1)ε0c lnR(0)2 N ∆i

√εrµr

(3.31)

where N is the thickness of the UPML layer in number of FDTD cells and ∆i is the size of the UPML cells

along the i direction. Optimal values of R(0) and n have been determined experimentally [21, 24] for UPML

layers with a given number of cells N . For this work, in order to ensure minimal reflections, the default UPML

thickness was set as N = 10 cells and the optimal values R(0) = e−16 and n = 4 were also set as a default.

For this case, the value of σi,max is

σi,max =n + 1

150π√

εrµr=

130π√

εrµr(3.32)

where εr and µr do not necessarily have the same values as in the main computational domain, since the

medium may be anisotropic or heterogeneous. As a consequence, those values should be chosen in accordance

with the effective permittivity and permeability of the dominant modes. Since the developed software is

destined to antenna analysis, by default εr = µr = 1, but the values can be changed by the user if, for

instance, he/she desires to analyze propagation in a dielectric or magnetic medium instead of free-space.

In the implemented software ki,max = 1 by default, since values bigger than one are more suitable for

applications involving waveguide structures. Nevertheless, the parameter is configurable and good absorption

of evanescent modes has been reported for microstrip problems [24] using values of ki,max in the range of 5

to 20.

3.3.3 Application to a Three-Dimensional Problem Space

It is important to notice that Gedney coined this medium as Uniaxial PML because the original

derivation was made for the case of an isotropic medium in Region 1, which yielded an uniaxial medium

in Region 2. However, for the general case considered in this work, the material in Region 2 will be, in

general, anisotropic. Furthermore, and similarly to Berenger’s PML, in the regions where different UPML

regions overlap (corner regions), the dimensionless tensor ¯s is given by the product of the ¯si tensors of each

normal-to-i interface [21], i.e.

¯s = ¯sx ¯sy ¯sz =

s−1x sysz 0 0

0 sxs−1y sz 0

0 0 sxsys−1z

(3.33)

where sx, sy, and sz are associated with the x, y, and z-normal planes, respectively. Considering a three-

dimensional computational domain with limits (xmin, ymin, zmin) and (xmax, ymax, zmax),the parameteriza-

tion of the ¯s tensor for the different UPML regions is presented in Table 3.2.

29

Page 43: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

UPML Region ¯sx ¯sy ¯sz

kx σx ky σy kz σz

Planes at xmin and xmax kx(x) σx(x) 1 0 1 0Planes at ymin and ymax 1 0 ky(y) σy(y) 1 0Planes at zmin and zmax 1 0 1 0 kz(z) σz(z)Dihedral Corners at xmin, xmax and ymin, ymax kx(x) σx(x) ky(y) σy(y) 1 0Dihedral Corners at xmin, xmax and zmin, zmax kx(x) σx(x) 1 0 kz(z) σz(z)Dihedral Corners at ymin, ymax and zmin, zmax 1 0 ky(y) σy(y) kz(z) σz(z)Trihedral corners kx(x) σx(x) ky(y) σy(y) kz(z) σz(z)

Table 3.2: Parameterization of the different UPML regions for a three-dimensional computational domain.

3.3.4 Implementation in FDTD

Although the UPML formulation presented in Section 3.3.1 is able to match media having electrical

and magnetic conductivities, the FDTD implementation used in this work assumes that these conductivities

are zero. This decision is associated with the fact that an UPML termination for conductive media [9, Sec.

7.10] requires 50% more floating point operations and storage than a standard UPML, which would translate

into an unnecessary computational burden in the antenna problem’s analyzed in this work. So, considering

that the conductivities of the medium being matched are zero, Maxwell-Ampere’s Law (3.8a) in a matched

UPML is written as∂Hz

∂y −∂Hy

∂z∂Hx

∂z −∂Hz

∂x∂Hy

∂x −∂Hx

∂y

= jωε0

s−1x sysz 0 0

0 sxs−1y sz 0

0 0 sxsys−1z

εxxEx

εyyEy

εzzEz

(3.34)

Defining the auxiliary fields (which have no physical meaning)

Dx = ε0εxxsz

sxEx ; Dy = ε0εyy

sx

syEy ; Dz = ε0εzz

sy

szEz (3.35)

it is possible to write (3.34) in the time domain, which yields∂Hz

∂y −∂Hy

∂z∂Hx

∂z −∂Hz

∂x∂Hy

∂x −∂Hx

∂y

=∂

∂t

ky 0 00 kz 00 0 kx

Dx

Dy

Dz

+1ε0

σy 0 00 σz 00 0 σx

Dx

Dy

Dz

(3.36)

The previous system of equations can be discretized with the same scheme as in the Yee algorithm,

and the loss terms averaged with the semi-implicit approximation described in Chapter 2. For example, the

update equation for the Dx component is given by

Dx|n+ 1

2i+ 1

2 ,j,k=

2ε0ky −∆tσy

2ε0ky + ∆tσyDx|

n− 12

i+ 12 ,j,k

+2ε0∆t

2ε0ky + ∆tσy

1∆y

(Hz|ni+ 1

2 ,j+ 12 ,k −Hz|ni+ 1

2 ,j− 12 ,k

)− 2ε0∆t

2ε0ky + ∆tσy

1∆z

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni+ 1

2 ,j,k− 12

) (3.37)

The relations (3.35) can also be written in the time-domain. For the Dx component, we have(kx +

σx

jωε0

)Dx = ε0εxx

(kz +

σz

jωε0

)Ex (3.38a)

30

Page 44: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

By multiplying both sides of (3.38a) by jω the following time-domain expression is obtained

∂t(kxDx) +

σxx

ε0Dx = ε0εxx

∂t(kzEx) + εxxσzEx (3.38b)

The discretization of the previous relation using the Yee scheme yields the following update equation for the

Ex component

Ex|n+ 1

2i+ 1

2 ,j,k=

2ε0kz − σz∆t

2ε0kz + σz∆tEx|

n− 12

i+ 12 ,j,k

+1

ε0εxx

2ε0kx + σx∆t

2ε0kz + σz∆tDx|

n+ 12

i+ 12 ,j,k

− 1ε0εxx

2ε0kx − σx∆t

2ε0kz + σz∆tDx|

n− 12

i+ 12 ,j,k

(3.39)

The update equations for the other field components are obtained using the same procedure.

From the previous expressions we see that inside the UPML the E-field components are updated in

two steps: first, the new values of D˜ are obtained from the H-field values, as in (3.37), and then the new

values of E˜ are obtained from the new values of D˜ , according to (3.39).

The update equations for the H-field components are obtained in a similar way, by using an auxiliary

field B˜ in Faraday’s Law (3.8b)

Bx = µ0µxxsz

sxHx ; By = µ0µyy

sx

syHy ; Bz = µ0µzz

sy

szHz (3.40)

which also yields a two-step update procedure for the H-field components. For the Hx component, the update

equations are:

Bx|n+ 1

2i,j+ 1

2 ,k+ 12

=2ε0ky −∆tσy

2ε0ky + ∆tσyBx|

n− 12

i,j+ 12 ,k+ 1

2+

2ε0∆t

2ε0ky + ∆tσy

1∆z

(Ey|ni,j+ 1

2 ,k+1 − Ey|ni,j+ 12 ,k

)− 2ε0∆t

2ε0ky + ∆tσy

1∆y

(Ez|ni,j+1,k+ 1

2− Ez|ni,j,k+ 1

2

) (3.41a)

Hx|n+ 1

2i,j+ 1

2 ,k+ 12

=2ε0kz − σz∆t

2ε0kz + σz∆tHx|

n− 12

i,j+ 12 ,k+ 1

2+

1µ0µxx

2ε0kx + σx∆t

2ε0kz + σz∆tBx|

n+ 12

i,j+ 12 ,k+ 1

2

− 1µ0µxx

2ε0kx − σx∆t

2ε0kz + σz∆tBx|

n− 12

i,j+ 12 ,k+ 1

2

(3.41b)

3.3.5 Computer Implementation

The computer implementation of the UPML’s update equations is very similar to that presented in

Section 2.2.3 and for this reason the update equations and coefficients for all field components are presented

in the Appendix D. It is important to remark that although the UPML update equations can also be applied

to the main computational domain, by setting all the ki to one and all the conductivities σi to zero in the

updating coefficients, that would translate into an unnecessary waste of computer resources as it would require

twice the memory and CPU time of the standard Yee algorithm. For this reason, in the developed software the

main computational domain uses the update equations presented in Section 2.2.3 and the UPML region those

listed in the Appendix D. In order to determine which set of update equations should be applied to a given

cell, each cell has a flag indicating whether it is an UPML or a standard Yee cell. This concept is illustrated in

the code example C.2, where the two sets of update equations coexist in the same time-stepping algorithm.

It is also important to mention that in the discretized UPML the values of ku and σu, where

u = x,y,z, must be chosen according to the position of the field component within the UPML. So, for a field

31

Page 45: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

component on the cell boundary, the parameters are given by

σu(i) =(

i

N

)n

σu,max ; ku(i) = 1 + (ku,max − 1) ·(

i

N

)n

(3.42a)

and for a field component in the center of a cell

σu(i) =(

i + 0.5N

)n

σu,max ; ku(i) = 1 + (ku,max − 1) ·(

i + 0.5N

)n

(3.42b)

where i is the index of the UPML layer, belonging to the interval [0, N − 1], and N is the UPML thickness in

cells. During the development of the software it has been observed that UPML performance depends heavily

on the correct assignment to each field component of the k and σ values. Failing to do so resulted in reflection

errors much bigger than those published and for some cases in instability.

3.3.6 UPML validation

Matching to a vacuum

In order to evaluate the performance of the implemented UPML, two experiments were performed.

In the first experiment, a hard point source (Section 5.2) was placed at the center of a computational domain

of 13 by 13 by 13 cells of vacuum, surrounded by an UPML layer of 5, 8 and 10 cells of thickness. The cell size

was 1.5 cm, which provided a mesh density of 10 cells per wavelength at the highest frequency of interest, and

the time-step was 27.424 ps. The point source excited the Ex component of the cell(6,6,6) with a gaussian

signal having a -20 dB bandwidth of 2 GHz and the Ex field was measured at cell(6,12,6), which was side by

side with the UPML layer.

In order to obtain a reference solution, free of undesired reflections, a domain of 106 by 106 by 106

cells was simulated using the same setup, yielding a boundary-free solution for 225 time-steps. The reflection

error was computed according to the following formula [24]:

R =F∣∣Ex(t)− Eref

x (t)∣∣

FErefx (t)

(3.43)

where Ex(t) is the field measured in the smaller domain, Erefx (t) is the reference field, measured with no

reflections, and F denotes the Fourier transform.

Figure 3.2: Reflection error versus frequency for different values of the UPML thickness.

32

Page 46: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

The reflection error, shown in Fig. 3.2, is in good agreement with the results obtained by various

authors [20, 21, 23, 24], with reflection errors below -70 dB and -80 dB over the whole frequency range

respectively for an 8 cell and 10 cell thick UPML. These UPMLs are available as a default in the developed

software. Despite having a lower performance, similar to that of Mur absorbing boundary conditions, the 5

cell UPML was also included in the developed software since it’s performance is sufficient to yield results with

engineering value.

Matching to heterogeneous media: A microstrip termination

It has been shown [25] that the UPML can effectively work as a termination for an inhomogeneous

medium, if ¯s is chosen independently of the host medium. This means that in order to build an UPML matched

to a heterogeneous host medium, only the εii, σii, µii and σ∗ii parameters of (3.9) are chosen according to

the medium that is adjacent to that UPML region.

For the case of a transmission line, such as a microstrip, this effectively corresponds to extending

its cross section through the UPML to the outer boundary of the computational domain, which is terminated

by a PEC wall. For this case, like was mentioned in Section 3.3.2, the value of σi,max should be chosen using

the effective relative permittivity of the microstrip line in (3.32), which yields the following expression [24]

σi,max =n + 1

150π√

εeff(3.44)

Although the implemented UPML does not support host media with nonzero conductivities, the

particular case of PEC materials can be handled by appropriately changing the UPML updating coefficients

(presented in Appendix D). If, for example, the host medium has an infinite σxx, then the Cx coefficients are

modified as follows:

C1x = −1 ; C2x = 0 ; C3x = 0 (3.45)

Figure 3.3: Geometry of the microstrip line and computational domain used to assess UPML’s capacity forterminating heterogeneous media.

For the experiment, a 50 Ω microstrip line with the geometry shown in Fig. 3.3 was simulated using

33

Page 47: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

the waveguide port described in Section 5.4 which was excited with a differentiated gaussian signal having a

bandwidth at -20 dB between 0.5 GHz and 20 GHz. The port was placed at the beginning of the line and the

computational domain was terminated by an UPML layer of 10 cells. The parameter σmax for the end walls

was calculated according to (3.44) using an effective permittivity εeff = 1.872 calculated with the following

formula [26, Sec. 3.8]

εeff =εr + 1

2+

εr − 12

1√1 + 12 h/W

(3.46)

where εr is the permittivity of the substrate, h is its height, and W is the width of the strip conductor.

Additionally, as suggested by the studies conducted in [24], kmax = 6 was used for the end walls and kmax = 20for the side walls, in order to increase the absorption of evanescent waves.

A minimum mesh density of 20 cells per wavelength was used for the x and y directions and a

density of 60 cells per wavelength along the z axis was required to accurately discretize the thickness of

the microstrip’s substrate. The computational domain’s dimensions were 64 by 40 by 40 cells and the used

time-step was 0.294 ps.

The calculated S11 parameter of the microstrip line, shown in Fig. 3.4, shows that the UPML

effectively simulates the extension to infinity of the line, since the reflection factor is under -50 dB for almost

the whole simulated band of frequencies.

Figure 3.4: Return loss of the microstrip line terminated with a 10 cell UPML.

34

Page 48: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 4

Sub-cellular methods

In Chapter 2 it was mentioned that the accuracy of an FDTD simulation, involving antennas or

other structures with fine geometrical details, depends heavily on the geometrical fidelity of the discretization,

which sometimes leads to the use of a very dense mesh. However, situations arise in antenna problems for

which having a fine enough mesh is impractical, due to the enormous computational resources needed. One

of such situations occurs when trying to model a wire whose radius is much smaller than the wavelength, so

that even with a mesh density of 30 cells per wavelength the cross-section of the wire is smaller than the

cell’s area. In order to correctly model thin wires without using a small cell size, a thin wire model has been

included in the developed software. The formulation of the model is presented in Sec. 4.2.

Another problem arises when modeling interfaces between distinct media. It was shown in Sec. 2.5

that by using a non-uniform cartesian mesh it is possible to locate the cell faces at the boundaries between

different media for the case when these are parallel to the grid’s axes (Fig. 2.5(b)). This behavior is desirable

since it reduces the probability of having cells intersected by different media, which would lead to an inaccurate

discretization of the structure, since Yee’s algorithm assumes that the material properties are constant within

a cell.

However, recalling the structure of the Yee cell shown in Fig. 2.1, it can be seen that the field com-

ponents are located at either the cell’s faces or edges, which leads to some fuzziness concerning the correctness

of the field updating coefficients (2.25)-(2.30), since these are calculated based only on the properties of the

cell to which the associated field component belongs to. To remove the inaccuracies associated with this

fuzziness, a modification to the update coefficients, based on the definition of effective material parameters,

is presented in Sec. 4.3.

The previously mentioned models belong to the category of sub-cellular methods because their

derivation is based on the assumption that the field and or material properties can vary within a cell. The

applicability of the latter assumption is not evident when dealing with the FDTD update equations derived

from the differential form of Maxwell’s equations. To make things clearer, an FDTD formulation using the

integral form of Maxwell’s equations is presented in the next section.

35

Page 49: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

4.1 FDTD Formulation using the Integral Form of Maxwell’s Equa-

tions

It will now be demonstrated that the Yee algorithm can also be derived using the integral version

of Maxwell’s equations: ∮C

E˜ · dl˜ = −x

S

¯σ∗H˜ · dS˜ − ∂

∂t

x

S

µ0 ¯µH˜ · dS˜ (4.1a)∮C

H˜ · dl˜ =x

S

¯σE˜ · dS˜ +∂

∂t

x

S

ε0 ¯εE˜ · dS˜ (4.1b)

S

ε0 ¯εE˜ · dS˜ = Q (4.1c)

S

µ0 ¯µH˜ · dS˜ = Qm (4.1d)

where Q and Qm are respectively the free electric and magnetic charge inside the surface S. The idea involves

applying Maxwell-Faraday’s Law (4.1a) and Maxwell-Ampere’s Law (4.1b) to a Yee cell, using for that purpose

integration paths and surfaces like those shown in Fig. 4.1.

Figure 4.1: Integration contours Ci and associated surfaces Si used for the derivation of the Yee algorithmusing the integral form of Maxwell’s equations.

Applying Maxwell-Ampere’s law along, for example, the contour C3, we obtain∮C3

H˜ (x, y, z, t) · dl3˜ =x

S3

σzz(x, y, z)Ez(x, y, z, t)z˜ · dS3˜ +∂

∂t

x

S3

ε0εzz(x, y, z)Ez(x, y, z, t)z˜ · dS3˜︸ ︷︷ ︸R.H.S.

(4.2)

36

Page 50: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Assuming that the value of a field component at the middle of an edge equals the average value of the field

along the edge, the left-hand side term can be approximated as∮C3

H˜ (x, y, z, t) · dl3˜ ∼=(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni− 1

2 ,j,k+ 12

)∆y −

(Hx|ni,j+ 1

2 ,k+ 12−Hx|ni,j− 1

2 ,k+ 12

)∆x (4.3)

The right-hand side term of (4.2) can be approximately written as

R.H.S. ∼= ∆x∆yσzzEz|ni,j,k+1/2 + ∆x∆yε0εzz∂

∂tEz|ni,j,k+1/2 (4.4)

where it was assumed that Ez|ni,j,k+1/2 equals the average value of Ez over the surface S3 and the medium

parameters σzz and εzz are constant over the same surface.

The time derivative in (4.4) can be approximated by a central-difference expression and Ez|ni,j,k+1/2

can be substituted by a semi-implicit approximation (as was done in Section 2.2.2), which leads to the following

expression

ε0εzz

Ez|n+1/2i,j,k+1/2 − Ez|n−1/2

i,j,k+1/2

∆t=

1∆x

(Hy|ni+1/2,j,k+1/2 −Hy|ni−1/2,j,k+1/2

)− 1

∆y

(Hx|ni,j+1/2,k+1/2 −Hx|ni,j−1/2,k+1/2

)− σzz

Ez|n+1/2i,j,k+1/2 + Ez|n−1/2

i,j,k+1/2

2

(4.5)

Isolating Ez|i,j,k+1/2 on the left-hand side yields the following explicit time-stepping formula

Ez|n+1/2i,j,k+1/2 =

2ε0εzz −∆tσzz

2ε0εzz + ∆tσzzEz|n−1/2

i,j,k+1/2

+1

∆x

2∆t

2ε0εzz + ∆tσzz

(Hy|ni+1/2,j,k+1/2 −Hy|ni−1/2,j,k+1/2

)− 1

∆y

2∆t

2ε0εzz + ∆tσzz

(Hx|ni,j+1/2,k+1/2 −Hx|ni,j−1/2,k+1/2

) (4.6)

which is the same expression used in the Yee algorithm that was obtained in Chapter 2. The time-stepping

relations for the H-field components are obtained in a similar way, by applying Faraday’s Law (4.1a) to contours

C4, C5 and C6.

It is interesting to observe that Yee’s algorithm was obtained by assuming that a field component A|i,j,kand the material parameter γ|i,j,k are constant in an interval](

i− 12

)∆x,

(i +

12

)∆x

[×](

j − 12

)∆y,

(j +

12

)∆y

[×](

k − 12

)∆z,

(k +

12

)∆z

[

While the first assumption is quite natural if no a priori knowledge about the field’s behavior is

available, it is possible to consider other types of field variation, as will be seen in the derivation of the thin-

wire model in Section 4.2. The second assumption indicates that the original formulation of the Yee algorithm

does not properly model the boundaries between different media, since the regions of constant parameters are

spatially offset by a half space increment from the Yee cell. In Section 4.3 it is shown how the modeling of the

interfaces can be improved by means of a simple modification to the standard algorithm derived in Chapter 2.

37

Page 51: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

4.2 Thin-wire model

The integral-based derivation of FDTD presented in the previous section permits the incorporation

of near-field physics into the time-stepping expressions of specific field components. This characteristic allowed

the development of a thin-wire model [27] which permits the inclusion, with very good results, of PEC wires

having a diameter smaller than the cell’s length into FDTD simulations.

Consider the wire segment of radius r0 that is represented in Fig. 4.2(a), where the wire’s axis of

symmetry is aligned with both the grid’s z axis and the Ez|i,j,k+1/2 field component.

Figure 4.2: (a) Application of Faraday’s Law for derivation of the thin wire model. (b) H-field componentsupdated using the thin wire model and integration path for calculation of the current I.

To incorporate near-field physics into the problem, it is assumed that the magnitude of each looping

H˜ component and of each radial E˜ component varies as 1/r, where r is the radial distance from the center

of the wire. This corresponds to the insertion of static-field behaviour into the dynamic FDTD model. The

field components parallel to the wire are assumed to be constant, like in the standard Yee algorithm.

The application of the previous assumptions to the geometry of Fig. 4.2(a) yields the following

expressions for the fields:

Hy (x, y, (k + 1/2)∆z) = Hy|i+1/2,j,k+1/2 ·∆x

2√

x2 + y2= Hy|i+1/2,j,k+1/2 ·

∆x

2r(4.7a)

Ex (x, y, k∆z) = Ex|i+1/2,j,k ·∆x

2r(4.7b)

Ex (x, y, (k + 1)∆z) = Ex|i+1/2,j,k+1 ·∆x

2r(4.7c)

Ez (i∆x, j∆y, z) = Ez|i,j,k+1/2 = 0 (4.7d)

Ez ((i + 1)∆x, j∆y, z) = Ez|i+1,j,k+1/2 (4.7e)

38

Page 52: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

The application of Faraday’s Law to contour C gives

− µ∂

∂t

x

S

H˜ · dS˜ =∮

C

E˜ · dl˜ ⇔− µ

∂t

∫ ∆x

r0

∫ ∆z

0

Hy|ni+ 12 ,j,k+ 1

2

∆x

2rdzdr =

∫ ∆x

r0

Ex|ni+ 12 ,j,k+1 ·

∆x

2rdr −

∫ ∆x

r0

Ex|ni+ 12 ,j,k ·

∆x

2rdr

− Ez|ni+1,j,k+ 12∆z

µ∆z∆x

2∆tln(

∆x

r0

)(Hy|

n+ 12

i+ 12 ,j,k+ 1

2−Hy|

n− 12

i+ 12 ,j,k+ 1

2

)=

∆x

2ln(

∆x

r0

)[Ex|ni+ 1

2 ,j,k − Ex|ni+ 12 ,j,k+1

]+ ∆zEz|ni+1,j,k+ 1

2

which can be transformed into the following special time-stepping relation for the Hy|i+ 1

2 ,j,k+ 12

component:

Hy|n+ 1

2i+ 1

2 ,j,k+ 12

= Hy|n− 1

2i+ 1

2 ,j,k+ 12

+∆t

µ∆z

(Ex|i+ 1

2 ,j,k − Ex|i+ 12 ,j,k+1

)+

2∆t

µ∆x ln (∆x/r0)Ez|ni+1,j,k+ 1

2(4.8)

The time-stepping relations for the field components Hy|i− 12 ,j,k+ 1

2, Hx|i,j+ 1

2 ,k+ 12

and Hx|i,j− 12 ,k+ 1

2can be

derived by applying Faraday’s Law to similar integration paths.

The thin-wire model was implemented in the developed software simply by applying the special

time-stepping relations to the looping H-field components immediately adjacent to the wire, as shown in

Fig. 4.2(b). Since the looping H-field component is assumed to be outside the wire, the model is valid only for

r0 < ∆/2, where ∆ is the smallest cell length in a direction perpendicular to the wire’s axis. It is important

to notice that the other field components, namely the radial electric field components, are updated with the

standard time-stepping relations, although one could also derive special relations for them. Since experiments

show that this model yields good results, that level of detail may be neglected for most applications.

It is also important to mention that even though the Ez|i,j,k+1/2 field component does not need

a special update expression since it has a value of zero, one could be interested in calculating the current

I flowing through the wire. This current can be determined by applying Ampere’s Law to contour P of

Fig. 4.2(b), yielding

I =∮

P

H˜ · dl˜ =

∫ ∆x2

−∆x2

Hx|i,j− 12 ,k+ 1

2

∆y

2

√x2 +

(∆y2

)2dx−

∫ ∆x2

−∆x2

Hx|i,j+ 12 ,k+ 1

2

∆y

2

√x2 +

(∆y2

)2dx

−∫ ∆y

2

−∆y2

Hy|i− 12 ,j,k+ 1

2

∆x

2√(

∆x2

)2+ y2

dy +∫ ∆y

2

−∆y2

Hy|i+ 12 ,j,k+ 1

2

∆x

2√(

∆x2

)2+ y2

dy

I = ∆y argsh(

∆x

∆y

)(Hx|i,j− 1

2 ,k+ 12−Hx|i,j+ 1

2 ,k+ 12

)+ ∆x argsh

(∆y

∆x

)(Hy|i+ 1

2 ,j,k+ 12−Hy|i− 1

2 ,j,k+ 12

)(4.9)

where the displacement current has been neglected since it was assumed that the field’s behavior is essentially

electrostatic in the wire’s vicinity.

39

Page 53: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

4.3 Effective material parameters

As was observed in Section 4.1, the original formulation of the Yee algorithm does not properly

model the interfaces between cells having different materials. It is easy to see that the coefficients (2.25)-

(2.30) derived in Chapter 2 introduce some fuzziness concerning the exact location of the boundary between

cells having different media.

The error arises when considering, for example, the Ez|i,j,k+1/2 component of the electric field in

Fig. 4.3. According to the original algorithm’s update coefficients, this component belongs to the cell with

indices (i,j,k) and the material parameters to be used are εzz|1 and σzz|1. However, it can be seen that

physically this field component is tangent to the interface between four potentially different cells, which means

that the component is shared between them and the use of the parameters of only one cell would lead to

uncertainty about the position of this interface.

Figure 4.3: Interface between cells of different materials and integration path C for the application ofMaxwell-Ampere’s Law for effective parameters calculation.

This uncertainty can be removed by application of Maxwell-Ampere’s Law along the contour C of

Fig. 4.3, considering that the Ez field is constant over surface S and the value of a H-field component at the

middle of an edge of C equals the average value of the field along the same edge. This procedure yields the

following update equation:

Ez|n+1/2i,j,k+1/2 =

2ε0εeffzz −∆tσeff

zz

2ε0εeffzz + ∆tσeff

zz

Ez|n−1/2i,j,k+1/2

+1

∆x

2∆t

2ε0εeffzz + ∆tσeff

zz

(Hy|ni+1/2,j,k+1/2 −Hy|ni−1/2,j,k+1/2

)− 1

∆y

2∆t

2ε0εeffzz + ∆tσeff

zz

(Hx|ni,j+1/2,k+1/2 −Hx|ni,j−1/2,k+1/2

) (4.10)

40

Page 54: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

where

εeffzz =

εzz|1A1 + εzz|2A2 + εzz|3A3 + εzz|4A4

A1 + A2 + A3 + A4(4.11)

σeffzz =

σzz|1A1 + σzz|2A2 + σzz|3A3 + σzz|4A4

A1 + A2 + A3 + A4(4.12)

and Ai is the area of surface Si. This result is the same as that obtained in [9, Sec. 11.6.2] for the case of

irregular nonorthogonal unstructured grids.

The parameters that affect the time-stepping relations for the H-field components can also be

modified in order to better model the interface between the two media. For this case, however, the field has a

discontinuity at the interface since the H-field components are perpendicular to it. This physical consideration

contradicts the previous assumption that the field is constant on both sides of the interface. One way to

mitigate this problem [28] is to enforce the continuity across the interface of the normal components of the

magnetic flux density B˜ and equivalent magnetic current density J˜m, by considering that at the interface

these are given by

B⊥ = µ0µeffH1⊥ + H2⊥

2(4.13)

Jm⊥ = σ∗effJm1⊥ + Jm2⊥

2(4.14)

where the components with the subscripts 1 and 2 refer to the field values at each side of the interface. This

yields the following effective parameters

µeff = 2µ1µ2

µ1 + µ2(4.15)

σ∗eff = 2σ∗1σ∗2

σ∗1 + σ∗2(4.16)

In order to more accurately model the interfaces between dissimilar media, the implemented FDTD

update algorithm was modified simply by inserting the effective parameters into the corresponding update

coefficients (2.25)-(2.30).

41

Page 55: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 5

Antenna Feed Models

One of the most important aspects in every FDTD simulation is the modeling of the excitation

sources that introduce electromagnetic energy into the computational domain. This modeling comprises the

choice of the signal used to excite the antenna and how this signal is to be applied on the field components of

the FDTD grid. This chapter describes the excitation signals used in the developed software and three kinds

of antenna feed models: a point-source, a resistive voltage source and a simple waveguide source.

5.1 Excitation Signals

As was mentioned in Chapter 1, one of FDTD’s advantages over frequency domain methods is its

ability to provide broadband results with a single run. So, in order to explore this advantage, the signal used

for the excitation must have significant spectral content in the band of frequencies of interest. Additionally,

the spectral content outside this band should be negligible, in order to maximize the signal to numerical noise

ratio, and to avoid aliasing phenomena when transforming quantities to the frequency-domain, using the FFT.

Finally, having in account that at the beginning of a simulation all field quantities are zero, the excitation

waveform must also start its variation from this value.

A commonly used signal satisfying the previous requirements is the Gaussian pulse, shown in

Fig. 5.1(a), which is given by

S(t) = S0 exp[− (t− t0/τp)

2/2]

(5.1a)

where τp is the characteristic time. The magnitude spectrum of this signal is given by

S(f) =√

2πτpS0 exp[− (2πfτp)

2/2]

(5.1b)

As can be seen in Fig. 5.1(b), the Gaussian signal’s spectrum peaks at the frequency f=0 and its

10%-amplitude (-20 dB power) bandwidth extends from 0 to f−20dB=√

ln 10/√

2πτp∼= 0.3415/τp. In the

developed software, τp is automatically chosen such that f−20dB is equal to the maximum frequency specified

by the user and the value of t0 is calculated so that S(t=0)=1x10−4S0.

However, since the Gaussian signal has a nonzero DC component, in some occasions its application

may originate a residual static field (the FDTD lattice implicitly stores charge as discussed in Appendix B) that

may corrupt the frequency domain results obtained through the FFT due to the windowing of time domain

data. Moreover, the significant low-frequency content may produce a long settling time for the solution. So,

for situations where low-frequency behavior is not of interest, a modulated Gaussian signal (Fig. 5.1(c)) can

42

Page 56: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

be specified, i.e, a signal of the form

S(t) = S0 exp[− (t− t0/τp)

2/2]cos (2πfct) (5.2)

where fc is the carrier’s frequency.The modulated signal has a −20 dB bandwidth extending from

fmin = fc −√

ln 10/√

2πτp to fmax = fc +√

ln 10/√

2πτp. The values of fc and τp are automatically

calculated according to the fmin and fmax values specified by the user.

Another signal available in the software, having reduced low-frequency content, that in some appli-

cations may constitute an alternative to the base-band Gaussian pulse, is the differentiated Gaussian signal,

shown in Fig. 5.1(a), which is given by

S(t) = −S0

(t

τp

)exp

−[(t/τp)2 − 1

]/2

(5.3a)

with the following Fourier transform

S(f) = −j 2πf√

2π τ2p S0 exp

−[(2πfτp)

2 − 1]/2

(5.3b)

As can be seen in Fig. 5.1(b), the spectrum peaks at fp = 1/2πτp and the -20 dB power bandwidth extends

from approximately 0.06fp to 2.8fp [9, Chapter 14].

Finally, for those situations where the user really desires to analyze the antenna’s behavior at a single

frequency fc, a ramped sinusoidal excitation has been included in the software, i.e, a signal of the form

S(t) = S0 [1− exp (−t/τ)] sin(2πfct) (5.4)

where τ is a time constant calculated in order to have a smooth ramp. In the developed software

τ = −3/fc ln 0.001, which yields a sinusoid that is ramped from 0 to 1 over three periods (Fig. 5.1(d)).

It must be noted, however, that in general this signal leads to longer simulation times because the compu-

tation can only be stopped when the sinusoidal steady-state is reached. For this purpose, the software will

continually monitor the total energy in the computational domain and stop the simulation when its relative

variation during a period is less than a specified value, for example, 1%.

Figure 5.1: Excitation signals available in the developed software. (a) Gaussian and differentiated Gaussiansignals represented in the time-domain and (b) in the frequency-domain; (c) Modulated Gaussian pulse; (d)Ramped sinusoidal excitation.

43

Page 57: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

5.2 Point Source

The easiest way of exciting the FDTD grid is simply by applying one of the signals presented in

the previous section directly to an E- or H-field component of a single Yee cell, which can be done using two

different approaches, both implemented in the developed software. First, there is the possibility of making the

field component have exactly the time-variation of the excitation signal, i.e., considering for example the Ez

field component at cell (i,j,k), the excitation signal S(t) is applied as

Ez|ni,j,k+ 12

= S|n (5.5)

This type of excitation technique is known as a hard source since the field at the excitation location is imposed

by an analytic expression.

One of the disadvantages of hard sources is the fact that waves propagating towards the source

(as a result of reflections originating at the structure under analysis), will suffer a non-physical reflection at

the source location, that can negatively influence the accuracy of the calculated fields. So, a second way of

performing the excitation is to use a so-called soft source, where instead of forcing the field component to

assume the value of the excitation, the latter is added to the fields calculated by the normal time-stepping

procedure, which results in the modified update equation (here shown for the Ez component):

Ez|n+ 1

2i,j,k+ 1

2=C1(i,j,k)

z Ez|n− 1

2i,j,k+ 1

2+ C2(i,j,k)

z

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni− 1

2 ,j,k+ 12

)− C3(i,j,k)

z

(Hx|ni,j+ 1

2 ,k+ 12−Hx|ni,j− 1

2 ,k+ 12

)+ C1(i,j,k)

z S|n(5.6)

The soft source allows the reflected waves to pass through the source location without suffering non-physical

reflections.

5.3 Resistive voltage source

The developed software also has a resistive voltage source, which is a more realistic excitation source

than the point excitation presented in the previous section.

5.3.1 Model description

The source is modeled by a voltage source of internal resistance Rs that is connected to a unidi-

mensional virtual transmission line of characteristic impedance also equal to Rs. The line is said to be virtual

for the reason that it does not belong to the 3D computational domain, being rather a numerical model that

will be useful to separate the incident and reflected voltage waves. For practical purposes, this source can be

regarded as a lumped voltage source that is placed at the location of a single grid cell located between two

metallic objects, such as the gap that exists between the arms of a dipole antenna, as exemplified in Fig. 5.2.

The voltages and currents in the line are updated using the following expressions [29]:

I|n+ 12

k′+ 12

= I|n−12

k′+ 12−(

1Rs

)(v∆t

)[V |nk′+1 − V |nk′

](5.7a)

V |n+1k′ = V |nk′ −Rs

(v∆t

)[I|n+ 1

2k′+ 1

2− I|n+ 1

2k′− 1

2

](5.7b)

where v is the phase velocity for the transmission line and ∆ is the spatial discretization step.

44

Page 58: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 5.2: Representation of the unidimensional virtual transmission line used to implement the resistivevoltage source and coupling to the 3D FDTD grid.

The transmission line is excited at the index k′ = k′source, by adding the value of the excitation

signal Vexc(t) to the voltage value already present on the line, corresponding to the following update relation

V |n+1k′source

= V |nk′source−Rs

(v∆t

)[I|n+ 1

2k′source+

12− I|n+ 1

2k′source− 1

2

]+ Vexc|n+1 (5.8)

which is equivalent to a soft source that generates voltage and current waves propagating both to the left and

to the right of the excitation point. The wave propagating to the left is an undesired wave and for this reason

a matched load, that models the voltage source’s internal impedance, is placed at k′ = 0, being numerically

implemented by applying Mur’s first order absorbing boundary condition [19] to the voltage value at k′ = 0:

V |n+1k′=0 = −V |n−1

k′=1 +v∆t−∆v∆t + ∆

[V |n+1

k′=1 + V |n−1k′=0

]+

2∆c∆t + ∆

[V |nk′=0 + V |nk′=1] (5.9)

The coupling between the virtual transmission line and the FDTD lattice is done as follows: The

voltage at the end of the line, which corresponds to index k′end, is converted to an electric field Einc by dividing

it by the cell’s length along the field’s direction, which, for the case of Fig. 5.2, is ∆z. Then, Einc is introduced

into the FDTD update equations in one of two possible ways:

– If the source is not connected to a thin wire (as defined in Sec. 4.2), then the update equation is

given simply by

Ez|n+ 1

2i,j,k+ 1

2= C1(i,j,k)

z Einc|n−12 (5.10)

– If, instead, the source is connected to a thin wire, it is necessary to apply thin-wire model update

45

Page 59: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

equations to the circulating H-fields, here exemplified for the Hy component:

Hy|n+ 1

2i+ 1

2 ,j,k+ 12

= Hy|n− 1

2i+ 1

2 ,j,k+ 12+

∆t

µ∆z

(Ex|i+ 1

2 ,j,k − Ex|i+ 12 ,j,k+1

)+

2∆t

µ∆x ln (∆x/r0)

(Ez|ni+1,j,k+ 1

2− Einc|n

)(5.11)

which is similar to the magnetic frill excitation available in some MoM codes.

The coupling between the FDTD lattice and the virtual transmission line is performed by assigning

the current calculated from the local magnetic field values to the current at the end of the transmission line,

I|k′end+ 12. The current is calculated using the expression

I|n+ 12

k′end+ 12

= ∆y[Hy|

n+ 12

i+ 12 ,j,k+ 1

2−Hy|i− 1

2 ,j,k+ 12

]−∆x

[Hx|

n+ 12

i,j+ 12 ,k+ 1

2−Hx|i,j− 1

2 ,k+ 12

](5.12)

or, if a thin wire model is being used to account for the radius of the wire, the expression (4.9) that was

derived in Chapter 4.

5.3.2 Calculation of Impedance and S parameters

Input impedance and admittance

Since the time-domain current and voltage signals at the terminals of the antenna (or other structure

connected to the source) are directly accessible, respectively in I|kend+ 12

and V |kend , the input impedance and

admittance are calculated as follows

Zin(f) =FFTV |kend

FFTI|kend+ 12

; Yin(f) =1

Zin(f)(5.13)

For a simulation where there are n defined ports, the developed software is able to calculate the

impedance and admittance matrices by proceeding as follows:

1. The excitation signal is applied only to port i. The remaining ports will be short-circuited, i.e, the

voltages Vj |k′endjwith i 6= j are set to zero, which is achieved by not updating the FDTD lattice with

voltage values from the respective virtual transmission lines;

2. The previous step yields the voltage and current at port i and also the short-circuit currents at the

remaining ports. With these values, the admittance matrix elements Yii and Yji are calculated;

3. The previous steps are repeated until all the n ports have been simulated and the admittance matrix Y

is complete. Then, the impedance matrix Z is calculated by performing the inversion of the Y matrix.

S parameters

The resistive voltage source implemented in the developed software also allows the calculation of

scattering parameters. The Sii elements of the S matrix are calculated as follows:

Sii(f) =Ys,i − Yii(f)Ys,i + Yii(f)

(5.14)

where Ys,i = 1 / Zs,i is the internal admittance of port i.

To calculate the Sji parameters it is necessary to obtain the incident voltage at port i, which is

not directly available in the virtual transmission line, as the line’s voltage results from the superposition of

the incident and reflected waveforms. In order to obtain the incident voltage, a second transmission line, not

46

Page 60: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

connected to the FDTD lattice and terminated with a Mur ABC at k′ = kend, is simulated in parallel with

the connected one. So, having the incident voltage at port i, V inci |k′end,i

, and the voltage Vj |k′end,jin the

transmission line of port j, the element Sji can be calculated as follows

Sji(f) =FFTVj |k′end,j

FFTV inc

i |k′end,i

√Rs,i

Rs,j(5.15)

5.4 Simple Waveguide Source

The third excitation source implemented in the developed software is the waveguide source. This

source is suited to problems where the antenna, or other structure under analysis, is excited through a wave-

guide.

5.4.1 Model description

To illustrate how this source is realized, consider the geometry shown in Fig. 5.3, that is composed of

a rectangular waveguide connected to an arbitrary structure. From guided propagation theory, it is known that a

waveguide structure supports, in general, a number of distinct propagating modes, which can have significantly

different spatial distributions of E- and H-fields. For this reason, when calculating the S parameters of a system

containing waveguide ports, it is necessary to ensure that the waveguide is only being excited with a single

mode. In the developed software, this is done by specifying the transverse field distribution of the dominant

mode in the source plane located at isrc, using the total-field/reflected-field modal formulation described in

[9, Chapter 5, Section 10.2], which launches a wave with the desired transverse field distribution along the

positive direction of the x axis. This is achieved by applying the following update equations to the transversal

field components:

Ey|n+ 1

2isrc,j+ 1

2 ,k= C1yEy|

n− 12

isrc,j+ 12 ,k

+ C2y

(Hx|nisrc,j+ 1

2 ,k+ 12−Hx|nisrc,j+ 1

2 ,k− 12

)− C3y

(Hz|nisrc+ 1

2 ,j+ 12 ,k −Hz|nisrc− 1

2 ,j+ 12 ,k

)+ C3yHn

z,inc(j, k)(5.16a)

Ez|n+ 1

2isrc,j,k+ 1

2= C1zEz|

n− 12

isrc,j,k+ 12

+ C2z

(Hy|nisrc+ 1

2 ,j,k+ 12−Hy|nisrc− 1

2 ,j,k+ 12

)− C3z

(Hx|nisrc,j+ 1

2 ,k+ 12−Hx|nisrc,j− 1

2 ,k+ 12

)− C2zH

ny,inc(j, k)

(5.16b)

Hy|n+ 1

2isrc− 1

2 ,j,k+ 12

= D1yHy|n− 1

2isrc− 1

2 ,j,k+ 12

+ D2y

(Ez|nisrc,j,k+ 1

2− Ez|nisrc−1,j,k+ 1

2

)−D3y

(Ex|nisrc− 1

2 ,j,k+1 − Ex|nisrc− 12 ,j,k

)−D2yEn

z,inc(j, k)(5.16c)

Hz|n+ 1

2isrc− 1

2 ,j+ 12 ,k

= D1zHz|n− 1

2isrc− 1

2 ,j+ 12 ,k

+ D2z

(Ex|nisrc− 1

2 ,j+1,k − Ex|nisrc− 12 ,j,k

)−D3z

(Ey|nisrc,j+ 1

2 ,k − Ey|nisrc−1,j+ 12 ,k

)+ D3zE

ny,inc(j, k)

(5.16d)

where Hy,inc(j, k), Hz,inc(j, k), Ey,inc(j, k) and Ez,inc(j, k) are the transversal components of the incident

mode’s field distribution.

Although for the case of the rectangular waveguide shown in Fig. 5.3 the field distribution of the

dominant TE10 mode could be calculated analytically, the approach implemented in the software consists in

calculating the mode’s distribution numerically. This approach is more general since it allows the determination

of the incident mode’s field distribution for waveguides for which no analytical solution exists, such as a

microstrip lines or closed waveguides with arbitrary cross-sections.

47

Page 61: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 5.3: Illustration of the application of a waveguide source to a rectangular waveguide connected to anarbitrary structure.

The obtention of the dominant mode’s field distribution is performed using a technique called

bootstrapping that consists in running a preliminary FDTD model of the waveguide, terminated by an UPML,

that is long enough to decay all the undesired evanescent fields. This is accomplished by exciting the waveguide

with a pre-defined field distribution, which can be, for example, a y or z oriented uniform electric field similar

to that of a plane wave. The field distribution at the far end is stored in main memory, in order to be used

in the simulation of the waveguide+structure problem, i.e, by applying the calculated field components in the

update equations (5.16).

Obviously, there is one drawback in this approach: the user must have an a priori knowledge of the

kind of modes supported by the waveguide in the frequency band for which the simulation is being performed,

otherwise it is not certain that the numerically calculated mode effectively corresponds to a single propagating

mode. Nevertheless, for those situations where a dominant mode exists, this technique has proven very useful

in the analysis of typical structures, such as rectangular waveguides, coaxial, microstrip and strip lines.

As an example of the practical usefulness of this technique, suppose that the user knows that the

waveguide of Fig. 5.3 is going to be excited with a mode for which the electric field is primarily oriented along

the z axis. This corresponds to the TE10 mode. So, in the developed software, an initial field distribution like

that shown in Fig. 5.4(a) could be chosen by the user.

Figure 5.4: Calculation of the incident field distribution for a rectangular waveguide. (a) Initial electric fielddistribution; (b) Numerically calculated electric field distribution of the TE01 mode.

It is important to notice that since the bootstrapping technique is performed in the time domain,

48

Page 62: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

during the preliminary FDTD run there will be N potential field distributions at the far end of the waveguide,

where N is the duration in time-steps of the preliminary run. The criterion used to determine which field

distribution best represents the dominant mode is energy based, i.e., considering that A˜(j, k)|n is the numerical

field distribution for time-step n, then the distribution with the maximum energy is chosen using the following

inner product [30]:

||A˜(j, k)|n||2 = Σjmaxj=jmin

Σkmaxk=kmin

(En

y (j, k)Hnz (j, k)− En

z (j, k)Hny (j, k)

)∆yj∆zk (5.17)

where jmin, jmax, kmin and kmax are the limits of the source plane, and ∆yj , ∆zk are respectively the cell

lengths along the y and z axes.

The field distribution measured at the end of the line after the preliminary FDTD run is shown in

Fig. 5.4(b). As can be seen, this distribution is indeed the numerical equivalent of the TE10 mode.

5.4.2 Calculation of S parameters

The port’s reflection factor Sii, where i is the port’s number, is calculated using the concept of

equivalent voltage, Veq. Using this concept, the transverse field distributions at the waveguide port can be

written as

E˜nisrc,j,k = e˜inc(j, k)

(V n

eq,inc + V neq,ref

)+ Σ∞u=1V

nref,ue˜ref,u(j, k) (5.18a)

H˜ nisrc+

12 ,j,k = h˜inc(j, k)

(V n

eq,inc − V neq,ref

)− Σ∞u=1V

nref,uh˜ref,u(j, k) (5.18b)

where

e˜inc(j, k), h˜inc(j, k): normalized E- and H-field distributions of the excited mode determined with

the bootstrapping technique;

V neq,inc, V n

eq,ref : equivalent voltage of, respectively, the incident and reflected waves corresponding

to the excited mode;

V nref,u: equivalent voltage of the reflected wave associated with a spurious mode u;

e˜ref,u(j, k), h˜ref,u(j, k): normalized E- and H-field distributions of the reflected spurious mode u.

It is important to note that in (5.18) both the characteristic impedance of the line and the incident

field distribution were normalized to 1. The normalization of the incident field distribution is done using the

inner product defined in (5.17).

In order to calculate the Sii parameter of the port, it is first necessary to obtain the equivalent

voltages from the computed data. In the developed software, this is achieved by calculating the projection

of the measured field distribution at the port on the incident field distribution of the desired mode, which is

given by

V neq = V n

eq,inc + V neq,ref = Σjmax

j=jminΣkmax

k=kmin

(Ey|nisrc,j,k hn

z,inc(j, k)− Ez|nisrc,j,k hny,inc(j, k)

)∆yj∆zk (5.19)

If, for the waveguide under analysis, the modes are orthogonal (or approximately orthogonal), then this

procedure has the advantage of filtering out hypothetical reflected spurious modes. This means that, for

practical purposes, the waveguide source could be placed very close to a discontinuity, where the fields are

essentially reactive, and still accurate S parameters would be obtained.

However, the projection (5.19) only yields the total equivalent voltage V neq, whereas for the calcu-

49

Page 63: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

lation of the Sii parameter the incident and reflected waveforms are needed. For this reason, an appropriate

technique is required to separate them.

A first attempt to separate the two waveforms consisted in using a signal processing technique based

on Prony’s method [31], that used the equivalent voltages sampled at three distinct planes to estimate, in the

frequency domain, the amplitudes of the incident and reflected waves. This method, however, was found to

be very prone to errors and the results very sensitive to the location of the sampling planes. Due to these

difficulties, a much simpler method, yet very effective, was implemented in the developed software.

The method consists in performing a second preliminary run, with the same FDTD grid used for

the bootstrapping procedure, using the previously calculated dominant mode’s field distribution. Since the

waveguide is terminated by an UPML, the measured waveform of V neq corresponds to the incident voltage

V neq,inc. So, the incident voltage is stored in memory to be used later in the calculation of the Sii parameter,

which is simply given by

Sii(f) =FFTV n

eq − V neq,inc

FFTV neq,inc

(5.20)

For a simulation involving more than one waveguide source, the Sji parameter is given by

Sji(f) =FFTV n

eq,ref |port jFFTV n

eq,inc|port i(5.21)

where it is important to remember that the characteristic impedance of each waveguide has been normalized

to 1.

50

Page 64: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 6

Near-to-Far-Field Transformation

6.1 Introduction

The FDTD method accurately computes the electromagnetic field within a computational domain

that surrounds the structure of interest, being able to directly calculate near-field quantities such as scattering

parameters and impedance/admittance matrices. However, for far-field quantities such as radiation patterns

and gain, it is normally impossible to extend the computational domain to the far-field zone, due to the

(presently) impractical amount of memory and computer-time required for such a simulation. This difficulty

can be overcome quite elegantly by employing a near-to-far-field transformation (NFFT).

There are two well-known near-to-farfield transformation techniques: The first one [9] invokes Huy-

gens’s principle [32] and uses equivalent magnetic M˜ and electric J˜ currents tangential to a virtual surface that

completely encloses the antenna, but is inside the computational domain. Then the equivalent currents are

integrated with the free-space Green’s function weighting to obtain far-field quantities. The second technique

[33] also relies on the use of a virtual surface enclosing the antenna, but the far-field quantities are obtained by

means of the primitive Kirchhoff’s surface integral representation, avoiding the use of the equivalent currents

M˜ and J˜. For this work the first approach was chosen because, although both techniques yield good results,

the first is better documented and has already been successfully used in numerous applications.

The chosen near-to-farfield transformation has two versions: one for time-domain and other for

frequency-domain, each with its advantages and limitations. On the one hand, the time-domain version allows

the obtention of the full transient far-field waveforms at a reduced number of observation points, which can

then be transformed to the frequency-domain with a FFT to obtain broadband frequency results. On the other

hand, the frequency-domain version allows the calculation of the far-fields for a reduced number of frequencies

at a number of points sufficiently large to produce a radiation pattern with good resolution in either two- or

three-dimensions.

The tradeoff made between the two versions is evident: spatial resolution is gained at the expense

of frequency resolution. This tradeoff exists because a general time-domain transformation would require the

storage of all the fields lying on the virtual enclosing surface for each time-step, which would lead to impractical

memory requirements, as the size of the stored data would easily exceed that of the computational domain

itself. For the purposes of this work, the frequency-domain approach will be used, since detailed radiation

pattern plots are required. The implementation of a time-domain transformation may be the subject of future

work.

51

Page 65: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

6.2 Frequency-Domain Transformation

6.2.1 Analytical expressions for the transformation

As mentioned in the previous section, the frequency-domain near-to-farfield transformation uses

equivalent magnetic M˜ and electric J˜ currents in phasor form lying on a virtual surface enclosing the antenna

to calculate the farfields. Since the computational domain is discretized using cartesian cells, and because

the virtual surface can have an arbitrary shape, it is natural to use a parallelepiped, or less formally a box, to

enclose the antenna, as shown in Fig. 6.1.

Figure 6.1: Virtual surface used for the near-to-far-field transformation and coordinate system used for itscalculation.

To obtain the far-field information from the equivalent currents, it is necessary to integrate them

over each of the six faces of the virtual box, here designated surface S. That integration can be done by using

the following pair of vector potentials [32, pp. 285-291]:

A˜ =µ0

x

S

J˜Se−jkR

RdS ∼=

µ0e−jkr

4πrN˜ (6.1)

F˜ =ε0

x

S

M˜Se−jkR

RdS ∼=

ε0e−jkr

4πrL˜ (6.2)

52

Page 66: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

where

N˜ =x

S

J˜S ejkr′ cos ΨdS (6.3a)

L˜ =x

S

M˜S ejkr′ cos ΨdS (6.3b)

r = r r ≡ position of the observation point (x, y, z) (6.3c)

r′ = r′ r′ ≡ position of the source point on S (x′, y′, z′) (6.3d)

R = RR ≡ r − r′ (6.3e)

Ψ ≡ angle between r and r′ (6.3f)

and R is given by the law of cosines in the far-field as

R =[r2 + (r′)2 − 2rr′ cos Ψ

]1/2 ∼=

r − r′ cos Ψ for phase variations

r for amplitude variations(6.3g)

The E˜ and H˜ fields due to the vector potentials (6.1) and (6.2) are given by

E˜ = −jω

[A˜ +

1k2∇(∇ · A˜

)]− 1

ε0∇× F˜ (6.4)

H˜ = −jω

[F˜ +

1k2∇(∇ · F˜

)]+

1µ0∇× A˜ (6.5)

Since observations are made in the far-field, the dominant variation is of the order 1/r and thus the terms in

(6.4) and (6.5) that have variations of the order 1/r2, 1/r3, 1/r4, etc. can be neglected in order to simplify

the expressions. Moreover, taking into account that in the far-field region only the θ and φ components are

dominant, the E-field and H-field components are given, in spherical coordinates, by

Eθ∼= −jω

(Aθ + η0Fφ

)= −jk e−jkr

4πr

(Lφ + η0Nθ

)(6.6a)

Eφ∼= −jω

(Aφ − η0Fθ

)= +

jk e−jkr

4πr

(Lθ − η0Nφ

)(6.6b)

Hθ∼= +

η0

(Aφ − η0Fθ

)= +

jk e−jkr

4πr

(Nφ −

η0

)(6.7a)

Hφ∼= −

η0

(Aθ + η0Fφ

)= −jk e−jkr

4πr

(Nθ +

η0

)(6.7b)

where η0 =√

µ0/ε0 is the intrinsic impedance of free space.

The θ and φ components of the vector phasors N˜ and L˜ are given by

Nθ =x

S

(Jx cos θ cos φ + Jy cos θ sinφ− Jz sin θ

)ejkr′ cos ΨdS (6.8a)

Nφ =x

S

(−Jx sinφ + Jy cos φ

)e+jkr′cosΨdS (6.8b)

53

Page 67: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Lθ =x

S

(Mx cos θ cos φ + My cos θ sinφ− Mz sin θ

)ejkr′ cos ΨdS (6.9a)

Lφ =x

S

(−Mx sinφ + My cos φ

)e+jkr′cosΨdS (6.9b)

These integral expressions can be numerically evaluated for each of the six faces that form the virtual

box S. Considering, for instance, that S is a rectangular box of side dimensions 2x0, 2y0, 2z0 centered in the

origin of the coordinate system, the integrals (6.8) and (6.9) can be particularized for each pair of opposite

faces as follows:

–Faces at x = ±x0:

• Nonzero components of J˜S and M˜S : Jy, Jz, My and Mz

• Exponential phase term:

r′ cos Ψ =r′ · r

=(±x0x + yy + zz) · (x sin θ cos φ + y sin θ sinφ + z cos θ)

=± x0 sin θ cos φ + y sin θ sinφ + z cos θ

• Integration limits: −y0 ≤ y ≤ y0, −z0 ≤ z ≤ z0; dS = dy dz

–Faces at y = ±y0:

• Nonzero components of J˜S and M˜S : Jx, Jz, Mx and Mz

• Exponential phase term:

r′ cos Ψ =r′ · r

=(xx± y0y + zz) · (x sin θ cos φ + y sin θ sinφ + z cos θ)

=x sin θ cos φ± y0 sin θ sinφ + z cos θ

• Integration limits: −x0 ≤ x ≤ x0, −z0 ≤ z ≤ z0; dS = dx dz

–Faces at z = ±z0:

• Nonzero components of J˜S and M˜S : Jx, Jy, Mx and My

• Exponential phase term:

r′ cos Ψ =r′ · r

=(xx + yy ± z0z) · (x sin θ cos φ + y sin θ sinφ + z cos θ)

=x sin θ cos φ + y sin θ sinφ± z0 cos θ

• Integration limits: −x0 ≤ x ≤ x0, −y0 ≤ y ≤ y0; dS = dx dy

54

Page 68: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

The time-averaged Poynting vector’s radial component at a point (r, θ, φ) is given by

Sav(r, θ, φ) =12Re(EθH

∗φ

)+

12Re(−EφH∗

θ

)=

k2

32π2η0r2

(∣∣Lφ + η0Nθ

∣∣2 +∣∣Lθ − η0Nφ

∣∣2) (6.10)

which can be used to calculate the gain G(θ, φ) as

G(θ, φ) = 4πr2 Sav

Pin=

k2

8πη0Pin

(∣∣Lφ + η0Nθ

∣∣2 +∣∣Lθ − η0Nφ

∣∣2) (6.11)

where Pin is the antenna input power at the frequency for which the near-to-far-field transformation is being

calculated.

6.2.2 Calculation of the equivalent MS and JS currents

The equivalent currents are calculated from the tangential E˜ and H˜ field components at the virtual

surface, using the following expressions

J˜S = n˜ ×H˜ (6.12a)

M˜S = −n˜ × E˜ (6.12b)

where n˜ is the surface normal pointing outside of S. The application of (6.12a) to each of the faces of the

box yields:

–Face at i = imin: Jy = Hz, Jz = −Hy,My = −Ez,Mz = Ey (6.13a)

–Face at i = imax: Jy = −Hz, Jz = Hy,My = Ez,Mz = −Ey (6.13b)

–Face at j = jmin: Jx = −Hz, Jz = Hx,Mx = Ez,Mz = −Ex (6.13c)

–Face at j = jmax: Jx = Hz, Jz = −Hx,Mx = −Ez,Mz = Ex (6.13d)

–Face at k = kmin: Jx = Hy, Jy = −Hx,Mx = −Ey,My = Ex (6.13e)

–Face at k = kmax: Jx = −Hy, Jy = Hx,Mx = Ey,My = −Ex (6.13f)

where the i, j, k indices correspond to the actual indices where each virtual surface is located in the cartesian

grid. It is worth mentioning that during the implementation of this near-to-far-field transformation it was

concluded that the enclosing virtual box should be placed as close as possible to the structure without, however,

intersecting it, in order to minimize errors resulting from numerical dispersion (including its anisotropy) and

from spurious reflections due to the UPML.

The phasors E˜ and H˜ are obtained by performing a DFT concurrently with the time-stepping

algorithm, until the simulation finishes and all the fields have sufficiently decayed. The memory requirements

of this procedure are quite reasonable since each field component only requires the storage of two numbers

(real and imaginary part) per frequency. As an example, if the virtual box has dimensions Nx×Ny×Nz cells,

and farfield data for n frequencies is desired, the required memory is

Total memoryNFFT = 4× 2× (2 NxNy + 2 NxNz + 2 NyNz) n

where it is important to remember that for each face there are four tangential field components.

55

Page 69: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

6.2.3 Averaging of the ~E and ~H fields on the virtual surface

The analytical formulation of the near-to-far-field transformation used in this work and presented

in Sec. 6.2.1 assumes that the equivalent currents M˜S and J˜S are collocated. However, since these currents

are calculated from the tangential E˜ and H˜ fields, which are spatially offset on the Yee cell, it is necessary to

perform an average of field values of adjacent cells. Assuming that the E- and H-field components used for

the transformation are located in the center of the Yee cells, as shown in Fig. 6.2, the resulting averaged field

values for the faces located at i = imax and i = imin are given by

Eavgy |i+1/2,j+1/2,k+1/2 =

Ey|i,j+1/2,k + Ey|i,j+1/2,k+1 + Ey|i+1,j+1/2,k + Ey|i+1,j+1/2,k+1

4(6.14a)

Eavgz |i+1/2,j+1/2,k+1/2 =

Ez|i,j,k+1/2 + Ez|i,j+1,k+1/2 + Ez|i+1,j,k+1/2 + Ez|i+1,j+1,k+1/2

4(6.14b)

Havgy |i+1/2,j+1/2,k+1/2 =

Hy|i+1/2,j,k+1/2 + Hy|i+1/2,j+1,k+1/2

2(6.14c)

Havgz |i+1/2,j+1/2,k+1/2 =

Hz|i+1/2,j+1/2,k + Hz|i+1/2,j+1/2,k+1

2(6.14d)

The averaged values for the other faces are obtained by using analogous expressions for the relevant field

components.

Figure 6.2: Geometry used for the averaging of the ~E and ~H fields’ tangential components for the calculationof the equivalent currents ~MS and ~JS .

56

Page 70: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 7

Mesh Generation Algorithm

This chapter describes the algorithm developed for the purpose of automatically generating the

three-dimensional mesh that represents both the geometry and the electrical properties of the structures being

simulated. Although for some problems involving simple geometries the mesh structure and material properties

of each cell could be manually specified by the user, by means, for example, of an input text file, the approach

followed in this work is more general, as the developed meshing algorithm is capable of automatically generating

uniform and non-uniform meshes for structures having potentially very complex geometries. This allows the

software to simulate a broad range of structures, which is not limited to antennas, as discussed in Appendix

F.

Since the developed software does not have 3D solid/surface modeling capabilities, as the develop-

ment of such features is outside the scope of this work, the structures can be first designed in an appropriate

CAD program, and then loaded into the developed software using the OBJ file format [8]. Nevertheless, the

software already supports some geometric primitives like boxes, cylinders and spheres, which can be used to

build some structures of interest. Taking into account that the software is written using the Java programming

language and object oriented design principles have been employed in its development, a module providing 3D

solid modeling capabilities could easily be developed in the future.

7.1 Meshing Algorithm Structure and Architecture of the FDTD

Simulator

Taking into account that the mesh generation procedure is, just like the other methods and models

presented in Chapters 3 to 6, a component of the developed FDTD code, it is convenient to give an overview

of how these components interact in the developed software, before proceeding to a more detailed description

of the meshing algorithm.

A flowchart illustrating the high-level architecture of the FDTD simulator is shown in Fig. 7.1. As

can be seen, at the functional level the developed software is divided in three parts or stages: simulation and

structure setup, mesh generation and FDTD simulation.

During the simulation and structure setup stage the user specifies both the simulation’s parameters

and the characteristics of the structure to analyze. This stage comprehends the following processes/activities:

• Units and frequency range definition: After selecting the time, frequency and length units that best

57

Page 71: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 7.1: Flowchart illustrating the high-level architecture of the FDTD simulator.

suit the problem being analyzed, the user specifies the frequency band for which results are desired, by

setting the minimum and maximum frequencies, fmin and fmax. Since fmax is related to the minimum

wavelength λmin, it will have a direct influence on the biggest cell size allowed, and, as a consequence,

on the total number of cells required to simulate the structure. The frequencies fmin and fmax will also

determine the bandwidth of the excitation signal (which is, by default, a Gaussian pulse), as discussed

in Section 5.1;

• Structure and material definition: The structure to be analyzed is built either by using the geometric

primitives available in the software or by importing 3D models designed in a different CAD program.

The user then creates the different materials of which the structure is made of and assigns them to the

corresponding 3D models;

• Specification of excitation sources: The excitation sources, which in the developed software are denoted

by “ports”, are defined by the user by specifying their parameters and locations in the three-dimensional

computational domain;

• Specification of boundary conditions: Involves the choice of the boundary conditions to use for each face

of the computational domain. When using the UPML, it is possible to select its thickness and configure

the εeff and kmax parameters, as described in Section 3.3. It is also possible to specify a minimum

distance between the structure and the boundaries of the computational domain, which is useful in some

antenna problems in order to minimize the reflection of evanescent fields at the UPML;

• Set frequencies for near-to-farfield transformation: When the user wishes to obtain the farfield patterns

for the structure being simulated, their frequencies must be selected before the simulation starts, for the

reason that the phasors for the tangential E- and H-fields are calculated by performing a DFT of the

time-domain data concurrently with the FDTD update loop, as described in Section 6.2;

58

Page 72: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

• Mesh properties definition: These settings are used by the mesh generation algorithm to create a uniform

or non-uniform mesh. For a given spatial direction u, where u = x, y, z, a non-uniform mesh can be

generated by specifying minimum and maximum mesh densities, Du,min and Du,max, whose units are

cells per (minimum) wavelength. Naturally, an uniform mesh can be created by setting Du,min = Du,max.

After configuring the simulation settings and defining the structure to analyze, the program enters

a mesh generation stage that automatically creates a mesh for the problem. The mesh generation algorithm

creates the mesh in two stages: a spatial discretization stage and a material mapping stage.

In the first stage, a spatial discretization is performed in order to create a three-dimensional grid that

defines the location and sizes of each cell. The grid is generated according not only to parameters previously

specified by the user as the maximum frequency and the minimum and maximum mesh densities, but also the

electrical properties of the materials that constitute the structure under analysis, required to calculate λmin,

which will have a direct influence on the maximum cell size, as discussed in Section 2.3.3. As has already been

mentioned, the possibility of specifying minimum and maximum mesh densities allows not only the generation

of variable sized cells that better adapt to the geometry of the structures, but also allows the use of higher

mesh resolutions in regions where fine geometrical features are present, as described in Section 2.5. The

algorithm used to perform the spatial discretization is described in Section 7.2.

In the second stage of the meshing procedure, the location and size of each mesh cell is available as

a result of the spatial discretization stage. Using that information and a procedure based on 3D intersection

calculation that is described in Section 7.3, it is possible to determine to which structure each cell belongs,

and therefore assign it the corresponding material properties.

After the second stage of the meshing algorithm, the location and lengths of each mesh cell, as well

as its material properties, are stored in an appropriate data structure, which has all the information required to

calculate the update coefficients (2.25)-(2.30). For instance, the time-step ∆t can be calculated according to

the Courant stability criterion, from the set of minimum cell lengths ∆xmin, ∆ymin and ∆zmin available in the

mentioned data structure, and the effective material parameters (Section 4.3) calculated using the material

information of each cell. The generated mesh can and should be inspected by the user in order to check

whether the original structure is being correctly represented, and if necessary, generate the mesh again after

changing its properties or other parameters that are influencing the resultant mesh.

After generating the mesh, the FDTD simulation can be started. Before the time-stepping procedure

begins, a solver setup stage is run in order to initialize the arrays that will store the field components and

update coefficients of each cell. Constant multipliers and other data structures that do not need to be

computed/allocated at every time step are also initialized during this stage. Examples of these data structures

are the input signals and field distributions used by the excitation sources, the arrays that store the phasors

of the E- and H-fields used for farfield calculation, and the coefficients used to update the H-field around thin

wires (Section 4.2). When the solver setup stage finishes, the FDTD time-stepping procedure begins. The

structure of this procedure is very similar to that used in the code example C.2, being the only significant

difference the addition of function calls after the H- and E-field update cycles, which are used not only to

update the field components changed by excitation sources and the thin wire model, but also to perform the

sampling and DFT of the fields tangential to the virtual box used in the near-to-farfield transformation.

When either the simulation termination energy criterion is verified or a maximum number of time

steps has been simulated, the time-stepping procedure ends and a solver post-processing stage is run. During

this stage, quantities of interest like the S-parameters and input admittances/impedances are calculated as

described in Sections 5.3 and 5.4. It is also during this stage that the farfield patterns are calculated by

integrating the equivalent J˜S and M˜S currents. After the completion of the post-processing run, the FDTD

59

Page 73: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

simulation is complete and the results are made available to the user in the graphical user interface.

7.2 Spatial Discretization Algorithm

This section describes the spatial discretization algorithm that is used to generate the sets of points

that represent the locations of the three-dimensional Cartesian grid’s lines. These sets are denoted by

X = x0, x1, x2, ..., xNx ; Y = y0, y1, y2, ..., yNy ; Z = z0, z1, z2, ..., zNz (7.1)

where Nx, Ny and Nz are the number of mesh cells used along, respectively, the x, y and z directions. These

numbers are not specified a priori, as the sizes of the sets (7.1) are themselves one of the results of the spatial

discretization algorithm. The information regarding a cell’s location and dimensions is obtained very easily

from the sets (7.1). As an example, the center coordinates ci,j,k and sizes li,j,k of the cell with indices (i,j,k)

are given respectively by

ci,j,k = (cx, cy, cz) =(

xi + xi+1

2,yj + yj+1

2,zk + zk+1

2

); li,j,k = (xi+1 − xi, yj+1 − yj , zk+1 − zk)

(7.2)

where it is assumed that the index numbering starts at zero.

Since the structures being meshed are represented in the developed software as three-dimensional

surfaces composed of triangles or quadrilaterals, for which vertex information such as coordinates, normals

and colors is stored in runtime objects which are instances of the Java 3D API’s GeometryArray class [5], the

algorithm starts by analyzing the vertex coordinates of each structure in order to create a bounding box that

defines the region of space that is to be discretized, which is equivalent to determining the points x0, xNx,

y0, yNy, z0 and zNz of the sets (7.1). Having specified the limits of the computational domain along each of

the main axes, it is the algorithm’s task to determine how many mesh lines should be placed between them

and also the positions of these lines, i.e, the determination of the remaining elements of sets (7.1). Since the

grid is Cartesian, this procedure can be done separately and analogously for each of the x, y and z directions

and therefore in the following we’ll consider that the set being determined is X.

For the case of a uniform mesh along the x direction, i.e., when we have Dx,min = Dx,max = Dx,

the number of cells Nx is simply given by

Nx =⌈(xNx − x0)

Dx

λmin

⌉(7.3a)

and the points xi of X given by

xi = i Lx, i = 1, ..., Nx − 1 (7.3b)

where Lx = (xNx − x0) /Nx is the cell length along the x direction.

The generation of a non-uniform mesh poses several difficulties relatively to the uniform case. These

difficulties arise from some criteria/properties that a non-uniform mesh should satisfy/possess, namely:

(i). The length of any cell, li, in this case along the x direction, must be bounded as follows

λmin

Dx,max≤ li ≤

λmin

Dx,min⇔ Lx,min ≤ li ≤ Lx,max (7.4)

60

Page 74: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

(ii). The ratio between the lengths of two adjacent cells, ri, which is defined as

ri =li

li+1=

xi+1 − xi

xi+2 − xi+1, i = 0, ...,Nx − 2 (7.5)

must be limited as follows

1/R ≤ ri ≤ R , R > 1 (7.6)

in order to satisfy the criterion presented in Section 2.5.3, which suggests that R should not exceed

about 1.4 in order to keep the truncation error sufficiently low;

(iii). The grid lines should, whenever possible, be aligned with the faces and/or edges of the structures under

analysis, in order to more accurately model the interfaces between different media;

(iv). The mesh should have a density close to Dx,max both in regions where the structure has finer geometric

details and near material interfaces. In the other regions, the mesh density should be close to Dx,min,

in order to minimize the number of cells necessary to model the structure.

Figure 7.2: Geometry of the structure used to illustrate the spatialdiscretization algorithm’s operation.

Vertex x (mm) y (mm)v1 0.00 0.00v2 0.00 15.725v3 0.00 18.185v4 0.00 28.10v5 8.00 7.825v6 8.00 15.725v7 8.00 18.185v8 8.00 20.275v9 24.00 7.825v10 24.00 20.275v11 32.00 0.00v12 32.00 28.10

Table 7.1: Coordinates of the verticesshown in Fig. 7.2.

In order to explain more clearly how the spatial discretization algorithm accomplishes the previous

requirements, the description of the discretization procedure for the non-uniform case will be accompanied by

an example. For this purpose, the geometry of a x− y plane cut of the microstrip patch antenna analyzed in

Section 8.3 is shown in Fig. 7.2. In this figure the vertices of the triangles that compose the 3D geometry are

highlighted and their coordinates shown in Table 7.1. As described earlier, by inspecting the x-coordinate of

the vertices, the algorithm determines the first and last elements of X, which are respectively x0 = 0.0 and

xNx = 32.0. In order to satisfy the requirement (iii), the algorithm also adds the x-coordinates of the other

vertices to X as these are points associated with regions where variations of geometry and material properties

occur. So, after adding these points, the initial X set, denoted as Xref , is

Xref = 0, 8, 24, 32 (7.7)

Before describing how the algorithm copes with the remaining requirements, it is necessary to assume

some values for the maximum simulation frequency, fmax, and for the meshing densities Dx,min and Dx,max.

Therefore, we will consider fmax = 20 GHz, Dx,min= 10 and Dx,max= 30. Taking into account that the

relative permittivity of the substrate is εr = 2.2, the minimum wavelength is λmin∼= 10.113 mm, from which

61

Page 75: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

the minimum and maximum cell lengths along x are determined to be respectively Lx,min = 0.337 mm and

Lx,max = 1.011 mm. The value chosen for R is 1.3, which is the default value used in the mesh generation

algorithm of the developed software.

Given the values of Lx,min and Lx,max, it is clear that more mesh lines must be added to Xref

in order to get a grid verifying (i). As a matter of fact, the problem resides on determining not only how

many lines should be added to Xref , but also their positions, subject to the constraints (i) and (ii) and the

requirements (iii) and (iv). Since this problem can be regarded as a constrained optimization problem, the

approach implemented in the algorithm consists in determining, for each pair of consecutive elements of the

initial set Xref , xj,ref and xj+1,ref , the minimum number of mesh lines, as well as their positions, to be placed

in the interval ]xj,ref , xj+1,ref [.

So, for a given pair of consecutive elements of Xref , xj,ref and xj+1,ref , which, for the current

example could be x0,ref = 0 and x1,ref = 8, the problem can be formulated as an unconstrained optimization

problem [34] by defining the following objective function:

f(x˜) = ΣNj−3i=0 Ai + ΣNj−4

i=0 Bi + C + D (7.8)

where x˜ is the array of mesh lines,[x0, x1, ..., xNj−2

]used to discretize the interval ]xj,ref , xj+1,ref [, Nj is the

number of cells to use for that discretization and

Ai =

0, if Lmin ≤ li ≤ Lmax

li−LmaxLmax

× 100, if li > Lmax

Lmin−liLmin

× 100, if li < Lmin

(7.9a)

Bi =

0, if 1/R ≤ ri ≤ Rri−R

R × 100, if ri > R

(1− ri R)× 100, if ri < 1/R

(7.9b)

C =

0, if x0 − xj,ref ≤ QLmin(x0−xj,ref )−Q Lmin

Q Lmin× 100, if x0 − xj,ref > Q Lmin

(7.9c)

D =

0, if xj+1,ref − xNj−2 ≤ QLmin

(xj+1,ref−xNj−2)−Q Lmin

Q Lmin× 100, if xj+1,ref − xNj−2 > QLmin

(7.9d)

are penalty terms that measure by how much the array of mesh lines x˜ deviates from an acceptable solution.

The term Ai is used to enforce the cell length constraint (i), Bi ensures the cell ratio constraint (ii) and C

and D try to force the cells in the vicinity of the reference mesh lines xj,ref and xj+1,ref to have a size close to

Lmin, with Q ≤ R, which is in agreement with requirement (iv). Taking into account that the discretization

errors associated with non-uniform meshes are greater when the cell size changes at the boundary between

different materials [35], in the developed software Q is set by default to 1.01, which corresponds to a 1%

tolerance for the cells adjacent to reference mesh lines.

In order to determine the solution that uses the minimum number of cells Nj , the following procedure

is implemented by the meshing algorithm:

1. Choose a pair of consecutive elements of Xref , xj,ref and xj+1,ref ;

2. Calculate a lower and an upper bound on the number of cells, Nlower and Nupper that could be used to

uniformly discretize the interval ]xj,ref , xj+1,ref [, by using respectively the maximum and minimum cell

sizes. As an example, for the interval ]0, 8[, Nlower = 8 and Nupper = 23. Set Nj ← Nlower;

3. Create an array for the mesh lines x˜, with Nj − 1 elements. Use as an initial approximation to the

62

Page 76: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

solution the uniform discretization of the interval ]xj,ref , xj+1,ref [. Minimize the objective function f(x˜)using the steepest descent line search method [34];

4. If the value of f(x˜opt) is smaller than a previously defined value, which for the developed algorithm is by

default 1%, the mesh satisfies the necessary requirements for the current value of Nj and the algorithm

jumps to step 5. Otherwise, set Nj ← Nj + 1 and return to step 3, unless Nj > Nupper, which means

that the algorithm has not been able to create a mesh with the desired characteristics. For the latter

case, the algorithm chooses the x˜opt solution that leads to the lowest error, displays a message warning

the user about the problems that occurred during the discretization of the current interval and proceeds

to step 5;

5. Add the elements of the array x˜opt to the X set; Set j ← j + 1 and go to step 1 unless all intervals of

Xref have already been discretized. In this case the procedure ends, since the X set has been completely

determined.

Although this approach may not lead to a globally optimal solution, which could only be achieved

by solving the optimization problem for all elements of Xref simultaneously, it will nevertheless be very close

to this solution as the lengths of the cells adjacent to the lines of Xref are superiorly limited by QLmin, which,

to some extent, decreases the interdependence between the meshing of adjacent intervals.

The mesh generated using this algorithm, for the example of Fig. 7.2, is shown in Fig. 7.3. As

can be observed, the mesh lines are aligned with the boundaries of the geometry, where the mesh resolution

is close to Dmax = 30. For the remaining regions, the mesh resolution is close to Dmin = 10, which proves

that the developed spatial discretization algorithm indeed reduces the number of cells required to discretize

the structure.

Figure 7.3: Two-dimensional Cartesian grid that results from the non-uniform discretization of the structureof Fig. 7.2 using the spatial discretization algorithm with parameters Dx,min = Dy,min = 10 and Dx,max =Dy,max = 30.

7.3 Material Mapping Algorithm

The material mapping algorithm’s task is to assign to each cell the material of the structure to

which it belongs. The criterion used to define whether a cell belongs to a given structure or not is to simply

check if its center is inside that structure.

63

Page 77: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Supposing that the computational domain’s size is Nx by Ny by Nz cells, the algorithm performs the

material mapping by successively processing Nz two-dimensional cut-planes perpendicular to the z axis, of size

Nx by Ny cells. To illustrate how this is attained, consider the situation depicted in Fig. 7.4(a), which represents

a two-dimensional view of the Cartesian grid that results from the discretization, using the algorithm described

in the previous section, of a component consisting of three overlapping cylindrical structures, resembling a

coaxial cable. The cross section of the component is also represented in Fig. 7.4(a). It is important to note

that the resolution of the grid was intentionally chosen to be quite low in order to make the description of the

algorithm’s operation clearer.

Figure 7.4: Illustration of the material mapping algorithm’s operation. (a) Two-dimensional view of thecomponent being meshed and the Cartesian grid that resulted from spatial discretization; (b) Operation ofthe ray-crossing algorithm.

The method used to determine which material should be assigned to each cell is based on a modified

version of the ray-crossing algorithm used in [36] and [37]. This algorithm scans the computational domain

by “shooting” rays along the x direction and determining the intersection points, if they exist, with the three-

dimensional models. The intersections are performed using the functionalities available in the Java 3D API

[5], namely the PickTool and PickInfo classes. The rays are cast from a position outside the computational

domain so that they pass through the centers of the cells whose material properties are being determined, as

shown in Fig. 7.4(b).

Taking into account that before starting the material mapping stage all mesh cells are set as being

made of the same background material, which by default is vacuum, then, if no intersections are detected, as

is the case for ray R1 in Fig. 7.4(b), no modifications to the material mapping are required. If, however, the

number of intersections with a structure Su, Nu,int, is different from zero, as is the case for rays R2, R3 and

R4 of Fig. 7.4(b), the information obtained from the intersections’ x-coordinates is used to create, for each

intersected structure, Nint,Su/2 intervals ISu,j , having the form

ISu,j = [xSu,2j , xSu,2j+1] , j = 0, ...,Nint,Su

2− 1 (7.10)

where the assumption that Nint,Su is an even number derives from the fact that the number of intersections

for a closed surface will always be even. For this reason, the algorithm will neglect structures for which this

number is odd, displaying a message alerting the user to the occurrence of the problem.

Taking into account that the center coordinates of each cell crossed by the ray can be calculated

using (7.2), it is easily concluded that a cell with index i belongs to structure Su if its center coordinate cx,i is

64

Page 78: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

contained by any of the intervals ISu,j . For the case of ray R2 of Fig. 7.4(b), the intersected structure is the

cylinder with the biggest radius, S0. Since the number of intersections is 2, the algorithm only creates a single

interval IS0,0 = [x0,0, x0,1] = [x4, x7], which contains the centers of the cells with indices (i = 4, ..., 9; j = 12),which are shown in blue in Fig. 7.4(b). As a result, these cells’ material is set to PEC.

A different situation occurs for ray R3, which intersects twice both S0 and S1, originating the inter-

vals IS0,0 = [x2, x10] and IS1,0 = [x3, x8]. A conflict now arises as the centers of cells (i = 3, ..., 10; j = 10)are contained by both intervals. Since this component should model a coaxial cable, it is desirable that the

dielectric material of S1 is assigned to cells (i = 3, ..., 10; j = 10). In order to achieve this, a mechanism based

on priorities similar to the precedence method used in [38] was devised.

Basically, before starting the mesh generation stage, the user should assign different priorities to

overlapping structures having different materials. For the case of R3, S1 should be able to “steal” cells from S0

and therefore the former should have a higher priority than the latter. The priorities are used by the algorithm

in the following manner:

1. Each interval ISu,j receives the priority of the corresponding structure Su;

2. The intervals are sorted according to their priority;

3. The algorithm processes the intervals one at a time, in ascending priority order.

For the case of R3, it can be seen that by applying the previous procedure, IS0,0 is processed

first and therefore cells (i = 2, ..., 11; j = 10) are set to PEC. Then, interval IS1,0 is processed and cells

(i = 3, ..., 10; j = 10) are remapped to the dielectric of structure S1, which leads to the desired mapping of

materials. A situation similar to that of R3 also occurs for ray R4, with the difference residing in the number

of conflicting intervals, which now is 3. It can be solved simply by assigning to S2 a priority that is higher

than those of S0 and S1.

In order to demonstrate the usefulness and effectiveness of the priority mechanism, 3D views of the

meshed version of the component of Fig. 7.4(a), using different priorities for the structures, are shown in

Fig. 7.5. While Fig. 7.5(a) corresponds to the case of the coaxial cable, Fig 7.5(b) represents a cylindrical

waveguide, which was achieved by decreasing the priority of structure S2 and by changing the material of

structure S1 to vacuum.

Figure 7.5: Illustration of how the assignment of different meshing priorities to the elements of a three-dimensional model can influence the characteristics of the resultant component. (a) Three-dimensional viewof the mesh for a coaxial cable; (b) Three-dimensional view of the mesh for a cylindrical waveguide.

65

Page 79: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 8

Numerical Experiments and Results

ValidationIn order to validate the software’s implementation, some numerical experiments were performed to

study antenna problems for which experimental and/or simulation results had already been obtained by other

authors. In general, the obtained results show a good agreement with experimental and simulated results,

which indicates that the software is sufficiently accurate to be used for engineering purposes.

8.1 Dipole Interaction

This experiment, published by Luebbers and Kunz [39], models the interaction between two dipole

antennas. The quantities of interest are self- and mutual antenna admittances, which are quite sensitive to the

geometry of the wires (including the wire radius) and the spacing between the two antennas. The problem’s

geometry is shown in Fig. 8.1.

Figure 8.1: FDTD problem space for the analysis of coupling be-tween two dipoles.

Figure 8.2: Mesh used to discretize thecomputational domain.

66

Page 80: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 8.3: Self-admittance for antenna 1 calculated with the developed software and compared with resultsobtained with other methods/applications.

The input waveform is a gaussian signal with a -20 dB bandwidth of 1000 MHz, which is fed to the

antenna using a 50 Ω resistive voltage source that uses a virtual unidimensional transmission line, as described

in Sec. 5.3. The computational domain was discretized using an uniform mesh, shown in Fig. 8.2, that has a

density of 20 cells per wavelength in the x and y directions and a density of 30 cells per wavelength along z.

The domain’s size is 28.5 cm x 18 cm x 73 cm and 19 x 12 x 73 cells are used for the discretization along the

x, y and z axes respectively. The thin-wire model presented in Chapter 4 was employed to correctly account

for the wires’ radius of 0.281 cm and an UPML layer with a thickness of 10 cells was used to absorb the

outgoing electromagnetic waves.

Although Luebbers & Kunz only published data for Y11 and Y12, in this experiment the full admit-

tance matrix was calculated in order to verify if the developed software preserved port reciprocity. For this

purpose two simulations were performed: one with the first dipole being fed and the second dipole’s terminals

short-circuited and another with the latter being fed and the former short-circuited. For both simulations a

time-step ∆t = 23.04 ps was used and the number of simulated time-steps was 1690 for dipole 1 and 1280 for

dipole 2, which was enough to allow the total energy to decay about 40 dB relatively to the maximum value.

The results for Y11 and Y12 are shown in Figs. 8.3 and 8.4 and are compared not only with those

published by Luebbers and Kunz, using both FDTD and a MoM code (ESP4)1, but also with the results

obtained with CST Microwave Studio’s R© [40] transient solver, a commercial application that has a time-

domain solver based on FDTD/FIT [41]. It can be seen that the obtained results are in good agreement with

those obtained with the MoM code, which is considered a quasi-analytic solution for problems involving wire

antennas.

The results for Y12 and Y21 are shown in Fig. 8.5. As can be seen, the results are almost a replica

of each other, which means that the admittance matrix is symmetrical, as predicted by theory.

1Electromagnetic Surface Patch Version 4

67

Page 81: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 8.4: Mutual admittance calculated with the developed software and compared with results obtainedwith other methods/applications.

Figure 8.5: Comparison of the mutual admittances Y12 and Y21 calculated with the developed software, forthe purpose of port reciprocity analysis.

68

Page 82: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

8.2 Monopole Antenna on a Conducting Box

This experiment is based on a paper published by Luebbers et al. [42] and it tests the ability of the

developed software to accurately calculate the input impedance and radiation pattern of a monopole antenna

on a conducting box, a structure having a geometry similar to that of some earlier cellphones. The geometry

of the problem is shown in Fig. 8.6.

Figure 8.6: Geometry and dimensions of the monopole antenna ona conducting box. The monopole wire radius is r=0.5 mm.

Figure 8.7: 2D view of the mesh used todiscretize the problem.

The signal used for the excitation of the antenna was a gaussian waveform with a -20 dB bandwidth

of 6 GHz. The antenna was fed using the resistive voltage source described in Sec. 5.3, configured with

a 50 Ω impedance. The computational domain was discretized using a non-uniform mesh with a density

between 10 and 30 cells per wavelength, resulting in a grid with 36 × 20 × 62 cells, which is shown in

Fig. 8.7. The thin-wire model was employed to correctly account for the wire’s radius of 0.5 mm and an

UPML layer with a thickness of 10 cells was placed at the domain’s boundaries. In order to calculate the

radiation pattern, a virtual box enclosing the structure was placed 5 cells away from the domain’s boundaries

and the phasors for the equivalent currents ~MS and ~JS at f = 1.5 GHz were obtained by performing a

DFT concurrently with the FDTD update algorithm, as described in Chapter 6. The time-step used for the

simulation was ∆t = 3.049 ps.

The simulation was run for 6834 time-steps, enough to allow the total energy to decay 45 dB

relatively to its maximum value. The results for the input impedance are shown in Fig. 8.8 and are compared

with the published experimental results [42]. As can be seen, the agreement is very good.

The calculated radiation pattern is shown in Fig. 8.9 and is compared with the results obtained by

Luebbers et al. [42] with a Method of Moments code developed specifically for this problem’s geometry. As

can be seen, the agreement between the results is quite good, being the differences for the angles closer to

the z-axis primarily due to difficulties in extracting the corresponding values from the published results.

69

Page 83: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 8.8: Input impedance for monopole antenna on a conducting box computed using the developedsoftware and compared with measurements [42].

Figure 8.9: Calculated x-z plane radiation pattern at 1.5 GHz for the monopole antenna on a conducting boxand comparison with reference results obtained with MoM [42].

70

Page 84: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

8.3 Microstrip Patch Antenna

This experiment, which is based on the work published by Sheen et al. [43], tests the ability of the

developed software to simulate the line-fed rectangular microstrip antenna whose geometry is shown in Fig.

8.10. This structure, relatively to the previous examples, introduces the use of a dielectric material with a

relative permittivity different from one, and will also serve to test the implementation of the waveguide source

described in Section 5.4.

Figure 8.10: Geometry of the line fed rectangular microstrip patch antenna. (a) Top view (b) Perspectiveview, dimensions of the computational domain and placement of the excitation.

The waveguide source was excited with a differentiated gaussian pulse with a bandwidth at -20 dB

between 0.5 GHz and 20 GHz. The automatic setup stage of the waveguide port yielded the field distribution

shown in Fig. 8.11 for the dominant quasi-TEM mode, which was then used to excite the microstrip antenna.

Figure 8.11: Calculated electric field distribution of the microstrip line’s quasi-TEM mode used in the excitationof the rectangular patch antenna.

The computational domain was comprised of a non-uniform mesh with 134 by 124 by 16 cells,

which provided a minimum density of 30 cells per wavelength. The rectangular patch, microstrip conductor

and ground plane were meshed as thin metalizations, as described in Appendix E. An UPML layer with a

thickness of 8 cells was used to terminate the boundaries of the computational domain, including the domain

boundary at xmin that was crossed by the microstrip line. The time-step used for the simulation was 0.418 ps.

The simulation required 7340 time-steps for the total energy to decay 50 dB relatively to the

maximum value, being the high number of time-steps related to the fact that this antenna is a highly resonant

71

Page 85: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

structure. The calculated return loss of the antenna, shown in Fig. 8.12, is compared with the experimental

data available in [43] and with the results obtained with CST Microwave Studio R© using a 5-pass adaptive

meshing procedure. As can be seen, the developed software not only predicts well the operating resonance at

7.5 GHz, but also provides reasonably good results for higher frequencies.

Figure 8.12: Return loss of the line-fed rectangular patch antenna.

Since no experimental farfield results were available for this antenna, a qualitative comparison

between the 3D radiation patterns for 7.55 GHz calculated with the developed software and CST Microwave

Studio R© is shown in Fig. 8.13. This comparison serves essentially to demonstrate the software’s capability

to create three-dimensional radiation patterns. As can be seen, the patterns have a similar shape and there is

little difference between the maximum directivity values: 7.957 dBi for CST and 7.943 dBi for the developed

software.

Figure 8.13: Three-dimensional radiation patterns for the line-fed rectangular patch antenna calculated using(a) FDTD Antenna Simulator and (b) CST Microwave Studio R©.

72

Page 86: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

8.4 UWB Antenna

This example models a planar monopole for UWB applications after the work recently published by

Makal [44]. The antenna’s geometry is shown in Fig. 8.14.

Figure 8.14: Geometry of the beveled planar monopole antenna and feed region. (a) Top view (b) Perspectiveview and dimensions of the computational domain.

As can be seen, the modeling of this antenna is more challenging than that of the previous exper-

iments since the beveled patch has a geometry that does not conform to a cartesian mesh. Moreover, the

antenna prototype for which experimental data is available in [44] was excited with a coaxial cable having

an inner conductor radius of 0.5 mm, which makes it impossible to use a thin wire model for the excitation,

thus requiring the explicit modeling of the feed’s geometry, which was approximated by the cylinder shown in

Fig. 8.14(b). Except for the cylinder, all metal parts of the antenna were modeled as thin metalizations.

Figure 8.15: Detail of the feed region and placement of the excitation source.

The antenna was excited with a 50 Ω resistive voltage source placed in a small gap between the coaxial cable’s

inner conductor and the microstrip line, as shown in Fig. 8.15. The excitation signal is a modulated gaussian

pulse with a -20 dB bandwidth between 3 GHz and 14 GHz, although experimental data was only available up

to 11.5 GHz. The computational domain’s size is 22.806 mm x 32.021 mm x 5.854 mm and it was discretized

using a nonuniform mesh that ensures a minimum density of 30 cells per wavelength in the x and y directions

73

Page 87: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

and a minimum of 40 cells per wavelength along the z direction. The increased resolution in the z direction

was required to accurately model the small gap in the feed region (Fig. 8.15). The resulting mesh had 83 x

100 x 25 cells along, respectively, the x, y and z axes. An UPML layer with a thickness of 10 cells was placed

at the domain’s boundaries and the time-step used for the simulation was ∆t = 0.223 ps.

Figure 8.16: Return loss of the beveled monopole antenna.

The simulation was stopped at 3600 time-steps, when the total energy in the computational domain

decayed 60 dB relatively to its peak value. The calculated return loss of the antenna, shown in Fig. 8.16,

shows reasonable agreement with experimental data. The differences between simulated and measured results

are probably related with the less accurate modeling of the coaxial feed.

Figure 8.17: Calculated x-z radiation pattern for the beveled monopole antenna at 8.5 GHz.

The calculated radiation patterns are shown in Figs. 8.17 to 8.19. The results can be considered

reasonably good if we take into account that the most significant differences occur for the angles that corre-

spond to the region where the coaxial cable was placed. Moreover, taking into account that the measured S11

shows good agreement with calculations, and that this quantity is closely related to the near-field distribution,

74

Page 88: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

there is no apparent reason why the near to far-field transformation would yield innacurate far-field data. The

latter fact must also be taken into account when comparing the measured and calculated radiation patterns.

Figure 8.18: Calculated y-z radiation pattern for the beveled monopole antenna at 8.5 GHz.

Figure 8.19: Calculated x-y radiation pattern for the beveled monopole antenna at 8.5 GHz.

75

Page 89: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

8.5 Pyramidal Horn Antenna

This experiment’s objective is to assess the developed software’s ability to analyze horn antennas.

The antenna chosen for this experiment is the pyramidal horn shown in Figs. 8.20(a) and 8.20(b), for which

experimental and FDTD-calculated data have been published by Tirkas & Balanis [45].

Figure 8.20: (a), (b): Geometry of the pyramidal horn antenna; (c): Detail of the mesh used in the simulationof the pyramidal horn antenna, where the staircased approximation of the real geometry is visible.

Since the horn is fed through a rectangular waveguide, the feed was modeled using the waveguide

source described in Section 5.4, which was excited with the field distribution corresponding to the TE10 mode

(calculated automatically). The signal used was a modulated gaussian pulse having a -20 dB bandwidth

extending from 9 GHz to 11 GHz.

The computational domain was discretized using a non-uniform mesh with 293 by 108 by 100 cells,

with a minimum density of 15 cells per wavelength. The choice of the cell size was limited by the amount of

memory available in the computer used to run the simulations, as the total number of cells, including those of

the UPML, ascended to four millions. The staircased approximation of the antenna’s cross section is shown in

Fig. 8.20(c). The UPML layer used to terminate the boundaries of the computational domain had a thickness

of 5 cells, except for the boundary at xmax, where an 8-cell layer was used, as the fields’ magnitude is expected

to be stronger in that region. The time-step used for the simulation was 1.9 ps.

The simulation required 3170 time-steps for the total energy to decay 60 dB relatively to the

maximum value. The calculated E- and H-plane patterns of the antenna at 10.1 GHz are shown in Fig. 8.21

and are compared with both the experimental results available in [45] and the results obtained with CST

Microwave Studio R©. The calculated patterns show a good agreement with the measurements, being the

largest differences observed toward the back-region, which can be attributed to the supporting structure of

the antenna used when performing the measurements, as mentioned in [45].

Although no experimental or simulated results for the return loss of the antenna have been pub-

lished by Tirkas & Balanis, a comparison between the results obtained with the developed software and CST

Microwave Studio R© is shown in Fig. 8.22. While the relative error between the frequencies at which the

76

Page 90: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Figure 8.21: Directivity of the pyramidal horn at 10.1 GHz: (a) E -plane pattern, (b) H-plane pattern.

minimums occur is less than 0.3%, the biggest differences are observed for the values of the minimums. These

differences can be related to the fact that CST Microwave Studio R© uses a sub-cellular method to mitigate

the effects of staircasing.

Figure 8.22: Calculated return loss of the pyramidal horn antenna.

77

Page 91: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Chapter 9

Conclusions

In this work, the development of a complete software tool for antenna analysis and design using the

Finite-Difference Time-Domain (FDTD) Method has been presented. The results obtained with the software

for different kinds of antennas have been validated by comparison with measurements and simulation results

published by other authors. The agreement between them shows that the initial objectives of this work have

been fully achieved. In particular, the software has proven its usefulness during the design phase of the UWB

antennas1 developed by Makal [44], acting as a helpful alternative validation tool in addition to a commercial

software package. This demonstrated that the software is applicable not only to classical antenna problems,

but also to problems of current engineering interest, thus constituting a contribution to currently existent

open-source software for electromagnetic simulation.

The effort spent in the design of the program’s architecture, which is based on a modular structure,

resulted in a software that is sufficiently general to allow the introduction of new features without signifi-

cantly altering the existing code. This fact, besides being a desirable characteristic of software in general, is

particularly important for the educational purposes of this work. As an example of this modularity, a class

providing SAR calculation and visualization capabilities was easily added to the software, as presented in

Appendix F.

Regarding the implementation of the FDTD simulation code, it must be noted that although the

explicit time-stepping scheme for the field components employed in this software, the Yee algorithm, dates

back to 1966 and has a relatively simple computer implementation, the developed program is much more than

a mere implementation of this widely known algorithm.

To justify the previous statement, it should first be observed that the Yee algorithm provides only

the basic mechanism to update the field components during an FDTD simulation, which can be called the core

of the simulator. It does not cover important simulation aspects such as excitation sources, treatment of fields

in the vicinity of thin wires, UPML absorbing boundary conditions, extraction of S-parameters, calculation of

impedance/admittance matrices, radiation patterns and waveguide field distributions, etc., that are essential

to obtain results of engineering value. Most of these simulation aspects require specialized techniques that

are implemented by additional augmenting algorithms that run concurrently with the FDTD field update loop

and/or in pre-/post-processing stages. Some of them, like the UPML, the near-to-farfield transformation or

the waveguide excitation sources are conceptually much more involved and difficult to implement than the Yee

algorithm itself. As a matter of fact, it is on some of these techniques that much research in CEM in general,

and FDTD in particular, has been carried in the last 10-15 years.

1The results for one of these antennas have been presented in Section 8.4.

78

Page 92: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Therefore, the main challenge in developing this FDTD simulator resided in the selection of appro-

priate techniques for each simulation aspect from the specialized literature and their implementation in the

FDTD code in an efficient and robust manner. Some of these techniques, like the PML and frequency domain

near-to-farfield transformation, are in fact the solutions employed in some state-of-the-art commercial software

packages. It is also important to remark that since the techniques used in the FDTD solver are completely

general, the program had no difficulty in correctly calculating the S-parameters of a microstrip low-pass filter

and the SAR values of a SAM phantom head, as presented in Appendix F. This clearly indicates that the

developed software is not limited to the analysis of antenna problems.

Besides all the augmenting algorithms implemented in the time-domain solver, it is also important

to note that since the FDTD formulation used in this work was extended to non-uniform meshes, the topic of

non-uniform mesh generation had also to be addressed. This has been mainly due to the fact that although

a number of commercial mesh generation software packages exist that could have been used to solve this

problem, that option could not even be considered since one of this work’s primary objectives was to develop

a completely open-source FDTD simulator. Furthermore, as an open-source solution for the Cartesian mesh

generation problem, having the flexibility required to create meshes with the properties discussed in Section

7.2 was not, at least to the author’s knowledge, currently available, a mesh generation algorithm has also been

developed. The developed algorithm has some nice features/properties, namely the attempt to minimize the

number of cells required to model the structures under analysis and the possibility to control the ratio between

adjacent cell lengths. In the future, this algorithm can easily be modified to support more advanced features,

such as using a higher mesh refinement ratio for specific structures.

Finally, it is important to mention that the developed program became a considerably big software

project, with about 34000 lines of source code created by the author. Taking into account that the FDTD

solver’s core has only about 1000 lines of code (actually the FDTD update loop has less than 200) and the

augmenting algorithms contribute with about 10000 lines, it is clear that the effort put into the creation of

the graphical user interface (GUI), the three-dimensional modeler/viewer, result visualization capabilities and

other additional features that an user expects from this kind of software, ended up representing a considerable

percentage of the total effort put into this work. It is, however, the author’s opinion that this effort allowed

the creation of a solid foundation for the developed program, thereby facilitating not only its use, but also its

future expansion.

9.1 Suggestions for Future Work

As has already been mentioned, great emphasis was placed on the generality and expansion pos-

sibilities of the developed software. For this reason, and also to accelerate the development process of the

program, the code, in its entirety, has been written in Java, which besides from providing an excellent high-level

architecture for the code, also has the advantage of allowing its development and use on different operating

systems and/or computer architectures.

It is important to notice, however, that the selection of Java as the main programming language does

not by any means exclude the possibility of using other languages, namely C/C++ or Fortran, to implement

the numerically intensive parts of the code. In the author’s opinion, a possible way to achieve this could be by

first separating the GUI+modeler+result viewer from the FDTD solver and defining a client/server model to

implement the communication between the two subsystems. It is clear that by defining an appropriate protocol

for the communication, the FDTD solver could easily be implemented in another programming language, and

even be linked with other programs or scripts.

79

Page 93: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

The suggested approach would also simplify the parallelization of the code, allowing it to easily be

run on a computer cluster or multiprocessor system. The use of a computer cluster could be particularly inter-

esting for the simulation of very large problems or to accelerate optimization procedures based, for example,

on genetic algorithms.

Finally, the following features could be added to the FDTD solver:

• Improve the calculation of the field distributions used for waveguide excitation by using an approach

based on a two-dimensional FDTD simulation of the waveguide’s cross-section;

• Modeling of dispersive and nonlinear materials;

• Implementation of an autoregressive model for spectrum estimation in order to extrapolate the

time-domain response of highly resonant structures, reducing the simulation time for that class of

problems;

• Implementation of Surface impedance boundary conditions (SIBCs);

• Modeling of lumped circuit elements, such as resistors, capacitors, inductors, diodes and transistors;

• Use a locally conformal model of curved surfaces to reduce the effects of staircasing. The techniques

introduced by Dey and Mittra [46, 47] are known to yield good results and may be relatively easy to

implement in the developed software, by introducing some modifications to the material mapping stage

of the mesh generation algorithm;

80

Page 94: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix A

Finite-difference schemes and order of

accuracy

This appendix presents the derivation of finite-difference formulas using forward-, backward- and

central-differencing schemes with an emphasis on the order of accuracy of each method.

A.1 Forward-differences approximation to the first derivative

Consider a Taylor’s series expansion of a function u(x) about the space point xi to the space point

xi + ∆x:

u(xi + ∆x) =u|xi+

∂u

∂x

∣∣∣∣xi

∆x +∂2u

∂x2

∣∣∣∣xi

(∆x)2

2

+∂3u

∂x3

∣∣∣∣xi

(∆x)3

6+

∂4u

∂x4

∣∣∣∣ξ1

(∆x)4

24

(A.1)

where the last term is the error term and ξ1 is a space point located in the interval (xi, xi + ∆x). By

rearranging the terms in (A.1) it is possible to obtain the following forward-difference approximation to the

first derivative of u(x) with respect to x:

∂u

∂x

∣∣∣∣xi

=u(xi + ∆x)− u|xi

∆x

− ∂2u

∂x2

∣∣∣∣xi

∆x

2− ∂3u

∂x3

∣∣∣∣xi

(∆x)2

6− ∂4u

∂x4

∣∣∣∣ξ1

(∆x)3

24︸ ︷︷ ︸O[∆x]

=u(xi + ∆x)− u|xi

∆x+ O[∆x]

(A.2)

As can be seen in the previous formula, forward-differences are first-order accurate.

81

Page 95: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

A.2 Backward-differences approximation to the first derivative

Consider now a Taylor’s series expansion of a function u(x) about the space point xi to the space

point xi −∆x:

u(xi −∆x) =u|xi− ∂u

∂x

∣∣∣∣xi

∆x +∂2u

∂x2

∣∣∣∣xi

(∆x)2

2

− ∂3u

∂x3

∣∣∣∣xi

(∆x)3

6+

∂4u

∂x4

∣∣∣∣ξ2

(∆x)4

24

(A.3)

where the last term is the error term and ξ2 is a space point located in the interval (xi − ∆x, xi). By

rearranging the terms in (A.3) it is possible to obtain the following forward-difference approximation to the

first derivative of u(x) with respect to x:

∂u

∂x

∣∣∣∣xi

=u|xi− u(xi −∆x)

∆x

+∂2u

∂x2

∣∣∣∣xi

∆x

2− ∂3u

∂x3

∣∣∣∣xi

(∆x)2

6+

∂4u

∂x4

∣∣∣∣ξ2

(∆x)3

24︸ ︷︷ ︸O[∆x]

=u|xi− u(xi −∆x)

∆x+ O[∆x]

(A.4)

Like forward-differences, backward-differences are also first-order accurate.

A.3 Central-differences approximation to the first derivative

Consider now the expression that results from subtracting equation (A.3) from (A.1):

u(xi + ∆x)− u(xi −∆x) =2∂u

∂x

∣∣∣∣xi

∆x +∂3u

∂x3

∣∣∣∣xi

(∆x)3

3+

∂4u

∂x4

∣∣∣∣ξ3

(∆x)4

24(A.5)

where the last term is the error term and ξ3 is a space point located in the interval (xi − ∆x, xi + ∆x).Rearranging the terms in (A.5) we obtain the following central-difference approximation to the first derivative

of u(x) with respect to x:

∂u

∂x

∣∣∣∣xi

=u(xi + ∆x)− u(xi −∆x)

2∆x

O[(∆x)2]︷ ︸︸ ︷− ∂3u

∂x3

∣∣∣∣xi

(∆x)2

3− ∂4u

∂x4

∣∣∣∣ξ3

(∆x)3

24

=u(xi + ∆x)− u(xi −∆x)

2∆x+ O[(∆x)2]

(A.6)

As can be seen in the expression (A.6) the central-differences approximation to the first derivative

of u(x) is second-order accurate and thus better than either forward or backward finite-differencing schemes.

82

Page 96: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

A.4 Central-differences approximation to the second derivative

Consider the expression that results from adding equations (A.1) and (A.3):

u(xi + ∆x) + u(xi −∆x) =2 u|xi+

∂2u

∂x2

∣∣∣∣xi

(∆x)2 +∂4u

∂x4

∣∣∣∣ξ4

(∆x)4

12(A.7)

where the last term is the error term and ξ4 is a space point located in the interval (xi − ∆x, xi + ∆x).Rearranging the terms in (A.7) the following central-difference approximation to the second derivative of u(x)is obtained:

∂2u

∂x2

∣∣∣∣xi

=u(xi + ∆x)− 2u(xi) + u(xi −∆x)

(∆x)2

O[(∆x)2]︷ ︸︸ ︷− ∂4u

∂x4

∣∣∣∣ξ4

(∆x)2

12

=u(xi + ∆x)− 2u(xi) + u(xi −∆x)

(∆x)2+ O[(∆x)2]

(A.8)

As can be seen in the expression (A.8) the central-differences approximation to the second derivative

of u(x) is second-order accurate.

83

Page 97: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix B

Verification of Gauss’ laws for the Yee

Algorithm

As stated in 2.2.1, the discretized versions of Maxwell’s curl equations (2.23) and (2.24) must

implicitly enforce Gauss’ Laws (2.3) and (2.4). In order to prove that the derived algorithm verifies these laws,

consider the continuity equation in its integral form:

Yee cell

J˜ · dS˜ =y

Yee cell

∇ · J˜ dV = − ∂

∂t

y

Yee cell

ρ(t) dV (B.1)

Consider also equation (2.3) in its integral form:

Yee cell

D˜ · dS˜ =y

Yee cell

ρ(t) dV (B.2)

From (B.1) and (B.2), one can conclude that if the discretized equations verify the relation

Yee cell

J˜ · dS˜ = − ∂

∂t

Yee cell

D˜ · dS˜ (B.3)

then Gauss’ Law (2.3) is being correctly modeled by the algorithm. Starting with the left-hand side term, we

have

Yee cell

J˜ · dS˜ =(σxx|i+1/2,j,kEx|ni+1/2,j,k − σxx|i−1/2,j,kEx|ni−1/2,j,k

)∆y∆z

+(σyy|i,j+1/2,kEy|ni,j+1/2,k − σyy|i,j−1/2,kEy|ni,j−1/2,k

)∆x∆z

+(σzz|i,j,k+1/2Ez|ni,j,k+1/2 − σzz|i,j,k−1/2Ez|ni,j,k−1/2

)∆x∆y

(B.4)

84

Page 98: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

For the right-hand side, we have

∂t

Yee cell

D˜ · dS˜ = εo

(εxx|i+1/2,j,k

∂Ex

∂t

∣∣∣∣ni+1/2,j,k

− εxx|i−1/2,j,k∂Ex

∂t

∣∣∣∣ni−1/2,j,k

)︸ ︷︷ ︸

Term 1

∆y∆z

+ εo

(εyy|i,j+1/2,k

∂Ey

∂t

∣∣∣∣ni,j+1/2,k

− εyy|i,j−1/2,k∂Ey

∂t

∣∣∣∣ni,j−1/2,k

)︸ ︷︷ ︸

Term 2

∆x∆z

+ εo

(εzz|i,j,k+1/2

∂Ez

∂t

∣∣∣∣ni,j,k+1/2

− εzz|i,j,k−1/2∂Ez

∂t

∣∣∣∣ni,j,k−1/2

)︸ ︷︷ ︸

Term 3

∆x∆y

(B.5)

Using the Yee algorithm time-stepping relation for Ex (2.20) and similar expressions for Ey and Ez

to substitute the time-derivatives in (B.5), we obtain

Term 1 =

Hz|ni+1/2,j+1/2,k −Hz|ni+1/2,j−1/2,k

∆y

−Hy|ni+1/2,j,k+1/2 −Hy|ni+1/2,j,k−1/2

∆z

− σxx|i+1/2,j,k Ex|ni+1/2,j,k

Hz|ni−1/2,j+1/2,k −Hz|ni−1/2,j−1/2,k

∆y

−Hy|ni−1/2,j,k+1/2 −Hy|ni−1/2,j,k−1/2

∆z

− σxx|i−1/2,j,k Ex|ni−1/2,j,k

(B.6a)

Term 2 =

Hx|ni,j+1/2,k+1/2 −Hx|ni,j+1/2,k−1/2

∆z

−Hz|ni+1/2,j+1/2,k −Hz|ni−1/2,j+1/2,k

∆x

− σyy|i,j+1/2,k Ey|ni,j+1/2,k

Hx|ni,j−1/2,k+1/2 −Hx|ni,j−1/2,k−1/2

∆z

−Hz|ni+1/2,j−1/2,k −Hz|ni−1/2,j−1/2,k

∆x

− σyy|i,j−1/2,k Ey|ni,j−1/2,k

(B.6b)

Term 3 =

Hy|ni+1/2,j,k+1/2 −Hy|ni−1/2,j,k+1/2

∆x

−Hx|ni,j+1/2,k+1/2 −Hx|ni,j−1/2,k+1/2

∆y

− σzz|i,j,k+1/2 Ez|ni,j,k+1/2

Hy|ni+1/2,j,k−1/2 −Hy|ni−1/2,j,k−1/2

∆x

−Hx|ni,j+1/2,k−1/2 −Hx|ni,j−1/2,k−1/2

∆y

− σzz|i,j,k−1/2 Ez|ni,j,k−1/2

(B.6c)

Substitution of the terms (B.6) in (B.5) yields

− ∂

∂t

Yee cell

D˜ · dS˜ =− (Term 1) ∆y∆z − (Term 2) ∆x∆z − (Term 3) ∆x∆y

=(σxx|i+1/2,j,k Ex|ni+1/2,j,k − σxx|i−1/2,j,k Ex|ni−1/2,j,k

)∆y∆z

+(σyy|i,j+1/2,k Ey|ni,j+1/2,k − σyy|i,j−1/2,k Ey|ni,j−1/2,k

)∆x∆z

+(σzz|i,j,k+1/2 Ez|ni,j,k+1/2 − σzz|i,j,k−1/2 Ez|ni,j,k−1/2

)∆x∆y

=

Yee cell

J˜ · dS˜ Q.E.D.

(B.7)

85

Page 99: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

which proves that the algorithm satisfies Gauss’ Law (2.3). Equation (B.7) shows that for a medium without

conductivity, i.e., with σxx = σyy = σzz = 0, the time derivative of the net electric flux that leaves the Yee

cell is zero, which means that, assuming zero initial conditions, this flux never departs from zero and no free

charge is present in the Yee cells.

However, when currents exist in the computational domain, either due to a nonzero conductivity or

an excitation current, the Yee cells implicitly store charge, and it has been shown that there is a capacitance

between adjacent cells [48] .

The proof of the verification of Gauss’ Law (2.4) can be done by analogy with the procedure used

for (2.3), using the continuity equation for equivalent magnetic currents and charges.

86

Page 100: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix C

Code Examples

C.1 Simple Three-Dimensional FDTD Update Algorithm

for(t=0;t<maxTimeSteps;t++)

/*Update cycle for the H-field components*/

for(i=0;i<TotalCellsX-1;i++)

for(j=0;j<TotalCellsY-1;j++)

for(k=0;k<TotalCellsZ-1;k++)

Hx[i][j][k] = D1x[i][j][k] * Hx[i][j][k]

+ D2x[i][j][k] * (Ey[i][j][k+1] - Ey[i][j][k])

- D3x[i][j][k] * (Ez[i][j+1][k] - Ez[i][j][k]);

Hy[i][j][k] = D1y[i][j][k] * Hy[i][j][k]

+ D2y[i][j][k] * (Ez[i+1,j,k] - Ez[i][j][k])

- D3y[i][j][k] * (Ex[i,j,k+1)] - Ex[i][j][k]);

Hz[i][j][k] = D1z[i][j][k] * Hz[i][j][k]

+ D2z[i][j][k] * (Ex[i,j+1,k] - Ex[i][j][k])

- D3z[i][j][k] * (Ey[i+1,j,k] - Ey[i][j][k]);

/*Update cycle for the E-field components*/

for(i=1;i<TotalCellsX;i++)

for(j=1;j<TotalCellsY;j++)

for(k=1;k<TotalCellsZ;k+

Ex[i][j][k] = C1x[i][j][k] * Ex[i][j][k]

+ C2x[i][j][k] * (Hz[i][j][k] - Hz[i,j-1,k])

- C3x[i][j][k] * (Hy[i][j][k] - Hy[i,j,k-1]);

Ey[i][j][k] = C1y[i][j][k] * Ey[i][j][k]

+ C2y[i][j][k] * (Hx[i][j][k] - Hx[i,j,k-1])

- C3y[i][j][k] * (Hz[i][j][k] - Hz[i-1,j,k]);

Ez[i][j][k] = C1z[i][j][k] * Ez[i][j][k]

+ C2z[i][j][k] * (Hy[i][j][k] - Hy[i-1,j,k])

- C3z[i][j][k] * (Hx[i][j][k] - Hx[i,j-1,k]);

87

Page 101: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

C.2 Three-Dimensional FDTD Update Algorithm with the UPML

/*---Data structure definition---*/

typedef struct

float Dx,Dy,Dz,Bx,By,Bz;

float C4x, C4y, C4z, C5x, C5y, C5z, C6x, C6y, C6z;

float D4x, D4y, D4z, D5x, D5y, D5z, D6x, D6y, D6z;

UPMLCell;

typedef struct

float Ex, Ey, Ez, Hx, Hy, Hz;

float C1x, C1y, C1z, C2x, C2y, C2z, C3x, C3y, C3z;

float D1x, D1y, D1z, D2x, D2y, D2z, D3x, D3y, D3z;

UPMLCell *upmlCell;

Cell;

/*---End of data structure definition---*/

(...)

/*---Time stepping loop---*/

for(t=0;t<maxTimeSteps;t++)

/*Update cycle for the H-field components*/

for(i=0;i<TotalCellsX-1;i++)

for(j=0;j<TotalCellsY-1;j++)

for(k=0;k<TotalCellsZ-1;k++)

Cell *cell = &cells[i][j][k]; /*cells is the 3D array that stores all

the cells used in the simulation*/

if(cell->upmlCell == NULL) /*Use the standard update equations*/

/*Update the Hx component*/

cell->Hx[i][j][k] = cell->D1x * cell->Hx

+ cell->D2x * (cells[i][j][k+1]->Ey - cell->Ey)

- cell->D3x * (cells[i][j+1][k]->Ez - cell->Ez);

/*Update the Hy and Hz components*/

(...)

else /*Use the UPML update equations and coefficients*/

Cell *cell2 = cell->upmlCell; /*The cell references a data structure with the

additional field components and coefficients*/

/*Update the Hx component*/

float tmp = cell2->Bx; /*Temporarily store the old value of Bx*/

cell2->Bx = cell->D1x*cell2->Bx+cell->D2x*(cells[i,j,k+1].Ey - cell->Ey)

- cell->D3x*(cells[i,j+1,k].Ez - cell->Ez);

cell->Hx = cell2->D4x*cell->Hx+cell2->D5x*cell2->Bx+cell2->D6x*tmp;

/*Update the Hy and Hz components*/

(...)

/*Update cycle for the E-field components*/

(...)

88

Page 102: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix D

UPML Update Equations and

Coefficients

This appendix presents the field updating relations and coefficients used for the implementation of

the UPML absorbing boundary in the developed software.

D.1 Update equations for the E-field

Update equations for the Ex component:

Dx|n+ 1

2i+ 1

2 ,j,k=C1xDx|

n− 12

i+ 12 ,j,k

+ C2x

(Hz|ni+ 1

2 ,j+ 12 ,k −Hz|ni+ 1

2 ,j− 12 ,k

)(D.1)

− C3x

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni+ 1

2 ,j,k− 12

)Ex|

n+ 12

i+ 12 ,j,k

=C4xEx|n− 1

2i+ 1

2 ,j,k+ C5xDx|

n+ 12

i+ 12 ,j,k− C6xDx|

n− 12

i+ 12 ,j,k

(D.2)

Update coefficients for the Ex component:

C1x =2ε0ky −∆tσy

2ε0ky + ∆tσy; C2x =

2ε0∆t

2ε0ky + ∆tσy

1∆y

; C3x =2ε0∆t

2ε0ky + ∆tσy

1∆z

(D.3)

C4x =2ε0kz − σz∆t

2ε0kz + σz∆t; C5x =

1ε0εxx

2ε0kx + σx∆t

2ε0kz + σz∆t; C6x =

1ε0εxx

2ε0kx − σx∆t

2ε0kz + σz∆t(D.4)

Update equations for the Ey component:

Dy|n+ 1

2i,j+ 1

2 ,k=C1yDy|

n− 12

i,j+ 12 ,k

+ C2y

(Hx|ni,j+ 1

2 ,k+ 12−Hx|ni,j+ 1

2 ,k− 12

)(D.5)

− C3y

(Hz|ni+ 1

2 ,j+ 12 ,k −Hz|ni− 1

2 ,j+ 12 ,k

)Ey|

n+ 12

i,j+ 12 ,k

=C4yEy|n− 1

2i,j+ 1

2 ,k+ C5yDy|

n+ 12

i,j+ 12 ,k− C6yDy|

n− 12

i,j+ 12 ,k

(D.6)

Update coefficients for the Ey component:

C1y =2ε0kz −∆tσz

2ε0kz + ∆tσz; C2y =

2ε0∆t

2ε0kz + ∆tσz

1∆z

; C3y =2ε0∆t

2ε0kz + ∆tσz

1∆x

(D.7)

C4y =2ε0kx − σx∆t

2ε0kx + σx∆t; C5y =

1ε0εyy

2ε0ky + σy∆t

2ε0kx + σx∆t; C6y =

1ε0εyy

2ε0ky − σy∆t

2ε0kx + σx∆t(D.8)

89

Page 103: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Update equations for the Ez component:

Dz|n+ 1

2i,j,k+ 1

2=C1zDz|

n− 12

i,j,k+ 12

+ C2z

(Hy|ni+ 1

2 ,j,k+ 12−Hy|ni− 1

2 ,j,k+ 12

)(D.9)

− C3z

(Hx|ni+ 1

2 ,j,k+ 12−Hx|ni+ 1

2 ,j,k− 12

)Ez|

n+ 12

i,j,k+ 12

=C4zEz|n− 1

2i,j,k+ 1

2+ C5zDz|

n+ 12

i,j,k+ 12− C6zDz|

n− 12

i,j,k+ 12

(D.10)

Update coefficients for the Ez component:

C1z =2ε0kx −∆tσx

2ε0kx + ∆tσx; C2z =

2ε0∆t

2ε0kx + ∆tσx

1∆x

; C3z =2ε0∆t

2ε0kx + ∆tσx

1∆y

(D.11)

C4z =2ε0ky − σy∆t

2ε0ky + σy∆t; C5z =

1ε0εzz

2ε0kz + σz∆t

2ε0ky + σy∆t; C6z =

1ε0εzz

2ε0kz − σz∆t

2ε0ky + σy∆t(D.12)

D.2 Update equations for the H-field

Update equations for the Hx component:

Bx|n+ 1

2i,j+ 1

2 ,k+ 12

=D1xBx|n− 1

2i,j+ 1

2 ,k+ 12

+ D2x

(Ey|ni,j+ 1

2 ,k+1 − Ey|ni,j+ 12 ,k

)(D.13)

−D3x

(Ez|ni,j+1,k+ 1

2− Ez|ni,j,k+ 1

2

)Hx|

n+ 12

i,j+ 12 ,k+ 1

2=D4xHx|

n− 12

i,j+ 12 ,k+ 1

2+ D5xBx|

n+ 12

i,j+ 12 ,k+ 1

2−D6xBx|

n− 12

i,j+ 12 ,k+ 1

2(D.14)

Update coefficients for the Hx component:

D1x =2ε0ky −∆tσy

2ε0ky + ∆tσy; D2x =

2ε0∆t

2ε0ky + ∆tσy

1∆z

; D3x =2ε0∆t

2ε0ky + ∆tσy

1∆y

(D.15)

D4x =2ε0kz − σz∆t

2ε0kz + σz∆t; D5x =

1µ0µxx

2ε0kx + σx∆t

2ε0kz + σz∆t; D6x =

1µ0µxx

2ε0kx − σx∆t

2ε0kz + σz∆t(D.16)

Update equations for the Hy component:

By|n+ 1

2i+ 1

2 ,j,k+ 12

=D1yBy|n− 1

2i+ 1

2 ,j,k+ 12

+ D2y

(Ez|ni+1,j,k+ 1

2− Ez|ni,j,k+ 1

2

)(D.17)

−D3y

(Ex|ni+ 1

2 ,j,k+1 − Ex|ni+ 12 ,j,k

)Hy|

n+ 12

i+ 12 ,j,k+ 1

2=D4yHy|

n− 12

i+ 12 ,j,k+ 1

2+ D5yBy|

n+ 12

i+ 12 ,j,k+ 1

2−D6yBy|

n− 12

i+ 12 ,j,k+ 1

2(D.18)

Update coefficients for the Hy component:

D1y =2ε0kz −∆tσz

2ε0kz + ∆tσz; D2y =

2ε0∆t

2ε0kz + ∆tσz

1∆x

; D3y =2ε0∆t

2ε0kz + ∆tσz

1∆z

(D.19)

D4y =2ε0kx − σx∆t

2ε0kx + σx∆t; D5y =

1µ0µyy

2ε0ky + σy∆t

2ε0kx + σx∆t; D6y =

1µ0µyy

2ε0ky − σy∆t

2ε0kx + σx∆t(D.20)

Update equations for the Hz component:

Bz|n+ 1

2i+ 1

2 ,j+ 12 ,k

=D1zBz|n− 1

2i+ 1

2 ,j+ 12 ,k

+ D2z

(Ex|ni+ 1

2 ,j+1,k − Ex|ni+ 12 ,j,k

)(D.21)

−D3z

(Ey|ni+1,j+ 1

2 ,k − Ey|ni,j+ 12 ,k

)Hz|

n+ 12

i+ 12 ,j+ 1

2 ,k=D4zHz|

n− 12

i+ 12 ,j+ 1

2 ,k+ D5zBz|

n+ 12

i+ 12 ,j+ 1

2 ,k−D6zBz|

n− 12

i+ 12 ,j+ 1

2 ,k(D.22)

90

Page 104: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Update coefficients for the Hz component:

D1z =2ε0kx −∆tσx

2ε0kx + ∆tσx; D2z =

2ε0∆t

2ε0kx + ∆tσx

1∆y

; D3z =2ε0∆t

2ε0kx + ∆tσx

1∆x

(D.23)

D4z =2ε0ky − σy∆t

2ε0ky + σy∆t; D5z =

1µ0µzz

2ε0kz + σz∆t

2ε0ky + σy∆t; D6z =

1µ0µzz

2ε0kz − σz∆t

2ε0ky + σy∆t(D.24)

91

Page 105: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix E

Modeling of Thin Metalizations

This appendix describes the approach used in the developed software to incorporate thin PEC

metalizations into the FDTD grid. A metalization is said to be thin when its thickness is much smaller than

the simulation’s minimum wavelength λmin, so that in order to discretize it, a prohibitive number of cells

would be required. As an example, consider the microstrip line whose cross-section is represented in Fig. E.1.

Figure E.1: Geometry of the microstrip line used to illustrate the technique for modeling thin metalizations.The thickness of the metalizations is very small when compared to the substrate’s height.

As can be seen in Fig. E.1, the thicknesses of both the ground plane and the conducting strip

are negligible when compared to the substrate’s height and therefore, even if only a single cell was used to

discretize the thickness of the metalizations, the resultant time-step would be so small that the simulation

time would increase dramatically. A simple, yet effective way of avoiding this is to consider that the E-field

components coplanar to the metalizations are always zero. This can be achieved by taking into consideration

that since for a PEC material the electrical conductivity, σ, is infinite, the update coefficients for the E-field

components inside this kind of material, which can be calculated from (2.25)-(2.27), are

C1x = −1 ; C2x = 0 ; C3x = 0 (E.1a)

C1y = −1 ; C2y = 0 ; C3y = 0 (E.1b)

C1z = −1 ; C2z = 0 ; C3z = 0 (E.1c)

In order to illustrate this technique, consider a possible discretization of the microstrip line of Fig.

E.1, which is shown in Fig. E.2. When creating the grid for this structure, i.e., during the spatial discretization

92

Page 106: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

stage 1, the mesh generation algorithm neglects the presence of the thin metalizations, which allows the

generation of a Cartesian FDTD grid having acceptable cell sizes along the z direction. However, during the

material mapping stage2, the algorithm checks for the presence of thin metalizations (which have been user

specified before generating the mesh), and sets the update coefficients of the tangential E-field components

that lie on the metalizations, which in this case are the Ex and Ey components, according to (E.1a) and

(E.1b). In Fig. E.2, the E-field components for which the update coefficients are modified are shown in blue.

Figure E.2: FDTD grid for the microstrip line and representation of the Ex and Ez field components. The Ex

field components inside the metalizations are shown in blue and the associated update coefficients are thoseof (E.1a).

It is worth mentioning that although this simple approach gives quite good results for a broad

range of applications, more sophisticated methods exist, such as those described in [49] and [50], that can

incorporate the behavior of field singularities that occur at the metalization’s edges, similarly to the thin-wire

model presented in Section 4.2. The implementation of such methods could be the topic of future work.

1The spatial discretization algorithm is described in Section 7.22The material mapping algorithm is described in Section 7.3

93

Page 107: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Appendix F

Other Experiments and Applications

This appendix presents a number of examples that demonstrate the developed software’s potential

to handle problems not strictly related to antennas, thereby confirming the generality of the techniques and

algorithms employed.

F.1 Low-pass microstrip filter

This example illustrates the applicability of the software to the analysis of microstrip circuit compo-

nents. The structure to be analyzed is a low-pass microstrip filter for which FDTD and experimental results

have been obtained by Sheen et al. [43]. The geometry of the filter is shown in Fig. F.1.

Figure F.1: Geometry of the low-pass filter.

This device has two microstrip ports that have been modeled using the waveguide source described

in Section 5.4. Since this is a symmetric, reciprocal device, the quantities of interest are the return loss S11

and insertion loss S21. In order to obtain them, first the bootstrapping procedure was run for both ports so

as to obtain their respective quasi-TEM mode’s field distribution. Then, port number 1 was excited with a

differentiated Gaussian signal having a -20 dB bandwidth extending from 0.5 GHz to 20 GHz.

94

Page 108: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

The computational domain was discretized using a non-uniform mesh with 59 by 79 by 10 cells, with

a minimum density of 30 cells per wavelength. A 5-cell thick UPML was used to terminate the boundaries

of the computational domain, except for the boundary at zmin, which was set as an electric wall, in order to

simulate the ground plane. The metallic parts of the device were all meshed as thin metalizations, as described

in Appendix E. The time-step used for the simulation was 0.394 ps.

The simulation required 3110 time-steps for the total energy to decay 40 dB relatively to the

maximum value. The scattering coefficient results, shown in Figs. F.2 and F.3, show good agreement in the

location of the response nulls, except for the high end of the frequency range, where the shift towards lower

frequencies may be related with the less accurate resolution of the fields in the vicinity of strip edges.

Figure F.2: Return loss of the low-pass filter.

Figure F.3: Insertion loss of the low-pass filter.

95

Page 109: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

F.2 SAR Calculation

This example illustrates the application of the developed software to the Specific Absorption Rate

(SAR) calculation of the CENELEC 50361 Specific Anthropomorphic Mannequin (SAM) phantom head. The

problem’s geometry is shown in Fig. F.4.

Figure F.4: Geometry of the SAR calculation problem.(a) Perspective view of the SAM and cell phone. (b)View of the tissue simulating liquid inside the SAM, obtained by rendering the outer shell with transparency.

As can be seen in Fig. F.4, the problem consists of the SAM phantom head and a simple PEC

model of a cell phone, which was positioned as to reproduce a typical usage configuration. The feed of the cell

phone’s antenna was modeled with a resistive voltage source having a 50 Ω internal impedance. Taking into

account that the cell phone operates approximately at 900 Mhz, the input signal used was a ramped sinusoid

having that frequency. The SAM phantom head was modeled by a shell filled with a liquid that represents the

average material properties of the human head. The material parameters for the shell and liquid are shown in

Table F.1.

Material εr µr σ (S/m) ρ (kg/m3)Plastic shell 5 1 0.0125173 1000

Liquid 42 1 0.99 1000

Table F.1: Material properties used to model the CENELEC 50361 SAM phantom head at 900 MHz.

The computational domain was discretized with a non-uniform mesh composed of 89 by 115 by 115

cells, with minimum and maximum densities respectively of 10 and 20 cells per wavelength. The cell size for

this problem is particularly small due to the high electrical permittivity of the head’s filling liquid, which results

in a minimum wavelength λmin that is approximately 6.5 times smaller than in free-space. All boundaries were

terminated by a 5 cell thick UPML and the time-step used for the simulation was 3.947 ps.

Taking into account that the SAR is given by

SAR =σ∣∣E∣∣22ρ

(F.1)

where ρ is the material density, a DFT was run concurrently with the FDTD time-stepping in order to obtain

the phasors for the E-field at 900 MHz. In order to save memory and CPU-time, the DFT was only performed

for those cells where the SAR can be calculated, i.e, cells associated with materials having a positive, finite

96

Page 110: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

conductivity and a non-zero density, which for this problem are those of the shell and its interior.

The sinusoidal steady-state was reached after 1990 time-steps. A three-dimensional plot of the SAR

values on the head’s surface is shown in Fig. F.5, where it can be seen that the results are in agreement with

what is qualitatively expected from a problem having this configuration.

Figure F.5: Three-dimensional SAR plot for the CENELEC 50361 SAM phantom head.

Finally, a comparison between the three-dimensional radiation patterns of the cell phone at 900

MHz, with and without the SAM phantom head, are presented in Fig. F.6. As can be seen, the presence of

the head significantly changes the radiation characteristics of the cellular phone.

Figure F.6: Illustration of the SAM phantom head’s effect on the radiation pattern (directivity) of the cellularphone at 900 MHz.(a) Radiation pattern with SAM; (b) Radiation pattern without SAM.

97

Page 111: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

Bibliography

[1] E. K. Miller, “A Selective Survey of Computational Electromagnetics,” IEEE Transactions on Antennas

and Propagation, vol. 36, no. 9, pp. 1281–1305, September 1988.

[2] K. S. Yee, “Numerical Solution of Initial Boundary Value Problems Involving Maxwell’s Equations in

Isotropic Media,” IEEE Trans. Antennas Propagat., vol. AP-14, pp. 302–307, May 1966.

[3] Meep. [Online]. Available: http://ab-initio.mit.edu/wiki/index.php/Meep

[4] Sun Microsystems. (2004) JavaTM 2 Platform Standard Edition 5.0 API Specification. [Online].

Available: http://java.sun.com/j2se/1.5.0/docs/api/

[5] (2007) Java 3D API Documentation. [Online]. Available: https://java3d.dev.java.net/#Documentation

[6] Sun Microsystem’s Java 3D engineering team. (1999) Java 3D Tutorial. [Online]. Available:

http://java.sun.com/developer/onlineTraining/java3d/index.html

[7] W. L. Stutzman and G. A. Thiele, Antenna Theory and Design, 2nd ed. John Wiley & Sons, 1998.

[8] Wavefront Technologies. (1996) Wavefront OBJ Specification. [Online]. Available:

http://netghost.narod.ru/gff/graphics/summary/waveobj.htm

[9] A. Taflove and S. C. Hagness, Computational Electrodynamics: The Finite-Difference Time-Domain

Method, 2nd ed. Artech House, 2000.

[10] K. S. Kunz and R. J. Luebbers, The Finite Difference Time Domain Method for Electromagnetics. CRC

Press, 1993.

[11] T. Namiki, “A new FDTD Algorithm Based on Alternating-Direction Implicit Method,” IEEE Trans.

MTT, vol. 47, no. 10, pp. 2003–2007, October 1999.

[12] S. Staker, C. Holloway, A. Bhobe, and M. Piket-May, “Alternating-direction implicit (ADI) formulation of

the finite-difference time-domain (FDTD) method: algorithm and material dispersion implementation,”

IEEE Transactions on Electromagnetic Compatibility, vol. 45, no. 2, pp. 156–166, May 2003.

[13] G. Carat, R. Gillard, J. Citerne, and J. Wiart, “An efficient analysis of planar microwave circuits using a

DWT-based Haar MRTD scheme,” IEEE Trans. MTT, vol. 48, no. 12, pp. 2261–2269, December 2000.

[14] W. Yu and R. Mittra, “A Technique for Improving the Accuracy of the Nonuniform Finite-Difference

Time-Domain Algorithm,” IEEE Trans. MTT, vol. 47, no. 3, pp. 353–356, March 1999.

[15] P. Monk and E. Suli, “Error Estimates for Yee’s Method on Non-uniform Grids,” IEEE Transactions on

Magnetics, vol. 30, no. 5, pp. 3200–3203, September 1994.

98

Page 112: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

[16] W. Yu and R. Mittra, “Electromagnetic scattering of underground object using nonuniform mesh FDTD

and PML,” Microwave and Optical Technology Letters, vol. 21, no. 2, pp. 151–156, April 1999.

[17] W. Heinrich, P. M. Klaus Beilenhoff, and L. Roselli, “Optimum Mesh Grading for Finite-Difference

Method,” IEEE Trans. MTT, vol. 44, no. 9, pp. 1569–1574, September 1996.

[18] G. Mur, “Absorbing Boundary conditions for the Finite-Difference Approximation of the Time-Domain

Electromagnetic-Field Equations,” IEEE Transactions on Electromagnetic Compatibility, vol. 23, no. 4,

pp. 377–382, November 1981.

[19] ——, “Total-Field Absorbing Boundary Conditions for the Time-Domain Electromagnetic Field Equa-

tions,” IEEE Transactions on Electromagnetic Compatibility, vol. 40, no. 2, pp. 100–102, May 1998.

[20] J.-P. Berenger, “A Perfectly Matched Layer for the Absorption of Electromagnetic Waves,” Journal of

Computational Physics, vol. 114, pp. 185–200, 1994.

[21] S. D. Gedney, “An Anisotropic Perfectly Matched Layer-Absorbing Medium for the Truncation of FDTD

Lattices,” IEEE Transactions on Antennas and Propagation, vol. 44, no. 12, pp. 1630–1639, December

1996.

[22] J.-P. Berenger, “The PML Absorbing Boundary Condition,” in European School of Antennas: European

Course on Time Domain Techniques for Antenna Analysis, Polytech’Nice Sophia, Universite de Nice-

Sophia Antipolis, 20-24 November 2006.

[23] ——, “Three-Dimensional Perfectly Matched Layer for the Absorption of Electromagnetic Waves,” Jour-

nal of Computational Physics, vol. 127, pp. 363–379, 1996.

[24] P. K. Datta and D. Bhattacharya, “Optimization of Uniaxial Perfectly Matched Layer Parameters for

Finite Difference Time Domain Simulation and Application to Coupled Microstrip Lines with Multiple

Bend Discontinuities,” International Journal of RF and Microwave Computer-Aided Engineering, vol. 12,

no. 6, pp. 508–519, October 2002.

[25] S. D. Gedney, “Comment on “On the Matching Conditions of Different PML Schemes Applied to Multi-

layer Isotropic Dielectric Media“,” Microwave and Optical Technology Letters, vol. 30, no. 4, pp. 289–291,

August 2001.

[26] D. M. Pozar, Microwave Engineering, 2nd ed. John Wiley & Sons, 1998.

[27] K. R. Umashankar, A. Taflove, and B. Beker, “Calculation and Experimental Validation of Induced Cur-

rents on Coupled Wires in an Arbitrary Shaped Cavity,” IEEE Transactions on Antennas and Propagation,

vol. 35, no. 11, pp. 1248–1257, November 1987.

[28] G. Marrocco, M. Sabbadini, and F. Bardati, “FDTD Improvement by Dielectric Subgrid Resolution,”

IEEE Transactions on Microwave Theory and Techniques, vol. 46, no. 12, pp. 2166–2169, December

1998.

[29] J. G. Maloney, K. L. Shlager, and G. S. Smith, “A Simple FDTD Model for Transient Excitation of

Antennas by Transmission Lines,” IEEE Transactions on Antennas and Propagation, vol. 42, no. 2, pp.

289–292, February 1994.

[30] I. J. Craddock, D. L. Paul, C. J. Railton, P. N. Fletcher, and M. Dean, “Applications of singlemode

extraction from finite difference time domain data,” IEE Proc.-Microw. Antennas Propag., vol. 146,

no. 2, pp. 160–162, April 1999.

99

Page 113: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

[31] M. A. Schamberger, S. Kosanovich, and R. Mittra, “Parameter Extraction and Correction for Transmis-

sion Lines and Discontinuities Using the Finite-Difference Time-Domain Method,” IEEE Transactions on

Microwave Theory and Techniques, vol. 44, no. 6, pp. 919–925, June 1996.

[32] C. A. Balanis, Advanced Engineering Electromagnetics. John Wiley & Sons, 1989.

[33] O. M. Ramahi, “Near- and Far-Field Calculations in FDTD Simulations Using Kirchhoff Surface Integral

Representation,” IEEE Transactions on Antennas and Propagation, vol. 45, no. 5, pp. 753–759, May

1997.

[34] J. Nocedal and S. J. Wright, Numerical Optimization, 1st ed. Springer, 1999.

[35] Y. Kanai and K. Sato, “Automatic Mesh Generation for 3D Electromagnetic Field Analysis by FD-TD

Method,” IEEE Transactions on Magnetics, vol. 34, no. 5, pp. 3383–3386, September 1998.

[36] Y. Srisukh, J. Nehrbass, F. L. Teixeira, J.-F. Lee, and R. Lee, “An Approach for Automatic Grid Generation

in Three-Dimensional FDTD Simulations of Complex Geometries,” IEEE Antenna’s and Propagation

Magazine, vol. 44, no. 4, pp. 75–80, August 2002.

[37] R. P. Picanco, “DESENVOLVIMENTO DE UMA INTERFACE INTEGRADA PARA O PROJETO E

ANALISE DE ANTENAS UTILIZANDO O METODO DAS DIFERENCAS FINITAS NO DOMINIO DO

TEMPO (FDTD) ,” Masters Thesis, Universidade de Brasılia, Faculdade de Tecnologia, March 2006.

[38] J. Hill, “Efficient Implementation of Mesh Generation and FDTD Simulation of Electromagnetic Fields,”

Masters Thesis, Worcester Polytechnic Institute, August 1996.

[39] R. J. Luebbers and K. Kunz, “Finite Difference Time Domain Calculations of Antenna Mutual Coupling,”

IEEE Transactions on Electromagnetic Compatibility, vol. 34, no. 3, pp. 357–359, August 1992.

[40] (2007) Computer Simulation Technology (CST). [Online]. Available: http://www.cst.com/

[41] T. Weiland, “Time Domain Electromagnetic Field Computation with Finite Difference Methods,” Inter-

national Journal of Numerical Modelling: Electronic Networks, Devices and Fields, vol. 9, pp. 295–319,

1996.

[42] R. Luebbers, L. Chen, T. Uno, and S. Adachi, “FDTD Calculation of Radiation Patterns, Impedance, and

Gain for a Monopole Antenna on a Conducting Box,” IEEE Transactions on Antennas and Propagation,

vol. 40, no. 12, pp. 1577–1583, December 1992.

[43] D. M. Sheen, S. M. Ali, M. D. Abouzahra, and J. A. Kong, “Application of the Three-Dimensional Finite-

Difference Time-Domain Method to the Analysis of Planar Microstrip Circuits,” IEEE Transactions on

Microwave Theory and Techniques, vol. 38, no. 7, pp. 849–857, July 1990.

[44] P. A. Makal, “UWB ANTENNAS FOR WIRELESS APPLICATIONS,” Final Report, IST Lisbon, July

2007.

[45] P. A. Tirkas and C. A. Balanis, “Finite-Difference Time-Domain Method for Antenna Radiation,” IEEE

Transactions on Antennas and Propagation, vol. 40, no. 3, pp. 334–340, March 1992.

[46] S. Dey and R. Mittra, “A Locally Conformal Finite-Difference Time-Domain (FDTD) Algorithm for

Modeling Three-Dimensional Perfectly Conducting Objects,” IEEE Microwave and Guided Wave Letters,

vol. 7, no. 9, pp. 273–275, September 1997.

100

Page 114: Development of Software for Antenna Analysis and Design using … · Abstract This work presents the development of a complete software package for antenna analysis and design using

[47] ——, “A Conformal Finite-Difference Time-Domain Technique for Modeling Cylindrical Dielectric Res-

onators,” IEEE Transactions on Microwave Theory and Techniques, vol. 47, no. 9, pp. 1737–1739,

September 1999.

[48] C. L. Wagner and J. B. Schneider, “Divergent Fields, Charge, and Capacitance in FDTD Simulations,”

IEEE Trans. MTT, vol. 46, no. 12, pp. 2131–2136, December 1998.

[49] N.-H. Huynh and W. Heinrich, “FDTD Accuracy Improvement by Incorporation of 3D Edge Singularities,”

IEEE MTT-S Digest, pp. 1573–1576, 1999.

[50] C. J. Railton, D. L. Paul, I. J. Craddock, and G. S. Hilton, “The Treatment of Geometrically Small Struc-

tures in FDTD by the Modification of Assigned Material Parameters,” IEEE Transactions on Antennas

and Propagation, vol. 53, no. 12, pp. 4129–4136, December 2005.

101