## Abstract

The pseudo-spectral time domain (PSTD) and the discrete dipole approximation (DDA) are two popular and robust methods for the numerical simulation of dielectric particle light scattering. The present study compares the numerical performances of the two methods in the computation of the single-scattering properties of homogeneous dielectric spheres and spheroids for which the exact solutions can be obtained from the Lorenz-Mie theory and the T-matrix theory. The accuracy criteria for the extinction efficiency and the phase function are prescribed to be the same for the PSTD and DDA in order that the computational time can be compared in a fair manner. The computational efficiency and applicability of the two methods are each shown to depend on both the size parameter and the refractive index of the scattering particle. For a small refractive index, a critical size parameter, which decreases from 80 to 30 as the refractive index increases from 1.2 to 1.4, exists below which the DDA outperforms the PSTD. For large refractive indices (>1.4), the PSTD is more efficient than the DDA for a wide size parameter range and has a larger region of applicability. Furthermore, the accuracy shown by the two methods in the computation of backscatter, linear polarization, and asymmetry factor is comparable. The comparison was extended to include spheroids with typical refractive indices of ice and dust and similar conclusions were drawn.

©2012 Optical Society of America

## 1. Introduction

Atmospheric particles, e.g., ice crystals and aerosols, play a significant role in radiative transfer and remote sensing by scattering and absorbing solar radiation and by terrestrial thermal emission. Various numerical methods have been developed to study the single-scattering properties of these particles [1,2]. Among the existing methods, the method of separation of variables (SOV, e.g., the Lorenz-Mie theory) [3] and the T-matrix method [4,5] are analytical or semi-analytical methods. The SOV is applicable to both spheres and spheroids. Although the T-matrix method is, in principle, applicable to arbitrarily shaped particles, its use is normally limited to axially rotational symmetric particles because the simulation is computationally efficient with the particle symmetry. The discrete dipole approximation (DDA) [6–11], the finite-difference time domain (FDTD) method [8,12–15], and the pseudo-spectral time domain (PSTD) method [16,17] share similar areas of applicability and are numerically rigorous methods based on solving Maxwell’s equations for electromagnetic scattering by arbitrarily shaped particles. Specifically, the DDA solves an electromagnetic integral equation in the frequency domain by discretizing a scattering particle in terms of a number of electric dipoles; whereas, both the FDTD and PSTD solve Maxwell’s curl equations in the time domain. The FDTD and PSTD differ in the numerical procedure chosen to perform the spatial derivative of electromagnetic fields. Specifically, the traditional FDTD is based on the second-order finite difference method, and the PSTD employs a Fourier pseudo-spectral method.

The DDA and FDTD have been extensively studied [6–14] and systematically compared for simulating light scattering by spheres for the size parameters *x* up to 80 (*x* = 2*πr/λ*, where *r* is the radius of the sphere and *λ* is the incident wavelength) and the real part of refractive index *m* up to 2 [18]. The numerical performances of the two methods are found to strongly depend on the refractive index of the scattering particles; the DDA is faster for smaller *m*, and the FDTD is more computationally efficient for larger values of *m*. The “cross-over” refractive index between the two methods is at approximately 1.4 [18].

Stemming from the traditional FDTD method, the PSTD applies the pseudo-spectral method, instead of the finite difference method, to calculate the spatial derivatives in Maxwell’s equation [19]. The method has been employed to simulate light scattering by non-spherical ice crystals by Chen et al. [16] and has been improved by Liu et al. [17]. In comparison with the finite difference method, the pseudo-spectral method has higher orders of accuracy and smaller numerical dispersion errors. The higher order of accuracy means that a errors smaller than a given tolerance level can be achieved by PSTD with coarser spatial resolution in terms of number of grid points per wavelength, than is needed by FDTD [19]. This is one way in which PSTD methods can save CPU time. In time-stepping methods a larger time-step can be taken if coarser resolution may be used, which is the second way in which PSTD methods can save time. However, the relative strengths of the PSTD in comparison with other numerical methods than FDTD are not clearly known.

Our study compares the use of the PSTD and DDA methods for the numerical simulation of light scattering by dielectric particles. Specifically, we focus on spheres and spheroids because the accuracy of the results can be well quantified by comparison with their counterparts simulated from the Lorenz-Mie theory [3] and the T-matrix method [4,5]. The comparison is performed with the same prescribed accuracy criteria for both methods and covers a broad range of size parameters (up to 100 for spheres and 50 for spheroids) and non-absorbing refractive indices. The specific numerical implementations and techniques used will be detailed in Section 2, and the comparison and results are discussed in Section 3. Section 4 reports the conclusions drawn based on the study.

## 2. The DDA and PSTD implementations

Code ADDA, developed by Yurkin and Hoekstra [20], is a widely used DDA implementation for light scattering simulations. Using a cluster of processors, the ADDA can simulate light scattering by particles much larger than the incident wavelength, and the reported maximum size parameters for spheres with refractive indices of 1.05 and 1.2 were 320 [20] and 130 [21], respectively. We used ADDA v.0.79 with the default settings for dipole polarizability (lattice dispersion relation) and iterative method (quasi minimal residual method). The convergence criterion of the iterative solver was set to be 10^{−3}; larger than the default value (10^{−5}) but sufficient to reach the accuracy required by this study. These code settings are identical to those used in [18] and correspond to the mainstream DDA. In particular, the code settings are similar to the default settings of the DDSCAT [22], another widely used implementation of the DDA. Thus, we focus on the practical performance of the ADDA (with default settings), and not on the best theoretically possible. We also believe the conclusions will be valid for the DDA method in general. However, we briefly discuss possible consequences of using the latest (1.1) version of the ADDA at the end of Section 3. We use spheres and spheroids, both of which have symmetry utilized by the ADDA to halve the computational time compared to nonsymmetric shapes [20].

The PSTD Fortran90 implementation, based on the original algorithm described by Chen et al. [16], was improved and applied to large sized particles by Liu et al. [17]. The resultant PSTD implementation was parallelized with the OpenMP Application Program Interface (API) that supports shared-memory to model parallel computation. Unlike the FDTD, which defines the electric and magnetic field components at the edges and face centers of Yee cells [12], the PSTD employs a centered grid scheme that specifies all field components at the grid cell centers. The Gibbs phenomena, encountered in previous FDTD algorithms, was eliminated by truncating the high wavenumber terms in the pseudo-spectral simulations. Consequently, the applicability and accuracy of the PSTD was substantially improved and allowed the PSTD implementation to be applied to spheres with size parameters up to 200 at three ice refractive indices with real parts close to 1.3 [17]. The advanced package “fastest Fourier transform in the west” (FFTW) [23] was used to perform the fast Fourier transform (FFT) and inverse FFT for the Fourier pseudo-spectral method. A Gaussian pulse multiplied by a cosine term (with a center frequency equal to the frequency of interest) was used as the incident wave. The uniaxial perfectly matched layer (UPML) absorbing boundary condition was applied to truncate the spatial domain [24, 25]. The electromagnetic field values in the time domain were transformed to the frequency domain through a discrete Fourier transformation. The Kirchhoff surface integral equation was used to transform the near-field values into their far-field counterparts [26]. The discrete Fourier transformation involves a numerical integration in time, and the time interval of integration sufficient for convergence must be determined by experimentation because of its dependence on the particle size and the index of refraction. For the results in this study, we found an integration time interval between 4*T*_{p} and 5*T*_{p} to be sufficient, where *T*_{p} is the time required for the pulse to cross a distance equal to the largest diameter of the scattering particle.

We simulated the single-scattering properties of spheres and spheroids with different sets of *x* and *m* by using the PSTD and DDA, and compared the results with the exact solutions to quantify the accuracies of the two numerical methods. Considering the axially rotational symmetry of the scattering particles, one simulation of a linearly polarized incident wave was sufficient to yield the 4 by 4 phase matrix P. The phase matrix in one scattering plane was calculated with the scattering angle *θ* varying from 0° to 180° in steps of 0.25°. The extinction efficiency *Q*_{ext} and the normalized phase function *P*_{11}(*θ*) are the two major quantities in the estimation of the accuracy of the two methods, but the asymmetry factor *g* and phase matrix element *P*_{12}(*θ*) will also be compared with the analytic solutions. With a specified accuracy criteria for the *Q*_{ext} and *P*_{11}(*θ*), the computational time required to achieve the criteria became the most meaningful parameter to describe the overall performance of the methods.

The PSTD and DDA discretize the scattering particles with grid points (PSTD) and dipoles (DDA), but their computational times are dependent on the number of grid points or dipoles in the computational domain and on the number of time steps for the PSTD or iterations by the iterative solver of a large linear system for the DDA. For a particle with a fixed size, the computational domain scales cubically with the spatial resolution, i.e., the number of grid intervals or dipoles per wavelength (*λ*/Δ*x*). The accuracy of each method increases with an increase in the spatial resolution. We increase the spatial resolution until the required accuracy criteria are achieved, namely that the relative errors (RE) of *Q*_{ext} are less than 1%, and the root mean square relative errors (RMSRE) of *P*_{11}(*θ*) are less than 25% (same as in [15]). This procedure should not be considered as a one-fits-all solution, because it is not suitable for certain applications. In particular, it results in over a 50% relative error in backscattering intensity (see Section 3). However, both methods can produce smaller errors at the expense of extra computational resources, and the chosen procedure describes the general trends.

The DDA is the preferred method for optically soft particles (particles with refractive indices near 1) [18,21], and may outperform specialized methods, like the discrete sources method, for axisymmetric particles [27]. Therefore, our comparison focused on refractive indices larger than 1.2, and for spheres, we used a real *m* ranging from 1.2 to 2.0 in steps of 0.2. The minimum size parameter for the comparison was 10. To keep the computational time manageable and achieve the accuracy criteria, especially for the DDA simulations, the upper limit of the *x* we considered decreased from 100 to 40 as *m* increased from 1.2 to 2.0. The exact sets of *x* and *m* involved in the computation are shown in Tables 1
and 2
. Moreover, the comparison was extended to spheroids with realistic refractive indices of ice (*m* = 1.312 + 1.489 × 10^{−9}i at 0.532 μm [28]) and mineral dust (approximate *m* = 1.55 + 0.001i at the visible wavelength [29]). The size parameter of a spheroid was specified in terms of its equivalent-volume sphere. Aspect ratio values *a*/*b* of 0.5 (corresponding to oblate spheroids) and 2 (prolate spheroids) were used, where *a* was the equatorial radius and *b* the semi-length of the symmetric axis. Spheroid size parameters ranging from 10 to 50 in steps of 10 were chosen for the simulation. The propagation direction of the incident field coincided with the symmetry axis. All simulations were carried out using a single node containing 8 64-bit 2.8 GHz processors (a cluster at the Texas A&M Supercomputing Facility). It should be noted that for such a shared-memory configuration, parallelization scheme, the ADDA (MPI) is less efficient than the OpenMP used in the PSTD, because the MPI was originally designed for distributed-memory (multi-node) hardware. However, we estimate that the effect due to the difference in the parallelization scheme should not exceed 20% of the computational times and, hence, does not influence the final conclusions.

## 3. Results

Table 1 lists both the computational parameters and the simulation results and illustrates the numerical performance of the PSTD and DDA. In addition to *m* and *x*, Table 1 includes the spatial resolution, computational time, REs of *Q*_{ext}, and RMSREs of *P*_{11}. Indicated within parentheses are the results of cases in which the PSTD or DDA failed to reach the prescribed accuracy even with a very fine spatial resolution. Computations too time-consuming (taking more than 4 days) to reach the prescribed accuracy for the DDA are marked as “*N*” in the table. The PSTD simulations covered all the sets of *x* and *m* chosen for the study and achieved the prescribed accuracy in 24 of the 28 total pairs. To achieve the prescribed accuracy criteria, the spatial resolutions used by the PSTD varied from 10 to 30 without systematic dependence on *x* or *m*. The accuracy values for the DDA do show significant sensitivity to *m*. The DDA used spatial resolutions smaller than 10 for a refractive index of 1.2 and increased monotonically to 40 for *m* = 2.0. As an extra verification of the DDA results, we note that they agree well with those of [18], where an earlier version of the ADDA code (version 0.76) was used. In particular, we obtained almost identical values of spatial resolution and simulation error for the two ADDA versions when using the same *x* and *m* (x ≤ 60, 40, and 10 for *m* = 1.2, 1.4, and 2.0, respectively).

With the same accuracy criteria achieved by the PSTD and DDA simulations, the behavior of both with respect to the computational time show substantial variations for different *x* and *m*. With size parameters up to 100, the PSTD simulations were finished within 9.0 × 10^{4} seconds (i.e., 25 hours), and the most time-consuming simulation was for a sphere with *x* = 100 and *m* = 1.4. Furthermore, neither the efficiency nor the accuracy of the PSTD was significantly influenced by an increase of *m*. However, the computational time used by the DDA simulations increases dramatically with both particle size and refractive index due to the simultaneous increases of the spatial resolution, computational domain, and iteration number. For example, for *m* = 1.2, only a few seconds were required for spheres with *x* = 10 and 20; whereas, a sphere with *x* = 80 took 7.3 × 10^{4} seconds (over 20 hours). When *m* is larger than 1.4, the DDA encounters difficulties with respect to both efficiency and accuracy. A sphere with a size parameter of 30 and *m* = 2.0 took 5.1 × 10^{5} seconds (almost 6 days) and obtained *Q*_{ext} with RE of 2.0% and *P*_{11} with RMSRE of 55%. The DDA achieved the prescribed accuracy criteria for spheres at a size parameter of 30 for *m* = 1.6 and only a size parameter of 10 for *m = 1.8 and 2.0*. The DDA did not achieve convergence for most large (spheres with *x* > 60 and *m* = 1.4 or 1.6 and *x* > 40 and *m* = 1.8 or 2.0) cases (7 spheres out of 28).

On the contrary, the DDA was very efficient for spheres with small *m* and *x* and was one to two orders of magnitude faster than the PSTD. However, a critical size parameter existed above which the PSTD outperformed the DDA for small refractive indices (1.2 or 1.4) and the value of *x* decreased from 80 to 30 as the refractive index increased from 1.2 to 1.4. For *m* larger than 1.4, the PSTD became more efficient for all size parameters in the range from 10 to 60 and was almost two orders of magnitude faster than the DDA for spheres with *x* larger than 30.

In the (*x, m*) domain of this study, Fig. 1
clearly illustrates the strengths of both the PSTD and DDA. In the figure, the dark region corresponds to the parameters of *x* and *m* for which the PSTD simulations outperformed the DDA, and the light region indicates the area where the DDA was more efficient. The PSTD area of high performance is at the top right of the (*x, m*) plane, and the DDA counterpart is at the lower left. The region in Fig. 1 is made up of only the (*x, m*) sets we used for comparison, but both methods have been applied to larger sizes without significant loss of accuracy [17,21]. Comparing Fig. 1 with results of [18], we can conclude that the PSTD is similar to the FDTD when compared with the DDA, except for an increase in the relative performance of the PSTD with an increase in size parameter, even for e.g., *m* = 1.2.

Table 2 lists other numerical optical property errors with which to compare the performances of the two methods, but no separate accuracy criterion was prescribed for these quantities. The table includes the REs of the asymmetry factor *g*, the maximum REs of *P*_{11}, the REs of *P*_{11} at 180° (i.e., backscatter), and the root mean square absolute errors (RMSAE) of *P*_{12}/*P*_{11}. Overall, the differences between the four errors given by the PSTD and DDA are relatively small and were dependent on *x* or *m* in the following manner:

- (1). When the prescribed accuracy was achieved, both methods gave the asymmetry factors with REs smaller than 2%. The DDA was more accurate for spheres with a refractive index of 1.2, whereas the PSTD was more reliable for the refractive indices of 1.8 and 2.0.
- (2). The maximum REs of
*P*_{11}in the PSTD and DDA results were of the same order and either could reach over 100%. The maximum errors generally occurred at the scattering angles with a sharp trough or peak for*P*_{11}, but neither method could track*P*_{11}accurately for all sizes and refractive indices over all scattering angles. - (3). The PSTD gave more accurate backscatter for spheres with large
*m*(> 1.6) and for those with small*x*and small*m*. Both methods worked poorly in some cases, i.e., the RE of*P*_{11}(180°) was 80% for a sphere with*m*= 1.4 and*x*= 100 by the PSTD and 130% for*m*= 1.4 and*x*= 40 by the DDA. - (4). The PSTD and DDA both approximated
*P*_{12}/*P*_{11}accurately with the RMSAEs smaller than 0.25. The values of RMSAE (*P*_{12}/*P*_{11}) are significantly correlated to those of the RMSREs of*P*_{11}in Table 1.

A further comparison of the numerical accuracy of the two methods, the *P*_{11} of spheres with the same size parameter of 40 and different refractive indices, is illustrated in the left panels of Fig. 2
. From the top to the lower panel, the refractive index is increased from 1.2 to 2.0 in steps of 0.2. Shown in the figure are the exact solutions given by Mie theory (dashed lines) and the results of the PSTD (dark lines) and DDA (light lines) simulations. The relative errors of *P*_{11} are shown in the right panels of Fig. 2. The RMSREs of *P*_{11} for the spheres, as given by the PSTD and DDA, range from 15% (*m* = 1.4 for DDA) to 33% (*m* = 1.6 for DDA). For spheres with *x* = 40, the DDA simulation achieves the prescribed accuracy only for refractive indices of 1.2 and 1.4. When the refractive indices reach to 1.8 or 2.0, numerical convergence is not achieved for the DDA simulations at *x* = 40, hence no DDA results are shown. However, the PSTD results exceed the 25% criterion only for the sphere with *m* = 2.0, and the RMSRE of *P*_{11} is 26%. The relative errors of the PSTD and DDA are smaller than 30% at most scattering angles, but became significant, even as large as 100%, near the angles where sharp troughs or peaks occurred in the phase function. In comparison, the REs of the phase functions given by the PSTD and DDA were of the same order for spheres with refractive indices of 1.2 and 1.4. At a refractive index of 1.6, the REs, simulated by the DDA, of the backward scattering at scattering angles larger than 140° became 50% or larger. The spheres with refractive indices of 1.8 and 2.0 could only be simulated by the PSTD. The REs are then comparable to those with small *m* and indicate the weak influence of *m* on the PSTD simulation accuracy. When particle size distributions or different orientations of non-spherical particles are taken into consideration in practical applications, the strong oscillations in the phase function are smoothed. Thus, both methods will provide much more accurate and reliable phase matrix elements. The comparison shown in Fig. 2 indicate the results for forward scattering are apparently more accurate than those of backward scattering.

For the same spheres with size parameters of 40 and refractive indices ranging from 1.2 to 2.0, the left panels of Fig. 3
show the ratios of *P*_{12}/*P*_{11} as functions of scattering angles and the right panel the absolute errors. The RMSAEs of the ratios given by both the PSTD and DDA are between 0.13 and 0.25 (from Table 2), and the absolute errors at most scattering angles are less than 0.2. Again, the results given by the PSTD and DDA for *m* = 1.2, 1.4, and 1.6 are comparable. For refractive indices up to 1.8 and 2.0, the PSTD simulations give results with similar accuracy to those with small *m*.

Similar to Table 1, Table 3
shows the comparison between the PSTD and DDA for spheroids, and the results compared with the exact solutions given by the T-matrix method [4,5]. With the refractive index of ice, both the PSTD and DDA fail only at a spheroid with *x* = 50 and *a*/*b* = 2. When the spheroids had the refractive index of mineral dust, the PSTD achieved the accuracy criteria for all sizes and aspect ratios except the one with *x* = 50 and *a*/*b* = 0.5. However, the DDA simulations could only be carried out for *x* smaller than 30 and achieved the criteria for sizes less than or equal to 20. As expected, the PSTD outperforms the DDA for large spheroids with *x* = 50 when *m* = 1.3117 + 1.489 × 10^{−9}i, and was the preferable method for all spheroids with *m* = 1.55 + 0.001i, except the one with *a*/*b* = 2 and *x* = 10. The relative performance of the two methods shows no dependence on the spheroid aspect ratio. Generally, the refractive indices of ice at different wavelengths have a real part of approximately 1.3, and those of aerosol particles, i.e., dust and back carbon, are 1.5 or larger. Thus, our comparison suggests the DDA to be suitable for numerical simulations of ice crystals with size parameters smaller than 50, whereas the PSTD is more efficient and more accurate for ice crystals with size parameters larger than 50 and aerosol particles of all sizes. The PSTD and DDA results with respect to the REs of *g*, maximum REs of *P*_{11}, REs of *P*_{11}(180°), and RMSAEs of *P*_{12}/*P*_{11} for spheroids are similar to those of spheres and will not be included here.

The left panels of Fig. 4
show P_{11} of the spheroids with *x* = 30 and the right panels the relative errors of the PSTD and DDA results compared with the T-matrix solutions. The aspect ratios and refractive indices are labeled in the figure. In general, the PSTD and DDA results both had excellent agreement with the T-matrix results, although the relative errors became significant at a few scattering angles around the troughs or peaks in P_{11}. For the spheroid with *x* = 1.55 + 0.001i and *a*/*b* = 2.0, the DDA gave the RMSREs of *P*_{11} to be 31%, which is larger than the criterion, but Fig. 4 shows the relative errors to be larger than 50% only at the scattering angles around 80° and the ones larger than 130°.

The ratios of *P*_{12}/*P*_{11} for the spheroids with the same size parameters and the absolute errors are illustrated in Fig. 5
. The absolute errors of *P*_{12}/*P*_{11} are no more than 0.2 at most scattering angles. For the spheroid with *a*/*b* = 2.0 and *m* = 1.55 + 0.001i simulated by the DDA (lower panels), the errors became larger than 0.5 at the scattering angles that had relative errors of *P*_{11} larger than 50%. From Figs. 4 and 5, we notice that, for spheroids, the PSTD results of *P*_{11} and *P*_{12}/*P*_{11} are slightly more accurate than those of the DDA.

Before drawing our final conclusions, we reflect once more on the parameters of the DDA simulations. As noted before, the paper is based on an older version of the ADDA and (almost) default settings, but we performed a limited set of simulations (for two spheres) with the current development version of ADDA (1.1b6 as of May 1, 2012), trying different DDA formulations and iterative solvers to maximize performance.

For the sphere with *x* = 10 and *m* = 2.0 the best result was obtained with the filtered coupled dipoles (FCD) formulation of the DDA [30,31]. The version decreased the number of iterations by 25% and largely improved the accuracy such that a spatial resolution of 20 was sufficient for a prescribed accuracy threshold. The resulting computational time was 140 s – 14 times faster than the DDA with the default settings, but still 3 times slower than the PSTD. For the sphere with *x* = 80 and *m* = 1.2, the FCD formulation halves the number of iterations but has little effect on the accuracy. The best performance, however, was achieved by using a CSYM iterative solver [32], which resulted in an almost four times smaller number of iterations, and a computational time of 2.0 × 10^{4} s, only two times larger than that of PSTD.

## 4. Conclusions

A systematic comparison between the PSTD and DDA for ice crystal and atmospheric aerosol light scattering computations was made by using the parallelized implementations of the two methods on the same multi-processor hardware, although we have no reason to believe that the *relative* performance is significantly affected by the hardware used. For spheres, size parameters up to 100 and refractive indices up to 2.0 were used, and for spheroids, two aspect ratios and two realistic refractive indices of ice and dust were used with equivalent-volume size parameters up to 50. The same prescribed accuracy criteria were required for the extinction efficiency and the phase function, and the computational time was used as the key parameter to evaluate and compare the two methods. The DDA was more economical for numerical simulations of spheres with small refractive indices and small size parameters; whereas, the PSTD was more economical for large *x* and *m*. The critical size parameter, above which the PSTD outperformed the DDA, decreased from 80 to 30 as the refractive index increased from 1.2 to 1.4. The PSTD was more CPU-efficient and applicable to a wider range of *x* when the refractive index was larger than 1.4. Similar conclusions were obtained for the spheroids. Furthermore, the overall accuracy of the asymmetry factor, backscatter, and linear polarization given by the PSTD and DDA were in agreement.

The implementation of each of the two compared methods has been substantially enhanced through our efforts. For instance, we found that the latest formulations of the DDA can decrease the required computational time by an order of magnitude. However, this is expected only to shift the boundary between the methods in the (*x*, *m*) plane but not to principally affect the conclusion of this comparison. Moreover, potential users are advised to test (and fine-tune) these and other light-scattering methods for their particular applications before performing large-scale simulations. Finally, we note that the comparison was performed only for real refractive indices or those with negligible imaginary parts. Significant absorption is known to largely improve the convergence of the iterative solver in the DDA [33]. Therefore, a comparison between the PSTD and DDA for absorbing, including metallic, refractive indices is an interesting topic for future research.

## Acknowledgments

We thank Dr. Michael Mishchenko for the use of his T-matrix code. The research was supported by the National Science Foundation (NSF) (ATMO-0803779). All computations were carried out at the Texas A&M University Supercomputing Facility, and we gratefully acknowledge the assistance of Facility staff in porting our codes. M.A.Yu acknowledges support by the program of the Russian Government “Research and educational personnel of innovative Russia” (contracts P1039, P422, 14.740.11.0921), by grant from Russian Government 11.G34.31.0034, and by Russian Foundation of Basic Research (grant 12-04-00737-а).

## References and links

**1. **H. C. van de Hulst, *Light Scattering by Small Particles* (Dover Publications, 1957).

**2. **M. I. Mishchenko, J. W. Hovenier, and L. D. Travis, *Light Scattering by Nonspherical Particles* (Academic Press, 2000).

**3. **G. Mie, “Beitrȁge zur optik trȕber medien, speziell kolloidaler metallȍsungen,” Ann. Phys. **330**(3), 377–445 (1908). [CrossRef]

**4. **M. I. Mishchenko, L. D. Travis, and D. W. Mackowski, “T-matrix computations of light scattering by nonspherical particles: A review,” J. Quant. Spectrosc. Radiat. Transf. **55**(5), 535–575 (1996). [CrossRef]

**5. **M. I. Mishchenko and L. D. Travis, “Capabilities and limitations of a current FORTRAN implementation of the T-matrix method for randomly oriented, rotationally symmetric scatterers,” J. Quant. Spectrosc. Radiat. Transf. **60**(3), 309–324 (1998). [CrossRef]

**6. **E. M. Purcell and C. R. Pennypacker, “Scattering and absorption of light by nonspherical dielectric grains,” Astrophys. J. **186**, 705–714 (1973). [CrossRef]

**7. **B. T. Draine, “The discrete-dipole approximation and its application to interstellar graphite grains,” Astrophys. J. **333**, 848–872 (1988). [CrossRef]

**8. **M. A. Yurkin and A. G. Hoekstra, “The discrete dipole approximation: An overview and recent developments,” J. Quant. Spectrosc. Radiat. Transf. **106**(1-3), 558–589 (2007). [CrossRef]

**9. **Y. You, G. W. Kattawar, P.-W. Zhai, and P. Yang, “Zero-backscatter cloak for aspherical particles using a generalized DDA formalism,” Opt. Express **16**(3), 2068–2079 (2008). [CrossRef] [PubMed]

**10. **P. C. Chaumet and A. Rahmani, “Coupled-dipole method for magnetic and negative-refraction materials,” J. Quant. Spectrosc. Radiat. Transf. **110**(1-2), 22–29 (2009). [CrossRef]

**11. **R. Alcaraz de la Osa, P. Albella, J. M. Saiz, F. González, and F. Moreno, “Extended discrete dipole approximation and its application to bianisotropic media,” Opt. Express **18**(23), 23865–23871 (2010). [CrossRef] [PubMed]

**12. **K. S. Yee, “Numerical solutin of initial boundary value problems involving Maxwell’s equations in isotropic media,” IEEE Trans. Antenn. Propag. **14**(3), 302–307 (1966). [CrossRef]

**13. **P. Yang and K. N. Liou, “Finite-difference time domain method for light scattering by small ice crystals in three-dimensional space,” J. Opt. Soc. Am. A **13**(10), 2072–2085 (1996). [CrossRef]

**14. **W. Sun, Q. Fu, and Z. Chen, “Finite-difference time-domain solution of light scattering by dielectric particles with a perfectly matched layer absorbing boundary condition,” Appl. Opt. **38**(15), 3141–3151 (1999). [CrossRef] [PubMed]

**15. **W. Sun and Q. Fu, “Finite-difference time-domain solution of light scattering by dielectric particles with large complex refractive indices,” Appl. Opt. **39**(30), 5569–5578 (2000). [CrossRef] [PubMed]

**16. **G. Chen, P. Yang, and G. W. Kattawar, “Application of the pseudospectral time-domain method to the scattering of light by nonspherical particles,” J. Opt. Soc. Am. A **25**(3), 785–790 (2008). [CrossRef] [PubMed]

**17. **C. Liu, R. Lee Panetta, and P. Yang, “Application of the pseudo-spectral time domain method to compute particle single-scattering properites for size parameters up to 200,” J. Quant. Spectrosc. Radiat. Transf. **113**(13), 1728–1740 (2012). [CrossRef]

**18. **M. A. Yurkin, A. G. Hoekstra, R. S. Brock, and J. Q. Lu, “Systematic comparison of the discrete dipole approximation and the finite difference time domain method for large dielectric scatterers,” Opt. Express **15**(26), 17902–17911 (2007). [CrossRef] [PubMed]

**19. **Q. H. Liu, “The PSTD algorithm: A time-domain method requiring only two cells per wavelength,” Microw. Opt. Technol. Lett. **15**(3), 158–165 (1997). [CrossRef]

**20. **M. A. Yurkin and A. G. Hoekstra, “The discrete-dipole-approximation code ADDA: Capabilities and known limitations,” J. Quant. Spectrosc. Radiat. Transf. **112**(13), 2234–2247 (2011). [CrossRef]

**21. **M. A. Yurkin, V. P. Maltsev, and A. G. Hoekstra, “The discrete dipole approximation for simulation of light scattering by particles much larger than the wavelength,” J. Quant. Spectrosc. Radiat. Transf. **106**(1-3), 546–557 (2007). [CrossRef]

**22. **B. T. Draine and P. J. Flatau, “User guide for the discrete dipole approximation code DDSCAT 7.1,” http://arxiv.org/abs/1002.1505 (2010).

**23. **M. Frigo and S. G. Johnson, “The design and implementation of FFTW3,” Proc. IEEE **93**(2), 216–231 (2005). [CrossRef]

**24. **J.-P. Berenger, “A perfectly matched layer for the absorption of electromagnetic waves,” J. Comput. Phys. **114**(2), 185–200 (1994). [CrossRef]

**25. **Z. S. Sacks, D. M. Kingsland, R. Lee, and J.-F. Lee, “A perfectly matched anisotropic absorber for use as an absorbing boundary condition,” IEEE Trans. Antenn. Propag. **43**(12), 1460–1463 (1995). [CrossRef]

**26. **P. Zhai, C. Li, G. W. Kattawar, and P. Yang, “FDTD far-field scattering amplitudes: Comparison of surface and volume integration methods,” J. Quant. Spectrosc. Radiat. Transf. **106**(1-3), 590–594 (2007). [CrossRef]

**27. **K. V. Gilev, E. Eremina, M. A. Yurkin, and V. P. Maltsev, “Comparison of the discrete dipole approximation and the discrete source method for simulation of light scattering by red blood cells,” Opt. Express **18**(6), 5681–5690 (2010). [CrossRef] [PubMed]

**28. **S. G. Warren and R. E. Brandt, “Optical constants of ice from the ultraviolet to the microwave: A revised compilation,” J. Geophys. Res. **113**(D14), D14220 (2008), doi:. [CrossRef]

**29. **O. Muñoz, F. Moreno, D. Guirado, D. D. Dabrowska, H. Volten, and J. W. Hovenier, “The Amsterdam-Granada light scattering database,” J. Quant. Spectrosc. Radiat. Transf. **113**(7), 565–574 (2012). [CrossRef]

**30. **B. Piller and O. J. F. Martin, “Increasing the performance of the coupled-dipole approximation: A spectral approach,” IEEE Trans. Antenn. Propag. **46**(8), 1126–1137 (1998). [CrossRef]

**31. **M. A. Yurkin, M. Min, and A. G. Hoekstra, “Application of the discrete dipole approximation to very large refractive indices: Filtered coupled dipoles revived,” Phys. Rev. E Stat. Nonlin. Soft Matter Phys. **82**(3 Pt 2), 036703 (2010). [CrossRef] [PubMed]

**32. **A. Bunse-Gerstner and R. Stover, “On a conjugate gradient-type method for solving complex symmetric linear systems,” Lin. Alg. Appl. **287**(1-3), 105–123 (1999). [CrossRef]

**33. **I. Ayranci, R. Vaillon, and N. Selcuk, “Performance of discrete dipole approximation for prediction of amplitude and phase of electromagnetic scattering by particles,” J. Quant. Spectrosc. Radiat. Transf. **103**(1), 83–101 (2007). [CrossRef]