Knowledge base

FDTD basics

1 Finite-difference time-domain (FDTD) basics

The finite-difference time-domain (FDTD) method is a powerful numerical approach to solve Maxwell\('\)s equations in the time-domain using discretization of space and time. This article is a first-principles overview of the algorithm.

2 Theory

Maxwell\('\)s equations in the time-domain in free space are written as \[\begin{eqnarray} \label{maxwell1}\nabla\times\mathbf{E}&=&\frac{-\partial\mathbf{B}}{\partial t}\: (Faraday's\;law)\\ \label{maxwell2}\nabla\times\mathbf{H}&=&\mathbf{J}+\frac{\partial\mathbf{D}} {\partial t}\:(Ampere's\;law)\\ \label{maxwell3}\nabla\cdot\mathbf{D}&=&\rho\\ \label{maxwell4}\nabla\cdot\mathbf{B}&=&0 \end{eqnarray}\] where \(\mathbf{E}\), \(\mathbf{H}\), \(\mathbf{D}\), \(\mathbf{B}\), \(\rho\) and \(\mathbf{J}\) denote electric field, magnetic field, electric flux density, magnetic flux density, external charge density, and electric current density, respectively. Maxwell\('\)s equations can be expanded in three dimensions (3D) as \[\begin{eqnarray} \label{expanded1}\frac{\partial E_{x}}{\partial t}=\frac{1}{\varepsilon_{0}}\left (\frac{\partial H_{z}}{\partial y}-\frac{\partial H_{y}}{\partial z}\right)\\ \label{expanded2}\frac{\partial E_{y}}{\partial t}=\frac{1}{\varepsilon_{0}}\left (\frac{\partial H_ {x}}{\partial z}-\frac{\partial H_{z}}{\partial x}\right)\\ \label{expanded3}\frac{\partial E_{z}}{\partial t}=\frac{1}{\varepsilon_{0}}\left (\frac{\partial H_ {y}}{\partial x}-\frac{\partial H_{x}}{\partial y}\right)\\ \label{expanded4}\frac{\partial H_{x}}{\partial t}=\frac{1}{\mu_{0}}\left(\frac {\partial E_{y}} {\partial z}-\frac{\partial E_{z}}{\partial y}\right)\\ \label{expanded5}\frac{\partial H_{y}}{\partial t}=\frac{1}{\mu_{0}}\left(\frac {\partial E_{z}} {\partial x}-\frac{\partial E_{x}}{\partial z}\right)\\ \label{expanded6}\frac{\partial H_{z}}{\partial t}=\frac{1}{\mu_{0}}\left(\frac {\partial E_{x}} {\partial y}-\frac{\partial E_{y}}{\partial x}\right) \end{eqnarray}\] where the electric and magnetic fields are related to the corresponding flux densities through the freespace values of the electric permitivity (\(\varepsilon_{0}\)) and magnetic permeability (\(\mu_{0}\)) as \[\begin{eqnarray} \mathbf{D}&=&\varepsilon_{0}\mathbf{E}\\ \mathbf{B}&=&\mu_{0}\mathbf{H} \end{eqnarray}\]

3 Discretization in space and time

As can be seen the expanded Maxwell equations include continuous derivatives in time and space which are required to be solved numerically. These derivatives are approximated by central differences with \(2^ {nd}\) order accuracy \[\begin{equation} \label{central_diff}\frac{\partial{f(x)}}{\partial{x}}\approx\frac{f(x+\Delta x)-f (x-\Delta x)} {\Delta x} \end{equation}\]
Figure 1 Schematic showing the central finite-difference for the first derivative of f (x) with respect to x.
Figure 2 The Yee cell for FDTD. The H and E components are located at the middle of each edge and the center of each face, respectively.
Figure 1 provides a visual representation of the central finite difference in comparison with the exact definition of the first derivative. In order to support the central differences and have the relationship between \(\bf{E}\) and \(\bf {H}\) it is necessary to offset the two fields. This discretization is accomplished using Yee cells in a rectangle grid [1-2], see figure 2. These Yee cells form meshing in the grid to sample the electric and magnetic fields. Each individual component of one field is surrounded by the four components of the other field due to the special arrangement of the field components. In further support of the relationship between \(\bf{E}\) and \(\bf{H}\), the updating process is performed using leapfrog scheme [1-2] in which the electric and magnetic field components are evaluated alternately in the time domain such that the updated electric field components are obtained using the updated magnetic field components that were calculated in the preceding step. Figure 3 illustrates this process for 1D sequential updating the electric and magnetic field.
Figure 3 Schematic showing the 1D-updating process in FDTD known as leapfrog scheme. The dotted arrows depict how the fields contribute in the updating process.
The central difference expression, along with the leapfrogging in time allows the approximation of Maxwell\('\)s equations to obtain update equations. For instance, in the two-dimensional case with the transverse electric (TE: \(H_x\), \(H_z\), and \(E_y\) ) polarization is obtained through the 2D-Yee scheme (the xz-cut of the 3D-Yee cell including \(H_x\), \(H_z\), and \(E_y\)). The discretized field components can be derived from the expanded equations for \(H_x\), \(H_z\), and \(E_y\) when \(\frac{\partial}{\partial y}\rightarrow0\) as \[\begin{eqnarray} E_{y}^{n+1}(i,k) & = & E_{y}^{n}(i,k)+\frac{\Delta t}{\varepsilon_{0}\,\Delta z}\left[H_{x}^{n+0.5}(i,k)-H_{x}^{n+0.5}(i,k-1)\right]\nonumber \\ & & -\frac{\Delta t}{\varepsilon_{0}\,\Delta x}\left[H_{z}^{n+0.5}(i,k)-H_{z}^ {n+0.5}(i-1,k)\right]\\ H_{x}^{n+0.5}(i,k)&=&H_{x}^{n-0.5}(i,k)+\frac{\Delta t}{\mu_{0}\,\Delta z}\left[E_ {y}^{n}(i,k+1)-E_{y}^{n}(i,k)\right]\\ H_{z}^{n+0.5}(i,k)&=&H_{z}^{n-0.5}(i,k)-\frac{\Delta t}{\mu_{0}\,\Delta x}\left[E_ {y}^{n}(i+1,k)-E_{y}^{n}(i,k)\right] \end{eqnarray}\] where the superscript n represents the time step. The indices i and k denote the spatial indices along the x and z directions. The discretized equations for the transverse magnetic (TM: \(E_x\), \(E_z\), and \(H_y\)) can also be similarly obtained in the same manner.


  1. A. Taflove, S. C. Hagness, Computational Electrodynamics: The
    Finite-Difference Time-Domain Method 3rd edition. Artech House,
  2. K. S. Yee, “Numerical solution of initial boundary value problems
    involving maxwell’s equations in isotropic media,” IEEE Trans.Antennas
    Propag., vol. 14, no. 5, pp. 302–307, May 1966.


Learn More About Our 30-Day Evaluations