Next Article in Journal
Approximate Controllability of Semilinear Stochastic Generalized Systems in Hilbert Spaces
Next Article in Special Issue
Role of Static Modes in Quasinormal Modes Expansions: When and How to Take Them into Account?
Previous Article in Journal
SEIARN: Intelligent Early Warning Model of Epidemic Spread Based on LSTM Trajectory Prediction
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Review

The Discrete Dipole Approximation: A Review

by
Patrick Christian Chaumet
Institut Fresnel, Aix Marseille Univ, CNRS, Centrale Marseille, CEDEX 20, 13397 Marseille, France
Mathematics 2022, 10(17), 3049; https://doi.org/10.3390/math10173049
Submission received: 12 July 2022 / Revised: 18 August 2022 / Accepted: 20 August 2022 / Published: 24 August 2022

Abstract

:
There are many methods for rigorously calculating electromagnetic diffraction by objects of arbitrary shape and permittivity. In this article, we will detail the discrete dipole approximation (DDA) which belongs to the class of volume integral methods. Starting from Maxwell’s equations, we will first present the principle of DDA as well as its theoretical and numerical aspects. Then, we will discuss the many developments that this method has undergone over time and the numerous applications that have been developed to transform DDA in a very versatile method. We conclude with a discussion of the strengths and weaknesses of the DDA and a description of the freely available DDA-based electromagnetic diffraction codes.

1. Introduction

The interaction of an electromagnetic wave with matter is a broad field of application in physics. Although this interaction is entirely governed by Maxwell’s equations, which have been known for 150 years, it remains an active subject of study, particularly the study of the interaction between light and particles ranging subwavelength in size from several hundred wavelengths.
Indeed, the rigorous calculations of light diffraction started earlier with spherical particles, where the theory developed by Mie in 1908 allowed solving the problem analytically [1,2]. Unfortunately, when the particles have more complicated shapes, there are no analytical solutions. It is then necessary to solve electromagnetic scattering rigorously with numerical methods.
In recent decades, many numerical methods have been developed. Among the best known are finite difference time domain (FDTD), finite element, volume integral methods, and surface integral methods. The interested readers can refer to [3,4] which provide a concise overview on some of the most widely used modern techniques for solving the electromagnetic scattering problem for particles of arbitrary shape.
In this article, we will focus on the volume integral method, and more specifically, the discrete dipole approximation (DDA) also called the coupled dipole method (CDM) or the coupled dipole approximation (CDA). This method was introduced in 1973 by Purcell and Pennypacker to study the scattering and absorption of light by non-spherical dielectric grains with dimensions comparable to the wavelength of illumination [5]. Since this seminal paper, DDA has been applied in a wide variety of fields such as astrophysics [6], near-field optics [7], biology [8,9], microscopy [10], optical diffraction tomography [11,12], holographic microscopy [13], optical force and tweezers [14,15,16]. The application of DDA in very different fields have led physicists to improve the DDA with new particularities and possibilities. For a overview of the DDA principle, the reader can refer to [17,18,19].
In this article, we will first explain the principle of DDA from Maxwell equations, and then detail the various advances made with the DDA over the last 20 years. We will end this article by detailing the strengths and weaknesses of the DDA and list the different electromagnetic diffraction codes based on DDA.

2. The Discrete Dipole Approximation

2.1. Principle of the Discrete Dipole Approximation

From Maxwell equations, the total electric field at r R 3 satisfies [2],
× × E ( r ) ε ref ( r ) k 0 2 E ( r ) = S + 4 π k 0 2 χ ( r ) E ( r ) ,
where k 0 is the wavenumber in vacuum. Note that all the equations in this article are in Gaussian unit. S denotes the sources, which satisfies the homogeneous equation
× × E ref ( r ) ε ref ( r ) k 0 2 E ref ( r ) = S ,
with E ref ( r ) the incident wave impinging on the object under study. χ ( r ) is the electrical susceptibility of the object, a rank 2 tensor if it is anisotropic, and a scalar for an isotropic object. The total field E ( r ) is the sum of the reference and diffracted field, i.e., E d ( r ) = E ( r ) E ref ( r ) , the diffracted field satisfying the outgoing wave conditions. To calculate the total field, we introduce the Green tensor G , solution of
× × G ( r , r ) ε ref ( r ) k 0 2 G ( r , r ) = 4 π k 0 2 I δ ( r r ) ,
that satisfies outgoing boundary conditions. I denotes the unit tensor of size 3 × 3 and ε ref the relative permittivity in the absence of the object. ε ref is a constant if the object is in a homogeneous space or depends on z if the object is in the presence of a multilayer. The expression of the Green tensor in vacuum is [2]:
G ( r , r ) = e i k 0 R 3 R ^ R ^ I 1 R 3 i k 0 R 2 + I R ^ R ^ k 0 2 R ,
where ⊗ denotes dyadic product. We have R = r r , R = | R | and R ^ = R / R and r r . In using the properties of the Green’s function, the total field is then the solution of the following Lippmann–Schwinger equation [20]:
E ( r ) = E ref ( r ) + Ω G ( r , r ) χ ( r ) E ( r ) d r ,
where the integration is performed over the support Ω of the object under study (see Figure 1a). It means that χ ( r ) = 0 for r Ω and χ ( r ) = ε ( r ) I 4 π for r Ω where ε ( r ) is the relative permittivity of the object. To solve numerically the Lippmann–Schwinger equation, we discretize the object into a set of N subunits arranged on an arbitrary orthogonal lattice (see Figure 1b). Hence, Equation (5) becomes:
E ( r ) = E ref ( r ) + j = 1 N V j G ( r , r ) χ ( r ) E ( r ) d r ,
where V j is the volume of the subunit j.
To solve Equation (6) numerically, we need to make some approximations. The first is to assume that the electromagnetic field can be considered as uniform over a subunit, which is a good approximation if the subunit is smaller than the wavelength of the field inside the object. In that case, we can write:
E ( r i ) = E ref ( r ) + j = 1 N V j G ( r i , r ) d r χ ( r j ) E ( r j ) ,
for i = 1 , , N . The second approximation consists, for i j , in considering the Green function as constant on a subunit, then we get:
E ( r i ) = E ref ( r ) + j = 1 , j i N G ( r i , r j ) V j χ ( r j ) E ( r j ) + V i G ( r i , r ) d r χ ( r i ) E ( r i ) .
Note that in the case where the mesh is very small compared to the wavelength of illumination, it is then preferable to integrate numerically the Green’s function for nearby subunits, i.e., for | r i r j | < λ / 2 , to increase the accuracy of the DDA [21]. One of the key points of the DDA is to perform the integration of the diagonal term, i.e., V i G ( r i , r ) d r . Assuming the subunit to be infinitesimally small and cubic, the integration of the diagonal term is written as [22]:
lim V i 0 V i G ( r i , r ) d r = 4 π 3 I .
Note that if the subunit has a cuboid shape then the expression of the diagonal components of the tensor are different [22,23]. Hence, the final equation to solve for the DDA can be expressed as
E l ( r i ) = E ref ( r ) + j = 1 , j i N G ( r i , r j ) α 0 ( r j ) E l ( r j ) ,
with E l ( r i ) = E ( r i ) ε ( r i ) + 2 I 3 ,
α 0 ( r j ) = 3 d 3 4 π ε ( r j ) I ε ( r j ) + 2 I 1 ,
where α 0 ( r j ) is the Clausius–Mossotti relationship for the subunit j, d the lattice spacing of the cubic mesh, and E l ( r j ) the local field for the subunit j, i.e., the field at the position j due to the reference field plus the field radiated by the other subunits in the absence of the subunit j. We can note that p ( r j ) = α 0 ( r j ) E l ( r j ) represents the dipole induced at the position j. Equations (10) and (12) correspond exactly to the DDA as presented in 1973 by Purcell and Pennypacker [5]. They have the disadvantage of not having conservation of energy because of the approximation made on the diagonal term of having an infinitely small size. If we take into account the finite size of the subunit i, and assuming that the cube is equivalent to a sphere of the same volume, then the DDA equations can be written as [6,24]:
E l ( r i ) = E ref ( r ) + j = 1 , j i N G ( r i , r j ) α ( r j ) E l ( r j ) ,
with α ( r j ) = α 0 ( r j ) I 2 3 i k 0 3 α 0 ( r j ) 1 .
The introduction of this imaginary part in the polarizability is commonly referred as the radiative reaction term and is essential to respect the optical theorem. It is of course possible to calculate the diagonal term rigorously (see [21,24]) or to use more accurate approximations [24]. For more details on how to compute the diagonal term (see Appendix A). Many studies have been made to improve the accuracy of the DDA by changing the form of the polarizability [25,26,27,28,29,30]. We can also increase the accuracy of the DDA for high refractive indices by changing the Green’s function to the filtered coupled dipoles [7,18]. A study of the convergence has been conducted in [31,32] and numerous comparison with other numerical method have been conducted [9,33,34,35,36].
Then the system of linear equations represented by Equation (14), can be written symbolically as:
E l = E ref + A D α E l ,
where A is a square matrix of size ( 3 N × 3 N ) and contains all the dyadic tensors, E l and E ref are 3 N vectors that contain the local and reference field, respectively, at the position of each subunit for the three components, and D α is a diagonal matrix of size ( 3 N × 3 N ) which contain the polarizabilities if the permittivity is scalar and a block diagonal matrix such that the main-diagonal blocks are 3 × 3 matrices if permittivity is anisotropic. Once the Lippmann–Schwinger equation is solved, Equation (15), we can compute quickly the near field around the particle (see [37]), and we can calculate the diffracted far-field by the object at the position r with:
E d ( r ) = i = 1 N G ff ( r , r i ) α ( r i ) E l ( r i ) ,
with G ff ( r , r i ) = k 0 2 r I r ^ r ^ e i k . r i e i k 0 r ,
where k = k 0 r ^ . G ff is obtained from Equation (4) keeping only the term of the order of 1 / R 1 / r . The expression of G ff is valid when R is much larger than the wavelength.

2.2. Solve the Lippmann–Schwinger Equation and Computation of the Far-Field

We, therefore, have to solve a system of linear equations with 3 N unknowns (see Equation (15)). However, inverting the dense matrix ( I A D α ) to find E l , is untenable both in terms of computation time and matrix storage. The solution is therefore to solve this linear system iteratively using a conjugate gradient method. Many iterative methods have been tested and it appears that the most efficient methods are the quasi-minimal residual [38], the general product bi-conjugate Gradient [39] or the bi-conjugate gradient stabilized [40] (one can also use the generalized minimal residual method but it is difficult to manage the memory when N becomes large [41]). On the other hand, iterative methods require one or two matrix-vector products (MVP) to be performed at each iteration. The matrix being dense and of size 3 N × 3 N , the computation time would still be very long. However, Draine and Flatau have proposed to strongly reduce the computation time by using the Toeplitz nature of the matrix (i.e., the elements of the matrix depend only on ( r i r j ) ) to perform the MVP with a 3D fast Fourier transform (FFT) [42,43].
Once the field inside the object is obtained it is easy to quickly obtain the near field in the vicinity of the object with only one MVP performed with the three-dimensional FFT [37].
Calculating the far-field using Equation (16) for large values of N, would require long computation times. Recently, we have proposed a new way to compute the far-field. The Green’s function G ff can be rewritten by transforming the exponential as e i k . r i = e i k . r , i e i k z z i with r i = ( r , i , z i ) , k = ( k , k z ) and k z = k 0 2 k 2 . Under this new formulation, the summation over the dipoles associated with the location at the layer z i can then be performed by a two-dimensional FFT. This drastically decreases the computation time by computing the diffracted field in many directions of observation for a large number of subunits [44].

2.3. Examples of Calculation with the DDA

In this paragraph, we will show a typical example of the convergence of the DDA. Note that in this article all the results presented are computed with IF-DDA code [10] with by default the polarizability described by Equation (14). The code uses the FFTW (fast Fourier transform in the west) [45] and it is parallelized with OpenMP and runs on 36 processors. For the first study, we have chosen a sphere of radius r = λ with a relative permittivity ε = 2.5 . We calculate the relative error between the extinction cross section computed with the DDA [6,46] and that calculated with Mie theory versus the number N of subunits used to represent the sphere, see Figure 2a with crosses. We see a rather strong error at the beginning, because of the approximation that the electric field is constant on a subunit, and the approximation to render a spherical shape with a cubic mesh. As N increases the extinction cross section is better computed and the relative error tends to zero. Generally, for the DDA to have a satisfactory accuracy, it is sufficient to have between 5 or 10 meshes per wavelength in the medium considered, typically the mesh size must satisfy the following relationship:
k 0 d | n | < 0.5 ,
where n is the refractive index of the object. Note that d should also be smaller than any characteristic size of the object. For metals, due to the high imaginary part of the index, it may be necessary to discretize the object more finely to take into account the skin depth [6,47,48]. With circles, we have plotted the error on the extinction cross section when we use the filtered Green’s tensor [7,18,49]. We can see that with the filtered Green’s tensor the accuracy of the DDA has been increased.
Almost all the computation time for the DDA is spent in the resolution of Equation (15). This resolution is conducted iteratively and we define the residual of the iterative method as
r = E est E ref A D α E est E ref ,
where E est is the local field estimated with the iterative method. The iterative process is terminated once r < η , where η is a prescribed tolerance. In Figure 2b, we have plotted the number of MVP need to solve iteratively the Lippmann-Schwinger equation as a function of N for η = 10 4 . The important thing is to know that the computation time obviously depends on N and that the bigger N is, the bigger the computation time is. However, the number of MVP needs to solve the linear equation system iteratively depends weakly on N and with the filtered Green’s tensor this number is reduced [19], particularly for small N.
To study in more detail the influence of the object’s characteristics and of η on the number of MVPs, Table 1 presents the number of MVP used by some classical iterative methods for different values of η for a sphere of radius r and relative permittivity ε . It is clear that the greater the permittivity and the larger the object, the more difficult it is to achieve convergence. We can see that the best methods are all the Generalized Product (GP) method, the Biconjugate gradient stabilized method (BICGSTAB), and quasi-minimal residual (QMR) method. An extensive study on objects much larger than the wavelength of illumination was carried out in [50] and shows the difficulty of dealing with large objects with high permittivity for the iterative method.
Note that Table 1 has been calculated with Equation (4) for the Green’s function and Equation (14) for the polarizability. Table 2 shows the number of iterations for a sphere of radius r = 2 λ and ε = 3 with Equations (4) and (14) as a reminder, then the DDA with the Green’s function of Equation (4) and the polarizability given by Equation (A5), and finally the DDA with the filtered Green’s tensor. With the polarizability given by Equation (14), it can be seen that the number of MVPs to solve Equation (15) for η = 10 4 is decreased with a better accuracy on the calculation of the extinction cross section. With the filtered Green’s tensor the gain in the number of MVPs is large and the accuracy on the extinction cross section is excellent [60].
The last case studied consists in computing the extinction cross section of a sphere of radius r = 2 λ versus the permittivity ε . For high permittivities, the extinction cross section computed with Mie theory shows resonances (see Figure 3a) with plain lines. It can be seen that in order for the DDA to find correctly the position of the resonances and their amplitude, it is necessary to strongly discretize the sphere. Indeed, only the d = λ / 100 discretization finds all the resonances correctly (see Figure 3a) with dotted lines. In fact, to have less than 5% error on the resonances, it is necessary to have the highest discretization d = λ / 100 (see Figure 3b). This shows that in the case of resonant objects the criterion d < λ / ( 10 | n | ) is no longer sufficient. As underlined in [61] the DDA can perfectly represent Mie resonance only if the size d of the subunit is less than twice the width of the resonance, which can requires significant computation time. Indeed, at the Mie resonance, the field inside the object undergoes rapid variations, and it is necessary to take a small mesh size to take them into account.
Note that in practice we have observed that setting η = 10 4 is sufficient to accurately obtain the electric field inside the object. In some particular cases, metallic or strongly resonant structures, it may be necessary to take a lower value of η .

3. DDA for an Object in Presence of Multilayer

The DDA historically has been made for objects placed in a homogeneous space, but it is possible to extend it for objects in the presence of a substrate or a multilayer system (see Figure 4). In this case, the most important modification to make is to change the Green’s function G , by the Green function of the new environment. The computation of the Green’s tensor in three-dimensional stratified media composed of an arbitrary number of layers with different permittivities is tricky to perform, but one can have a look at [62] which shows how to efficiently handle the Sommerfeld integrals, by deforming the integration path in the complex plane. This technique makes it possible to take into account waveguides. However, calculating the Green’s functions for all pairs ( r i , r j ) can be very time consuming for large objects. It is possible in this case to approximate the Green’s function using an interpolation of a discrete set of points. Note that only interpolation with rational functions has the ability to accurately take into account the fast decay of the evanescent waves [63]. Note that when the interfaces cross the object then they must pass between the subunits, otherwise the Green’s function becomes singular. With a multilayer, in the general case, it is no longer possible to perform the MVP by three-dimensional FFTs. Due to the translational invariance of the multilayer system, the matrix A is only Toeplitz by block for each pair ( z , z ) . The MVP is then performed by two-dimensional FFTs for each pair ( z , z ) [44]. However, in the particular case where the object is in the substrate or superstrate, the matrix A can be written in two parts. The first corresponds to the homogeneous space and the second to the part reflected by the interface. The MVP with the matrix containing the homogeneous space is made with a 3D FFT, while MVP with the matrix containing the interaction with the interface is conducted with 2D FFT for the x and y component and along the z-axis we have a discrete correlation, which can be also performed with a 1D FFT [64]. Thus at each iteration, instead of carrying out many two-dimensional FFTs to perform the MVP, it is necessary to do only two three-dimensional FFTs.

4. Computation of Optical Force

Since the pioneering work on optical force conducted by A. Ashkin [65], in the last decades there has been an increase of interest in the manipulation of small particles by means of the light Lorentz force [66,67,68]. The time averaged optical force F on an object due to the electromagnetic field is computed from Maxwell’s stress tensor [1]:
F = 1 / ( 8 π ) Re S ( E ( r ) . n ) E * ( r ) + ( H ( r ) . n ) H * ( r ) 1 / 2 ( | E ( r ) | 2 + | H ( r ) | 2 ) n d r ,
where S is a surface enclosing the object, n is the local outward unit normal, * denotes the complex conjugate, and Re represents the real part of a complex number. To apply Equation (20) with the DDA, we must first solve the near field equation at each position, and then, compute the electromagnetic field at any position r of S. This enables us to numerically perform the two dimensional quadrature involved in Equation (20). The problem is, of course, to compute this integration with precision, which requires the calculation of many points on the surface S and therefore a lot of time of computation. We can use at this moment the particularity of the DDA and thus calculate the total force exerted on the object as the sum of the force experienced by each element of discretization. Each subunit acquiring a dipole moment p ( r i ) under the action of the incident wave, then the u-component of the time averaged optical force on the element i can be written as [69]:
F u ( r i ) = v = 1 3 Re p v ( r i ) E v * ( r i ) u ,
where u and v stand for the components along either x, y or z. Then, the net optical force experienced by the object is F = i = 1 N F ( r i ) . Notice that to obtain the optical force with Equation (21), it is necessary to know the derivative of the local field at each discretization subunit. On performing the derivative of Equation (14) we obtain:
E l ( r i ) = E ref ( r i ) + j = 1 N G ( r i , r j ) α ( r j ) E l ( r j ) .
Notice that the tensor G has 27 components. The sum over N can be conducted very efficiently with the help of FFT [70]. Many studies on optical forces and optical torques have been carried out with the DDA (see, for example, [14,15,71,72]).

5. DDA for Periodic Object

The DDA can also deal with a periodic object, as depicted in Figure 5. The principle is always the same: the periodic object under study is discretized in small subunit and the field at each subunit can be expressed as:
E ( r i ) = E ref ( r i ) + p = q = i = 1 N G ( r i , r j + p r + q v ) α ( r j ) E ( r j + p r + q v ) ,
where u and v are the lattices vector for the array. Note that the polarizability does not depend on u and v because the object is periodic. Solving this system is impossible because of its infinite size, but in the case of plane wave illumination, this equation can be simplified as
E ( r i ) = E ref ( r i ) + i = 1 N p = q = G ( r i , r j + p u + q v ) e i k ref . ( p r + q v ) α ( r j ) E ( r j ) ,
where k ref is the wave vector of the incident wave. Then the self-consistent field on the right-hand side is independent of ( p , q ) and can be taken out of the infinite sum. Hence, the number of unknowns is now reduced to N, the number of subunit of the unit cell, and we need only to change the Green’s function. The key point in this calculation is to evaluate the new periodic Green’s function. This one being obtained by two infinite sums, it is not possible to realize directly this calculation, the convergence of the series being extremely slow.
The first solution to compute rigorously the periodic Green’s function is to separate the sum into two parts, one conducted in direct space and the other conducted in reciprocal space, so that each sum can be conducted quickly. For more details, the readers can refer to [70,73]. A convergence accelerator can be added to speed up the convergence of the two sums [74].
The second solution to compute the Green’s function has been introduced by Draine and Flatau. The double infinite sum is performed in an approximate but much simpler way:
p = q = G ( r i , r j + p u + q v ) e i k ref . ( p r + q v ) ( γ k ref r j , k p q ) 4 ,
with r j , k p q = | r k + p u + q v r j | . The authors showed that γ = 0.001 ensures accurate results [75]. We notice that the DDA has also been extended to the simulation of the electromagnetic field scattered by an aperiodic object in presence of a double-periodic structure [76].

6. DDA for Magneto-Dielectric Object

The DDA can also deal with scatterers with arbitrary dielectric permittivity and magnetic permeability [77]. The principle remains the same, the object is discretized in small subunit and each subunit is polarized under the action of the incident field and the other subunits, but this time there is an electric dipole moment due to the relative permittivity and a magnetic dipole moment due to the permeability. The electromagnetic field in the object is then written as:
E ( r i ) = E ref ( r i ) + j = 1 N G ee ( r i , r j ) α e ( r j ) E ( r j ) + j = 1 N G em ( r i , r j ) α m ( r j ) H ( r j )
H ( r i ) = H ref ( r i ) + j = 1 N G me ( r i , r j ) α e ( r j ) E ( r j ) + j = 1 N G mm ( r i , r j ) α m ( r j ) H ( r j ) ,
with α e = α 0 e I 2 3 i k 3 α 0 e 1   and   α 0 e = 3 d 3 4 π ε I ε + 2 I 1
α m = α m I 2 3 i k 3 α 0 m 1   and   α 0 m = 3 d 3 4 π μ I μ + 2 I 1 ,
where G ee is the classical Green’s function seen previously in Equation (4):
  • G ee ( r i , r j ) p ( r j ) represents the electric field at the position r i due to an electric dipole located at r j .
  • G me ( r i , r j ) p ( r j ) represents the magnetic field at the position r i due to an electric dipole located at r j .
  • G em ( r i , r j ) m ( r j ) represents the electric field at the position r i due to a magnetic dipole located at r j .
  • G mm ( r i , r j ) m ( r j ) represents the magnetic field at the position r i due to a magnetic dipole located at r j .
In Gaussian units we have G ee = G mm and G em = G me . The unknowns now consist of N electric fields and N magnetic fields, in taking into account the components, we get 6 N unknowns. We must therefore solve a linear system of size 6 N × 6 N , which can be written symbolically as:
I 0 0 I A ee A em A em A ee D α e 0 0 D α m E H = E ref H ref ,
where A is the matrix which contains all the dyadic tensors. This system of linear equations is again solved iteratively, and in this case, the best method to use is GPBICG [39]. The DDA with this configuration therefore makes it possible to study objects such as invisibility cloaks, concentrators, etc. [78], which have anisotropic permeability and permeability. Notice that, all the previous advances in DDA presented in this article, can be extended to objects with permittivity and permeability.

7. Fluorescence Lifetime Calculations

We want to derive the damping rates of a particle (atom or molecule) in a complex environment. From linear response theory the damping rate of an atom located at r 0 normalized with respect to the free space value can be written as [79,80,81]:
Γ u Γ 0 = 3 2 k 0 3 Im [ H u u ( r 0 , r 0 ) ] ,
where Γ 0 is the free-space decay rate, H u u the diagonal term of the Green’s function of the environment, and u stands for x, y or z. In homogeneous space we get H = G , in using the fact that the imaginary part of the Green function of the homogeneous space is perfectly defined at the position of the dipole, i.e., Im [ G ( r 0 , r 0 ) ] = 2 3 k 0 3 I , we obviously get Γ u Γ 0 = 1 . Note that the lifetime is the inverse of the damping rate. While the DDA is usually written to calculate the electromagnetic field, we can also write it to calculate the Green’s function of a dipole located at r 0 in presence of an object of arbitrary shape and permittivity [80,82]. The principle is to first calculate the Green’s function between the dipole and all the subunit of the object, in presence of the object. These Green’s function are solution of the following self-consistent equation:
H ( r i , r 0 ) = G ( r i , r 0 ) + j = 1 N G ( r i , r j ) α ( r j ) H ( r j , r 0 ) ,
for i = 1 , , N . We have the same system of linear equations as before, except that the incident field is replaced by the free Green’s function between the position of the particle and the position of the subunit of the object. Now, if we want to know the Green’s function in presence of the object at position r 0 for a dipole at r 0 , we get:
H ( r 0 , r 0 ) = G ( r 0 , r 0 ) + j = 1 N G ( r 0 , r j ) α ( r j ) H ( r i , r 0 ) .
If the object is in the presence of a substrate or a multilayer, G must be replaced by the Green’s function of the reference system. Notice the decay rate is also strongly related to ρ ( r 0 ) , the local density of state (LDOS) [81,83]:
ρ ( r 0 ) = 3 2 k 0 π 2 c Im Tr [ H ( r 0 , r 0 ) ] ,
where Tr denotes the trace of the matrix. Notice that the LDOS in vacuum reduces to ρ ( r 0 ) = k 0 2 / ( π 2 c ) [81]. Thus, the DDA can map the LDOS in complex nanostructures.

8. DDA in Time Domain

In the time domain, electromagnetic scattering is usually addressed using the finite difference in time domain (FDTD) method [84]. In order to have the temporal evolution of the electromagnetic field, the FDTD principle consists in discretizing the whole space of interest into a set of elementary cells. The values of the electric and magnetic fields are calculated at each point of the structure and at each instant. The time steps lead to small numerical errors, but at long times the numerical dispersion can severely degrade the accuracy and even be totally unacceptable [85]. The DDA has been extended to the temporal regime. It means that material anisotropy and dispersion are easily taken into account. The main advantage of the DDA in temporal regime is that, unlike the FDTD, the global error, on the computed fields, depends mainly on the spatial discretization of the object, since the space between scatterers need not be discretized. The principle is as follows: the magnitude of the incident field which illuminates the object is written as F ( t ) and has the spectrum F ( ω ) which then corresponds to the Fourier transform of F ( t ) . The Fourier transform of the incident field E ref ( r , t ) at any point in space, i.e., F ( ω ) E ref ( r , ω ) , allows us to obtain the incident field in harmonics. It is then sufficient to use the DDA to know the field in all space at many frequencies and by a simple inverse Fourier transform one obtains the field in time domain at any point [86]. In practice, M values are necessary in the frequency domain for F ( ω ) in accordance with the Nyquist-Shannon sampling theorem. Then, the DDA has to be applied M times, which may seem a bit tedious, but it is possible when calculating the frequency n to use the result of the previous n 1 frequency or several previous frequencies to get a good initial guess for the iterative method and thus save a lot of calculation time. Notice that an other approach has been conducted by Kim and Yurkin [87]. They develop a time domain DDA, describing the temporal evolution of electric field for plasmonic nanoparticles.

9. Conclusions

The great strength of the DDA is that it can handle objects with arbitrary shapes and permittivities, which can also be anisotropic. With the DDA it is necessary to discretize only the object and the outgoing wave conditions are automatically satisfied through the Green’s function. It is therefore not necessary to use perfectly matched layers as with finite difference or finite elements. Moreover, the method is very versatile as it can easily adapt to a wide range of different configurations: object in the presence of a multilayer, object with a permittivity and permeability, in the time domain, study of the lifetime of fluorescent molecules, periodic objects, etc. This simple method in its initial conception has evolved over time into a multifunctional toolkit and there is now a lot of DDA-based code available on the net. In Appendix B we give a list (not exhaustive), of freely available codes and their features.
Of course, DDA has its drawbacks and limitations. DDA requires solving a large system of linear equations with a dense matrix. Even with an iterative method, and with the help of FFTs to perform the MVP, it is still complicated to handle objects of several tens of wavelengths, especially if the permittivity is high. This was shown in [50] where Yurkin et al. plot the convergence as a function of the relative permittivity and object size and clearly show that the larger the object, the slower the convergence of the iterative method. We also note that for a high permittivity ( | ε | > 10 ) that the field inside the object exhibits oscillations that cause the accuracy of the DDA to drop [88,89,90]. We also note that for metals then the accuracy of the method starts to drop and for perfect conductors the DDA can no longer be used. This is because the DDA calculates the field inside the object and in the case of perfect conductors this is zero! In this case, surface methods should be preferred.
In the future, the DDA should be improved, in particular, it will therefore be necessary to focus on its shortcomings, particularly on the resolution of the system of linear equations, for example with a preconditioner to accelerate the iterative method [91,92] or by improving the initial estimate of the iterative method [93,94]. This would make it possible to deal with larger objects. The problem of convergence of the DDA for objects with high permittivities will also have to be studied. A solution has been proposed for simple objects as the tracks currently proposed only apply to spheres or ellipsoids [30,95] (this is achieved by changing the polarizability of the dipoles on the surface of the object that accounts for local-field effects) but remains to be conducted for objects of arbitrary shapes.
In general, when choosing a numerical method to calculate electromagnetic diffraction rigorously, it is necessary to define the configuration, the object under study, in order to choose the most appropriate method. It is also possible to use approximate numerical methods in electromagnetism, such as the Born approximation, the Rytov approximation [96], beam propagation method [97,98], etc. These methods are simple to implement, but have very precise conditions of application, as determined by the approximations which were used to establish them [99].

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

All the data presented in this article are obtained form IF-DDA codes and can therefore be recomputed with this code freely available on the net. See Appendix B for the internet address.

Acknowledgments

I thank B. Stout for a careful reading of this manuscript.

Conflicts of Interest

The author declares no conflict of interest.

Appendix A. Integration of the Singularity of the Green’s Function

With the DDA we should perform the following integration which represents the interaction of the mesh on itself, i. e.  j = i in Equation (7):
K V 0 = V 0 G ( r 0 , r ) χ ( r ) E ( r ) d r ,
with r 0 V 0 . For example, with DDA the volume V 0 is often cubic with r 0 at the center of the cube. Obviously when r = r 0 , the Green’s function G ( r 0 , r 0 ) is undefined because it depends on 1 / | r r 0 | 3 . Nevertheless, even if the Green’s function is singular, the integration represented by Equation (A1) can be computed. The principle is as follow [19,24,100]. Equation (A1) can be rewritten as [24]
K V 0 = V 0 G ( r 0 , r ) χ ( r ) E ( r ) G s ( r 0 , r ) χ ( r ) E ( r ) d r S 0 n r r 0 | r r 0 | 3 d 2 r χ ( r 0 ) E ( r 0 ) ,
where G s = 1 R 3 3 R ^ R ^ I is the static Green function, i.e., G with k 0 = 0 , S 0 the surface of V 0 and n the external normal to the surface S 0 . The integration of L = S 0 n r r 0 | r r 0 | 3 d 2 r gives a real symmetric dyadic tensor with a trace equal to 4 π . In the case of a cubic or spherical shape we get L = 4 π 3 I [22], when the shape is a cuboid the expression is more complex [22]. Assuming χ ( r ) E ( r ) constant over the subunit we get:
K V 0 = M L χ ( r 0 ) E ( r 0 )
with M = V 0 G ( r 0 , r ) G s ( r 0 , r ) d r .
It is complicated to calculate rigorously M for a cube, but an accurate approximation is available in Ref. [23]. However, it is easy to calculate it for a sphere of volume equivalent to a cube of side d. In this case we obtain:
M = 8 π 3 ( 1 i k 0 a ) e i k 0 a 1 I ,
with 4 π 3 a 3 = d 3 . If we write the DDA in term of local field the polarizability of the dipoles can be expressed as [19]:
α = α 0 I M α 0 d 3 1 .
If we assume that d is equal to zero, we obtain M = 0 and the Clausius–Mossotti polarizability for the dipoles. If we assume d to be small ( d λ ) and perform a Taylor series of M and keep only the imaginary part, we obtain M = 2 3 i k 0 3 d 3 and Equation () for the polarizability.

Appendix B. Open-Source DDA Codes

There are many DDA-based codes available on the network. Each code has its own particularities and allows the study of different physical data in different environments. Table A1 summarises the possibilities of the best-known codes.
Table A1. This table presents the most well-known DDA codes with the different calculations to which they give access. The last line of the table presents which language is used for parallelization.
Table A1. This table presents the most well-known DDA codes with the different calculations to which they give access. The last line of the table presents which language is used for parallelization.
CodeDDscatADDAIF-DDA(M)openDDAMPDDADDA-SI
Periodic target×
Optical force××× ×
Cross section××××××
Substrate ×× ×
Multilayer ×
Microscopy ×
LDOS ×
Muller matrix××
Anisotropy××× ×
ParallelopenMP MPIMPIOpenMPopenMP MPIMatlabMatlab
Below we list the different codes, with the names of the authors, and a short note on the code.
  • DDscat: Draine and Flatau [17]. DDscat is the best known and oldest code. The current version is DDSCAT 7.3.3 and the code is written in FORTRAN 90. You can download the code on the following page: http://ddscat.wikidot.com/, accessed on 12 July 2022.
  • ADDA: Yurkin et al. [101]. ADDA is a a C software package and can also employ GPUs to accelerate computations. You can download the code on the following page: https://github.com/adda-team/adda, accessed on 12 July 2022.
  • IF-DDA(M): Chaumet, Sentenac and Sentenac [10]. The code actually consists of two. One where the object is in a homogeneous space (IF-DDA) and another one that allows to put the objects in a multilayer (IF-DDAM). The codes are in FORTRAN and the interface with drop-down menus that makes it suitable for non-physicists is coded in C++. You can download the code on the following page: https://www.fresnel.fr/perso/chaumet/ifdda.html or https://gitlab.com/ifdda, accessed on 12 July 2022.
  • openDDA: Mc Donald, Golden, and Jennings [102]. This code is highly optimized in terms of celerity and memory. You can download the code on the following page: https://github.com/drjmcdonald/OpenDDA, accessed on 12 July 2022.
  • MPDDA: Shabaninezhada, Awan and Ramakrishnac [103]. This package developed in MATLAB has been conducted to reduce the computational cost and can use the parallel computing toolbox in MATLAB by running the codes in GPU. You can download the code on the following page: https://github.com/MasoudShabani/MPDDA-1.0, accessed on 12 July 2022.
  • DDA-SI: Loke, Mengüç and Nieminen [104]. DDA with surface interaction for MATLAB. You can download the code on the following page: https://github.com/dalerxli/dda-si, accessed on 12 July 2022.

References

  1. Stratton, J.A. Electromagnetic Theory; McGraw-Hill: New York, NY, USA, 1941. [Google Scholar]
  2. Jackson, J.D. Classical Electrodynamics, 2nd ed.; Wiley: New York, NY, USA, 1975. [Google Scholar]
  3. Kahnert, F.M. Numerical methods in electromagnetic scattering theory. J. Quant. Spect. Rad. Transf. 2003, 79–80, 775–824. [Google Scholar] [CrossRef]
  4. Gallinet, B.; Butet, J.; Martin, O.J.F. Numerical methods for nanophotonics: Standard problems and future challenges. Laser Photonics Rev. 2015, 9, 577–603. [Google Scholar] [CrossRef]
  5. Purcell, E.M.; Pennypacker, C.R. Scattering and absorption of light by nonspherical dielectric grains. Astrophys. J. 1973, 186, 705–714. [Google Scholar] [CrossRef]
  6. Draine, B.T. The discrete-dipole approximation and its application to interstellar graphite grains. Astrophys. J. 1988, 333, 848–872. [Google Scholar] [CrossRef]
  7. Gay-Balmaz, P.; Martin, O.J.F. Electromagnetic scattering of high-permittivity particles on a substrate. Appl. Opt. 2001, 40, 4562–4569. [Google Scholar] [CrossRef]
  8. Orlova, D.Y.; Yurkin, M.A.; Hoekstra, A.G.; Maltsev, V.P. Light scattering by neutrophils: Model, simulation, and experiment. J. Biomed. Opt. 2008, 13, 054057. [Google Scholar] [CrossRef]
  9. Gilev, K.V.; Eremina, E.; Yurkin, M.A.; Maltsev, V.P. Comparison of the discrete dipole approximation and the discrete source method for simulation of light scattering by red blood cells. Opt. Express 2010, 18, 5681–5690. [Google Scholar] [CrossRef]
  10. Chaumet, P.C.; Sentenac, D.; Maire, G.; Rasedujjaman, M.; Zhang, T.; Sentenac, A. IFDDA, an easy-to-use code for simulating the field scattered by 3D inhomogeneous objects in a stratified medium: Tutorial. J. Opt. Soc. Am. A 2021, 38, 1841–1852. [Google Scholar] [CrossRef]
  11. Zhang, T.; Ruan, Y.; Maire, G.; Sentenac, D.; Talneau, A.; Belkebir, K.; Chaumet, P.C.; Sentenac, A. Full-polarized Tomographic Diffraction Microscopy Achieves a Resoluti on about One-Fourth of the Wavelength. Phys. Rev. Lett. 2013, 111, 243904. [Google Scholar] [CrossRef]
  12. Chaumet, P.C.; Belkebir, K.; Sentenac, A. Superresolution of three-dimensional optical imaging by use of evanescent waves. Opt. Lett. 2004, 29, 2740–2742. [Google Scholar] [CrossRef]
  13. Wang, A.; Dimiduk, T.G.; Fung, J.; Razavi, S.; Kretzschmar, I.; Chaudhary, K.; Manoharan, V.N. Using the discrete dipole approximation and holographic microscopy to measure rotational dynamics of non-spherical colloidal particles. J. Quant. Spect. Rad. Transf. 2014, 146, 499–509. [Google Scholar] [CrossRef]
  14. Draine, B.T.; Weingartner, J.C. Radiative Torques on Interstellar Grains: I. Superthermal Spinup. Astrophys. J. 1996, 470, 551–565. [Google Scholar] [CrossRef]
  15. Hoekstra, A.G.; Frijlink, M.; Waters, L.B.F.M.; Sloot, P.M.A. Radiation forces in the discrete-dipole approximation. J. Opt. Soc. Am. A 2001, 18, 1944–1953. [Google Scholar] [CrossRef]
  16. Chaumet, P.C.; Rahmani, A.; Nieto-Vesperinas, M. Optical Trapping and Manipulation of Nano-objects with an Apertureless Probe. Phys. Rev. Lett. 2002, 88, 123601. [Google Scholar] [CrossRef]
  17. Draine, B.T.; Flatau, P.J. Discrete-dipole approximation for scattering calculations. J. Opt. Soc. Am. A 1994, 11, 1491–1499. [Google Scholar] [CrossRef]
  18. Yurkin, M.A.; Min, M.; Hoekstra, A.G. Application of the discrete dipole approximation to very large refractive indices: Filtered coupled dipoles revived. Phys. Rev. E 2010, 82, 036703. [Google Scholar] [CrossRef]
  19. Yurkin, M. Handbook of Molecular Plasmonics, Chapter Computational Approaches for Plasmonics; Taylor & Francis Group: Boca Raton, FL, USA, 2013. [Google Scholar]
  20. Morse, P.; Feshbach, H. Methods of Theoretical Physics; McGraw-Hill: Boston, MA, USA, 1953. [Google Scholar]
  21. Chaumet, P.C.; Sentenac, A.; Rahmani, A. Coupled dipole method for scatterers with large permittivity. Phys. Rev. E 2004, 70, 036606. [Google Scholar] [CrossRef] [PubMed]
  22. Yaghjian, A.D. Electric dyadic Green’s functions in the source region. Proc. IEEE 1980, 68, 248–263. [Google Scholar] [CrossRef]
  23. Smunev, D.A.; Chaumet, P.C.; Yurkin, M.A. Rectangular dipoles in the discrete dipole approximation. J. Quant. Spect. Rad. Transf. 2015, 156, 67–79. [Google Scholar] [CrossRef]
  24. Lakhtakia, A. Strong and weak forms of the method of moments and the coupled dipole method for scattering of time-harmonic electromagnetics fields. Int. J. Mod. Phys. C 1992, 3, 583–603. [Google Scholar] [CrossRef]
  25. Dungey, C.E.; Bohren, C.F. Light scattering by nonspherical particles: A refinement to the coupled-dipole method. J. Opt. Soc. Am. A 1991, 8, 81–87. [Google Scholar] [CrossRef]
  26. Draine, B.T.; Goodman, J. Beyond Clausius–Mossotti: Wave Propagation on a Polarizable Point Lattice and the Discrete Dipole Approximation. Astrophys. J. 1993, 405, 685–697. [Google Scholar] [CrossRef]
  27. Lakhtakia, A. General theory of the Purcell-Pennypacker scattering approach and its extension to bianisotropic scatterers. Astrophys. J. 1992, 394, 494–499. [Google Scholar] [CrossRef]
  28. Rahmani, A.; Chaumet, P.C.; Bryant, G.W. Local-field correction for an interstitial impurity in a crystal. Opt. Lett. 2002, 27, 430–432. [Google Scholar] [CrossRef] [PubMed]
  29. Collinge, M.J.; Draine, B.T. Discrete-dipole approximation with polarizabilities that account for both finite wavelength and target geometry. J. Opt. Soc. Am. A 2004, 21, 2023–2028. [Google Scholar] [CrossRef]
  30. Rahmani, A.; Chaumet, P.C.; Bryant, G.W. On the Importance of Local-Field Corrections for Polarizable Particles on a Finite Lattice: Application to the Discrete Dipole Approximation. Astrophys. J. 2004, 607, 873–878. [Google Scholar] [CrossRef]
  31. Yurkin, M.A.; Maltsev, V.P.; Hoekstra, A.G. Convergence of the discrete dipole approximation. I. Theoretical analys is. J. Opt. Soc. Am. A 2006, 23, 2578–2591. [Google Scholar] [CrossRef]
  32. Yurkin, M.A.; Maltsev, V.P.; Hoekstra, A.G. Convergence of the discrete dipole approximation. II. An extrapolation technique to increase the accuracy. J. Opt. Soc. Am. A 2006, 23, 2592–2601. [Google Scholar] [CrossRef]
  33. Yurkin, M.A.; Hoekstra, A.G.; Brock, R.S.; Lu, J.Q. Systematic comparison of the discrete dipole approximation and the finite difference time domain method for large dielectric scatterers. Opt. Express 2007, 15, 17902–17911. [Google Scholar] [CrossRef]
  34. Podowitz, D.I.; Liu, C.; Yang, P.; Yurkin, M.A. Comparison of the pseudo-spectral time domain method and the discrete d ipole approximation for light scattering by ice spheres. J. Quant. Spectrosc. Radiat. Transf. 2014, 146, 402–409. [Google Scholar] [CrossRef]
  35. Chaumet, P.C.; Demésy, G.; Gauthier-Lafaye, O.; Sentenac, A.; Popov, E.; Fehrembach, A.L. Electromagnetic modeling of large subwavelength-patterned highly resona nt structures. Opt. Lett. 2016, 41, 2358–2361. [Google Scholar] [CrossRef] [PubMed]
  36. Baker, M.; Liu, W.; McLeod, E. Accurate and fast modeling of scattering from random arrays of nanoparticles using the discrete dipole approximation and angular spectrum method. Opt. Express 2021, 29, 22761–22777. [Google Scholar] [CrossRef] [PubMed]
  37. Flatau, P.J.; Draine, B.T. Fast near field calculations in the discrete dipole approximation for regular rectilinear grids. Opt. Express 2012, 20, 1247–1252. [Google Scholar] [CrossRef]
  38. Yurkin, M.A.; Hoekstra, A.G. The discrete dipole approximation: An overview and recent developments. J. Quant. Spect. Rad. Transf. 2007, 106, 558–589. [Google Scholar] [CrossRef]
  39. Chaumet, P.C.; Rahmani, A. Efficient iterative solution of the discrete dipole approximation for magneto-dielectric scatterers. Opt. Lett. 2009, 34, 917–919. [Google Scholar] [CrossRef] [PubMed]
  40. Flatau, P.J. Improvements in the discrete-dipole approximation method of computing scattering and absorption. Opt. Lett. 1997, 22, 1205–1207. [Google Scholar] [CrossRef] [PubMed]
  41. Fan, Z.H.; Wang, D.X.; Chan, R.S.; Yung, E.K.N. The application of iterative solvers in discrete dipole approximation method for computing electromagnetic scattering. Microwave Opt. Technol. Lett. 2006, 48, 1741–1746. [Google Scholar] [CrossRef]
  42. Flatau, P.J.; Stephens, G.L.; Draine, B.T. Light scattering by rectangular solids in the discrete-dipole approximation: A new algorithm exploiting the Block-Toeplitz structure. J. Opt. Soc. Am. A 1990, 7, 593–600. [Google Scholar] [CrossRef]
  43. Goodman, J.J.; Flatau, P.J. Application of fast-Fourier-transform techniques to the discrete-dipole approximation. Opt. Lett. 2002, 16, 1198–1200. [Google Scholar] [CrossRef]
  44. Chaumet, P.C.; Zhang, T.; Sentenac, A. Fast far-field calculation in the discrete dipole approximation. J. Quant. Spectrosc. Radiat. Transf. 2015, 165, 88–92. [Google Scholar] [CrossRef]
  45. Frigo, M.; Johnson, S.G. The Design and Implementation of FFTW3. Proc. IEEE 2005, 93, 216–231. [Google Scholar] [CrossRef]
  46. Markel, V.A. Extinction, scattering and absorption of electromagnetic waves in the coupled-dipole approximation. J. Quant. Spectrosc. Radiat. Transf. 2019, 236, 106611. [Google Scholar] [CrossRef]
  47. Yurkin, M.A.; de Kanter, D.; Hoekstra, A.G. Accuracy of the discrete dipole approximation for simulation of optical properties of gold nanoparticles. J. Nanophotonics 2010, 4, 041585. [Google Scholar] [CrossRef]
  48. Zubko, E.; Petrov, D.; Grynko, Y.; Shkuratov, Y.; Okamoto, H.; Muinonen, K.; Nousiainen, T.; Kimura, H.; Yamamoto, T.; Videen, G. Validity criteria of the discrete dipole approximation. Appl. Opt. 2010, 49, 1267–1279. [Google Scholar] [CrossRef]
  49. Piller, N.; Martin, O. Increasing the performance of the coupled-dipole approximation: A spectral approach. IEEE Trans. Antennas Propag. 1998, 46, 1126–1137. [Google Scholar] [CrossRef]
  50. Yurkin, M.A.; Maltsev, V.P.; Hoekstra, A.G. The discrete dipole approximation for simulation of light scattering by particles much larger than the wavelength. J. Quant. Spect. Rad. Transf. 2007, 106, 546–557. [Google Scholar] [CrossRef]
  51. Thuthu, M.; Fujino, S.; Onoue, Y. An Advanced Iterative Method Based on Intelligent Determination of Recurrences. In Proceedings of the International MultiConference of Engineers and Computer Scientists 2009 Vol I, IMECS 2009, Hong Kong, China, 18–20 March 2009. [Google Scholar]
  52. Fujino, S.; Sekimoto, T. Performance Evaluation of GPBiCGSafe Method without Reverse-Ordered Recurrence for Realistic Problems. In Proceedings of the International MultiConference of Engineers and Computer Scientists 2012 Vol II, IMECS 2012, Hong Kong, China, 14–16 March 2012. [Google Scholar]
  53. Fujino, S. A proposal of GPBiCG-plus method. In Proceedings of the 15th MASCOT, 19th IMACS World Congress, Madrid, Spain, 15–19 July 2013. [Google Scholar]
  54. Fujino, S.; Iwasato, K. An Estimation of Single-Synchronized Krylov Subspace Methods with Hybrid Parallelization. In Proceedings of the World Congress on Engineering 2015 Vol I, WCE 2015, London, UK, 1–3 July 2015. [Google Scholar]
  55. Zhao, L.; Huang, T.Z.; Jing, Y.F.; Deng, L.J. A generalized product-type BiCOR method and its application in signal deconvolution. Comput. Math. Appl. 2013, 66, 1372–1388. [Google Scholar] [CrossRef]
  56. Carpentieri, B.; Jing, Y.F.; Huang, T.Z.; Pi, W.C.; Sheng, X.Q. A novel family of iterative solvers for method of moments discretizations of maxwell’s equations. In Proceedings of the Computational Electromagnetics International Workshop, Taipei, Taiwan, 8–10 August 2011; pp. 85–90. [Google Scholar]
  57. Freund, R.W.; Nachtigal, N.M. QMR—A quasi-minimal residual method for non-hermitian linear-systems. Numer. Math. 1991, 60, 315–339. [Google Scholar] [CrossRef]
  58. Da Cunha, R.D.; Hopkins, T. The Parallel Iterative Methods (PIM) package for the solution of systems of linear equations on parallel computers. Appl. Numer. Math. 1995, 19, 33–50. [Google Scholar] [CrossRef]
  59. Chan, T.F.; Gallopoulos, E.; Simoncini, V.; Szeto, T.; Tong, C.H. A Quasi-Minimal Residual Variant of the Bi-CGSTAB Algorithm for Nonsymmetric Systems. SIAM J. Sci. Comput. 1994, 15, 338–347. [Google Scholar] [CrossRef] [Green Version]
  60. Liu, C.; Bi, L.; Panetta, R.L.; Yang, P.; Yurkin, M.A. Comparison between the pseudo-spectral time domain method and the discrete dipole approximation for light scattering simulations. Opt. Express 2012, 20, 16763–16776. [Google Scholar] [CrossRef]
  61. Zhu, Y.; Liu, C.; Yurkin, M.A. Reproducing the morphology-dependent resonances of spheres with the discrete dipole approximation. Opt. Express 2019, 27, 22827–22845. [Google Scholar] [CrossRef] [PubMed]
  62. Paulus, M.; Gay-Balmaz, P.; Martin, O.J.F. Accurate and efficient computation of the Green’s tensor for stratified media. Phys. Rev. E 2000, 62, 5797–5807. [Google Scholar] [CrossRef] [PubMed]
  63. Chaumet, P.C.; Sentenac, A.; Fehrembach, A.L. Modelling of hundreds of wavelength long, highly resonant, 3D subwavelength patterned scattering structures. Opt. Quantum Electron. 2017, 49, 71. [Google Scholar] [CrossRef]
  64. Yurkin, M.A.; Huntemann, M. Rigorous and Fast Discrete Dipole Approximation for Particles near a Plane Interface. J. Phys. Chem. C 2015, 119, 29088–29094. [Google Scholar] [CrossRef]
  65. Ashkin, A. Acceleration and Trapping of Particles by Radiation Pressure. Phys. Rev. Lett. 1970, 24, 156–159. [Google Scholar] [CrossRef]
  66. Neuman, K.C.; Block, S.M. Optical trapping. Rev. Sci. Inst. 2004, 75, 2787–2809. [Google Scholar] [CrossRef]
  67. Dienerowitz, M.; Mazilu, M.; Dholakia, K. Optical manipulation of nanoparticles: A review. J. Nanophotonics 2008, 2, 021875. [Google Scholar] [CrossRef]
  68. Gao, D.; Ding, W.; Nieto-Vesperinas, M.; Ding, X.; Rahman, M.; Zhang, T.; Lim, C.; Qiu, C.W. Optical manipulation from the microscale to the nanoscale: Fundamentals, advances and prospects. Light Sci Appl. 2017, 6, e17039. [Google Scholar] [CrossRef]
  69. Chaumet, P.C.; Nieto-Vesperinas, M. Time-averaged total force on a dipolar sphere in an electromagnetic field. Opt. Lett. 2000, 25, 1065–1067. [Google Scholar] [CrossRef] [Green Version]
  70. Chaumet, P.C.; Rahmani, A.; Sentenac, A.; Bryant, G.W. Efficient computation of optical forces with the coupled dipole method. Phys. Rev. E 2005, 72, 046708. [Google Scholar] [CrossRef] [PubMed]
  71. Chaumet, P.C.; Billaudeau, C. Coupled dipole method to compute optical torque: Application to a micropropeller. J. Appl. Phys. 2007, 101, 023106. [Google Scholar] [CrossRef]
  72. Chaumet, P.C.; Nieto-Vesperinas, M. Coupled dipole method determination of the electromagnetic force on a particle over a flat dielectric substrate. Phys. Rev. B 2000, 61, 14119–14127. [Google Scholar] [CrossRef]
  73. Poppe, G.P.M.; Wijers, C.M.J.; van Silfhout, A. ir spectroscopy of CO physisorbed on NaCl(100): Microscopic treatment. Phys. Rev. B 1991, 44, 7917–7929. [Google Scholar] [CrossRef] [PubMed]
  74. Shanks, D. Non-linear Transformations of Divergent and Slowly Convergent Sequences. J. Math. Phys. 1955, 34, 1–42. [Google Scholar] [CrossRef]
  75. Draine, B.T.; Flatau, P.J. Discrete-dipole approximation for periodic targets: Theory and tests. J. Opt. Soc. Am. A 2008, 25, 2693–2703. [Google Scholar] [CrossRef]
  76. Chaumet, P.C.; Sentenac, A. Numerical simulations of the electromagnetic field scattered by defects in a double-periodic structure. Phys. Rev. B 2005, 72, 205437. [Google Scholar] [CrossRef]
  77. Chaumet, P.C.; Rahmani, A. Coupled-dipole method for magnetic and negative refraction materials. J. Quant. Spect. Rad. Transf. 2009, 110, 22–29. [Google Scholar] [CrossRef]
  78. Chaumet, P.C.; Rahmani, A.; Zolla, F.; Nicolet, A. Electromagnetic forces on a discrete spherical invisibility cloak under time-harmonic illumination. Phys. Rev. E 2012, 85, 143101. [Google Scholar] [CrossRef]
  79. Agarwal, G.S. Quantum electrodynamics in the presence of dielectrics and conductors. I Electromagnetic-field response functions and black-body fluctuations in finite geometry. Phys. Rev. A 1975, 11, 230–242. [Google Scholar] [CrossRef]
  80. Rahmani, A.; Chaumet, P.C.; de Fornel, F.; Girard, C. Field propagator of a dressed junction: Fluorescence lifetime calculations in a confined geometry. Phys. Rev. A 1997, 56, 3245–3254. [Google Scholar] [CrossRef]
  81. Carminati, R.; Cazé, A.; Cao, D.; Peragut, F.; Krachmalnicoff, V.; Pierrat, R.; De Wilde, Y. Electromagnetic density of states in complex plasmonic systems. Surf. Sci. Rep. 2015, 70, 1–41. [Google Scholar] [CrossRef]
  82. Rahmani, A.; Chaumet, P.C.; de Fornel, F. Enrironment-induced modification of spontaneous emission: Single-molecule near-field probe. Phys. Rev. A 2001, 63, 023819. [Google Scholar] [CrossRef]
  83. Moskalensky, A.E.; Yurkin, M.A. Energy budget and optical theorem for scattering of source-induced fields. Phys. Rev. A 2019, 99, 053824. [Google Scholar] [CrossRef]
  84. Taflove, A.; Brodwin, M.E. Numerical solution of steady-state electromagnetic scattering problems using the time-dependent Maxwell’s equations. IEEE Trans. Microw. Theory Tech. 1975, 23, 623–630. [Google Scholar] [CrossRef]
  85. Cheng, Y.; Chen, G.; Wang, X.H.; Yang, S. Investigation of numerical dispersion with time step of the FDTD methods: Avoiding erroneous conclusions. IET Microwaves Antennas Propag. 2021, 15, 691–703. [Google Scholar] [CrossRef]
  86. Chaumet, P.C.; Belkebir, K.; Rahmani, A. Coupled-dipole method in time domain. Opt. Express 2008, 16, 20157–20165. [Google Scholar] [CrossRef]
  87. Kim, K.H.; Yurkin, M.A. Time-domain discrete-dipole approximation for simulation of temporal response of plasmonic nanoparticles. Opt. Express 2015, 23, 15555–15564. [Google Scholar] [CrossRef]
  88. Kar, N.; Bagchi, A. Local-field effect near the surface of dipolar lattices. Solid State Commun. 1980, 33, 645–648. [Google Scholar] [CrossRef]
  89. Poppe, G.; Wijers, C. Exact solution of the optical response of thick slabs in the discrete dipole approach. Phys. B Condens. Matter 1990, 167, 221–237. [Google Scholar] [CrossRef] [Green Version]
  90. Mochán, W.L.; Barrera, R.G. Intrinsic Surface-Induced Optical Anisotropies of Cubic Crystals: Local-Field Effect. Phys. Rev. Lett. 1985, 55, 1192–1195. [Google Scholar] [CrossRef] [PubMed]
  91. Groth, S.P.; Polimeridis, A.G.; Tambova, A.; White, J.K. Circulant preconditioning in the volume integral equation method for silicon photonics. J. Opt. Soc. Am. A 2019, 36, 1079–1088. [Google Scholar] [CrossRef] [PubMed]
  92. Groth, S.P.; Polimeridis, A.G.; White, J.K. Accelerating the discrete dipole approximation via circulant preconditioning. J. Quant. Spectrosc. Radiat. Transf. 2020, 240, 106689. [Google Scholar] [CrossRef]
  93. Strakoš, Z.; Liesen, J. On numerical stability in large scale linear algebraic computations. Z. Angew. Math. Mech. 2005, 85, 307–325. [Google Scholar] [CrossRef]
  94. Inzhevatkin, K.G.; Yurkin, M.A. Uniform-over-size approximation of the internal fields for scatterers with low refractive-index contrast. J. Quant. Spectrosc. Radiat. Transf. 2022, 277, 107965. [Google Scholar] [CrossRef]
  95. Rahmani, A.; Chaumet, P.C.; Bryant, G.W. Coupled dipole method with an exact long-wavelength limit and improved accuracy at finite frequencies. Opt. Lett. 2002, 27, 2118–2120. [Google Scholar] [CrossRef]
  96. Carminati, R. Phase properties of the optical near field. Phys. Rev. E 1997, 55, R4901–R4904. [Google Scholar] [CrossRef]
  97. Kamilov, U.S.; Papadopoulos, I.N.; Shoreh, M.H.; Goy, A.; Vonesch, C.; Unser, M.; Psaltis, D. Learning approach to optical tomography. Optica 2015, 2, 517–522. [Google Scholar] [CrossRef]
  98. Kamilov, U.S.; Papadopoulos, I.N.; Shoreh, M.H.; Goy, A.; Vonesch, C.; Unser, M.; Psaltis, D. Optical Tomographic Image Reconstruction Based on Beam Propagation and Sparse Regularization. IEEE Trans. Comput. Imaging 2016, 2, 59–70. [Google Scholar] [CrossRef]
  99. Chaumet, P.C.; Sentenac, A.; Zhang, T. Reflection and transmission by large inhomogeneous media. Validity of b orn, rytov and beam propagation methods. J. Quant. Spectrosc. Radiat. Transf. 2020, 243, 106816. [Google Scholar] [CrossRef]
  100. Yurkin, M.A.; Mishchenko, M.I. Volume integral equation for electromagnetic scattering: Rigorous derivation and analysis for a set of multilayered particles with piecewise-smooth boundaries in a passive host medium. Phys. Rev. A 2018, 97, 043824. [Google Scholar] [CrossRef]
  101. Yurkin, M.A.; Hoekstra, A.G. The discrete-dipole-approximation code ADDA: Capabilities and known lim itations. J. Quant. Spect. Rad. Transf. 2011, 112, 2234–2247. [Google Scholar] [CrossRef]
  102. Donald, J.M.; Golden, A.; Jennings, S.G. Opendda: A Novel High-Performance Computational Framework for the Discrete Dipole Approximation. Int. J. High Perform. Comput. Appl. 2009, 23, 42–61. [Google Scholar] [CrossRef]
  103. Shabaninezhad, M.; Awan, M.; Ramakrishna, G. MATLAB package for discrete dipole approximation by graphics processing unit: Fast Fourier Transform and Biconjugate Gradient. J. Quant. Spectrosc. Radiat. Transf. 2021, 262, 107501. [Google Scholar] [CrossRef]
  104. Loke, V.L.; Mengüç, M.P.; Nieminen, T.A. Discrete-dipole approximation with surface interaction: Computational toolbox for MATLAB. J. Quant. Spectrosc. Radiat. Transf. 2011, 112, 1711–1725. [Google Scholar] [CrossRef]
Figure 1. (a) Object with a support Ω in homogeneous background. (b) Discretization of the object with a cubic mesh for the DDA. The smaller the discretization mesh, the more the discretized object will have the shape of the studied object.
Figure 1. (a) Object with a support Ω in homogeneous background. (b) Discretization of the object with a cubic mesh for the DDA. The smaller the discretization mesh, the more the discretized object will have the shape of the studied object.
Mathematics 10 03049 g001
Figure 2. We study a sphere of radius r = λ and relative permittivity ε = 2.5 . With crosses (and blue line) the computation is conducted with the classical DDA, i.e., with Equation (4) for the Green function and () for the polarizability, and with circles (and red line) DDA with the Filtered Green’s tensor. (a) Relative error in per cent on the extinction cross section between the computation conducted with the DDA and the Mie theory versus the number of subunit N. (b) Number of MVP needs to solve iteratively Equation (15) versus the number of subunit N.
Figure 2. We study a sphere of radius r = λ and relative permittivity ε = 2.5 . With crosses (and blue line) the computation is conducted with the classical DDA, i.e., with Equation (4) for the Green function and () for the polarizability, and with circles (and red line) DDA with the Filtered Green’s tensor. (a) Relative error in per cent on the extinction cross section between the computation conducted with the DDA and the Mie theory versus the number of subunit N. (b) Number of MVP needs to solve iteratively Equation (15) versus the number of subunit N.
Mathematics 10 03049 g002
Figure 3. We study a sphere of radius r = 2 λ versus ε . (a) Extinction cross section with the Mie theory and DDA for different mesh size d. (b) Relative error on the extinction cross section between Mie theory and DDA for different mesh size d.
Figure 3. We study a sphere of radius r = 2 λ versus ε . (a) Extinction cross section with the Mie theory and DDA for different mesh size d. (b) Relative error on the extinction cross section between Mie theory and DDA for different mesh size d.
Mathematics 10 03049 g003
Figure 4. Object with a support Ω inside a multilayer system. When the object contains a interface, it must pass between the discretization elements because Green’s function cannot be calculated for a dipole or an observation on the interface.
Figure 4. Object with a support Ω inside a multilayer system. When the object contains a interface, it must pass between the discretization elements because Green’s function cannot be calculated for a dipole or an observation on the interface.
Mathematics 10 03049 g004
Figure 5. Bi-periodic diffraction gratings of period u and v in the ( x , y ) plane. Only the central object is discretized, the other elements are taken into account through the bi-periodic Green’s function.
Figure 5. Bi-periodic diffraction gratings of period u and v in the ( x , y ) plane. Only the central object is discretized, the other elements are taken into account through the bi-periodic Green’s function.
Mathematics 10 03049 g005
Table 1. Number of MVP for different iterative method for two values of η to solve Equation (15). The object is a sphere of radius r and relative permittivity ε . The mesh size is d = 2 r / 30 for r = λ ( N = 14 ,328) and d = 2 r / 50 for r = 2 λ ( N = 65 ,752). The symbol - means that the convergence of the iterative method has not been achieved. The computation are conducted with the IF-DDA code [10] and the maximum number of MVPs for iterative methods has been set at 10,000.
Table 1. Number of MVP for different iterative method for two values of η to solve Equation (15). The object is a sphere of radius r and relative permittivity ε . The mesh size is d = 2 r / 30 for r = λ ( N = 14 ,328) and d = 2 r / 50 for r = 2 λ ( N = 65 ,752). The symbol - means that the convergence of the iterative method has not been achieved. The computation are conducted with the IF-DDA code [10] and the maximum number of MVPs for iterative methods has been set at 10,000.
Iterative r = λ , ε = 1.5 r = λ , ε = 3 r = 2 λ , ε = 1.5 r = 2 λ , ε = 3
Method η = 10 4 ( 10 8 ) η = 10 4 ( 10 8 ) η = 10 4 ( 10 8 ) η = 10 4 ( 10 8 )
GPBICG1 [51]18 (34)230 (480)42 (74)4946 (8712)
GPBICG2 [51]18 (34)238 (474)42 (74)4676 (8912)
GPBICGplus [52]18 (34)240 (494)42 (78)4870 (8858)
GPBICGsafe [53]18 (34)240 (476)42 (78)4902 (8814)
GPBICGAR [51]18 (34)234 (496)42 (78)5070 (8638)
GPBICGAR2 [51]18 (34)218 (478)42 (78)5038 (8572)
BICGSTAR-plus [54]18 (34)240 (498)42 (78)4902 (8804)
GPBICOR [55]18 (34)242 (506)44 (74)5262 (9116)
CORS [56]22(38)- (-)44 (82)- (-)
QMR [57,58]35 (59)329 (519)85 (143)5313 (7607)
TFQMR [58]24 (40)- (-)60 (87)- (-)
BICGSTAB [58]18 (34)258 (538)42 (78)5316 (9620)
QMRBICGSTAB2 [59]20 (36)378 (-)52 (84)- (-)
QMRBICGSTAB1 [59]- (-)670 (696)- (-)- (-)
Table 2. Number of MVP for different iterative method for two values of η to solve Equation (15) and different version of the DDA. The object is a sphere of radius r = 2 λ and ε = 3 . The symbol - means that the convergence of the iterative method has not been achieved. The computation are conducted with the IF-DDA code [10] and the maximum number of MVPs for iterative methods has been set at 10,000. The last line of the table presents the error in per cent on the extinction cross section, C ext , between the DDA and the Mie theory.
Table 2. Number of MVP for different iterative method for two values of η to solve Equation (15) and different version of the DDA. The object is a sphere of radius r = 2 λ and ε = 3 . The symbol - means that the convergence of the iterative method has not been achieved. The computation are conducted with the IF-DDA code [10] and the maximum number of MVPs for iterative methods has been set at 10,000. The last line of the table presents the error in per cent on the extinction cross section, C ext , between the DDA and the Mie theory.
IterativeDDA with Equations (4) and ()DDA with Equations (4) and (A5)DDA with Filtered Green’s Tensor
Method η = 10 4 ( 10 8 ) η = 10 4 ( 10 8 ) η = 10 4 ( 10 8 )
GPBICG1 [51]4946 (8712)3412 (9072)2284 (6676)
GPBICG2 [51]4676 (8912)3188 (8848)2212 (6754)
GPBICGplus [52]4870 (8858)3270 (9348)2280 (6560)
GPBICGsafe [53]4902 (8814)3340 (9092)2290 (6946)
GPBICGAR [51]5070 (8638)3294 (9154)2376 (6164)
GPBICGAR2 [51]5038 (8572)3310 (8774)2290 (6490)
BICGSTAR-plus [54]4902 (8804)3342 (9248)2324 (6608)
GPBICOR [55]5262 (9116)3550 (9696)2322 (6500)
CORS [56]- (-)- (-)- (-)
QMR [57,58]5313 (7607)3993 (7521)2529 (5429)
TFQMR [58]- (-)- (-)- (-)
BICGSTAB [58]5316 (9620)3902 (-)2422 (7396)
QMRBICGSTAB2 [59]- (-)- (-)- (-)
QMRBICGSTAB1 [59]- (-)- (-)- (-)
Relative error on C ext 17.3%2.7%0.8%
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chaumet, P.C. The Discrete Dipole Approximation: A Review. Mathematics 2022, 10, 3049. https://doi.org/10.3390/math10173049

AMA Style

Chaumet PC. The Discrete Dipole Approximation: A Review. Mathematics. 2022; 10(17):3049. https://doi.org/10.3390/math10173049

Chicago/Turabian Style

Chaumet, Patrick Christian. 2022. "The Discrete Dipole Approximation: A Review" Mathematics 10, no. 17: 3049. https://doi.org/10.3390/math10173049

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop