In order to efficiently analyze an electromagnetic scattering problem with the surface integral equation approach, the matrix decomposition algorithm (MDA) is used to accelerate the matrix-vector multiplication when the corresponding matrix equation is solved by a Krylov-subspace iterative method. Although the MDA is more efficient than the direct solution, this paper presents a novel recompression technique to further reduce computation time and storage memory. The technique applies singular value decomposition (SVD) to the matrices of MDA. Using the novel recompression technique, a sparser representation of the impedance matrix is obtained, and a more efficient matrix-vector multiplication is implemented. The modified MDA is comparable with the multilevel matrix decomposition algorithm (MLMDA) and the matrix decomposition algorithm-singular value decomposition (MDA-SVD) in terms of computation time and memory requirement. Remarkably, the new formulation can reduce the computational time and memory significantly, with excellent accuracy.
 Different electromagnetic scattering problems have been studied in recent years. They include, but are not limited to, radar cross section (RCS) computations, antenna analysis, remote sensing, biomedicine, electromagnetic interference (EMI), and electromagnetic compatibility (EMC). In this paper, the scattering and transmission properties of finite planar frequency selective surfaces (FSS) are analyzed, along with the scattering of the complex object in free space. Simulating these problems is very time demanding, and good numerical methods are required to compute their solutions quickly and efficiently. The method of moments (MoM) [Mahachoklertwattana et al., 2008; Ye and Jin, 2008; Rao et al., 1982; Kim et al., 2004; Michalski and Zheng, 1990a, 1990b; Michalski and Hsu, 1994] is one of the most widely used techniques for solving electromagnetic problems. For a large electromagnetic problem, the number of unknowns, N, will be large and it would be difficult to solve the matrix equation. This is because the memory requirement and computational complexity are proportional to O(N2) and O(N3), respectively. This difficulty can be circumvented by using the Krylov iterative method, which can reduce the operation count to O(N2).
 A number of fast methods have been developed to accelerate solving iterative solutions of the MoM-based electromagnetic integral equations. Most of them are based on the multilevel subdomain decomposition technique and require a computational order ofNlogN. One of the most popular techniques is MLFMA [Coifman et al., 1993; Chew et al., 2001; Pan et al., 2001; Malas and Gurel, 2009], which has been widely used to solve very large electromagnetic problems due to its excellent computational efficiency. For the MLFMA, however, a priori knowledge of the Green's function is needed. As a result, it cannot be easily applied to analyze the layered media problems.
 The aim of this paper is to present a modified MDA for solving electromagnetic problems. It utilizes SVD techniques [Golub and Van Loan, 1989] to recompress the matrices of MDA. Simulation results show that the modified MDA is computationally more efficient than the MLMDA and traditional MDA-SVD.
 This paper is organized as follows. Section 2 describes the modified MDA in detail. Section 3 provides numerical examples to show the accuracy and efficiency of the modified MDA. Section 4 provides the conclusions of the study.
2. The Modified MDA
2.1. Multilevel Matrix Decomposition Algorithm
 In this paper, the analysis is based on the mixed potential integral equation (MPIE) [Michalski and Zheng, 1990a, 1990b]. Using the Galerkin's procedure, the following matrix equation can be obtained:
where [I] is the column vector containing the unknown coefficients of the surface current expanded by the RWG basis functions.
 The MDA employs the same octree data structure as in the MLFMA and MLMDA. The octree algorithm is used to subdivide a box that encloses an object into smaller boxes. Figure 1shows the decomposition of the problem domain at different levels. With reference to the figure, far interactions exit at levels 2 and higher. For simplicity, the far interactions of a box in the two-dimension case are shown inFigure 2. These far interactions can be computed using the MLMDA or MDA-SVD. [Z] in equation (1) can be written as
where [ZN] and [ZF] are the parts of the [Z] that represent near and far interactions, which are computed directly and compressed by MLMDA or MDA-SVD, respectively. When the two boxes are sufficiently separated, the associated impedance matrix can be expressed using low-rank representations [Michielssen and Boag, 1996; Heldring et al., 2007; Bebendorf, 2000; Ozdemir and Lee, 2004]. This feature is utilized within the MDA.
where is the interaction matrix between the observation and source boxes. m1 and m2 denote the number of the basis functions in the observation and source boxes, respectively. The index r denotes the number of equivalent RWG sources [Michielssen and Boag, 1996; Rius et al., 1999] and is much smaller than m1 and m2. Therefore, the matrix–vector products that involve [ZF] can be computed in O(Nlog2N) operations. The impedance matrix in (2) can be rewritten as
where M(l) is the number of nonempty groups at level l and, Far(l(i)) denotes the number of far interaction groups of the i-th nonempty group for each observer groupl(i) at level l.
 The MDA-SVD was presented byRius et al. for a general 3-D problem. It is comparable with the MLFMA and the ACA [Zhao et al., 2005] in terms of the computation time and memory requirement. Since the matrices [U] and [V] generated by the MDA are usually not orthogonal, they may contain redundancies that can be removed by an algebraic compression technique. The MDA-SVD utilizes the SVD technique to convert [U], [ω] and [V] which express the interaction between pairs of nonempty boxes which are not touching each other into the matrices [Ũ], and , respectively, where [Ũ] and are both unitary. Equation (2) can be expressed in the following form
where the product is associated with the interaction between the observer group l(i) and the source group l(j). For a given observation group l(i), the matrix needs to be stored for each source group l(j) which increases the memory requirement.
 A novel postcompression technique is presented in this paper. It provides a sparser impedance matrix for the MDA than for the MDA-SVD in solving 2-D and 3-D electromagnetic problems.
2.2. Novel Postcompression Technique
 In this section, a novel postcompression technique is used to compress the MDA matrices that transform (2) into the following form,
 It is only required to store the matrices [Rli] and [Flj] once for a given observer group l(i) and source group l(j), which is the main difference from that of MDA-SVD. The matrix [Tlij] is very small in size. Therefore, the memory requirement of far field in (6) is much less than that of far field in (5). Suppose that the object is decomposed into 3-level oct-tree, the forms of matricesRl, Tl and Fl are shown in Figures 3 and 4 at levels 3 and 2, respectively.
 The procedure to obtain the [R], [T] and [F] matrices is described below.
 1. The near interaction matrix [ZN] is computed directly at the finest level L.
 2. For level l, loop over source groups l(j) for all level l (l(j) is not the neighbor group of l(i)) to extract the corresponding sub-matrix [Zlij] which is approximated by (3), with l(j) ∈ Far(l(i)) of the impedance matrix [Z]. Then concatenate all matrix [Ulij] which is formed by using MDA implementation on the sub-matrix [Zlij] in a row and obtain the matrix [A]. Maintaining the admissible error ε, the truncated SVD is used to compress the matrix [A]
where m is the number of the basis functions in the box l(i), p is the sum of equivalent sources in the source groups l(j) and k is the rank of the matrix [A]. In (20), [U′li]mk is the i-th diagonal block of [Rl]. It requires O(k(m + 1 + p)) ≪ O(mp) to store [U′li]mk [S′lij]kk [V′lij]pkH. The matrix [Rl] can be obtained by implementing the procedure as given above for all observation groups.
 3. Loop over observation groups l(i) for all level l. Again, l(i) are not neighbors of l(j). Concatenate all matrices [S′lij]kk[V′lij]pkH[ωlij]−1[Vlij]pn in a column and form the matrix [B]. Maintaining the admissible error ε and using the truncated SVD to compress [B], the following expression of [B] can be obtained
where n is the number of basis functions in the box l(j), q is the sum of the rank kof sub-matrix [S′lij]kk[V′lij]pkH[ωlij]−1[Vlij]pn and g is the rank of the matrix [B]. [V″lj]ngH is the j-th diagonal block of [Fl]. The matrix [Fl] can be obtained by going through the procedure as shown above for all source groups. The remainder matrix [U″lij]qg[S″lij]gg forms the matrix [Tl]. Similar to the previous result, it requires O(g(q + 1 + n)) ≪ O(qn) to store [U″lij]qg[S″lij]gg[V″lj]gnH. When the matrices [Rl], [Tl] and [Fl] are obtained through Steps 2 and 3, the far field sub-matrix [Zlfar] at level l of [Z] can be expressed as
where [Rli] ∈ and [Flj] ∈ , respectively. Note that this can be done with O(M(l)(k2(m + n + k))) operations, k is much less than m and n. The operation of modified MDA is approximate to O(k2N) at level l, N denotes the number of unknowns. The operation of equation (6) at level l is O(M(l)(k2C(m + n + k))), C denotes the max number of far interactions of each group at level l. The operation of MDA-SVD at levell is approximate to O(k2N). The operation of modified MDA at level lis the same as that of MDA-SVD, but with a constant (independent ofN) improvement, as is shown in the results.
 4. Steps 2 and 3 are used to obtain [Zl−1far] = [Rl−1][Tl−1][Fl−1] at level l-1, where [Zl−1far] refers to the far field sub-matrix at levell-1 of [Z].
 The above procedure postcompresses [ZF], which represents far interactions. In the above procedure, a majority of memory is used to store the matrices [Rl], [Fl], and [Tl] at level l. The matrices [Rl], [Fl] are very sparse, where [Rl] and [Fl] are both unitary and block-diagonal.
3. Numerical Results
 In this section, a number of numerical examples are presented to demonstrate the efficiency of the modified MDA in solving linear systems of electromagnetic scattering problems. The restarted version of the GMRES algorithm [Saad, 1996] is used to implement the modified MDA. The restart number of GMRES is set to be 30 and the stop precision of restarted GMRES is denoted to be 10−3. The truncating tolerances of the MDA-SVD and modified MDA are both 10−3(relative to the largest singular value). All numerical experiments were performed in double precision on a Core-2 6300 with 1.86 GHz CPU and 1.96 GB RAM. The programming language used in this paper is Fortran 6.6.
3.1. Electromagnetic Problems of Finite Planar FSS Array
 It is supposed that the FSS array is placed on the Z = 0 plane. The incident direction of the plane wave is u(u = θ or φ) and the polarization direction of the plane wave is v(v = θ or φ). The transmission coefficient is defined as
Eplate is the far field in the transmission direction of the metal plate which has the same size as that of the FSS array. EFSS is the far field of in the transmission direction the FSS array. EFSSu denotes the component of the EFSS in the u polarization direction. Eplateu denotes the component of the Eplate in the u polarization direction, while Eplatev denotes the component of the Eplate in the v polarization direction.
3.1.1. The Tripole Array
 First, the scattering and transmission of the tripole array residing on an infinite substrate are considered in Figure 5. The length and width of the leg of the element is 4 mm and 1 mm, respectively. The dielectric constant and thickness of the substrate are 2.85 and 0.5 mm, respectively. The unit has dimensions of Tx = 17 mm, Ty= 14.5 mm. It is assumed that the incident wave is TM-polarized withθi = 30°, ϕi = 0°, and a skew angle is 60°.
Figure 6 shows the transmission coefficient of the tripole array over a frequency range of 2–15 GHz. The array consists of 40 × 40 tripole elements and the metallic surface is discretized using 100800 RWG basis functions. It can be observed from the figure that the modified MDA result agrees well with the Ansoft simulation result. The efficiency of the algorithm was checked. Figure 7shows the required memory as a function of the number of unknowns. As can be observed from the figure, the required memory of the modified MDA is only about one-third and a quarter of those of the MDA-SVD and MLMDA, respectively. It is, of course, much less than that of the direct method as expected.Figure 8shows the CPU time as a function of the number of unknowns increases. The MVP refers to a matrix-vector operation. With reference to the figure, the CPU time of the modified MDA is only about one-third and a quarter of those of the MDA-SVD and MLMDA, respectively.
3.1.2. The Octagonal Loop FSS
Figure 9shows an octagonal loop FSS embedded in a three-layered structure. The dielectric constants of the infinite substrates are given byεr1 = 3.0, εr2 = 1.0006 and εr3 = 3.0, while the thicknesses of the substrates are d1 = 0.18 mm, d2 = 10.0 mm and d3 = 0.18 mm. The unit has dimensions of Tx = 8 mm, Ty= 8 mm, with the inner and outer radii given by 3 mm and 3.5 mm, respectively. The incident wave is TM-polarized withθi = 30°, ϕi = 0° and a skew angle is 90°.
 The transmission coefficient of the octagonal loop FSS array consisting of 40 × 40 octagonal loop elements is analyzed in Figure 10. A frequency range of 1–30 GHz is considered in the figure. The meshed FSS array contains N = 102400 RWG basis functions. It can be found from the figure that the result of the modified MDA is in good agreement with the simulation result. Figures 11 and 12 show the required memory and the CPU time per iteration as a function of the number of unknowns. With reference to Figure 11, the required memory of the modified MDA is much less than that of the direct method. Also, as can be observed from the two figures, the modified MDA is 4 times more efficient than the MDA-SVD in both memory usage and CPU time. It is even 5 times when compared with the MLMDA.
3.1.3. The Matrix Compression Times
 The matrix compression times of the modified MDA, the MDA-SVD and the MLMDA for the two scattering geometries as mentioned above are analyzed inTable 1. The tripole array, and the octagonal loop FSS are discretized with 100800 unknowns at 2 GHz, and 102400 unknowns at 3 GHz, respectively. It can be seen that the matrix compression time of the modified MDA is very close to that of either MDA-SVD or MLMDA.
Table 1. The Matrix Compression Times for the Tripole Array, and the Octagonal Loop FSS
Modified MDA (s)
Octagonal loop FSS
 The relative errors of the modified MDA and MDA-SVD and the MLMDA for the two scattering geometries as mentioned above are shown inTable 2. The formulation of the relative error is given by
where M denotes the induced current computed using the MoM iterative solution, and Tis the induced current computed using the modified MDA and MDA-SVD and the MLMDA.
Table 2. The Relative Errors for the Tripole Array, and the Octagonal Loop FSS
Octagonal loop FSS
3.2. The Electromagnetic Problems of the Complex Object in Free Space
Figures 13 and 14 show the memory requirement and CPU time per iteration for the missile geometry as a function of the number of unknowns. The height and radius of the cylinder are 10.5 m and 0.6 m, respectively. The z-axis is used as the rotation axis. This experiment was done using the single precision on a Core-2 6300 with a 1.86-GHz CPU and 1.96 GB RAM. With reference toFigure 13, the memory requirement of the modified MDA is much less than that of the direct method. Also, it is much less than half of that of the MDA-SVD and one-third of that of the MLMDA. With reference toFigure 14, similar savings for the MVP time can be found by using the modified MDA.
 Next, the matrix compression times of the modified MDA, MDA-SVD and MLMDA for the missile geometry as a function of the number of unknowns are analyzed inFigure 15. It can be seen that the matrix compression time of the modified MDA is nearly the same as that of MDA-SVD and MLMDA.
 In this paper, a modified MDA is proposed for efficient analyzing the properties of finite size FSS array, which provides a very sparse representation of the impedance matrix. The new method utilizes novel recompression technique to compress the matrices of MDA. Compared with MLMDA, the modified MDA can reduce the solution time and memory usage significantly, while the accuracy of the modified MDA is controllable. Moreover, the numerical results demonstrate that the modified MDA is much more efficient than MDA-SVD. Although the novel recompression technique may reduce the required amount of storage, the asymptotic complexity of the approximation remains the same as that of MDA-SVD.
 This work was supported in part by Major State Basic Research Development Program of China (973 Program: 2009CB320201), in part by Natural Science Foundation of China (60871013, 60701004), and in part by Jiangsu Natural Science Foundation of China (BK2008048).