This project is dedicated to develop an object-oriented parallel C++ code that can simulate electromagnetic waves using Finite Difference Time Domain scheme. Details on this scheme can be found at FDTD method. At the current stage, the developed library supports a number of features,

  • Two and three dimensional simulations
    (with spatial material characterization)
  • Sources
    – Point Sources
    – Plane Wavefront Sources
  • Boundary Conditions:
    – Perfect Electric Conductor (PEC) boundary which relfects any scattered back into the domain
    – Absorbing Boundary Condition using Perfectly Matched Layer

Further work on development of this library is going on. We welcome collaborations in developing the code further. Interested people can directly write to Prof. Mahendra Verma.

Code is being developed by Mr. Rishabh Sahu.

Examples

Below are examples of different features mentioned above and some other applications. These examples show the usefulness of the developed library in certain applications like simulation of photonic crystals. As the code is parallel, it can be easily used to simulate huge integrated optics chips.


Two dimensional simulation

FDTD simulation in 2D where a pulse with plane wavefront hits a square crystal of refractive index 3.3.


Three dimensional simulation

FDTD simulation in 3D where a pulse with plane wavefront hits a cubic crystal of refractive index 3.3.


Perfectly Matched Layer

Below simulation shows a demostration of working of PML. It is a FDTD simulation of a radiating source. On the left side, there is no PML implementation. Hence, the light reflects back and superposes with the existing light. On the right, there is a PML on LHS and, therefore, it does not reflect back.

The effect of PML can also be shown in three dimensions. Below is the simulation which shows effect of PML when a plane wavefront interacts with a cube of relative electric permeability of 6.


Lens

FDTD simulation in 2D where a pulse with plane wavefront hits a lens of refractive index 1.5.

Light can also be made incident with a oblique angle of incidence.


Distorted Lens

FDTD simulation in 2D where a pulse with plane wavefront hits a distorted lens of refractive index 1.5.


Photonic Crystal Waveguide

FDTD simulation of a photonic crystal waveguide. It is made using Silicon square blocks arranged in a periodic lattice. The relative electric permittivity of silicon is taken to be 12. The gap is filled with air or vacuum.
The video shows confinement of light in a waveguide.

Coupling of waveguides can also be observed if another waveguide very close to existing waveguide is put.

The coupling changes if the distance between two waveguides is changed.


Complex 3D Object Simulation

FDTD simulation of a plane wavefront hitting a metallic airplane. The boundary is absorbing using Perfectly Matched Layer.