CFDTD for time marching 3D Electromagnetic fields



This is a promotional video for students who might be interested in our graduate course on simulation tools, here in the Department of Telecomunications and Systems at UAB (Barcelona).

Este es un video promocional para los estudiantes que puedan estar interesados en nuestro curso de grado en 'las herramientas de simulación', aquí en el Departamento de Telecomunicaciones y Sistemas de la UAB (Barcelona).





This is a promotional video for prospective students who might be interested in Telecomunications and should give them some idea of the kind of things that students will be doing in their final year of study for their degree here at UAB.

Este video da una idea de lo que podrían hacer nuestros alumnos de TELECOS para su proyecto final de carrera aquí en el departamento de Telecomunicaciones y Sistemas de la UAB. En términos del trabajo, hay aspectos de dibujo técnico 3D (utilizando Blender), hay aspectos de medidas a 2,5GHz utilizando un analizador de redes (o quizá de espectros) en nuestro camera anecoica, y hay aspectos de modelado mediante CFDTD con un GPU GTX Titan de Nvidia.





In this video we have created an anaglyph in Red/Cyan of the time marching 3D fields produced by FDTD. The example chosen is an orbital angular momentum (OAM) m=2 beam. At any particular time in the video-clip we see arrows with a black base representing the 3D field at a given level (indicated by dBmax – dBrange/2) over all of simulation space (which is terminated in CPML boundaries). By changing the level visualized we can see the shape of the beam at different stages in the wave propagation. The use of stereographic anaglyphs gives a good a 3D experience on computer LED monitors but unfortunately when projected onto a screen in class the result is disappointing.





The idea of this video is to give students a visual appreciation of the LP01 and LP11 modes and to show how the launching beam has a very noticable effect. In this example, we first take an arbitrarily high index contrast to show a strong guiding effect in a fictious glass fiber compared to the equivalent beam launched directly into the cladding. We then use a more standard optical fiber configuration with a 9 micrón core, an effective index for the LP01 mode of 1.446398072995997 and for the LP11 mode of 1.441121012003630, corresponding to a core index of 1.45, an index contrast of 1% and a wavelength of 1.55 microns. We calculate the Gaussian beam that matches the LP01 half-power half-width to be 3.68 microns, corresponding to a -36dB taper at twice the core radius. We show how this beam travels along the core practically unmodified. We then show how the LP11 mode can be excited with an out of phase pair of beams of reduced width. The CFDTD simulator can show both electric and magnetic fields in 3D and the wave escaping into the cladding can be seen to have an interesting shape.



VISUALISATION OF 3D TIME MARCHING ELECTROMAGNETIC FIELDS USING CUDA, By Ganesh Markandan (exchange student, Sastra University), SUPERVISOR: Dr. Gary Junkin (UAB).


ABSTRACT: This project develops a new method of 3D visualization of time marching electromagnetic fields surrounding antennas or scattering objects in 3D space. This new visualization method goes beyond the simple display of fields on static surfaces for example planar surfaces, and aims to dynamically follow the waves as they propagate around the antenna and collide with structures. This project combines 3D FDTD field calculations using the CUDA programming language with the interoperability of CUDA and OpenGL to perform the visualizations. The speed of the FDTD method is memory bound and hence GPUs are advantageous because of their faster memory performance compared to CPUs. As calculations are performed inside the GPU device, it seems natural to take advantage of the very powerful graphics capabilities of the GPU for more than just electromagnetic calculations. The essence of the project is how to reduce the number of points being displayed to a reasonable and useful level and hence keep the maximum amount of memory reserved for FDTD field calculations. Thus these real time visualizations obtained via processing give a significant idea of how the electromagnetic waves propagates within a given boundary, thus increasing the clarity of viewing.

Usually antenna engineers are not too interested in watching waves, and up until now this would have been too time consuming to produce. Engineers require input impedance and current distribution which they are able to interpret, as well as far-field plots, and occasionally near-field plots. The current distribution depends on how the electromagnetic waves have been moving around the structure. There are many phenomena such as creeping waves, surface waves, evanescent waves, travelling waves, standing waves, modal fields, etc. possibly combining to produce the current distribution, which then can be integrated to produce the far-field. An engineer will unlikely have watched the waves propagate around the structure and will therefore not have seen the effects that give rise to the current distribution, so his understanding of the origins of the current are based on his appreciation of the antenna design. For example, surface waves on a surface patch antenna can produce unexpected resonances, perhaps caused by surrounding structure getting excited by the surface waves. So, by observing the waves travelling around the antenna structure, the engineer can verify whether the antenna structure behaves according to his design, before going ahead and spending money and time on a physical prototype. As, Finite difference
time domain (FDTD) is a numerical analysis technique used for modeling computational electrodynamics, this technique is chosen for calculation of field values. The electric field vector components in a volume of space are solved at a given instant in time; then the magnetic field vector components in the same spatial volume are solved at the next instant in time; and the process is repeated over and over again until the desired transient or steady-state electromagnetic field behavior is fully evolved. However, FDTD method, generally are memory dependent. For e.g. a FDTD problem of size n × n × n has a calculation array size of n^3 for each of six field components. FDTD coefficients require an additional twelve times this array size, unless compression techniques are employed. Thus, the total size of the problem can amount to eighteen times the size of the FDTD data volume. In general, the problem size is restricted by the memory limitations of the GPU used. Additional memory used to display field values must therefore be kept to a minimum. For a FDTD problem with n=120, the memory requirement for displaying each and every point of a field component over the entire space is around 27Mb. However such a large number of points cannot be usefully visualized because some many points obscure the view. The number of required display points that gives a useful representation is relatively small. Allocating memory for the entire lattice array of points for display is not a good idea. Moreover, by reducing to a reasonable and useful level the number of display points to those points which provide useful information, memory can be conserved. This conserved memory can be used for increasing the problem size of FDTD. Thus, the main objective of this project is to provide a very fast algorithm that limits the number of visualization points to useful points.



Dey-Mittra Mesh Test using a 737 aircraft model. (2014-01-16)

This mesh test was carried out on a 3D model 737 aircraft having over 780 pieces. The .obj format file was found at In a real electromagnetic simulation some of the objects that appear separate in this 3D model would have to be joined for CFDTD to properly connect the metal interfaces. Apart from that, the test shows that both primary and secondary grid meshes can be generated relatively quickly for large and complex 3D models.

Electric Field on and surrounding The Helical Antenna (2014-01-07)

Although FDTD in its simplest form is not at all well suited to modeling curved wires, Conformal FDTD does allow us to model thick curved wires with relative ease. In this design at 2.5GHz taken from the wire diameter is 4mm.

One advantage of CFDTD is that more and more detail can be added to the antenna structure, including dielectric supports, all for the same computational cost. Another advantage shown in this video is the visualization of field components as time marches on, giving a better insight into how the antenna operates.

Field visualization using the GTX Titan. (2013-11-08)

Visualization of the time-varying electric field inside an inter-digital filter. (2013-10-14)


3D Time Marching Visualization of electric field normal to arbitrary surfaces. (2013-10-05).

In this software test we use a knot geometry to show the generality of the conformal mesh generator. In fact the knot has been duplicated and treated as a single object. The conformal FDTD surface mesh is generated from the Dey intersection analysis. Each point of each triangle lies on at least one of the FDTD lattice axes, so interpolation of the electric field is actually quite straightforward. Both FDTD update and colour updates (based on interpolated E-field) are carried out in CUDA device code. The problem size is 214x150x166 terminated with Mur second order ABCs. In this test a GTX 580 was used, which is about 10-15% quicker than the GTX 480.


Time varying Electric field visualization in 3D using CUDA / DIRECT-X Interoperability (2013-09-27)

This example shows the interoperability of CUDA with DirectX for the visualization of time varying electromagnetic field calculated by the FDTD method, using a nVidia GTX480. In order to see an interesting picture, we have chosen a metallic head model scaled to produce a 134x134x150 point simulation at millimeter waves. No attempt has been made to compress the FDTD coefficients, so about 28% of the available memory on this card is being used.

The video first shows the generation of Dey-Mittra areas and distances used in conformal FDTD, essentially the intersections between the original polygon surface description and the FDTD lattice grid. Following this, a new polygon description is generated based on the Dey-Mittra grid intersections. Finally, these the vertices of these polygons are color mapped to the interpolated electric field (this is a first attempt using a linear interpolation). A decibel scale is used and positive field is shown in red, negative field is shown in blue.



CUDA / DIRECT-X Interoperability (2013-09-12)

The following example shows the combined display and calculation capabilities of CUDA using our relatively old GTX480. Being able to navigate over the entire lattice and display the field as time marches on is of tremendous help when developing code as it enables us to determine where in the lattice problems are occurring and to check that everything is working as expected. As well as that, field visualization is often very instructive and whereas most EM solvers give you a static view of the solution, with CUDA / DIRECT-X interoperability it is possible to watch the fields propagate without incurring much of a penalty in performance.



CFDTD Grid Intersection Surface.

This example shows how we generate a polygon description of the original geometry surface based on the intersection points of the original geometry with the FDTD 3D grid. This geometry is a corrugated horn antenna. Vertices have been colour coded RGB to validate the orientation of the surface. Notice the intrigate detail of the Grid Intersection Surface on sloping surfaces.



UAB CFDTD/CUDA example of a Corrugated Horn

In this example we see the electric field surrounding a Corrugated Horn inside a space with non-absorbing boundaries. This is a first attempt version of CUDA/CFDTD with compressed update coefficients and yields about half the speed of the non-compressed version, but as the compression ratio is 45:1 in this case, it uses much less GPU memory (8.45MB instead of 384MB for the coefficients in this case where the space dimensions are 80X80X656).

Notice that as we update at 1 frame per FDTD cycle (to see a nice smooth picture), overall calculation speed is very much reduced compared to say the case for 50 FDTD cycles/frame.


Coaxial resonator example with navigation around the geometry.



Head example using rotation as an aid for 3D visualization.



Finite Difference Time Domain methods are useful for solving arbitrary electromagnetic problems, especially where one is interested in a band of frequencies. Conformal FDTD methods have eliminated the infamous staircase errors that were associated with the original Yee algorithm. A GPU is particularly well suited to this method since it involves a massive repetition of simple sums and multiplications. One of the main ingredients for CFDTD is the 3D meshing algorithm that takes a 3D polygon description file and converts it into rectangular form. This is rather similar to the problem of converting a line drawing into a pixel type picture, except that here we are dealing with 3D instead of 2D. The CFDTD meshing algorithm takes the poligon description file and finds the intersection distances and areas between the poligon surface and the standard FDTD grid. The following image shows an example of this process for a coaxial resonator.

FDTD Meshing a coaxial resonator

UAB CFDTD mesh generator coaxial resonator example. The input geometry is defined by the blue triangles. The grid intersection contours, intersection distances, areas and direction of surface normals is used in CFDTD.



Junkin, G., Conformal FDTD Modeling of Imperfect Conductors at Millimeter Wave Bands. IEEE TRANSACTIONS ON ANTENNAS AND PROPAGATION, VOL. 59, NO. 1, JANUARY 2011.


For further information, please email:email:

Campus d'excel·lència internacional U A B