1 Introduction

The investigation of electromagnetic (EM) problems is directly connected to the solution of Maxwell’s equations, which is, in most cases, obtained using computational methods, as analytical techniques can be practically applied only when specific or ideal conditions are satisfied. Especially when dynamic phenomena need to be considered, the corresponding studies are commonly performed in the time domain, and the finite-difference time-domain (FDTD) method constitutes one of the most popular choices [1, 2]. Of course, other alternatives also exist, such as the finite-element time-domain method [3], the discontinuous Galerkin time-domain approach [4], or techniques based on integral equation methods [5]. The FDTD scheme is well-known for its attractive features, which include the simplicity of implementation, the explicit character (i.e. no matrix inversions are required), the ability to model a wide range of material properties, its parallelization potential on multi-core systems, etc. Furthermore, a number of extensions and improvements of the standard formulation have been proposed through the years, including high-order formulations [6], subgridding techniques [7], perfectly-matched layers for absorbing boundary conditions [8], hybrid schemes with other discretization methods [9], thin-wire formulations [10], surface-impedance boundary conditions [11], etc.

In its original formulation, the standard FDTD method is well-suited for linear EM problems. In fact, the vast majority of pertinent FDTD applications and the corresponding extensions have been mainly targeted towards cases without nonlinearities. On the other hand, several nonlinear EM problems are of significant engineering interest, including (but not restricted to) configurations operating at optical frequencies, such as optical fibers, switches, resonators, filters, couplers, multiplexers, and splitters, which constitute fundamental parts of modern and future communication, signal-processing, and transmission systems. The constantly increasing research regarding the aforementioned applications has triggered the development of FDTD approaches for the study of the corresponding nonlinear EM phenomena. Apart from the above-mentioned advantages, FDTD formulations do not require any special conditions for their application, in order to provide consistent results. For this reason, the full-wave FDTD solutions are commonly more preferable than other approximate (less generic) models, such as the nonlinear Schrödinger equation (an asymptotic envelope equation) [12] or the beam-propagation technique (based on the paraxial wave equation) [13].

More specifically, the most common case of EM nonlinearities pertains to the response of materials. In such cases, the material constitutive parameters exhibit a dependence on the intensity of the electric or the magnetic field. This behavior gives rise to a complicated form for the polarization P, which is related to the electric-field intensity E and dielectric displacement D via

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _0}{\mathbf{E}} + {\mathbf{P}} \end{aligned} $$
(1)

where 𝜖 0 is the electric permittivity of vacuum. The behavior of nonlinear media can be described via the following general formula for the polarization’s components [14]:

$$\displaystyle \begin{aligned} {P_i} = \sum_j {\chi _{ij}^{(1)}{E_j}} + 2\sum_{j,k} {\chi _{ijk}^{(2)}{E_j}{E_k}} + 4\sum_{j,k,l} {\chi _{ijkl}^{(3)}{E_j}{E_k}{E_l}} + \ldots \end{aligned} $$
(2)

where χ (1) stands for the linear susceptibility and χ (2), χ (3), … denote nonlinear susceptibilities with increasing orders.Footnote 1 Two of the most characteristic pertinent phenomena are the Kerr effect and Raman scattering, which are related to the third-order nonlinear susceptibility models. Regarding the latter, the corresponding relation between the polarization and the electric-field intensity is described in the time domain by

(3)

which clearly poses significant challenges in terms of implementation in the context of an efficient time-domain computational scheme. Apart from that, other forms of nonlinearities will be also considered in the present analysis.

In this chapter, we provide a review of selected FDTD-related works that present formulations suitable for EM problems exhibiting nonlinear behavior in at least one of their aspects. Although the pertinent literature has become quite vast over the years, it is our opinion that the current collection covers a significant number of important contributions for nonlinear problems, and extends previous related reviews such as those found in [14,15,16]. Specifically, [15] summarizes the main extensions of the FDTD method to nonlinear optics up to 1997, while [14] presents a more general review of complex material models, where a small part is devoted to the works pertinent to nonlinear media. Furthermore, [16] compares the performance of two existing FDTD approaches that are suitable for modeling the instantaneous Kerr effect. Without proceeding to a high level of detail, we provide all the necessary information that one needs to have at hand, in order to understand the main gist of each methodology and recognize the applications that the examined approach is suitable for. In addition, a quick reference to the test problems that the examined methods were implemented to is given. With the current study, a sufficient description of the specific research area is provided, which can be useful for those not previously familiar with nonlinear EM problems. It can also serve as a starting point for researchers that wish to engage into the computational study of nonlinear EM phenomena using FDTD techniques. Before proceeding to the main part of this work, a short description of the original FDTD formulation that is suitable for linear problems is provided.

2 FDTD Discretization of Linear Electromagnetic Problems

We begin by briefly introducing the standard FDTD methodology for linear EM phenomena, which is currently considered a widely accepted numerical tool for performing reliable simulation studies. In the case of linear, isotropic, and non-dispersive materials, Maxwell’s equations take the form

$$\displaystyle \begin{gathered} \nabla \times {\mathbf{E}} = - \frac{{\partial {\mathbf{B}}}}{{\partial t}} - {\mathbf{M}}_c - {{\mathbf{M}}_s}{} \end{gathered} $$
(4)
$$\displaystyle \begin{gathered} \nabla \times {\mathbf{H}} = \frac{{\partial {\mathbf{D}}}}{{\partial t}} + {\mathbf{J}}_c + {{\mathbf{J}}_s}{} \end{gathered} $$
(5)

where E is the electric-field intensity, H is the magnetic-field intensity, D = 𝜖 r 𝜖 0 E is the electric-flux density, B = μ r μ 0 H is the magnetic-flux density, J c = σ E and \({\mathbf {M}}_c = \tilde \sigma {\mathbf {H}}\) denote the electric and magnetic conductivity current densities, respectively, J s and M s denote the electric- and magnetic-current source terms, respectively, σ is the electric conductivity, \(\tilde \sigma \) stands for the magnetic conductivity, 𝜖 0 is the electric permittivity in free space, μ is the magnetic permeability in free space, 𝜖 r is the relative electric permittivity, and μ r is the relative magnetic permeability. The standard FDTD formulation considers the field values located at nodes that are organized according to a dual staggered spatial grid, at distances of Δx, Δy, Δz along x, y, z axes, respectively. Specifically, the primary grid is used for the electric field components, with the following arrangement: E x is located at \(\left ( {i + \frac {1}{2},j,k} \right )\) nodes, E y at \(\left ( {i ,j+ \frac {1}{2},k} \right )\), and E z at \(\left ( {i ,j,k+ \frac {1}{2}} \right )\) nodes.Footnote 2 In a similar fashion, the magnetic-field components are located at nodes of the secondary grid, and are organized according to: H x on \(\left (i,j+\frac {1}{2},k+\frac {1}{2} \right )\), H y on \(\left (i+\frac {1}{2},j,k+\frac {1}{2} \right )\), and H z on \(\left (i+\frac {1}{2},j+\frac {1}{2},k \right )\). The time axis is also discretized with steps equal to Δt, with the electric components computed at time instants described by (nΔt), while the magnetic components are computed at \(\left ( n + \frac {1}{2}\right )\) time instants.

In order to discretize Maxwell’s equations, second-order finite-difference approximations are implemented for both space and time derivatives. Consider, for example, the equation

$$\displaystyle \begin{aligned} \epsilon \frac{{\partial {E_x}}}{{\partial t}} = \frac{{\partial {H_z}}}{{\partial y}} - \frac{{\partial {H_y}}}{{\partial z}} - \sigma {E_x} - {J_{sx}} {} \end{aligned} $$
(6)

which is one of the six scalar equations that the two vector equations (4), (5) can be decomposed. The approximating formulae for the three appearing derivatives at node \(\left (i+\frac {1}{2},j,k \right )\) and time instant \(\left (n+\frac {1}{2}\right )\) are:

$$\displaystyle \begin{aligned} \frac{{\partial {E_x}}}{{\partial t}} & \simeq \frac{{\left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^{n + 1} - \left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^n}}{{\varDelta t}} \end{aligned} $$
(7)
$$\displaystyle \begin{aligned} \frac{{\partial {H_z}}}{{\partial y}} & \simeq \frac{{\left. {{H_z}} \right|{}_{i + \frac{1}{2},j + \frac{1}{2},k}^{n + \frac{1}{2}} - \left. {{H_z}} \right|{}_{i + \frac{1}{2},j - \frac{1}{2},k}^{n + \frac{1}{2}}}}{{\varDelta y}} \end{aligned} $$
(8)
$$\displaystyle \begin{aligned} \frac{{\partial {H_y}}}{{\partial z}} & \simeq \frac{{\left. {{H_y}} \right|{}_{i + \frac{1}{2},j,k + \frac{1}{2}}^{n + \frac{1}{2}} - \left. {{H_y}} \right|{}_{i + \frac{1}{2},j,k - \frac{1}{2}}^{n + \frac{1}{2}}}}{{\varDelta z}} \end{aligned} $$
(9)

In addition, the following averaging formula for the conductivity current is introduced:

$$\displaystyle \begin{aligned} \sigma E_x \simeq \frac{1}{2}{\left. \sigma \right|{}_{i + \frac{1}{2},j,k}}\left( {\left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^{n + 1} + \left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^n} \right) \end{aligned} $$
(10)

Once the aforementioned expressions are substituted in (6), the update equation for E x at each time instant is obtained:

$$\displaystyle \begin{aligned} \left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^{n + 1} &= \frac{{ {2{{\left. \epsilon \right|}_{i + \frac{1}{2},j,k}} - {{\left. \sigma \right|}_{i + \frac{1}{2},j,k}}\varDelta t} }}{{ {2{{\left. \epsilon \right|}_{i + \frac{1}{2},j,k}} + {{\left. \sigma \right|}_{i + \frac{1}{2},j,k}}\varDelta t} }}\left. {{E_x}} \right|{}_{i + \frac{1}{2},j,k}^n \notag\\ &+\frac{{2\varDelta t}}{{\varDelta y\left( {2{{\left. \epsilon \right|}_{i + \frac{1}{2},j,k}} + {{\left. \sigma \right|}_{i + \frac{1}{2},j,k}}\varDelta t} \right)}}\left( {\left. {{H_z}} \right|{}_{i + \frac{1}{2},j + \frac{1}{2},k}^{n + \frac{1}{2}} - \left. {{H_z}} \right|{}_{i + \frac{1}{2},j - \frac{1}{2},k}^{n + \frac{1}{2}}} \right) \notag\\ &- \frac{{2\varDelta t}}{{\varDelta z\left( {2{{\left. \epsilon \right|}_{i + \frac{1}{2},j,k}} + {{\left. \sigma \right|}_{i + \frac{1}{2},j,k}}\varDelta t} \right)}}\left( {\left. {{H_y}} \right|{}_{i + \frac{1}{2},j,k + \frac{1}{2}}^{n + \frac{1}{2}} - \left. {{H_y}} \right|{}_{i + \frac{1}{2},j,k - \frac{1}{2}}^{n + \frac{1}{2}}} \right)\notag\\ & - \frac{{2\varDelta t}}{{ {2{{\left. \epsilon \right|}_{i + \frac{1}{2},j,k}} + {{\left. \sigma \right|}_{i + \frac{1}{2},j,k}}\varDelta t} }}\left. {{J_{s,x}}} \right|{}_{i + \frac{1}{2},j,k}^{n + \frac{1}{2}} \end{aligned} $$
(11)

The same procedure is applied to the remaining five equations, so that an equal number of discrete update formulae is derived, which determine the problem’s interior discretization scheme. In this way, the required components are calculated in an explicit fashion, without necessitating—computationally expensive—system solutions in every iteration. Furthermore, the update procedure is conditionally stable, with the time-step size bounded by the well-known stability limit

$$\displaystyle \begin{aligned} \varDelta t \leq \frac{1}{{{c_0}\sqrt {\frac{1}{{\varDelta {x^2}}} + \frac{1}{{\varDelta {y^2}}} + \frac{1}{{\varDelta {z^2}}}} }} \end{aligned} $$
(12)

where \(c_0 = 1/\sqrt {\mu \epsilon }\) is the free-space speed of light.

As far as the boundary conditions are concerned, these are implemented according to the physics of the problem under consideration. For instance, absorbing boundary conditions are applied in the case of open (radiation) problems, homogeneous Dirichlet conditions in case of waves guided by metallic structures, periodic conditions for infinite configurations, symmetry conditions for size reduction of the computational domain, etc.

3 FDTD Methodologies for Nonlinear Problems

3.1 Integration of Nonlinear Maxwell’s Equations in 1D Setups

The first attempts to exploit the FDTD algorithm for the solution of the nonlinear Maxwell’s equations can be traced back to 1992 and the works reported in [17, 18]. Specifically, the methodology presented therein investigates the simple case of 1D wave propagation along the x-axis considering nonlinear instantaneous effects, where E z and H y are the components of the electric-and magnetic-field intensities, respectively. In this manner, the study of optical solitons with extended bandwidths becomes possible. The equations that describe the problem under investigation are:

$$\displaystyle \begin{gathered} {\mu _0}\frac{{\partial {H_y}}}{{\partial t}} = \frac{{\partial {E_z}}}{{\partial x}}{} \end{gathered} $$
(13)
$$\displaystyle \begin{gathered} \frac{{\partial {D_z}}}{{\partial t}} = \frac{{\partial {H_y}}}{{\partial x}}{} \end{gathered} $$
(14)
$$\displaystyle \begin{gathered} {D_z} = {\epsilon _0}{\epsilon _\infty }{E_z} + {P_z}{} \end{gathered} $$
(15)

where 𝜖 is the relative permittivity at infinite frequency (the rest of the terms have been explained previously). The polarization comprises a linear and a nonlinear part:

$$\displaystyle \begin{aligned} P_z = P_z^{L} + P_z^{NL} \end{aligned} $$
(16)

The (first-order) linear term is described by

$$\displaystyle \begin{aligned} P_z^L = \int_{ - \infty }^{ + \infty } {{\chi ^{(1)}}(t - \tau ){E_z}(x,\tau )\,d\tau } \end{aligned} $$
(17)

where χ (1) is the first-order susceptibility function. For the latter, Lorentz linear dispersion is considered in [18], according to

$$\displaystyle \begin{aligned} {\chi ^{(1)}}(t) = \frac{{\omega _p^2}}{{{v_0}}}{e^{ - \delta t/2}}\sin ({v_0}t) \end{aligned} $$
(18)

with the corresponding permittivity described by

$$\displaystyle \begin{aligned} \epsilon (\omega ) = {\epsilon _\infty } + {\chi ^{(1)}}(\omega ) = {\epsilon _\infty } + \frac{{\omega _0^2\left( {{\epsilon _s} - {\epsilon _\infty }} \right)}}{{\omega _0^2 - j\delta \omega - {\omega ^2}}} \end{aligned} $$
(19)

where \(\omega _p^2 = \omega _0^2\left ( {{\epsilon _s} - {\epsilon _\infty }} \right )\) and \(\nu _0^2 = \omega _0^2 - {\delta ^2}/4\). The non-linear term \(P_z^{NL}\) depends on the third-order susceptibility function according to [19]

$$\displaystyle \begin{aligned} P_z^{NL} = {\epsilon _0}{\chi ^{(3)}}{E_z}(x,t)\int_{ - \infty }^{ + \infty } {g(t - \tau )E_z^2(x,\tau )\,d\tau } \end{aligned} $$
(20)

where

$$\displaystyle \begin{gathered} g(t) = \alpha \delta (t) + (1 - \alpha )g_R(t) {} \end{gathered} $$
(21)
$$\displaystyle \begin{gathered} g_R(t) = \frac{{\tau _1^2 + \tau _2^2}}{{{\tau _1}\tau _2^2}}{e^{ - \frac{t}{{{\tau _2}}}}}\sin \left( {\frac{t}{{{\tau _1}}}} \right) \end{gathered} $$
(22)

In (21), the delta function represents Kerr non-resonant virtual electronic transitions up to 1 fs, while the remaining part models transient Raman scattering. Parameter α acts as a relative weight for Kerr and Raman interactions. After defining the functions

$$\displaystyle \begin{aligned} F(t) = {\epsilon _0}\int_0^t {{\chi ^{(1)}}(t - \tau ){E_z}(x,\tau )\,d\tau } \end{aligned} $$
(23)
$$\displaystyle \begin{aligned} G(t) = {\epsilon _0}\int_0^t {{g_R}(t - \tau )E_z^2(x,\tau )d\tau } \end{aligned} $$
(24)

and differentiating the above two formulae, a couple of second-order nonlinear equations is obtained, which are discretized with conventional finite differences and solved simultaneously (Eqs. (13) and (14) are dealt with in a standard manner). For instance, the equation pertinent to F is

$$\displaystyle \begin{aligned} \frac{1}{{\omega _0^2}}\frac{{{d^2}F}}{{d{t^2}}} + \frac{\delta }{{\omega _0^2}}\frac{{dF}}{{dt}} + \left( {1 + \frac{{{\epsilon _s} - {\epsilon _\infty }}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}E_z^2}}} \right)F &+ \frac{{({\epsilon _s} - {\epsilon _\infty })(1 - \alpha ){\chi ^{(3)}}{E_z}}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}E_z^2}}G \notag\\ & = \frac{{{\epsilon _s} - {\epsilon _\infty }}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}E_z^2}}{D_z} \end{aligned} $$
(25)

whose finite-difference analogue is

$$\displaystyle \begin{aligned} &\frac{1}{{\omega _0^2}}\frac{{\left. F \right|{}_i^{n + 1} - 2\left. F \right|{}_i^n + \left. F \right|{}_i^{n - 1}}}{{\varDelta {t^2}}} + \frac{\delta }{{\omega _0^2}}\frac{{\left. F \right|{}_i^{n + 1} - \left. F \right|{}_i^{n - 1}}}{{2\varDelta t}} \notag\\ & + \left( {1 + \frac{{{\epsilon _s} - {\epsilon _\infty }}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}\left. {E_z^2} \right|{}_i^n}}} \right)\frac{{\left. F \right|{}_i^{n + 1} + \left. F \right|{}_i^{n - 1}}}{2}\notag\\ &+ \frac{{({\epsilon _s} - {\epsilon _\infty })(1 - \alpha ){\chi ^{(3)}}\left. {{E_z}} \right|{}_i^n}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}\left. {E_z^2} \right|{}_i^n}}\frac{{\left. G \right|{}_i^{n + 1} + \left. G \right|{}_i^{n - 1}}}{2} \notag \\ &\quad = \frac{{{\epsilon _s} - {\epsilon _\infty }}}{{{\epsilon _\infty } + \alpha {\chi ^{(3)}}\left. {E_z^2} \right|{}_i^n}}\frac{{\left. {{D_z}} \right|{}_i^{n + 1} + \left. {{D_z}} \right|{}_i^{n - 1}}}{2} \end{aligned} $$
(26)

A similar result is obtained for the update of G. Evidently, values at two previous time-steps need to be stored, and the latest value of E z is obtained from

$$\displaystyle \begin{aligned} {E_z} = \frac{{{D_z} - F - \left( {1 - \alpha } \right){\chi ^{(3)}}{E_z}G}}{{{\epsilon _0}\left( {{\epsilon _\infty } + \alpha {\chi ^{(3)}}E_z^2} \right)}} \end{aligned} $$
(27)

The aforementioned nonlinear equation can be handled via an iterative Newton procedure. The propagation of a single soliton, as well as the collision of two solitons moving in different directions were simulated for the first time with this methodology in [18].

3.2 Multi-Dimensional Formulation with Applications

A FDTD methodology that solves Maxwell’s equations in a multi-dimensional (2D) framework is presented in [20], where Lorentz linear dispersion as well as Raman nonlinearity models are incorporated. Specifically, the former is described by

$$\displaystyle \begin{aligned} \frac{{{\partial ^2}{{\mathbf{P}}^L}}}{{\partial {t^2}}} + {\varGamma _L}\frac{{\partial {{\mathbf{P}}^L}}}{{\partial t}} + \omega _L^2{{\mathbf{P}}^L} = {\epsilon _0}{\chi _0}\omega _L^2{\mathbf{E}} \end{aligned} $$
(28)

while the latter is described by

$$\displaystyle \begin{aligned} \frac{{{\partial ^2}{\chi ^{NL}}}}{{\partial {t^2}}} + {\varGamma _R}\frac{{\partial {\chi ^{NL}}}}{{\partial t}} + \omega _R^2{\chi ^{NL}} = {\epsilon _R}\omega _R^2{\left| {\mathbf{E}} \right|{}^2} \end{aligned} $$
(29)

considering that P = P L + P NL = P L + 𝜖 0 χ NL E. The aforementioned equations are combined with

$$\displaystyle \begin{gathered} \frac{\partial }{{\partial t}}\left( {{\mu _0}{\mathbf{H}}} \right) = - \nabla \times {\mathbf{E}} \end{gathered} $$
(30)
$$\displaystyle \begin{gathered} \frac{\partial }{{\partial t}}\left( {{\epsilon _L}{\mathbf{E}}} \right) = \nabla \times {\mathbf{H}} - \frac{{\partial {\mathbf{P}}}}{{\partial t}} \end{gathered} $$
(31)

where 𝜖 L is the linear permittivity. The proposed formulation differentiates from earlier works that rely on the introduction of the effective quantities

$$\displaystyle \begin{aligned} {\epsilon _{eff}} = {\epsilon _L} + {\epsilon _0}{\chi ^{NL}},\quad {\sigma _{eff}} = {\epsilon _0}\frac{\partial }{{\partial t}}{\chi ^{NL}} \end{aligned} $$
(32)

The proposed methodology was applied in a problem of scattering of a pulsed Gaussian beam, which is normally incident on a linear-nonlinear interface. It was noted that propagation within the nonlinear medium resulted in self-focusing of the beams, and the linear diffraction region and nonlinear effects were identified via the intensity patterns in the focus region.

3.3 Transient Analysis Within a Nonlinear Magnetic Sheet

The FDTD solution of problems involving wave propagation within a significantly conducting nonlinear magnetic medium is discussed in [21]. In essence, the case of a saturable ferromagnetic material is considered, whose differential permeability that describes the B − H characteristic curve is modeled by

$$\displaystyle \begin{aligned} d\mu (H) = \frac{{\partial B}}{{\partial H}} = {\mu _m} + \frac{{{B_s}}}{{{H_c}}}{e^{ - \left| H \right|/{H_c}}} \end{aligned} $$
(33)

where μ m, B s, H c are known constants. The presence of the magnetic nonlinearity affects only the magnetic-field update equation,

$$\displaystyle \begin{aligned} \frac{{\partial {E_z}}}{{\partial y}} = - \frac{{\partial {B_x}}}{{\partial t}} = - d\mu (H_x) \frac{{\partial {H_x}}}{{\partial t}}\end{aligned} $$
(34)

which is easily transformed into a FDTD update equation using standard approximations:

(35)

Owing to the high conductivity of the considered medium, the current density term in the corresponding discrete equation is computed from the most recent value of E, in order to ensure stable simulations. Furthermore, to avoid computations in free space that would weaken the stability, the fields are calculated only inside the magnetic material. Such an approach necessitates the implementation of proper boundary conditions, which are translated into second-order, one-sided, finite-difference formulae, e.g.

$$\displaystyle \begin{aligned} \left. {{H_x}} \right|{}_0^n = \frac{1}{F}\left[ {2\left. {{E_{inc}}} \right|{}_{}^n + \frac{1}{{2\sigma \varDelta y}}\left( {4\left. {{H_x}} \right|{}_1^n - \left. {{H_x}} \right|{}_2^n} \right)} \right]\end{aligned} $$
(36)

where F = η 0 + 3∕(2σΔy) (\({\eta _0} = \sqrt {{\mu _0}/{\epsilon _0}} \)). It was also shown that the nonlinearity plays the most significant role in the reduction of the maximum allowable time-step size. In fact, due to the combination of the material’s nonlinearity and high conductivity, the time-step size had to be reduced by 10–30 times with respect to the Courant stability criterion, with smaller time-steps needed when the material is governed by more intense nonlinearity.

3.4 Incorporating Active Device Models

The work of Toland et al. [22] presents a methodology that enables simulating realistic devices incorporating active and nonlinear regions. Let us consider an active device, like a resonant tunneling diode, with a junction capacitance C, a series resistance R and a nonlinear current source F. The latter are translated into the distributed parameters E and F(Vs), considered for each grid cell. This actually implies the cells within the active region can be treated as a voltage source, and the total effect from all nodes in the active region is characteristic of the physical device. It is well-known that voltage/current sources can be introduced into an FDTD algorithm without difficulty, yet with a special attention to the overall stability of the resulting scheme. Hence, we start from the fact that the voltage source is a solution of

$$\displaystyle \begin{aligned} \frac{{d{V_s}}}{{dt}} + \frac{{{V_s}}}{{RC}} + \frac{{F({V_s})}}{C} = - \frac{{{V_{in}}}}{{RC}} \end{aligned} $$
(37)

For this equation to be solved, forward time average differencing can be utilized. To this aim, the nonlinear current source is expanded in a Taylor series, as

$$\displaystyle \begin{aligned} F(\left. {{V_s}} \right|{}_{}^{n + 1}) \approx F(\left. {{V_s}} \right|{}_{}^n) + \frac{{dF(\left. {{V_s}} \right|{}_{}^n)}}{{dV}}\left[ {\left. {{V_s}} \right|{}_{}^{n + 1} - \left. {{V_s}} \right|{}_{}^n} \right] \end{aligned} $$
(38)

leading to

$$\displaystyle \begin{aligned} \left. {{V_s}} \right|{}_{}^{n + 1} = {A_1}\left. {{V_s}} \right|{}_{}^n - {A_2}F(\left. {{V_s}} \right|{}_{}^n) - {A_3}\varDelta y\left[ {\left. {{E_y}} \right|{}_{}^{n + 1} + \left. {{E_y}} \right|{}_{}^n} \right] {} \end{aligned} $$
(39)

where

$$\displaystyle \begin{aligned} {A_1} = \frac{{2RC - \varDelta t\left[ {1 - RdF({V_s})/dV} \right]}}{\beta },\,\,\,\,{A_2} = \frac{{2R\varDelta t}}{\beta },\,\,\,\,{A_3} = \frac{{\varDelta t}}{\beta } \end{aligned} $$
(40)

with \(\beta = 2RC + \varDelta t\left [ {1 + RdF({V_s})/dV} \right ]\). This outcome can then be plugged into the FDTD algorithm. For example, bearing in mind a y-directed source, E y is updated according to

$$\displaystyle \begin{aligned} \left. {{E_y}} \right|{}_{}^{n + 1} &= \frac{{\epsilon /\varDelta t - 0.5(1 - {A_3})/R}}{{\epsilon /\varDelta t + 0.5(1 - {A_3})/R}}\left. {{E_y}} \right|{}_{}^n \notag\\ & + \frac{1}{{\varDelta z\left[ {\epsilon /\varDelta t + 0.5(1 - {A_3})/R} \right]}}\left( {\left. {{H_x}} \right|{}_{i,j + \frac{1}{2},k + \frac{1}{2}}^{n + 1/2} - \left. {{H_x}} \right|{}_{i,j + \frac{1}{2},k - \frac{1}{2}}^{n + 1/2}} \right)\notag\\ & + \frac{1}{{\varDelta x\left[ {\epsilon /\varDelta t + 0.5(1 - {A_3})/R} \right]}}\left( {\left. {{H_z}} \right|{}_{i + \frac{1}{2},j + \frac{1}{2},k}^{n + 1/2} - \left. {{H_z}} \right|{}_{i - \frac{1}{2},j + \frac{1}{2},k}^{n + 1/2}} \right)\notag\\ & - \frac{1}{{2R\varDelta y\left[ {\epsilon /\varDelta t + 0.5(1 - {A_3})/R} \right]}}\left[ {(1 + {A_1})\left. {{V_s}} \right|{}_{}^n - {A_2}F(\left. {{V_s}} \right|{}_{}^n)} \right] {} \end{aligned} $$
(41)

The use of (39) in conjunction with (41), guarantees that no instabilities are to be generated due to the nonlinear nature of the involved elements.

3.5 A Discrete Model for Magnetic Diffusion Problems

A possible alternative for problems involving slowly changing waveforms or extended diffusion times is developed in [23]. Such problems pose certain computational difficulties, due to the limiting Courant stability condition. As a study example, we may consider an aluminum enclosure. At first, a transient field will cause the appearance of eddy currents on the enclosure, which should lead to the cancellation of the external excitation. If the aluminum were considered to be a perfect conductor, the eddy currents would be characterized by long duration, similar to that of the transient field. Of course, these eddy currents are practically characterized by a specific time constant, which depends on a number of factors, such as the enclosure volume, the thickness and the conductivity of the wall. The decay time can be of the order of 0.1 s, in case of an aluminum enclosure the size of a large truck. If the duration of a magnetic pulse is much longer than this value, the enclosure will behave as being magnetically transparent. However, before this transparency takes place, any magnetic memory inside the enclosure will be scrambled. In essence, the magnetic field penetrating the enclosure cannot be treated solely in the context of a simple diffusion problem, at least in three dimensions. In fact, when the magnetic field develops a component that is normal to the surface of the enclosure, the corresponding problem should not be characterized as diffusive. Furthermore, the fields in the enclosure satisfy Maxwell’s system, and the appearance of eddy currents are a direct result of this property.

Problems involving steel enclosures are not much different than those with aluminum enclosures. The main difference is that the steel’s permeability is likely to prevent it from establishing a full magnetic transparency. Furthermore, nonlinear effects will take place, considering the nonlinear relationship between B, H. On the other hand, both enclosures will initially exclude interior magnetic fields, and will allow magnetic fields to slowly appear into the interior. For studying these phenomena, an implicit FDTD approach has been suggested.

Let us now consider a wave traveling along + x, with only H y and E z components. As usual, air is represented by (𝜖 0, μ 0) and walls by (𝜖, μ, σ). Moreover, E will be computed at the air-wall interface. Regarding the grid, the x-axis is divided into nodal points separated in air by Δx∕2, while the spatial resolution in the walls becomes δx∕2. In air, the equation

$$\displaystyle \begin{aligned} \frac{{\partial {H_y}}}{{\partial x}} = - {\epsilon _0}\frac{{\partial {E_z}}}{{\partial t}} {}\end{aligned} $$
(42)

can take the Crank-Nicolson FDTD form

$$\displaystyle \begin{aligned} \left. E \right|{}_i^{n + 1} = \left. E \right|{}_i^n - \frac{{\varDelta t}}{{{\epsilon _0}\varDelta x}}\left[ {\lambda \left( {\left. H \right|{}_{i + 1}^{n + 1} - \left. H \right|{}_{i - 1}^{n + 1}} \right) + (1 - \lambda )\left( {\left. H \right|{}_{i + 1}^n - \left. H \right|{}_{i - 1}^n} \right)} \right] {}\end{aligned} $$
(43)

Here, λ is a parameter that is set between 1∕2 (center differences) and 1 (forward differences) for implicit schemes. Equation (43) can be written in tridiagonal form, as

$$\displaystyle \begin{aligned} - {a_i}\left. H \right|{}_{i + 1}^{n + 1} + {b_i}\left. E \right|{}_i^{n + 1} - {c_i}\left. H \right|{}_{i - 1}^{n + 1} = {d_i} {}\end{aligned} $$
(44)

where

$$\displaystyle \begin{aligned} {a_i} = - \frac{{\lambda \varDelta t}}{{{\epsilon _0}\varDelta x}},\,\,\,\,\,{b_i} = 1,\,\,\,\,\,\,{c_i} = \frac{{\lambda \varDelta x}}{{{\epsilon _0}\varDelta t}},\,\,\,\,{d_i} = \left. E \right|{}_i^n - (1 - \lambda )\frac{{\lambda \varDelta t}}{{{\mu _0}\varDelta x}}(\left. H \right|{}_{i + 1}^n - \left. H \right|{}_{i - 1}^n) \end{aligned} $$
(45)

A corresponding set of equations can be deduced at even i with E, H, and μ 0, 𝜖 0 interchanged. For λ ≠ 0, the two equation families allow all field samples to be calculated simultaneously. If λ = 0 is selected, (43) becomes an explicit FDTD expression. In this case, \({\left . E \right |{ }_i}\) and \({\left . H \right |{ }_i}\) cannot be all advanced at the same time. Moreover, at positions within the wall, (42) is modified by adding the term − σE on the right side, and (44) needs to be altered by replacing (a, b, c, d) with (A, B, C, D), where

$$\displaystyle \begin{gathered} {A_i} = - {\left( {\frac{\epsilon }{{\varDelta t}} - \varLambda \sigma } \right)^{ - 1}}\frac{\lambda }{{\delta x}} = - {C_i},\,\,\,\,\,\,\,\,{B_i} = 1,\notag\\ {D_i} = \frac{{\frac{\epsilon }{{\varDelta t}} - (1 - \varLambda )\sigma }}{{\frac{\epsilon }{{\varDelta t}} + \varLambda \sigma }}\left. E \right|{}_i^n - \frac{1}{{\left( {\frac{\epsilon }{{\varDelta t}} + \varLambda \sigma } \right)\delta x}}\left[ {(1 - \lambda )\left( {\left. H \right|{}_{i + 1}^n - \left. H \right|{}_{i - 1}^n} \right)} \right] {} \end{gathered} $$
(46)

Here, Λ is another parameter that can be adjusted. It is noted that the coefficients in (46) will produce numerical instabilities for “explicit” Λ values, if Δt is selected higher than the Courant limit. Therefore, a consistent choice is to select Λ between 1∕2 (center-differenced loss) and 1 (forward-differenced loss).

3.6 Calculation of Photonic Band Structures

The FDTD methodology of [24] is suitable for studying the photonic band structure of a dielectric material, when Kerr-type nonlinearities are present. The algorithm assumes field distributions (B and E) that are characterized by the wave vectors k. The time-dependent Maxwell’s system is integrated to provide B(k, t). For a specific k, Maxwell’s equations will also determine the appropriate frequency value. In the case of nonlinear Kerr media, it is reminded that \({\mathbf {D}} = \left ( {\epsilon + \chi |{\mathbf {E}}{|{ }^2}} \right ){\mathbf {E}}\). An analytical solution for E is available for such a system. First, we take the square of the magnitude the aforementioned formula, to find an equation for χ, i.e.

$$\displaystyle \begin{aligned} |\chi {|{}^2}{x^3} + 2\operatorname{Re} \{ \epsilon *\chi \} {x^2} + |\epsilon {|{}^2}x - |{\mathbf{D}}{|{}^2} = 0 \end{aligned} $$
(47)

The solution to this cubic equation is known and its knowledge extremely useful, as it can save computational time. The main question pertains to which root to consider, among the available ones. The case we are studying (𝜖, χ have the same sign) is quite simple, as there exists one positive real root, and x must be a positive real. After x has been determined, E is given by

$$\displaystyle \begin{aligned} {\mathbf{E}} = \frac{{\mathbf{D}}}{{\epsilon + \chi x}} \end{aligned} $$
(48)

Computations are carried out by solving the system on a 3D lattice, with the curl computed in k space. Such an approach can be more reliable than the standard finite-difference approximation of the curl normally used in the FDTD method. Furthermore, implementation of a staggered spatial grid (which adds programming complexity) is avoided, and the periodic boundary condition is automatically fulfilled, without requiring further modifications. The calculations evolve as follows (linear case):

$$\displaystyle \begin{gathered} {\mathbf{B}}({\mathbf{k}},t + \varDelta t) = {\mathbf{B}}({\mathbf{k}},t) - jc\varDelta t{\mathbf{k}} \times {\mathbf{E}}({\mathbf{k}},t + \varDelta t/2) \end{gathered} $$
(49)
$$\displaystyle \begin{gathered} {\mathbf{D}}({\mathbf{k}},t + \varDelta t/2) = {\mathbf{D}}({\mathbf{k}},t - \varDelta t/2) + jc\varDelta t{\mathbf{k}} \times {\mathbf{B}}({\mathbf{k}},t + \varDelta t) \end{gathered} $$
(50)
$$\displaystyle \begin{gathered} {\mathbf{E}}({\mathbf{r}},t) = {\mathbf{D}}({\mathbf{r}},t)/\epsilon ({\mathbf{r}}){}\vspace{-4pt} \end{gathered} $$
(51)

while (51) is replaced by the appropriate equation, for the nonlinear case. The split-time scheme not only assures higher accuracy, but also is more economical in terms of memory, as it is not necessary to preserve the field values at two subsequent steps. Finally, B(k, t) is Fourier transformed to provide B(k, ω). To ensure that all modes have been considered, B(k, t) is multiplied with a Gaussian function, with a width half of that of 1∕Δω (Δω is the frequency resolution). This action broaden the peaks. As a source-free solution is required, the two divergence conditions need to be satisfied. However, we still may select an arbitrary initial condition, as the corresponding fields at later times will automatically satisfy the divergence conditions (this can be verified by taking the divergence of Maxwell’s equations). If the initial fields display nonzero divergence, they can be considered as fields originating from static charges. Hence, they will be identified only at ω = 0. Note that the resolution (Δ k and Δω) of the calculation is mainly affected by two factors: the grid size and the duration of integration.

3.7 Z-Transform-Based FDTD Formulation

The study of nonlinear phenomena using the FDTD method is also the subject of [25], where techniques borrowed from digital filtering theory are implemented. Similar to other works, the Kerr effect is described by the polarization term

$$\displaystyle \begin{aligned} {P_K}(t) = {\epsilon _0}\chi _0^{(3)}\alpha {E^3}(t) {}\end{aligned} $$
(52)

and the term due to Raman scattering is given by

$$\displaystyle \begin{aligned} {P_R}(t) = {\epsilon _0}\chi _0^{(3)}(1 - \alpha )E(t)\int_0^t {{g_R}(t - \tau ){E^2}(\tau )\,d\tau } \end{aligned} $$
(53)

where

$$\displaystyle \begin{aligned} {g_R}(\omega ) = \frac{1}{{1 + j2{\delta _{NL}}\left( {\frac{\omega }{{{\omega _{NL}}}}} \right) - {{\left( {\frac{\omega }{{{\omega _{NL}}}}} \right)}^2}}} \end{aligned} $$
(54)

By defining the integral

$$\displaystyle \begin{aligned} {I_R}(t) = {\epsilon _0}\chi _0^{(3)}(1 - \alpha )\int_0^t {{g_R}(t - \tau ){E^2}(\tau )\,d\tau }\end{aligned} $$
(55)

the implementation of the Z-transform yields

$$\displaystyle \begin{aligned} {I_R}(z) = {\epsilon _0}\frac{{{\gamma _R}\varDelta t{e^{ - {\alpha _R}\varDelta t}}\sin ({\beta _R}\varDelta t){z^{ - 1}}}}{{1 - 2{e^{ - {\alpha _R}\varDelta t}}\cos ({\beta _R}\varDelta t){z^{ - 1}} + {e^{ - 2{\alpha _R}\varDelta t}}{z^{ - 2}}}}{E^2}(z)\end{aligned} $$
(56)

where α R, β R, γ R are known constant coefficients. If the compact notation I R(z) = 𝜖 0 z −1 S R(z) is introduced (which is equivalent to \({\left . {{I_R}} \right |{ }^n} = {\epsilon _0}{\left . {{S_R}} \right |{ }^{n - 1}}\) in the time domain), then the update of S R is performed via

$$\displaystyle \begin{aligned} {\left. {{S_R}} \right|{}^n} = cn{l_1}{\left. {{S_R}} \right|{}^{n - 1}} - cn{l_2}{\left. {{S_R}} \right|{}^{n - 2}} + cn{l_3}{\left. {\left( {{E^2}} \right)} \right|{}^n} {}\end{aligned} $$
(57)

where cnl 1, cnl 2, cnl 3 are known coefficients. As the implementation of time discretization dictates

$$\displaystyle \begin{aligned} {P_R}(t) = E(t){I_R}(t) \leftrightarrow {\left. {{P_R}} \right|{}^n} = {\left. E \right|{}^n}{\left. {{I_R}} \right|{}^n}\end{aligned} $$

then \({\left . {{P_R}} \right |{ }^n}\) is computed from the preceding value of S R:

$$\displaystyle \begin{aligned} {\left. {{P_R}} \right|{}^n} = \epsilon_0 {\left. E \right|{}^n}{\left. {{S_R}} \right|{}^{n - 1}}\end{aligned} $$
(58)

and then the current value of the latter is obtained from E 2, according to (57).

Regarding the Kerr effect, after considering a proper Taylor expansion of E 3, we are led to an update equation of the form

$$\displaystyle \begin{aligned} {\left( {{{\left. E \right|}^n}} \right)^3} = 3{\left( {{{\left. E \right|}^{n - 1}}} \right)^2}\left( {{{\left. E \right|}^n}} \right) - 2{\left( {{{\left. E \right|}^{n - 1}}} \right)^3}\end{aligned} $$
(59)

which enables the computation of the corresponding polarization term \({\left . {{P_K}} \right |{ }^n}\) from (52). Evidently, the resulting equation dictates that P K depends on the electric-field value at two different time-steps.

Finally, to calculate the E field from the individual polarization terms, we start from

$$\displaystyle \begin{aligned} {\epsilon _0}{\epsilon _\infty }{\left. E \right|{}^n} = {\left. D \right|{}^n} - {\left. {{P_L}} \right|{}^n} - {\left. {{P_R}} \right|{}^n} - {\left. {{P_K}} \right|{}^n}\end{aligned} $$
(60)

where P L denotes the linear polarization, for which a similar, Z-transform based approach, is applied. Once all substitutions have been made, and all \(\left . E \right |{ }^n\) terms have been collected, we end up with

$$\displaystyle \begin{aligned} {\left. E \right|{}^n} = \frac{{\frac{1}{{{\epsilon _0}}}{{\left. D \right|}^n} - {{\left. {{S_L}} \right|}^{n - 1}} + 2\chi _0^{(3)}\alpha {{\left( {{{\left. E \right|}^{n - 1}}} \right)}^3}}}{{{\epsilon _0} + \chi _0^{(3)}(1 - \alpha ){{\left. {{S_R}} \right|}^{n - 1}} + 3\chi _0^{(3)}\alpha {{\left( {{{\left. E \right|}^{n - 1}}} \right)}^2}}} {} \end{aligned} $$
(61)

The methodology of [25] was implemented in the 1D calculation of the reflection coefficient from a nonlinear material with reasonably good accuracy. Furthermore, the potential of this approach to simulate soliton propagation was exemplified, in case of pulses with sufficiently large amplitude.

3.8 Auxiliary-Differential-Equation Approach for Absorbing and Gain Media

A fully explicit FDTD methodology capable of modeling wave propagation in certain types of nonlinear media is presented in [26]. The proposed approach is similar to the auxiliary-differential-equation (ADE) method used for dispersive media, and incorporates the atomic rate equations, which correspond to the time evolution of the atomic energy level populations, when the effect of applied signals is taken into account. Consequently, nonlinear gain and absorption effects can be included, and the approach is reliable over a non-trivial range of different signal strengths.

First, it is shown in the considered work that the electric polarization in real atomic transitions satisfies

$$\displaystyle \begin{aligned} \frac{{{d^2}{\mathbf{P}}}}{{d{t^2}}} + \varDelta {\omega _a}\frac{{d{\mathbf{P}}}}{{dt}} + \omega _\alpha ^2{\mathbf{P}} = \kappa \varDelta N{\mathbf{E}} \end{aligned} $$
(62)

where Δω a is the total energy decay rate that corresponds to the actual linewidth of the transition, ω a is the resonance frequency of the material that is related to the atomic energy levels, κ is a constant related to, among others, the mass and the charge of an electron, and ΔN represents the instantaneous population difference. The time variation of the latter becomes significant in case of high signal intensities and signals displaying rapid variations. Furthermore, for an ideal two-level system, the population difference ΔN satisfies

$$\displaystyle \begin{aligned} \frac{{d\varDelta N}}{{dt}} = - \frac{2}{{\hbar {\omega _a}}}{\mathbf{E}} \cdot \frac{{d{\mathbf{P}}}}{{dt}} - \frac{{\varDelta N - \varDelta {N_0}}}{{{\tau _{21}}}} \end{aligned} $$
(63)

where ΔN 0 is the population difference at thermal equilibrium, ħ denotes the reduced Planck’s constant, and τ 21 stands for the atoms’ lifetime in the upper energy level.

Considering the simple case of 1D propagation, the standard finite-difference update equation of the E x component is

$$\displaystyle \begin{aligned} \left. {{E_x}} \right|{}_k^{n + 1} = \left. {{E_x}} \right|{}_k^{n + 1} - \frac{{\varDelta t}}{{{\epsilon _0}\varDelta z}}\left( {\left. {{H_y}} \right|{}_{k + \frac{1}{2}}^{n + \frac{1}{2}} - \left. {{H_y}} \right|{}_{k - \frac{1}{2}}^{n + \frac{1}{2}}} \right) - \frac{1}{{{\epsilon _0}}}\left( {\left. {{P_x}} \right|{}_k^{n + 1} - \left. {{P_x}} \right|{}_k^n} \right) \end{aligned} $$
(64)

and the macroscopic polarization is obtained via

(65)

In a similar fashion, the equation regarding ΔN is discretized as follows:

$$\displaystyle \begin{aligned} \left. {\varDelta N} \right|{}_k^{n + 1} &= \frac{{2{\tau _{12}}\varDelta t}}{{2{\tau _{21}} + \varDelta t}}\left[ {\left. {\varDelta N} \right|{}_k^n\left( {\frac{1}{{\varDelta t}} - \frac{1}{{2{\tau _{21}}}}} \right)} \right.\notag\\ &\left. { + \frac{{\varDelta {N_0}}}{{{\tau _{21}}}} - \frac{{\left( {\left. {{E_x}} \right|{}_k^{n + 1} + \left. {{E_x}} \right|{}_k^n} \right)\left( {\left. {{P_x}} \right|{}_k^{n + 1} - \left. {{P_x}} \right|{}_k^n} \right)}}{{\varDelta t\hbar {\omega _a}}}} \right]\end{aligned} $$
(66)

To ensure numerical stability as well as satisfactory accuracy, the size of the time-step is determined by \(\varDelta t \leq \frac {{{T_a}}}{{100}}\), where T a is the time period related to the material resonance.

This approach was validated by considering a problem involving wave propagation in a two-level system of atoms, considering Gaussian-pulse excitation. Good agreement with existing theoretical models for the case of small-signal frequency response was observed. Moreover, population dynamics in the presence of considerable fields were also simulated satisfactorily using the aforementioned technique.

3.9 Hybrid Implicit-Explicit Modeling

A hybridization of two computational schemes is proposed in [27] for modeling 2D waveguiding structures, which is suitable for problems with small, nonlinear inclusions within larger, linear areas. The main feature of this algorithm is the partial elimination of the restrictive time-step stability limit, by implementing a partially implicit discretization approach in the nonlinear parts of the configuration under study.

If a 2D computational domain is described by a set of xz-axes, the E y component satisfies the wave equation

$$\displaystyle \begin{aligned} \nabla _{xz}^2{E_y} - {\mu _0}{\epsilon _0}\frac{{{\partial ^2}}}{{\partial {t^2}}}\left( {{\epsilon _r}{E_y}} \right) - {\mu _0}\frac{\partial }{{\partial t}}\left( {\sigma {E_y}} \right) = 0 {}\end{aligned} $$
(67)

where \(\nabla _{xz}^2 = \frac {{{\partial ^2}}}{{\partial {x^2}}} + \frac {{{\partial ^2}}}{{\partial {z^2}}}\). In nonlinear regions, the Kerr-type nonlinearity is expressed via \({\epsilon _r} = {\epsilon _{r,L}} + \alpha {\left | {{E_y}} \right |{ }^2}\). The discretization of (67) in linear areas is performed using a forward-difference formula for the first temporal derivative, and central difference approximations for the second temporal and spatial derivatives, resulting in the following expression:

$$\displaystyle \begin{gathered} \hspace{-1pc}\frac{{{\mu _0}{{\left. \sigma \right|}_{i,k}}}}{{\varDelta t}}\left( {\left. E \right|{}_{i,k}^{n + 1} - \left. E \right|{}_{i,k}^n} \right) + \frac{{{\mu _0}{\epsilon _0}{{\left. {{\epsilon _r}} \right|}_{i,k}}}}{{\varDelta {t^2}}}\left( {\left. E \right|{}_{i,k}^{n + 1} - 2\left. E \right|{}_{i,k}^n + \left. E \right|{}_{i,k}^{n - 1}} \right) = \\ = \frac{1}{{\varDelta {x^2}}}\left( {\left. E \right|{}_{i + 1,k}^n - 2\left. E \right|{}_{i,k}^n + \left. E \right|{}_{i - 1,k}^n} \right) + \frac{1}{{\varDelta {z^2}}}\left( {\left. E \right|{}_{i,k + 1}^n - 2\left. E \right|{}_{i,k}^n + \left. E \right|{}_{i,k - 1}^n} \right) \end{gathered} $$
(68)

Hence, the linear problem is treated with an explicit scheme, whose stability is dictated by the standard limit. On the other hand, a weighted-averaging time-stepping process is applied in nonlinear regions, according to:

(69)

where  = 1, 2, 3 and m 1 = n − 1, m 2 = n, m 3 = n + 1. As seen, the spatial derivatives can be averaged over three successive time-steps. Note that the explicit scheme is obtained simply by setting c 2 = 1, c 1 = c 3 = 0 in the aforementioned formula. In case of highly conducting materials, the partially implicit scheme with c 1 = c 2∕2 = c 3 = 1∕4 is selected instead, which exhibits better stability properties than the fully explicit approach and, at the same time, does not suffer from artificial amplitude attenuation, unlike the fully implicit method. Consequently, the overall stability is not affected and is still directly related to the discretization approach applied in the linear regions. To deal with the implicit updates, the authors in [27] implement the Newton-Raphson’s iterative technique, using the field values at the current time instant as the initial guess for the subsequent time-step. The developed method was applied in problems involving either slab waveguides with weak or moderate nonlinearities, or nonlinear distributed Bragg resonators with 40 grating periods.

3.10 3D Optical Pulse Simulation Using a Moving Reference Frame

A finite-difference methodology that is particularly suited for the efficient 3D modeling of single-mode propagation in optical fibers over large distances is presented in [28]. Using normalized units, the dielectric displacement can be expressed in the following form:

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _r}{\mathbf{E}} + {{\mathbf{P}}_L} + {{\mathbf{P}}_{NL}}\end{aligned} $$
(70)

where for the nonlinear polarization, the Kerr effect is modeled via P NL = χ (3) E 3. As already mentioned, the proper manipulation of Taylor expansion of E 3 produces \( {( {{{\left . E \right |}^n}} )^3} \simeq 3{( {{{\left . E \right |}^{n - 1}}} )^2}{\left . E \right |{ }^n} - 2{( {{{\left . E \right |}^{n - 1}}} )^3} \) , a formula which was also introduced in [25]. We eventually end up with the expression

$$\displaystyle \begin{aligned} {\left. E \right|{}^n} = \frac{{{\left. D \right|{}^n} + 2\chi _0^{(3)}{{\left( {{{\left. E \right|}^{n - 1}}} \right)}^3}}}{{{\epsilon _r} + 3\chi _0^{(3)}{{\left( {{{\left. E \right|}^{n - 1}}} \right)}^2}}}\end{aligned} $$
(71)

Note that the linear polarization term is computed with a formula similar to (61).

The implementation of the proposed methodology exploits several strategies, in an attempt to improve the algorithm’s overall efficiency. First, the spatial mesh density is selected to be higher along the direction of propagation, and reduced in the transverse direction, where the pulses are expected to change much slower. Second, the symmetry of the transverse field is taken into consideration, and only one quadrant of the computational space actually needs to be simulated, after applying the proper boundary conditions. Finally, the pulse is always held in the middle of the computational domain, by computing the average position of the pulse on the axis located at the center of the fiber’s core and properly displacing the field values in the mesh, with respect to a pre-selected spatial buffer. Due to the moving reference frame, a wavelet transform is applied, in order to track the changes of the pulse’s shape, while a Fourier transform at the central pulse frequency is implemented, for the assessment of the pulse’s speed and attenuation.

3.11 Decoupled FDTD Algorithms for 2D Photonic Crystals

The methodology presented in [29] is suitable for the analysis of arbitrary 2D structured material configurations, which lead to second-harmonic (SH) generation.Footnote 3 In essence, an artificial separation of the fundamental field (FF) and the SH is accomplished, which partially sacrifices generality, but enables less time-consuming simulations.

Considering an incident H-polarized FF, standard (linear) FDTD updating is implemented for the calculation for the FF. The nonlinearity is not considered for the FF, but only for the SH, which is not associated to the FF. The SH field is updated according to

$$\displaystyle \begin{aligned} \left. {E_z^{{\text{SH}}}} \right|{}_{i,j}^{n + 1} &= \left. {E_z^{{\text{SH}}}} \right|{}_{i,j}^n \notag \\ &+ \frac{{\varDelta t}}{{{{\left. {{\epsilon ^{{\text{SH}}}}} \right|}_{i,j}}\varDelta }}\left( {\left. {H_y^{{\text{SH}}}} \right|{}_{i + \frac{1}{2},j}^{n + \frac{1}{2}} - \left. {H_y^{{\text{SH}}}} \right|{}_{i - \frac{1}{2},j}^{n + \frac{1}{2}} + \left. {H_x^{{\text{SH}}}} \right|{}_{i,j - \frac{1}{2}}^{n + \frac{1}{2}} - \left. {H_x^{{\text{SH}}}} \right|{}_{i,j + \frac{1}{2}}^{n + \frac{1}{2}}} \right)\notag\\ & - \frac{1}{{{{\left. {{\epsilon ^{{\text{SH}}}}} \right|}_{i,j}}}}\left( {\left. {P_z^{(2)}} \right|{}_{i,j}^{n + \frac{1}{2}} - \left. {P_z^{(2)}} \right|{}_{i,j}^{n - \frac{1}{2}}} \right) \end{aligned} $$
(72)

where the last term, which is proportional to the time-derivative of the second-order polarization, represents the nonlinearity source. The polarization is obtained from the FF values, in a manner that depends on the properties of the considered nonlinear material. For instance, the case of a defective nonlinear photonic crystal is examined in [29], where the polarization update has the form

$$\displaystyle \begin{aligned} \left. {P_z^{(2)}} \right|{}_{i,j}^{n + \frac{1}{2}} &= \left. {P_z^{(2)}} \right|{}_{i,j}^{n - \frac{1}{2}} + \frac{{{\epsilon _0}{{\left. d \right|}_{i,j}}}}{2}\left[ {{{\left( {\left. {E_x^{{\text{FF}}}} \right|{}_{i + \frac{1}{2},j + 1}^{n + \frac{1}{2}}} \right)}^2} + {{\left( {\left. {E_x^{{\text{FF}}}} \right|{}_{i + \frac{1}{2},j}^{n + \frac{1}{2}}} \right)}^2}} \right.\notag\\ & - {\left( {\left. {E_x^{{\text{FF}}}} \right|{}_{i + \frac{1}{2},j + 1}^{n - \frac{1}{2}}} \right)^2} - {\left( {\left. {E_x^{{\text{FF}}}} \right|{}_{i + \frac{1}{2},j}^{n - \frac{1}{2}}} \right)^2}\notag\\ &\left. { + {{\left( {\left. {E_y^{{\text{FF}}}} \right|{}_{i,j + \frac{1}{2}}^{n + \frac{1}{2}}} \right)}^2} + {{\left( {\left. {E_y^{{\text{FF}}}} \right|{}_{i + 1,j + \frac{1}{2}}^{n + \frac{1}{2}}} \right)}^2} - {{\left( {\left. {E_y^{{\text{FF}}}} \right|{}_{i,j + \frac{1}{2}}^{n - \frac{1}{2}}} \right)}^2} - {{\left( {\left. {E_y^{{\text{FF}}}} \right|{}_{i + 1,j + \frac{1}{2}}^{n - \frac{1}{2}}} \right)}^2}} \right]\end{aligned} $$
(73)

where d stands for the nonlinear susceptibility. The examined structure supports waveguide modes at both FF and SH frequencies, as it is designed to exhibit photonic bandgaps in the proximity of the FF frequency in the case of H-polarization, and near the SH frequency for E-polarization. The configuration’s transmission diagrams was computed, which displayed maxima at the expected wavelengths.

3.12 A High-Order Extension of the Nonlinear ADE-FDTD Technique

The work of [30] presents a reformulation of the ADE technique, for problems concerning optical pulse propagating within linear Lorentz and nonlinear Kerr and Raman media. The main difference compared to other approaches is that the ADE approach is applied to the polarization, rather than to the polarization currents. The technique was originally developed for linear cases only [7], and this work extended it to nonlinear cases as well. Furthermore, unlike the conventional formulation of the FDTD method, the authors of [30] introduced spatial approximations of the form

$$\displaystyle \begin{aligned} {\left. {\frac{{\partial f}}{{\partial u}}} \right|{}_i} \simeq \frac{1}{{\varDelta u}}\sum_\ell {{c_\ell }\left( {{{\left. f \right|}_{i + \ell + \frac{1}{2}}} - {{\left. f \right|}_{i - \ell - \frac{1}{2}}}} \right)}\end{aligned} $$
(74)

where c ,  = 0, 1, … are the stencil coefficients of wavelet-based schemes that correspond to Deslauriers–Dubuc interpolating bases. The above-mentioned approximations are capable of ensuring higher-order accuracy for spatial derivatives. The paper considered third-order nonlinear polarization, consisting of both the Kerr (P K) and the Raman (P R) nonlinearities. The latter is treated with a simple ADE technique, which is also consistent with the implementation of the anisotropic perfectly matched layer (PML) absorbing boundary condition of [31]. As the electric-flux density is related to the electric-field intensity and the polarization terms via

$$\displaystyle \begin{aligned} {\left. {{D_y}} \right|{}^{n + 1}} = {\epsilon _0}{\epsilon _\infty }{\left. {{E_y}} \right|{}^{n + 1}} + {\left. {{P_D}} \right|{}^{n + 1}} + {\left. {{P_L}} \right|{}^{n + 1}} + {\left. {{P_K}} \right|{}^{n + 1}} + {\left. {{P_R}} \right|{}^{n + 1}} \end{aligned} $$
(75)

(P D, P L correspond to Debye and Lorentz dispersion, respectively) the final form of the update equation, similar to [25], becomes

$$\displaystyle \begin{aligned} {\left. {{E_y}} \right|{}^{n + 1}} = \frac{{{{\left. {{D_y}} \right|}^{n + 1}} - {a_D}{{\left. {{P_D}} \right|}^n} - {b_D}{{\left. {{E_y}} \right|}^n} - {{\left. {{P_L}} \right|}^{n + 1}}}}{{{\epsilon _0}\left[ {{\epsilon _\infty } + {b_D} + \alpha \chi _0^{(3)}{{\left( {{{\left. {{E_y}} \right|}^{n + 1}}} \right)}^2} + {{\left. S \right|}^{n + 1}}} \right]}}\end{aligned} $$
(76)

where a D, b D are known coefficients, and S denotes an auxiliary variable related to Raman nonlinearity. Evidently, the aforementioned formula is nonlinear and needs to be solved via an iterative scheme

The typical problems that were studied for numerical verification considered mainly 2D geometries and demonstrated spatio-temporal soliton propagation in optical media. In addition, the computational savings due to the high-order approximations in terms of memory requirements and computing times were clearly demonstrated.

3.13 A Vector ADE-FDTD Method for Nonlinear Problems

A FDTD method that features a general vector ADE approach is developed in [32] for 2D setups, where the electric field does not feature just a single vector component, and is suitable for propagation problems in dispersive nonlinear materials. The polarization current is considered to comprise three terms, J = J Lorentz + J Kerr + J Raman. The linear Lorentz polarization model is the sum of contributions from different resonances,

$$\displaystyle \begin{aligned} {{\mathbf{J}}_{{\text{Lorentz}}}} = \sum_{\ell = 1}^3 {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}}\end{aligned} $$
(77)

In phasor representation, each term can be written as

$$\displaystyle \begin{aligned} {\dot{\mathbf{J}}}_{{\text{Lorentz}},\ell } = {\epsilon _0}\beta \ell \omega _\ell ^2\frac{{j\omega }}{{\omega _\ell ^2 - {\omega ^2}}}{\dot{\mathbf{E}}}\end{aligned} $$
(78)

After multiplying the above equation with \(\left ({ \omega _\ell ^2 - {\omega ^2}} \right )\), applying the inverse transform, and discretizing the resulting expression, we end up with

$$\displaystyle \begin{aligned} {\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|{}^{n + 1}} = {\alpha _\ell }{\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|{}^n} - {\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|{}^{n - 1}} + \frac{{{\gamma _\ell }}}{{2\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left. {\mathbf{E}} \right|}^{n - 1}}} \right)\end{aligned} $$
(79)

where α , γ are known coefficients. However, the current density is required at \(\left (n+\frac {1}{2}\right )\) time instants, hence a simple averaging process is applied that yields

$$\displaystyle \begin{aligned} {\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|{}^{n + \frac{1}{2}}} {=} \frac{1}{2}\left[ {\left( {1 {+} {\alpha _\ell }} \right){{\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|}^n} {-} {{\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|}^{n - 1}} {+} \frac{{{\gamma _\ell }}}{{2\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}} {-} {{\left. {\mathbf{E}} \right|}^{n - 1}}} \right)} \right] {} \end{aligned} $$
(80)

Regarding the nonlinear Kerr polarization, it satisfies

$$\displaystyle \begin{aligned} {{\mathbf{J}}_{{\text{Kerr}}}} = \frac{{\partial {{\mathbf{P}}_{{\text{Kerr}}}}}}{{\partial t}} = \frac{\partial }{{\partial t}}\left( {\alpha {\epsilon _0}\chi _0^{(3)}{{\left| {\mathbf{E}} \right|}^2}{\mathbf{E}}} \right) \end{aligned} $$
(81)

and it is discretized according to

$$\displaystyle \begin{aligned} {\left. {{{\mathbf{J}}_{{\text{Kerr}}}}} \right|{}^{n + \frac{1}{2}}} = \frac{{\alpha {\epsilon _0}\chi _0^{(3)}}}{{\varDelta t}}\left\{ {{{\left( {\left| {{{\left. {\mathbf{E}} \right|}^{n + 1}}} \right|} \right)}^2}{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left( {\left| {{{\left. {\mathbf{E}} \right|}^n}} \right|} \right)}^2}{{\left. {\mathbf{E}} \right|}^n}} \right\} {} \end{aligned} $$
(82)

As far as the nonlinear Raman polarization is concerned, an auxiliary variable is introduced for the convolution

$$\displaystyle \begin{aligned} S(t) = \chi _{{\text{Raman}}}^{(3)}(t) * {\left| {{\mathbf{E}}(t)} \right|{}^2}\mathop \leftrightarrow \limits^{FT} S(\omega ) = \chi _{{\text{Raman}}}^{(3)}(\omega )\mathcal F\left\{ {{{\left| {{\mathbf{E}}(t)} \right|}^2}} \right\} \end{aligned} $$
(83)

where

$$\displaystyle \begin{aligned} \chi _{{\text{Raman}}}^{(3)}(\omega ) = \frac{{(1 - \alpha )\chi _0^{(3)}\omega _{{\text{Raman}}}^2}}{{\omega _{{\text{Raman}}}^2 + 2j\omega {\delta _{{\text{Raman}}}} - {\omega ^2}}} \end{aligned} $$
(84)

and \(\mathcal F\) denotes Fourier transform. Transforming back to the time domain produces

$$\displaystyle \begin{aligned} \frac{{{\partial ^2}S}}{{\partial {t^2}}} + 2{\delta _{\text{Raman}}}\frac{{\partial S}}{{\partial t}} + \omega _{{\text{Raman}}}^2 = \left( {1 - \alpha } \right)\chi _0^{(3)}\omega _{{\text{Raman}}}^2{\left| {\mathbf{E}} \right|{}^2} \end{aligned} $$
(85)

which, when discretized, leads to the update equation

$$\displaystyle \begin{aligned} {\left. S \right|{}^{n + 1}} {=} \frac{{2 - \omega _{{\text{Raman}}}^2\varDelta {t^2}}}{{{\delta _{{\text{Raman}}}}\varDelta t + 1}}{\left. S \right|{}^n} {+} \frac{{{\delta _{{\text{Raman}}}}\varDelta t {-} 1}}{{{\delta _{{\text{Raman}}}}\varDelta t {+} 1}}{\left. S \right|{}^{n {-} 1}} {+} \frac{{(1 {-} \alpha )\chi _0^{(3)}\omega _{{\text{Raman}}}^2\varDelta {t^2}}}{{{\delta _{{\text{Raman}}}}\varDelta t {+} 1}}{\left( {\left| {{{\left. {\mathbf{E}} \right|}^n}} \right|} \right)^2} \end{aligned} $$
(86)

Finally, the Raman polarization term at the time instant \(\left (n + \frac {1}{2}\right )\) is updated according to

$$\displaystyle \begin{aligned} {\left. {{{\mathbf{J}}_{{\text{Raman}}}}} \right|{}^{n + \frac{1}{2}}} = \frac{{{\epsilon _0}}}{{\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}}{{\left. S \right|}^{n + 1}} - {{\left. {\mathbf{E}} \right|}^n}{{\left. S \right|}^n}} \right) {} \end{aligned} $$
(87)

Taking into account all the aforementioned quantities, the update of the electric-field intensity at (n + 1) must be performed via

$$\displaystyle \begin{aligned} \nabla \times {\left. {\mathbf{H}} \right|{}^{n + \frac{1}{2}}} - \frac{{{\epsilon _0}}}{{\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left. {\mathbf{E}} \right|}^n}} \right) - {\left. {{{\mathbf{J}}_{{\text{Lorentz}}}}} \right|{}^{n + \frac{1}{2}}} - {\left. {{{\mathbf{J}}_{{\text{Kerr}}}}} \right|{}^{n + \frac{1}{2}}} - {\left. {{{\mathbf{J}}_{{\text{Raman}}}}} \right|{}^{n + \frac{1}{2}}} = 0 {} \end{aligned} $$
(88)

Evidently, the aforementioned formula describes a nonlinear system of coupled equations. First, \({\left . {{E_x}} \right |{ }^{n + 1}},{\left . {{E_y}} \right |{ }^{n + 1}}\) are updated from (80), (82), (87), and (88). Then, the authors of [32] suggest the implementation of a multi-dimensional Newton’s method, and define an objective function vector, according to

$$\displaystyle \begin{aligned} \left[ \begin{gathered} x \hfill \\ y \hfill \\ \end{gathered} \right] &= \nabla \times {\left. {\mathbf{H}} \right|{}^{n + \frac{1}{2}}} - \frac{{{\epsilon _0}}}{{\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left. {\mathbf{E}} \right|}^n}} \right)\notag\\ & - \frac{1}{2}\sum_{\ell = 1}^3 {\left[ {\left( {1 + {\alpha _\ell }} \right){{\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|}^n} - {{\left. {{{\mathbf{J}}_{{\text{Lorentz}},\ell }}} \right|}^{n - 1}} + \frac{{{\gamma _\ell }}}{{2\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left. {\mathbf{E}} \right|}^{n - 1}}} \right)} \right]} \notag\\ &- \frac{{\alpha {\epsilon _0}\chi _0^{(3)}}}{{\varDelta t}}\left\{ {{{\left( {\left| {{{\left. {\mathbf{E}} \right|}^{n + 1}}} \right|} \right)}^2}{{\left. {\mathbf{E}} \right|}^{n + 1}} - {{\left( {\left| {{{\left. {\mathbf{E}} \right|}^n}} \right|} \right)}^2}{{\left. {\mathbf{E}} \right|}^n}} \right\} + \frac{{{\epsilon _0}}}{{\varDelta t}}\left( {{{\left. {\mathbf{E}} \right|}^{n + 1}}{S^{n + 1}} - {{\left. {\mathbf{E}} \right|}^n}{S^n}} \right)\end{aligned} $$
(89)

Next, if the m-th guesses for \({\left . {{E_x}} \right |{ }^{n + 1}},{\left . {{E_y}} \right |{ }^{n + 1}}\) are represented by \(e_x^{(m + 1)},e_y^{(m + 1)}\), then Newton’s approach updates the guesses according to

$$\displaystyle \begin{aligned} \left[ \begin{gathered} e_x^{(m + 1)} \hfill \\ e_y^{(m + 1)} \hfill \\ \end{gathered} \right] = \left[ \begin{gathered} e_x^{(m)} \hfill \\ e_y^{(m)} \hfill \\ \end{gathered} \right] - {\left. {{{\mathbf{J}}^{ - 1}}\left( {\left[ \begin{gathered} x \hfill \\ y \hfill \\ \end{gathered} \right]} \right)} \right|{}^{(m)}}\end{aligned} $$
(90)

until both objective functions attain values that are sufficiently close to zero (J stands for the Jacobian (x, y)∕(e x, e y)). Temporal and spatial solitons in dispersive nonlinear material were modeled, in the context of numerically demonstrating the potential of the suggested approach.

3.14 Nonlinear FDTD Approach with Exponential Integrators

Electromagnetic problems with general nonlinear polarizations are studied with a Krylov-subspace-based operator-exponential method in [33], by following different strategies for the different (linear, nonlinear) parts of the involved differential equations. Specifically, the linear part is treated with a high-accuracy approach, while the nonlinear part is evaluated by means of standard high-order techniques.

In order to apply such an strategy, the governing equations need to be expressed as

$$\displaystyle \begin{aligned} \frac{\partial }{{\partial t}}\pmb{\varPsi} = \pmb{\mathcal{H}}\pmb{\varPsi} + \pmb{\mathcal{N}}\left( {\pmb{\varPsi} ,t} \right)\end{aligned} $$
(91)

where Ψ = [E H]T. The \(\pmb {\mathcal H}\) part is treated via an accurate exponential integrator, while \(\pmb {\mathcal N}\) that denotes the nonlinear behavior, is updated with a sufficiently accurate standard approach. Specifically, the two scaled (c 0 = 1) splitting terms are

$$\displaystyle \begin{aligned} \pmb{\mathcal H} = \left[ {\begin{array}{*{20}{c}} { - {\sigma _e}}&{\frac{1}{{{\epsilon _r}}}\nabla \times } \\ { - \frac{1}{{{\mu _r}}}\nabla \times }&{ - {\sigma _m}} \end{array}} \right],\qquad \pmb{\mathcal N}(\pmb{\varPsi} ) = \left[ {\begin{array}{*{20}{c}} {\left( {C\left( {\mathbf{E}} \right) - \frac{1}{\epsilon }} \right)\nabla \times {\mathbf{H}}} \\ 0 \end{array}} \right] \end{aligned}$$

where C(E) is defined as follows: starting from the constitutive relation

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _0}\left( {{\epsilon _r} + {\chi ^{(3)}}{{\left| {\mathbf{E}} \right|}^2}} \right){\mathbf{E}} \end{aligned} $$
(92)

the corresponding temporal derivatives are related via

$$\displaystyle \begin{aligned} \frac{{\partial {\mathbf{E}}}}{{\partial t}} = C\left( {\mathbf{E}} \right)\frac{{\partial {\mathbf{D}}}}{{\partial t}} \end{aligned}$$

where it is found that

$$\displaystyle \begin{aligned} C\left( {\mathbf{E}} \right) = \frac{{\left[ {\epsilon _r^2 + 4{\chi ^{(3)}}{\epsilon _r}{{\left| {\mathbf{E}} \right|}^2} + 3{{\left( {{\chi ^{(3)}}} \right)}^2}{{\left| {\mathbf{E}} \right|}^4}} \right]{\mathbf{I}} - 2{\chi ^{(3)}}{\epsilon _{nl}}{\mathbf{A}}}}{{{{\left( {{\epsilon _{nl}}} \right)}^2}\left( {{\epsilon _r} + 3{\chi ^{(3)}}{{\left| {\mathbf{E}} \right|}^2}} \right)}} \end{aligned} $$
(93)

In the above equation, \({\epsilon _{nl}} = {\epsilon _r} + {\chi ^{(3)}}{\left | {\mathbf {E}} \right |{ }^2}\) and

$$\displaystyle \begin{aligned} {\mathbf{A}} = \left[ {\begin{array}{*{20}{c}} {E_x^2}&{{E_x}{E_y}}&{{E_x}{E_z}} \\ {{E_x}{E_y}}&{E_y^2}&{{E_y}{E_z}} \\ {{E_x}{E_z}}&{{E_y}{E_z}}&{E_z^2} \end{array}} \right] \end{aligned} $$
(94)

Note that the operator \(\pmb {\mathcal H}\) does not depend on the electric or the magnetic field. The discretization of the linear and nonlinear parts can be performed via standard methodologies, such as finite differences, finite elements, etc.

The most crucial part of this methodology is the time integration of the involved equation. Based on a classical fourth-order Runge-Kutta scheme, the authors of [33] first propose the implementation of a Lawson exponential integrator, according to the following scheme:

$$\displaystyle \begin{aligned} {{\mathbf{Y}}_1} &= {\boldsymbol \varPsi} \left( {{{\left. t \right|}^{n - 1}}} \right) \end{aligned} $$
(95)
$$\displaystyle \begin{aligned} {{\mathbf{Y}}_2} &= \frac{{\varDelta t}}{2}{e^{\varDelta t \pmb{\mathcal H}}}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_1},{{\left. t \right|}^{n - 1}}} \right) + {e^{\frac{{\varDelta t\pmb{\mathcal H}}}{2}}}{\mathbf Y_1} \end{aligned} $$
(96)
$$\displaystyle \begin{aligned} {{\mathbf{Y}}_3}& = \frac{{\varDelta t}}{2}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_2},{{\left. t \right|}^{n - 2}}} \right) + {e^{\frac{{\varDelta t\pmb{\mathcal H}}}{2}}}{{\mathbf{Y}}_1} \end{aligned} $$
(97)
$$\displaystyle \begin{aligned} {{\mathbf{Y}}_4} &= \varDelta t{e^{\frac{{\varDelta t\pmb{\mathcal H}}}{2}}}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_3},{{\left. t \right|}^{n - \frac{1}{2}}}} \right){e^{\varDelta t\pmb{\mathcal H}}}{{\mathbf{Y}}_1} \end{aligned} $$
(98)
$$\displaystyle \begin{aligned} \pmb{\varPsi} \left( {{{\left. t \right|}^n}} \right) &= \frac{{\varDelta t}}{6}\left[ {{e^{\varDelta t\pmb{\mathcal H}}}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_1},{{\left. t \right|}^{n - 1}}} \right) + 2{e^{\frac{{\varDelta t\pmb{\mathcal H}}}{2}}}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_2},{{\left. t \right|}^{n - \frac{1}{2}}}} \right)} \right.\notag\\ & \left. { + 2{e^{\frac{{\varDelta t\pmb{\mathcal H}}}{2}}}\pmb{\mathcal N}\left( {{{\mathbf{Y}}_3},{{\left. t \right|}^{n - \frac{1}{2}}}} \right) + \pmb{\mathcal N}\left( {{{\mathbf{Y}}_4},{{\left. t \right|}^n}} \right)} \right] + {e^{\varDelta t\pmb{\mathcal H}}}{{\mathbf{Y}}_1} \end{aligned} $$
(99)

To ensure that the Lawson integrator is fourth-order accurate, the matrix exponential is computed through Krylov-subspace techniques, with a Krylov-subspace dimension equal to 6. The authors mention that higher-order integrators can be realized, provided that the corresponding increase in the Krylov-subspace dimension is ensured, but at the same time significantly increasing the memory requirements compared to the standard FDTD approach.

Another fourth-order approach proposed in [33] is based on the Rosenbrock-Wanner exponential integrators. Considering the general first-order initial-value problem

$$\displaystyle \begin{aligned} \frac{{\partial y}}{{\partial t}} = f(y),\quad y(0) = 0 \end{aligned} $$
(100)

Rosenbrock-Wanner methods emerge from the linearization of the result of applying the implicit Euler discretization scheme to the aforementioned equation. Specifically, the authors in [33] apply the following fourth-order multi-step approach:

$$\displaystyle \begin{aligned} {k_1} &= \phi \left( {\frac{1}{2}\varDelta tA} \right)f({y_n}) \end{aligned} $$
(101)
$$\displaystyle \begin{aligned} {k_2} &= \phi \left( {\varDelta tA} \right)f({y_n}) \end{aligned} $$
(102)
$$\displaystyle \begin{aligned} {w_3} &= \frac{3}{8}\left( {{k_1} + {k_2}} \right) \end{aligned} $$
(103)
$$\displaystyle \begin{aligned} {u_3} &= {y_n} + \varDelta t{w_3} \end{aligned} $$
(104)
$$\displaystyle \begin{aligned} {d_3} &= f({u_3}) - f({y_n}) - \varDelta tA{w_3} \end{aligned} $$
(105)
$$\displaystyle \begin{aligned} {k_3} &= \phi \left( {\frac{1}{2}\varDelta tA} \right){d_3} \end{aligned} $$
(106)
$$\displaystyle \begin{aligned} {y_{n + 1}} &= {y_n} + \varDelta t\left( {{k_2} + \frac{{16}}{{27}}{k_3}} \right) \end{aligned} $$
(107)

where

$$\displaystyle \begin{aligned} {d_i} = f({u_i}) - f({y_n}) - \varDelta tA\sum_{j = 1}^s {{\alpha _{ij}}{k_j}} \end{aligned} $$
(108)

s is the number of steps, A = f′(y n) represents the Jacobian that results from the linearization, ϕ(A) = I∕(I − A) is the characteristic of the implicit Rosenbrock-Wanner methods, and α ij are free parameters. The performance of this approach relies on the exact computation of the Jacobian at each time-step, otherwise only first-order accuracy is ensured (however, only two Krylov subspaces are required for a single time-step). Despite its computational overhead, the authors mention that the suggested approach offers specific advantages that render it a quite competitive solver for nonlinear Maxwell’s equations.

3.15 A Unified Nonlinear FDTD Formulation

A FDTD formulation that is capable of including various linear and nonlinear kinds of dispersion is presented in [34], which also facilitates the implementation of unidirectional sources, such as Gaussian beams. The nonlinear polarization term satisfies P(t) = 𝜖 0 S(t)E(t), where S(t) is computed as the convolution of χ (3)(t) and E 2(t). The quantity S can be obtained from the recursive relation

$$\displaystyle \begin{aligned} {\left. S \right|{}^{n + 1}} = A{\left. {\left( {{E^2}} \right)} \right|{}^n} + B{\left. S \right|{}^n} + C{\left. S \right|{}^{n - 1}} \end{aligned} $$
(109)

By properly changing the values of the parameters χ (3), A, B, and C, Kerr as well as Raman nonlinearities can be modeled. For a general dispersive Kerr nonlinear medium, we have

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _0}\left( {{\epsilon _\infty } + S} \right){\mathbf{E}} + {{\mathbf{P}}_L} + {\epsilon _0}\chi _0^{(3)}{E^2}{\mathbf{E}} \end{aligned} $$
(110)

When no material dispersion is taken into account, we have

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _0}\left( {{\epsilon _r} + \chi _{0,K}^{(3)}{E^2}} \right){\mathbf{E}} \end{aligned} $$
(111)

which can be used for the numerical update of the electric-field intensity. For the more general dispersive nonlinear Kerr medium, it is

$$\displaystyle \begin{aligned} {\mathbf{D}} = {\epsilon _0}\left( {{\epsilon _\infty } + S} \right){\mathbf{E}} + {{\mathbf{P}}_L} + {\epsilon _0}\chi _{0,K}^{(3)}{E^2}{\mathbf{E}} \end{aligned} $$
(112)

On the other hand, in case of absent instantaneous Kerr nonlinearity and linear dispersion, we end up with the simple update

$$\displaystyle \begin{aligned} {\left. {\mathbf{E}} \right|{}^{n + 1}} = \frac{1}{{{\epsilon _0}\left( {{\epsilon _\infty } + {{\left. S \right|}^{n + 1}}} \right)}}{\left. {\mathbf{D}} \right|{}^{n + 1}} \end{aligned} $$
(113)

Finally, the authors described a general approach for the implementation of unidirectional sources, featuring arbitrary profiles, shapes, and radiation towards different angles.

3.16 Modeling Cold-Plasma Maxwell’s Equations with a Time-Split Technique

The authors of [35] discuss a methodology for cold-plasma equations, when an external EM excitation is present. Specifically, the nonlinear Drude model for modeling nonlinear dispersive media is extracted from the cold-plasma equations, and associated with Maxwell’s system. The cold-plasma equations for the electron density n e and velocity u e, and Maxwell’s equations for fields E, B are given by

$$\displaystyle \begin{gathered} \frac{{\partial {n_e}}}{{\partial t}} + \nabla \cdot ({n_e}{{\mathbf{u}}_e}) = 0 \end{gathered} $$
(114)
$$\displaystyle \begin{gathered} \frac{{\partial {{\mathbf{u}}_e}}}{{\partial t}} + ({{\mathbf{u}}_e} \cdot \nabla ){{\mathbf{u}}_e} = \frac{{{q_e}}}{{{m_e}}}({\mathbf{E}} + {{\mathbf{u}}_e} \times {\mathbf{B}}) \end{gathered} $$
(115)
$$\displaystyle \begin{gathered} \nabla \cdot {\mathbf{B}} = 0 \end{gathered} $$
(116)
$$\displaystyle \begin{gathered} {\epsilon _0}\nabla \cdot {\mathbf{D}} = \rho \frac{{\partial {\mathbf{B}}}}{{\partial t}} = - \nabla \times {\mathbf{E}} \end{gathered} $$
(117)
$$\displaystyle \begin{gathered} {\epsilon _0}\frac{{\partial {\mathbf{E}}}}{{\partial t}} = \frac{1}{{{\mu _0}}}\nabla \times {\mathbf{B}} - {\mathbf{J}}\vspace{-4pt} \end{gathered} $$
(118)

where m e, q e are the electron mass and charge, respectively. The electron number density and velocity field are represented by n e(r) and u e(r). The first equation is the continuity equation, and the second one is the generalized Newton’s second law. The charge density ρ and current density J are defined as ρ = q e(n e − n 0) and J = q e n e u e, respectively, where n 0 is the (assumed constant) positive ion density . To secure charge neutrality, the electron density equals n 0 before the exciting field appears. After rewriting the initial equations in terms of ρ and J, we obtain

$$\displaystyle \begin{gathered} \frac{{\partial \rho }}{{\partial t}} = - \nabla \cdot {\mathbf{J}} \end{gathered} $$
(119)
$$\displaystyle \begin{gathered} \frac{{\partial {\mathbf{J}}}}{{\partial t}} + \sum_k {\frac{\partial }{{\partial {x_k}}}\frac{{{\mathbf{J}}{J_k}}}{{{q_e}{n_e}}}} = \frac{{{q_e}}}{{{m_e}}}\left( {{q_e}{n_e}{\mathbf{E}} + {\mathbf{J}} \times {\mathbf{B}}} \right) = \frac{1}{\tau }{\mathbf{J}}\vspace{-4pt} \end{gathered} $$
(120)

where τ is the phenomenological damping time constant. The aforementioned equations can be reduced to

$$\displaystyle \begin{aligned} \frac{{\partial {\mathbf{J}}}}{{\partial t}} = - \frac{1}{\tau }{\mathbf{J}} + {\epsilon _0}\omega _p^2{\mathbf{E}} + \frac{{{q_e}}}{{{m_e}}}\left( {\rho {\mathbf{E}} + {\mathbf{J}} \times {\mathbf{B}}} \right) - \sum_k {\frac{\partial }{{\partial {x_k}}}\left( {\frac{{{\mathbf{J}}{J_k}}}{{\rho + {\epsilon _0}{m_e}\omega _p^2/{q_e}}}} \right)} {}\end{aligned} $$
(121)

where \(\omega ({\mathbf {r}}) = \sqrt {q_e^2{n_0}({\mathbf {r}})/({\epsilon _0}{m_e})} \) is the plasma frequency.

In order to develop a discrete model for the nonlinear Drude equation (121), a time-split semi-implicit finite-difference approach is proposed. Specifically, the initial problem is divided into three subproblems:

$$\displaystyle \begin{gathered} \frac{{\partial {\mathbf{J}}}}{{\partial t}} = - \frac{1}{\tau }{\mathbf{J}} + {\epsilon _0}\omega _p^2{\mathbf{E}} + \frac{{{q_e}}}{{{m_e}}}{\epsilon _0}(\nabla \cdot {\mathbf{E}}){\mathbf{E}}{} \end{gathered} $$
(122)
$$\displaystyle \begin{gathered} \frac{{\partial {\mathbf{J}}}}{{\partial t}} = \frac{{{q_e}}}{{{m_e}}}{\mathbf{J}} \times {\mathbf{B}}{} \end{gathered} $$
(123)
$$\displaystyle \begin{gathered} \frac{{\partial {\mathbf{J}}}}{{\partial t}} = - \sum_k {\frac{\partial }{{\partial {x_k}}}\left( {\frac{{{\mathbf{J}}{J_k}}}{{\rho + {\epsilon _0}{m_e}\omega _p^2/{q_e}}}} \right)} {} \end{gathered} $$
(124)

First, using (122), J is updated from time-step n − 1∕2 to n + 1∕2 utilizing an implicit approach with respect to J, and explicit differencing for the remaining terms. Hence,

$$\displaystyle \begin{aligned} \frac{{{{\mathbf{J}}^{(1)}} - {{\left. {\mathbf{J}} \right|}^{n - 1/2}}}}{{\varDelta t}} = - \frac{{{{\mathbf{J}}^{(1)}} + {{\left. {\mathbf{J}} \right|}^{n - 1/2}}}}{{2\tau }} + {\epsilon _0}\omega _p^2{\left. {\mathbf{E}} \right|{}^n} + \frac{{{q_e}}}{{{m_e}}}{\epsilon _0}(\nabla \cdot {\left. {\mathbf{E}} \right|{}^n}){\left. {\mathbf{E}} \right|{}^n}\end{aligned} $$
(125)

where J (1) is the intermediate updated value of J at n + 1∕2. The ∇⋅E n term is evaluated in a standard fashion. As it is required at the same mesh points as the electric field, the divergence must be interpolated. Then, the finite-difference equation can be solved explicitly:

$$\displaystyle \begin{aligned} {{\mathbf{J}}^{(1)}} = \frac{{\tau - \varDelta t/2}}{{\tau + \varDelta t/2}}{{\mathbf{J}}^{n - 1/2}} + \frac{{\tau \varDelta t}}{{\tau + \varDelta t/2}}{\epsilon _0}\left[ {\omega _p^2{{\mathbf{E}}^n} + \frac{{{q_e}}}{{{m_e}}}(\nabla \cdot {{\mathbf{E}}^n}){{\mathbf{E}}^n}} \right]\end{aligned} $$
(126)

Second, an implicit scheme is applied to (122). Before updating this equation, the components of J are computed at the cell centers via interpolation. Similarly, H is interpolated at the cell center, and also at time instant n. The advantage of this collocation is that it eliminates the need to solve large systems. The resulting update requires that the following linear system is solved, for each cell center:

$$\displaystyle \begin{aligned} \frac{{{{\mathbf{J}}^{(2)}} - {{\hat{\mathbf{J}}}^n}}}{{\varDelta t}} = \frac{{{q_e}}}{{{m_e}}}{\mu _0}\frac{{{{\mathbf{J}}^{(2)}} + {{\hat{\mathbf{J}}}^n}}}{2} \times {\hat{\mathbf{H}}^n} \end{aligned} $$
(127)

or, more compactly, \({\mathrm {A}}{{\mathbf {J}}^{(2)}} = {\mathrm {A'}}{\left . {\hat {\mathbf {J}}} \right |{ }^n}\), with

$$\displaystyle \begin{aligned} {\text{A}} = \left( {\begin{array}{*{20}{c}} 1&{ - a{H_z}}&{a{H_y}} \\ {a{H_z}}&1&{ - a{H_x}} \\ { - a{H_y}}&{a{H_x}}&1 \end{array}} \right) \end{aligned} $$
(128)

where the hat notation indicates interpolation. Moreover, A′ denotes the transpose of A, \(\hat {\mathbf {H}} = [{H_x}\,\,{H_y}\,\,{H_z}]'\), and a = 0.5Δtμ 0 q em e. The explicit solution then takes the form

(129)

where \({\mathrm {|A|}} = 1 + {a^2}\left ( {H_x^2 + H_y^2 + H_z^2} \right )\). Finally, (124) is updated, after it is written in conservation form:

$$\displaystyle \begin{aligned} \frac{{\partial {\mathbf{J}}}}{{\partial t}} + {F_x}({\mathbf{J}}) + {G_y}({\mathbf{J}}) + {K_z}({\mathbf{J}}) = 0 \end{aligned} $$
(130)

where F(J) = J J xρ′, G(J) = J J yρ′, K(J) = J J zρ′ and \(\rho ' = \rho + {\epsilon _0}{m_e}\omega _p^2/{q_e}\). In this case, a two-step Lax-Wendroff approach can be implemented. The time-step is chosen to satisfy the CFL conditions as \(\varDelta t < \varDelta x/(2\max \{ {\upsilon _{\max }},c\} )\), where c is the speed of light in vacuum and \({\upsilon _{\max }} = \max \{ |{\mathbf {J}}/\rho '|\} \) is the maximum wave velocity in the plasma. After the last update has been performed, all J components are interpolated back at the cell face centers, and can be then introduced in the FDTD method for computing the E field.

3.17 3D Modeling of Nonlinear Ferroelectric Materials

The work of [36] investigates the behavior of nonlinear ferroelectric materials (i.e. materials with nonlinear polarization response) and specifically their effects, when they are present inside a rectangular waveguide. Regarding ferroelectric materials, the linear relation P = 𝜖 0 χ E is valid only for small values of the applied electric-field intensity. When the electric field becomes stronger, all the electric domains of the material are aligned, and polarization reaches saturation, without the requirement of an external bias. The nonlinear behavior of the ferroelectric material can be described reliably by a modified hyperbolic tangent function,

$$\displaystyle \begin{aligned} {\mathbf{P}} = {P_{{\text{sat}}}}\tanh \left( {{E_{{\text{scale}}}}{\mathbf{E}}} \right) \end{aligned} $$
(131)

where P sat is the polarization saturation limit, and \(E_{{\text{scale}}} = \frac {\epsilon _0(\epsilon _r - 1)}{P_{\text{sat}}}\) is a scaling factor.

In order to construct a FDTD algorithm without augmented memory requirements, the time derivative of D is computed according to

$$\displaystyle \begin{aligned} \frac{{\partial {\mathbf{D}}}}{{\partial t}} = \frac{{\partial {\mathbf{D}}}}{{\partial {\mathbf{E}}}}\frac{{\partial {\mathbf{E}}}}{{\partial t}} = {P_{{\text{sat}}}}{E_{{\text{scale}}}}\left( {1 - {{\tanh }^2}\left( {{E_{{\text{scale}}}}{\mathbf{E}}} \right)} \right) + {\epsilon _0} \end{aligned} $$
(132)

which leads to the definition of the effective permittivity:

$$\displaystyle \begin{aligned} {\epsilon _{{\text{eff}}}} = {P_{{\text{sat}}}}{E_{{\text{scale}}}}\left( {1 - {{\tanh }^2}\left( {{E_{{\text{scale}}}}\left| {{{\mathbf{E}}^{n - 1}}} \right|} \right)} \right) + {\epsilon _0} \end{aligned} $$
(133)

Then, the electric- and magnetic-field intensities are update in a standard manner, following

$$\displaystyle \begin{gathered} {{\mathbf{H}}^{n + \frac{1}{2}}} = {{\mathbf{H}}^{n - \frac{1}{2}}} - \frac{{\varDelta t}}{{{\mu _0}}}\nabla \times {{\mathbf{E}}^n} \end{gathered} $$
(134)
$$\displaystyle \begin{gathered} {{\mathbf{E}}^{n + 1}} = {{\mathbf{E}}^n} + \varDelta t{\left( {{\epsilon _{\text{eff}}}} \right)^{ - 1}}\nabla \times {{\mathbf{H}}^{n + \frac{1}{2}}} \end{gathered} $$
(135)

Compared to the linear case, simulations show that the presence of a ferroelectric material in a waveguide structure leads to an increase of the peak power density and a spatial compression of the pulsewidth. This type of behavior can be useful in various contemporary applications that require high-power electromagnetic pulse generation, sharp/compressed waveforms, etc.

3.18 Analysis of Second-Harmonic Generation in Periodic Structures

An extension of the split-field (SF) FDTD method to 2D periodic configurations without any assumptions regarding the material symmetries is developed in [37]. For a non-magnetic and non-conducting medium, Maxwell’s equations are given by

$$\displaystyle \begin{aligned} \nabla \times {\mathbf{E}} = - j\omega {\mu _0}{\mathbf{H}},\quad \nabla \times {\mathbf{H}} = j\omega {\epsilon _0}{\epsilon _r}{\mathbf{E}} + j\omega {{\mathbf{F}}^{NL}} \end{aligned} $$
(136)

where F NL is the nonlinear polarization. The SF FDTD method transforms the electric and magnetic fields, considering that the new quantities contain the oblique field propagation in an implicit fashion. This produces the new variables

$$\displaystyle \begin{aligned} {\mathbf{P}} = {\mathbf{E}}{e^{j(k{{}_x}x + {k_y}y)}},\quad {\mathbf{Q}} = c{\mu _0}{\mathbf{H}}{e^{j(k{{}_x}x + {k_y}y)}} \end{aligned} $$
(137)

where P and Q are considered in the phasor domain. A similar transformation can be also implemented to the nonlinear polarization term, using \({{\mathbf {G}}^{NL}} = c{\mu _0}{{\mathbf {F}}^{NL}}{e^{j(k{{ }_x}x + {k_y}y)}}\). Substituting the new components into Maxwell’s equations, the SF-FDTD algorithm is formulated as

$$\displaystyle \begin{gathered} \frac{{j\omega }}{c}{\mathbf{P}} = \kappa \nabla \times {\mathbf{Q}} + \frac{{j\omega }}{c}\kappa {\mathbf{qQ}} - j\omega {{\mathbf{G}}^{NL}} \end{gathered} $$
(138)
$$\displaystyle \begin{gathered} \frac{{j\omega }}{c}{\mathbf{Q}} = - \nabla \times {\mathbf{P}} - \frac{{j\omega }}{c}\kappa {\mathbf{qP}} \end{gathered} $$
(139)

where \(\kappa = \epsilon _r^{ - 1}\) and

$$\displaystyle \begin{aligned} {\mathbf{q}} = \frac{\omega }{c}\left[ {\begin{array}{*{20}{c}} 0&0&{ - {k_y}} \\ 0&0&{{k_x}} \\ {{k_y}}&{ - {k_x}}&0 \end{array}} \right] \end{aligned} $$
(140)

The appearance of time derivatives on both sides hinders the direct approximation via finite differences. To solve this problem, new variables are defined, separating both P, Q into two parts:

$$\displaystyle \begin{aligned} {\mathbf{P}} = {{\mathbf{P}}_a} + \kappa {\mathbf{qQ}} - c{{\mathbf{G}}^{NL}},\quad {\mathbf{Q}} = {{\mathbf{Q}}_a} - {\mathbf{qP}} \end{aligned} $$
(141)

After proper manipulations, discretizing the equations with respect to time yields

$$\displaystyle \begin{gathered} \frac{1}{{c\varDelta t}}\left( {\left. {{{\mathbf{P}}_a}} \right|{}_{}^{n + 1} - \left. {{{\mathbf{P}}_a}} \right|{}_{}^n} \right) = \kappa \nabla \times {\left. {\mathbf{Q}} \right|{}^{n + 1/2}} \end{gathered} $$
(142)
$$\displaystyle \begin{gathered} \frac{1}{{c\varDelta t}}\left( {\left. {{{\mathbf{Q}}_a}} \right|{}_{}^{n + 1} - \left. {{{\mathbf{Q}}_a}} \right|{}_{}^n} \right) = - \nabla \times {\left. {\mathbf{P}} \right|{}^{n + 1/2}}\vspace{-4pt} \end{gathered} $$
(143)

The stability of the SF-FDTD algorithm is affected by various factors, including the CFL condition, the averaging process, and large incidence angles. The lower bound can ensure stability in most case studies. Consequently, the CFL number is selected low enough, in order to ensure both stability and convergence. Furthermore, this also leads to lower time and spatial resolutions and, hence, larger grids, simulation times, and computational resources. It is reminded that FDTD models display exponentially growing computational costs. Consequently, increasing the grid size has a severe consequence on the necessary simulation times. The proposed SF-FDTD leapfrog algorithm updates the “a” fields from the P and Q quantities. After that, the current P field is calculated from

$$\displaystyle \begin{aligned} {\mathbf{P}} = \frac{{{{\mathbf{P}}_a} + \kappa {\mathbf{q}}{{\mathbf{Q}}_a} - c{{\mathbf{G}}^{NL}}}}{{{\mathbf{I}} + \kappa {{\mathbf{q}}^2}}}{} \end{aligned} $$
(144)

where I is the identity matrix. After updating P, it is straightforward to obtain Q. Moving to a particular material configuration, let us examine introducing the polarization terms in (144) for the case of a tensorial second-order nonlinear susceptibility. To this objective, polarization F NL that represents the nonlinear response in non-centrosymmetric materials associates the second-order nonlinear susceptibility with the field within the considered configuration. Actually, the appearance of a fundamental or pump field at ω f produces an exchange of energy with the (second-harmonic field) at ω s = 2ω f. The nonlinear polarization is described by a third-rank tensor d that, in the case of second harmonic generation (in a periodic nanostructure), can be represented in matrix form as

$$\displaystyle \begin{aligned} {\mathbf{d}} = \left[ {\begin{array}{*{20}{c}} {{d_{11}}}&{{d_{12}}}&{{d_{13}}}&{{d_{14}}}&{{d_{15}}}&{{d_{16}}} \\ {{d_{21}}}&{{d_{22}}}&{{d_{23}}}&{{d_{24}}}&{{d_{25}}}&{{d_{26}}} \\ {{d_{31}}}&{{d_{32}}}&{{d_{33}}}&{{d_{34}}}&{{d_{35}}}&{{d_{36}}} \end{array}} \right] \end{aligned} $$
(145)

whose elements are defined according to the involved nonlinear medium. Taking into account the transformation, we find that

$$\displaystyle \begin{gathered} \left[ {\begin{array}{*{20}{c}} {G_x^{NL,{\omega _f}}} \\ {G_y^{NL,{\omega _f}}} \\ {G_z^{NL,{\omega _f}}} \end{array}} \right] = \frac{2}{c}{\mathbf{d}}\left[ {\begin{array}{*{20}{c}} {P_x^{{\omega _f}}E_x^{{\omega _s}}} \\ {P_y^{{\omega _f}}E_y^{{\omega _s}}} \\ {P_z^{{\omega _f}}E_z^{{\omega _s}}} \\ {P_z^{{\omega _f}}E_y^{{\omega _s}} + P_y^{{\omega _f}}E_z^{{\omega _s}}} \\ {P_z^{{\omega _f}}E_x^{{\omega _s}} + P_x^{{\omega _f}}E_z^{{\omega _s}}} \\ {P_x^{{\omega _f}}E_y^{{\omega _s}} + P_y^{{\omega _f}}E_x^{{\omega _s}}} \end{array}} \right] \end{gathered} $$
(146)
$$\displaystyle \begin{gathered} \left[ {\begin{array}{*{20}{c}} {G_x^{NL,{\omega _s}}} \\ {G_y^{NL,{\omega _s}}} \\ {G_z^{NL,{\omega _s}}} \end{array}} \right] = \frac{1}{c}{\mathbf{d}}\left[ {\begin{array}{*{20}{c}} {P_x^{{\omega _f}}P_x^{{\omega _f}}} \\ {P_y^{{\omega _f}}P_y^{{\omega _f}}} \\ {P_z^{{\omega _f}}P_z^{{\omega _f}}} \\ {2P_z^{{\omega _f}}P_y^{{\omega _f}}} \\ {2P_z^{{\omega _f}}P_x^{{\omega _f}}} \\ {2P_x^{{\omega _f}}P_y^{{\omega _f}}} \end{array}} \right] \end{gathered} $$
(147)

Once the “a” fields are known, the total fields can be computed. It turns out that they can be expressed using only the “a” fields and the interior electric components. For instance,

$$\displaystyle \begin{gathered} P_x^{{\omega _f}} = \frac{{P_{xa}^{{\omega _f}} - \kappa \left( {{k_y}Q_{za}^{{\omega _f}} - {k_x}{k_y}P_y^{{\omega _f}} - c\bar G_x^{NL,{\omega _f}}} \right)}}{{1 + \kappa \left[ {k_y^2 + 2\left( {{d_{11}}E_x^{{\omega _s}} + {d_{15}}E_z^{{\omega _s}} + {d_{16}}E_y^{{\omega _s}}} \right)} \right]}} \end{gathered} $$
(148)
$$\displaystyle \begin{gathered} P_x^{{\omega _s}} = \frac{{P_{xa}^{{\omega _s}} - \kappa \left( {{k_y}Q_{za}^{{\omega _s}} - {k_x}{k_y}P_y^{{\omega _s}} - cG_x^{NL,{\omega _s}}} \right)}}{{1 + \kappa k_y^2}} \end{gathered} $$
(149)

where

$$\displaystyle \begin{aligned} \bar G_x^{NL,{\omega _f}} &= \frac{2}{c}\left[ {d_{12}}P_y^{{\omega _f}}E_y^{{\omega _s}} + {d_{13}}P_z^{{\omega _f}}E_z^{{\omega _s}} \right.\notag\\ &+\left.{d_{14}}\left( {P_z^{{\omega _f}}E_y^{{\omega _s}} + P_y^{{\omega _f}}E_z^{{\omega _s}}} \right) + {d_{15}}P_z^{{\omega _f}}E_x^{{\omega _s}} + {d_{16}}P_y^{{\omega _f}}E_x^{{\omega _s}} \right] \end{aligned} $$
(150)

Similar formulae are obtained for the remaining components. In this manner, a nonlinear equation system of the form P = U(P) is composed. For its solution, a fixed-point iterative procedure can be selected. The key point of this approach is to solve the iterative process with the form P (p+1) = U(P (p)), with p = 1, 2, … the number of iterations. It is noted that the fixed-point process needs to be performed at every time-step of the FDTD updating procedure. The approach requires an initial guess of P, which corresponds to the fields considering linear media. Then, subsequent iterations are carried out, so that the precision of the outcomes improves with every iteration. Finally, in order to ensure the convergence of the iterative procedure, the amplitude of E must be limited by an upper bound, which is dictated by the magnitude of the second-order susceptibility.

3.19 Time-Filtered Integration of Maxwell’s Equations

The case of a dielectric medium with Kerr nonlinearity is also examined in [38], in the context of verifying the performance of a novel FDTD approach that employs an unstaggered temporal grid. Specifically, considering a 1D setup and that the time derivatives of the dielectric displacement and the electric-field intensity are connected via

$$\displaystyle \begin{aligned} \frac{{\partial E}}{{\partial t}} = c\left( E \right)\frac{{\partial D}}{{\partial t}} \end{aligned} $$
(151)

where \(c\left ( E \right ) = \epsilon + 3{\chi ^{(3)}}{E^2}\), the corresponding electromagnetic phenomena can be described by the following discrete model:

$$\displaystyle \begin{gathered} \frac{{\left. E \right|{}_i^{n + 1} - \left. {\tilde E} \right|{}_i^{n - 1}}}{{2\varDelta t}} = \frac{1}{{\epsilon + 3{\chi ^{(3)}}{{\left( {\left. E \right|{}_i^n} \right)}^2}}}\frac{{\left. H \right|{}_{i + \frac{1}{2}}^{av} - \left. H \right|{}_{i - \frac{1}{2}}^{av}}}{{\varDelta x}} + \nu \left. {\frac{{{\partial ^4}E}}{{\partial {x^4}}}} \right|{}_i^n {} \end{gathered} $$
(152)
$$\displaystyle \begin{gathered} \frac{{\left. H \right|{}_p^{n + 1} - \left. {\tilde H} \right|{}_p^{n - 1}}}{{2\varDelta t}} = \frac{1}{\mu }\frac{{\left. E \right|{}_{p + \frac{1}{2}}^{av} - \left. E \right|{}_{p - \frac{1}{2}}^{av}}}{{\varDelta x}} + \nu \left. {\frac{{{\partial ^4}H}}{{\partial {x^4}}}} \right|{}_i^n {} \end{gathered} $$
(153)

In the above equations, it is p = i in case of spatial collocation, or p = i + 1∕2 in case of staggered spatial grids. The \(\left . {\tilde E} \right |{ }_i^{n - 1}, \left . {\tilde H} \right |{ }_p^{n - 1}\) components denote values obtained after a time filtering process has been applied, according to the implicit scheme

$$\displaystyle \begin{aligned} \left. {\tilde F} \right|{}_i^{n - 1} = \left. F \right|{}_i^{n - 1} + \gamma \left( { - \left. {\tilde F} \right|{}_i^{n - 3} + 4\left. {\tilde F} \right|{}_i^{n - 2} - 6\left. {\tilde F} \right|{}_i^{n - 1} + 4\left. F \right|{}_i^n - \left. F \right|{}_i^{n + 1}} \right),\quad F = E,H \end{aligned} $$
(154)

Note that these computations can be conducted in an explicit fashion, after proper reformulation. The aim of the aforementioned filtering approach is to weaken high-frequency modes that emerge due to lack of staggering in time. The averaged values appearing in the spatial derivative approximations are computed via

$$\displaystyle \begin{gathered} \left. F \right|{}_i^{av} = \frac{1}{{24}}\left( { - \left. F \right|{}_i^n + 26\left. F \right|{}_i^n - \left. F \right|{}_i^n} \right){} \end{gathered} $$
(155)
$$\displaystyle \begin{gathered} \left. F \right|{}_{i + \frac{1}{2}}^{av} = \frac{7}{{12}}\left( {\left. F \right|{}_{i + 1}^n + \left. F \right|{}_i^n} \right) - \frac{1}{{12}}\left( {\left. F \right|{}_{i + 2}^n + \left. F \right|{}_{i - 1}^n} \right){} \end{gathered} $$
(156)

for collocated and staggered grids, respectively. Approximations (155) and (156) actually result in fourth-order finite-difference formulae. Finally, the fourth-order derivatives appearing in (152) and (153) act as smoothers that combat inadequately resolved high-frequency oscillations, and are computed via

$$\displaystyle \begin{aligned} \left. {\frac{{{\partial ^4}F}}{{\partial {x^4}}}} \right|{}_i^n = \frac{1}{{\varDelta {x^4}}}\left( { - \left. F \right|{}_{i - 2}^n + 4\left. F \right|{}_{i - 1}^n - 6\left. F \right|{}_i^n + 4\left. F \right|{}_{i + 1}^n - \left. F \right|{}_{i + 2}^n} \right) \end{aligned} $$
(157)

To validate the proposed computational scheme, the authors of [38] proceeded to the analysis of parametric Four-Wave Mixing, which is a phenomenon directly related to the third-order nonlinearity.

4 Conclusions

In the present work, we have reviewed a number of important contributions regarding the development of finite-difference models for nonlinear EM problems that may emerge in numerous realistic applications. As nonlinearities do not necessarily comply with a specific unique form, pertinent research efforts have produced a number of different computational approaches that adapt the conventional FDTD algorithm to the peculiar requirements of each problem. The majority of the developed techniques preserve most of the attractive properties of the classic FDTD scheme, thus the study of a wide variety of nonlinear EM problems can be conducted reliably, without requiring special conditions to hold. Evidently, the present study is not completely exhaustive. However, it is the authors’ belief that many of the available key contributions in this scientific area have been included, and a quite complete description of the latter has been formulated. In any case, the research on computational nonlinear EM models is ongoing and continuously developing, and novel contributions towards more efficient techniques or numerical approaches for less explored phenomena and applications constantly appear, thus broadening further this already vast scientific subject.