High performance computing for the Finite Difference Time Domain method with the Huygens Absorbing Boundary Condition

The Finite-Difference Time-Domain (FDTD) is the most widely used method for solving Maxwell’s equations in the time domain. Since the FDTD domains are usually open regions, an Absorbing Boundary Condition (ABC) is needed to absorb the outgoing waves and simulate the extension to infinity. The most p...

Full description

Bibliographic Details
Main Author: Almeer, Hanan Syha
Other Authors: Costen, Fumie; Mihajlovic, Milan
Published: University of Manchester 2014
Subjects:
004
Online Access:http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.617972
Description
Summary:The Finite-Difference Time-Domain (FDTD) is the most widely used method for solving Maxwell’s equations in the time domain. Since the FDTD domains are usually open regions, an Absorbing Boundary Condition (ABC) is needed to absorb the outgoing waves and simulate the extension to infinity. The most popularand effective ABCs is the Complex Frequency- Shifted Perfectly Matched Layer (CFS-PML) ABCs. The CFS-PML ABCs absorbs almost all of the outgoing waves, but the implementation of the CFS-PML ABCs is complicated and more computational resources such as memory and CPU time are required. In this thesis, a new ABC called Huygens Absorbing Boundary Condition (HABC), which is simpler to implement than the CFS-PML, is presented. The accuracy of the HABC is studied and compared with that of the CFS-PML. A combination of the HABC and the Stretch Mesh (SM) is introduced. The SM-HABC is tested with an object with dispersive materials. For practical applications, the FDTD method with the HABC codes are parallelised on the Graphics Processing Units (GPUs) using the Compute Unified Device Architecture programming model (CUDA) in this thesis. Two implementations of the HABC on GPUs are presented. The performance of the two implementations are studied and compared with the implementation of the CFS-PML on GPUs. In addition, the FDTD with the HABC codes are parallelized on the shared memory architecture using Open Multi-Processing (OpenMP). The OpenMP code of the HABC is scaled and the results are compared with the scaled OpenMP code of the CFS-PML.Finally, Huygens excitation is used in this thesis to heat up the human body as an application of hyperthermia which is a cancer treatment. The SM-HABC is also used in human body simulations. A comparison between the use of the SM-HABC and the CFS-PML in human body simulations is introduced.