I came across the issue of how to teach a trainee how to write a parallel finite-difference time-domain (FDTD) method. There are a lot of books on the FDTD, but only a few on parallel ones. So I’ve decided to go for this book, knowing that some chapters won’t apply to our job (wave equations). My goal was to seek a book that would explain the basics of my issues.
Content and opinions
The book can be split in two parts: the first is about the electromagnetic equations, the second on its parallel implementation.
The first chapter deals with the basics of FDTD. Stability analysis, dispersion, … Nothing fancy, but it does its work. Then different kind of boundary conditions are presented in the second chapter. A lot are specific to electromagnetism, but the one I use (CPML) is also part of this one.
The three next chapters deal mainly with electromagnetism specifics, so I didn’t read them much. The third is about some FDTD optimizations, the fourth introduces the different source solutions, mainly electromag-specific. The last chapter on FDTD is about data collection and what can be computed from them. Some information are worth readign, as we can forget, for instance, that an FDTD computation does not output results on the same grid (electric field and magnetic field are interlaced).
The five last chapters are dedicated to the parallel FDTD. After a parallel system introduction (not outstanding, but it present the architecture, the different techniques, how speedup is computed, …), the actual FDTD method is dissected through the different exchange techniques (although I do not use one of them, but the differences and implications of each are correctly described) and the actual exchange code (independent of the technique used). Drawings explain what must be communicated, and the MPI code is given (in fact, it’s an extract of the program given in the beginning of the chapter). Then other electromagnetism topics are addressed.
The eighth chapter presents some results and finally the last two chapters FDTD when using a polar representation (which is not my case, so I’ve skipped them).
As usual for such a book, you have to make your firm buy it for you. At 100$ the 260-pages book, it’s not cheap.
Now, the real question was if I thought it would help a trainee (or a beginner) understand the issues that arise with FDTD. In that matter, I think it does, also a lot can be skipped if electromagnetism is not the application field. It will not teach the specifics of rotated grids or higher orders, but if you’re explained the basics, you can understand more complex issues.