A general description of mutual coupling in finite and infinite antenna arrays is provided and an open-source code is described for the analysis of mutual coupling in linear arrays of parallel dipoles. The ASM-MBF method is illustrated with the help of that code and it is shown that the method also can handle situations where eigenmodes are supported by the array: single machine precision is achieved with four Macro Basis Functions only.

1. Introduction

Mutual coupling in arrays has been a subject of intense research for several decades. Regular arrays received important attention for radar design purposes, and the subject received more attention recently for civilian applications, like MIMO communication systems and observational systems; among the latter phased arrays devoted to radio astronomy, ground-penetrating radar and medical imaging. The presence of several antennas within a limited volume leads to mutual interactions that have been described in seminal references like [13].

As for antenna arrays devoted to transmission or reception with respect to very large distances, the most important characteristics of arrays propably correspond to their embedded element patterns and to their impedance matrix, or any equivalent quantities. The purpose of the present paper consists of providing a general understanding of mutual coupling through the specific case of regular arrays made of wire antennas. Beyond that, a method for the fast calculation of those quantities, the Macro Basis Functions (MBF) approach based on the Array Scanning Method (ASM), therefore named “ASM-MBF” will be described and illustrated. We believe that this method reconciles very well fast finite-array approaches with infinite-array approximations. Open-source codes [4] in Matlab0𝑥000𝑎𝑒 language for finite arrays, infinite arrays and for the ASM-MBF approach will be described. Examples will be given for both regular cases and for situations where the array supports eigenmodes. Although related work has been published by the authors considering more complex antennas [5, 6], it is expected that the open-source codes for the simpler case of wire antennas will form a good way to introduce graduate students and researchers in the field of signal processing to the importance of mutual coupling and that further insight will be gained in the effects of eigenmodes in antenna arrays.

The remainder of this paper is organized as follows: in Section 2, a particular point of view on mutual coupling is given; in Section 3, the calculation of the effects of mutual coupling for arrays of wires with the Method of Moments is shortly recalled and an open-source code is introduced; in Section 4, the ASM-MBF method is illustrated and details are described with the help of the same code.

2. General Considerations about Mutual Coupling

Mutual coupling is a relatively general concept that may be understood in different ways. The most general definition of mutual coupling probably corresponds to the process through which the properties of a given radiator—mainly its input impedance and radiation pattern—are modified when another object is brought in the near field of the radiator. In this particular (or rather “general”) perspective, mutual coupling between several antennas is not so different from mutual coupling between an antenna and a supporting element (the circuit to which the antenna is connected, the body of a person wearing the antenna, for instance), as is sketched in Figure 1. A possible interpretation is that the supporting element is part of the antenna, which therefore has other radiation properties than the isolated antenna. It is difficult to say which is the minimal distance from which mutual coupling becomes negligible. In general, one will assume distances comparable to the wavelength. The effect of objects located further away will in general be accounted for in a different way, for instance with the help of ray-tracing or multiple-scattering approaches.

The object (see cup in Figure 1(b)) located in the near field of the (original) antenna can change the radiation pattern, absorb a fraction of the radiated power and also change the input impedance of the radiator. These phenomena can be understood as resulting from the change of the electric (and magnetic, if volume or surface equivalence are used) current distribution on the antenna itself and from the appearance of currents on the perturbating object. Both changes in current distributions can be regarded as due to the introduction of new boundary conditions, imposed by the presence of the nearby object. In traditional antenna terminology, these changes in current distribution will impact the antenna input impedance, its radiation pattern and its radiation efficiency. As for the latter quantity, when one involves the power absorbed by the nearby object in the estimation of the efficiency of the antenna, one implicity assumes the object as part of the radiator. It seems reasonable to say that mutual coupling can be neglected, or could at least be treated with simplified multiple-scattering approaches, when the impact of the neighboring object on the antenna input impedance is negligible.

Let us consider now the case where the near-field objects referred to above are made of one or several other radiators (see second antenna in Figure 1(c)). Following the same philosophy as above, when considering the properties of a given antenna in the array, the other antennas in the array, terminated by the impedance of their transmitter or receiver, can momentarily be considered as part of that particular antenna. The obtained radiation pattern then corresponds to the embedded element pattern and the input impedance of the antenna in the array (sometimes called the passive impedance) can be substantially different from that of the radiator taken in isolation. In the case of arrays of radiators, obviously, coupling coefficients can also be defined, in terms of impedance, admittance or S-parameter matrices. It is important to notice, however, that all the effects of mutual coupling cannot in general be described with the help of such matrices only. Minimum-scattering antennas form an exception to this rule [7]. Nevertheless, several links can be established between the radiation properties and the N-port coupling coefficients. A link between 𝑆-parameters and radiation patterns is given in [1, 8], while in [911], the link between element patterns and the active input impedance of antennas in infinite periodic arrays is established.

Mutual coupling in large arrays is the subject of intense efforts from the numerical point of view. In the following, details are provided for the case of dipole antennas, and we show how very high accuracy can be achieved when infinite-array solutions are incorporated in the analysis of finite arrays. All explanations are accompanied by a short introduction to the open-source codes provided in parallel with this paper and allowing the reader to become familiar with the different aspects of mutual coupling.

3. MoM for the Array of Wires

This section briefly recalls the Method of Moments for the analysis of linear arrays of parallel thin wires, of radius 𝑎 smaller than about a hundredth of the wavelength, spaced by a distance 𝑑. This mehod has been devised several decades ago [12, 13], but it is recalled here, with the help of some details given in Appendix B, such that the reader can understand the open-source Matlab0𝑥000𝑎𝑒 code [4] and adapt it by himself to other situations (configurations with ground planes, planar arrays ). This section also allows us to introduce the concepts necessary to the understanding of the ASM-MBF method described in the next section. The traditional Pocklington method for thin wires is used. Currents are represented by triangular basis functions, 𝐽𝑖, located on the 𝑧 axis of the wires: 𝐽(𝑧)𝑀𝑖=1𝑥𝑖𝐽𝑖, where the 𝑥𝑖 are the unknowns. Fields are tested on the external part of the wire, with the help of the same set of functions (displaced by the radius of the wire). The element of the MoM impedance matrix corresponding to basis function 𝐽𝑗(𝑧) and testing function 𝐽𝑖(𝑧) can be written as:𝑍𝑖𝑗=1𝑘𝑗𝜔𝜖𝐺(𝑧,𝑧)2𝐽𝑖(𝑧)𝐽𝑗(𝑧)𝑑𝐽𝑖(𝑧)𝑑𝑧𝑑𝐽𝑗(𝑧)𝑑𝑧𝑑𝑧𝑑𝑧(1) where 𝜔 is the radian frequency, 𝑘 is the wavenumber, 𝜖 is the permittivity of surrounding space and 𝐺=exp(𝑗𝑘𝑅)/(4𝜋𝑅) is the free-space Green's function, with 𝑅=(𝑧𝑧)2+𝑎2 if basis and testing functions are located on the same wire, and 𝑅=(𝑧𝑧)2+𝑒2 if they are located on different -parallel- wires, with 𝑒=𝑝𝑑 the distance between centers of the wires, where 𝑝 is integer. The excitation vector 𝑣, that is, the right-hand side of the system of equations, is zero everywhere, except for the entry corresponding to the testing function that overlaps the delta-gap source. That entry equals 𝑉, where 𝑉 is the excitation voltage. When the excitation is represented by a voltage source 𝑉 followed by a series load 𝑍𝐿, the voltage jump at the delta-gap level is equal to 𝑉1=𝑉𝑍𝐿𝑥𝑠, where 𝑥𝑠 is the current coefficient that multiplies the basis function overlapping the source. Since this coefficient belongs to the unknowns, the corresponding term can be moved to the left-hand side. This leads to subtraction of 𝑍𝐿 from 𝑍𝑠,𝑠. Finally, the current coefficients 𝑥 are obtained by solving the 𝑍𝑥=𝑣 system of equations. The most important part of the work consists of computing the double integrals (1).

In the wiremom-finite.m code, this is carried out by the inter and inner0 routines. The integrations are carried out with 𝑁 points over the interval of length 𝑑𝑙, which corresponds to the width of the basis function. For a given testing function, variables 𝑗𝑟 and 𝑑𝑗𝑟 represent the currents and their derivatives versus 𝑧, while they are named 𝑗𝑟𝑝 and 𝑑𝑗𝑟𝑝 for the basis functions. The integrals are carried out with the trapezoidal rule, the variables 𝑤 and 𝑤𝑝 represent the corresponding weights.

It is well known that, for very thin wires, the integrals will not be accurate [12], because of the nearly-singular (The function is not perflectly singular since 𝑅𝑎.) behavior of the Green's function. Hence, when basis and testing functions are very close to each other, it is advised to extract the singularity from the Green's function and to carry out separately the integrals for the singular part, 1/(4𝜋𝑅), of the Green's function (in the inter routine, extract = 1 indicates that extraction is to be carried out; the criterion is based on proximity between basis and testing functions). The integration is carried out numerically over the testing function and analytically over the basis function. In the wiremom-finite.m code, those operations are organized as follows. First, the numerical integration over the testing function is carried out in the same inter routine. The integration over the basis function is carried out in the inner1 routine, using the Green's function from which the singularity has been extracted. Besides this, for the singular part, the analytical integration over the basis function is carried out with the help of the inner2 routine. Details regarding this integration are given in Appendix B. In the inter routine, the contributions from the regular and singular parts of the inner integrals are represented by the int1 and int2 variables, respectively.

Finally, it is interesting to notice that the main code of wiremom-finite.m makes use of the regularity of the basis functions over a given antenna and of the regularity of the array by exploiting the fact that the interactions (1) only depend on the vector distances between basis and testing functions. For a given pair of antennas, such interactions are first stored in the 𝑧 vector (Here, regularity along the wire is exploited.) and then reorganized into the 𝑧𝑧 matrix. Such calculations are carried out for all relative positions between pairs of antennas (Here, regularity of the array is exploited.) and the 𝑧𝑧 matrices are accordingly organized into the 𝑍𝑡𝑜𝑡 impedance matrix for the whole array. The solution is then computed for excitation on successive antennas to obtain, for each excitation, all the currents on the antennas. Those currents, in turn, allow the computation of the array impedance matrix and of all embedded element patterns. The patterns are very easy to compute in the plane perpendicular to the antennas, where contributions from different segments of a given antenna appear in phase. In this case, for an array of 𝑁𝑎 elements, the embedded pattern is proportional to:𝐹(𝜃)=𝑁𝑎𝑀𝑛=1𝑗=1𝑥𝑛,𝑗𝑒𝑗𝑘𝑑(𝑛1)cos𝜃(2) where 𝜃 is the angle with respect to the array axis and 𝑥𝑛,𝑗 refers to the coefficient that multiplies basis function 𝑗 on antenna 𝑛. Figure 2 shows embedded element patterns for elements 1, 2, 4 and 8 in arrays of 17 elements made of wires of 1 mm radius and with spacings of 15 cm. The first example has termination impedances of 100 Ohm and the wire length and wavelength are 15 cm and 30 cm, respectively. The second example has 0 Ohm termination impedances, while the wire length and wavelength are 30 cm and 66 cm, respectively. The latter supports eigenmodes, which originates from mutual coupling between elements of the array and which leads to complex patterns, mainly oriented along the array axis. In both cases, 21 triangular basis functions have been used on each antenna. The impedance matrix (and from there also, the scattering matrix) of the array can be obtained from currents calculated for all excitations. Let us denote by 𝑌𝑡 the matrix whose column 𝑖 contains the port currents for excitation of port 𝑖 with a unit voltage. Then, the array impedance matrix is given by 𝑍=𝑌𝑡1𝑈𝑍𝐿 where 𝑈 in a unit matrix and 𝑍𝐿 is the termination impedance referred to above (When terminations are not all the same, 𝑈𝑍𝐿 should be replaced by a diagonal matrix with the 𝑖th diagonal entry equal to the 𝑖th termination impedance.).

The validation of the code, illustrated in Appendix A, has been carried out in two different ways. At the element level, the input admittance has been compared with results provided by the NEC2 free software as provided by [14], as well as with results shown in [15]. At the array level, the effects of mutual coupling have been verified by establishing the balance between power accepted by a given port and the sum of radiated and dissipated powers. The radiated power is obtained through integration over the unit sphere of the 3-D power density pattern. The dissipated power corresponds to power delivered to the loads terminating the other elements of the array; in dense arrays, it can correspond to a large fraction of the delivered power. In all cases, the relative error was less than 0.1 percent.

4. Fast Calculations with the ASM-MBF Method

4.1. Infinite-Array Simulations

For infinite regular arrays with uniform amplitude and linear phase excitation, the method above can be extended such that calculations can be limited to a unit cell of the array, while involving all the effects of mutual coupling. This is done with the help of the introduction of an infinite-array Green's function. For a linear array, with inter-element phase shifts equal to 𝜓, it reads:𝐺(𝑅)𝑛=exp𝑗𝑘𝑅𝑛4𝜋𝑅𝑛𝑒𝑗𝑛𝜓(3) where 𝑅𝑛=(𝑎+𝑑𝑛)2+(𝑧𝑧)2. For 𝑛0, in view of the thin wire approximation, the term 𝑎 can be omitted as long as 𝑑𝑎. Other formulations for this Green's function, with faster convergence, can be found in the literature [16, 17]. Indeed, as such, formulation (3) converges very slowly. However, here, the extra computation time required for the introduction of the infinite-array Green's function is made marginal by (𝑖) using series accelerators, like the Levin-T accelerator [18] and (𝑖𝑖) by tabulating the Green's function before filling the MoM impedance matrix. In the case of arrays of parallel wires, the tabulation can be limited to a one-dimensional table, since the infinite-array Green's function depends only on the 𝑧𝑧 coordinate. To be more precise, it is interesting to notice that, in the Green's function above, the 𝑛=0 term corresponds to the case of the isolated dipole. The corresponding contribution to the infinite-array impedance matrix can hence be recuperated from the code referred to in the previous section. The remainder is then computed using the Green's function (3) made non-singular by withdrawing the 𝑛=0 term from it. The latter point also greatly facilitates the tabulation and interpolation steps.

Infinite-array simulations can be carried out with the help of the wiremom-infinite.m code [4]. With respect to the wiremom-finite.m code, the differences are the following. First, the solution is looked for in the unit cell only and the result depends on phase shift 𝜓 between consecutive elements. Second, the infinite-array Green's function is tabulated in subroutine table1. It is computed as the explicit summation of contributions from successive dipoles. The summation is accelerated with the help of the Levin-T accelarator [18]. It is important to notice that, for the latter to be efficient, the summation must be carried out independently for the two semi-infinite arrays that compose the infinite array. The contribution from the closest dipole is excluded and added when necessary in the inner0 and inner1 routines. As in the code for finite arrays, those routines calculate the interactions over basis functions, for the case when singularity is extracted and for the case where it is not extracted, respectively. The Green's function is interpolated from the table using a simple first-order approach.

A simulation example is provided in Figure 3 for the same two configurations as in Section 3, the second of which supports eigenmodes. All elements are excited, with constant amplitudes and constant phases. What is shown is the real part of port currents. Important differences are observed between finite and infinite-array solutions. This is especially true for the array supporting eigenmodes. In the latter case, it is interesting to notice that eigenmodes affect the solution of the finite array, even if, in the infinite array, the eigenmode solution appears only for other inter-element phase shifts [19]. This is because the finite-array solution actually involves a broad spectrum (in terms of inter-element phase shifts) of infinite-array solutions. This fact is explicitely exploited in the ASM-MBF method described below.

4.2. Array Scanning Method

The Array Scanning Method (ASM) allows the determination of the behavior of an active antenna (or any single-source excitation) in an infinite passively terminated array from results obtained for fully periodic array excitations, while accounting for all the effects of mutual coupling. The ASM is connected with the Discrete Fourier Transform and has first been proposed by Munk and Burrell [20], although DFT-type links between single-element excitation and periodic excitation were already reported in [2]. It will be recalled here for the case of linear arrays. We consider an array with periodicity 𝑑 along the 𝑥 direction with periodic excitation at the feed-points level, that is, with constant amplitudes and linear phase progression; the inter-element phase shift is given by 𝜓. If we denote a given field in the reference unit cell, which contains the coordinate 𝑥=0, by 𝑃(𝑟,𝜓), then the field obtained in cell 𝑚 when only the source in the reference unit cell is excited is given by: 𝑃0𝑚=1𝑟2𝜋02𝜋𝑃𝑒𝑟,𝜓𝑗𝑚𝜓𝑑𝜓(4) where 𝑟 are coordinates relative to a reference point connected to each antenna. A discretized version of this integral is:𝑃0𝑚1𝑟𝑁𝑁1𝑛=0𝑃𝑟,𝜓𝑛𝑒𝑗𝑚𝜓𝑛for0𝑚𝑁1(5) with 𝜓𝑛=𝑛/𝑁2𝜋. It is interesting to notice that this summation exactly has the same form as the FFT, as defined in the Matlab0𝑥000𝑎𝑒 language for instance. The result of the discretization of integral (4) is that the obtained fields actually correspond to those excited by sources located every 𝑁 cells along the array. In other words, 𝑃0𝑚(𝑟) becomes periodic along 𝑚 with period 𝑁, as illustrated in Figure 5. To avoid this aliasing problem, the solution may consist of using adaptive integration techniques [21]. Another possiblity consists of artifically increasing the number of sampling points by increasing 𝑁 and by interpolating them where the function 𝑃(𝑟,𝜓) can be assumed smooth. Among others, particular attention (and hence, many explicitly computed values of fields 𝑃) will be given to the estimation of 𝑃 near the limits of visible space (𝜓=±𝑘𝑑) and near some possible values of 𝜓 where the impedance matrix becomes singular, which corresponds to eigenmode solutions [19, 22]. According to the properties of the Fourier Transform, singular values of 𝑃(𝑟,𝜓) in the reciprocal 𝜓 domain will lead to widely spread solutions in the spatial domain. A straightfoward implementation of the ASM is provided by routine asm.m. Simulation examples are shown in Figure 4 for the two configurations already considered previously. The second case is dominated by eigenmodes, which propagate over the whole structure and are reflected by the ends.

4.3. ASM-MBF

The Macro Basis Functions approach (MBF) applied to periodic antenna arrays consists of assuming that, whatever is the excitation law of the array, the solution on a given unit cell can be obtained as the linear superposition of a small number of pre-computed solutions obtained from small problems [2325].

Once MBFs have been defined on every sub-domain and concatenated in matrix form (for sub-domain 𝑖, each column of 𝑄𝑖 corresponds to the list of coefficients of a given MBF in terms of elementary basis functions), a reduced system of equations is obtained by writing for every sub-domain: 𝑥𝑖=𝑄𝑖𝑦𝑖(6) and by using as many Macro Testing Functions (MTFs) as there are MBFs. In this work, we will use Galerkin's method and consider that, on every sub-domain, the set of MTFs is identical to the set of MBFs. In this case, for instance, the reduced system of equations for two sub-domains can be written as:𝑄𝐻1𝑍11𝑄1𝑄𝐻1𝑍12𝑄2𝑄𝐻2𝑍21𝑄1𝑄𝐻2𝑍22𝑄2𝑦1𝑦2=𝑄𝐻1𝑣1𝑄𝐻2𝑣2(7) The (𝐻) suffix denotes transposed conjugate. The conjugation could be omitted: results would be slightly different, but numerical experience showed us that accuracy is similar.

A very popular technique for obtaining the MBFs in antenna arrays consists of generating primary and secondary current distributions [26]. The primary solution is the solution obtained by exciting an isolated element, while a secondary is obtained by exciting a neighboring element with the fields radiated by the primary MBF and then by computing the induced current. Several secondaries can be defined and higher-order MBFs may also be generated [27]. In the present paper, we will adopt another approach based on the array-scanning method, as demonstrated in [5] for arrays of tapered-slot antennas. This approach is based on the observation that the solutions obtained for an arbitrary excitation law can be obtained from solutions computed for excitations at every single element of the otherwise passively terminated array. The case of excitation at a single element is similar to the case considered in the previous paragraph, where the ASM is used, the difference being that the array is finite here. The difference with respect to the case of infinite arrays may be regarded as currents reflected from the edges of the array [28]. Under the asumption that reflected current distributions are similar to those found in the direct wave (excited by a single element in the infinite array), it appears natural to consider as MBFs the solutions obtained on successive antennas when the ASM is used.

In practice, the discretized form of the ASM, computed with 𝑁 infinite-array solutions, will be used. It may be expected that the aliasing that characterizes the discretized ASM (see Figure 5) may severely degrade the ability to represent current distributions in the finite array excited by one element only. However, it is important to recall that, in a first instance, what is looked for is just a representative basis for current distributions. In this respect, the overlapping between aliased solutions is not a major difficulty, since the different superimposed solutions are all physical. Of course, for larger values of 𝑁 in the ASM, more current distributions are produced and a higher accuracy can be achieved. Finally, since the ASM solutions are themselves superpositions of infinite-array solutions with constant-amplitude excitation with linear phase progression, the latter may equally well serve as MBFs. Hence, the ASM does not need to be explicitly calculated to form the MBFs. The main point learned from the reasoning based on the ASM is that, upon forming MBFs, it is good to have the phase shifts 𝜓 of the infinite-array solution uniformly distributed from 0 to 2𝜋. This means that, as soon as the element spacing is smaller than half a wavelength, solutions from outside the visible space (i.e., with active impedances that are purely reactive) will be necessary to form a good set of MBFs.

4.4. Application to Finite Arrays of Wire Antennas

The ASM-MBF technique described above will be applied to finite arrays of parallel antennas. This efficient and accurate approach is applicable for any excitation of the array and accounts for all the effects of mutual coupling. In view of the symmetry of the infinite array with respect to a plane perpendicular to the array axis and passing through the middle of an element, it is interesting to notice that infinite-array solutions will be identical for 𝜓 and 𝜓 phase shifts. Therefore, only positive values of 𝜓 need to be considered uppon forming the set of MBFs. Hence, if 𝑁 infinite-array solution are considered to form the MBFs, the related phase shifts should be equal to 𝜓𝑛=(𝑛1)/𝑁𝜋 for 1𝑛𝑁. The arrays-compare.m routine compares the “brute-force” solution (from Gaussian elimination in the original MoM system of equations) with the solution obtained with the help of the ASM-MBF method. The routine is made of four parts. First, the brute-force solution is computed with the help of the wiremom-finite.m routine. Second, the 𝑀𝑟 infinite-array solutions are computed and stored in matrix 𝐶 (equivalent to 𝑄 matrix above). Then, the original MoM impedance matrix and excitation vector for the array are reduced. Finally, the reduced system of equations is solved and the solution is determined with the help of the MBFs.

We will illustrate the accuracy of the ASM-MBF method for the two 17-elements arrays already considered in the previous section, one of which supports eigenmodes. The first element of the array is excited and the relative error in dB of the ASM-MBF solution, as compared to the brute-force solution, is obtained as 20log10(|𝐼𝑎𝐼𝑒|/|𝐼𝑒|), where 𝐼𝑎 is a vector that contains all the coefficients of the ASM-MBF solution over successive antennas, while 𝐼𝑒 is a similar vector for the brute-force solution. Figure 6 shows the relative error for an increasing order 𝑁 of the ASM-MBF method. It is interesting to see that, with 𝑁=4 MBFs per antenna, the error is already well below −100 dB, even for the case where the array supports eigenmodes. For the latter case, it can be seen that solutions with a single MBF per antenna is not acceptable; however, as soon as more MBFs are used, the accuracy of the solution becomes comparable to the one obtained with arrays not supporting eigenmodes.

5. Conclusion

We described a simple open-source tool for the understanding of mutual coupling in linear arrays of antennas. Appendix C provides the general organization of the code. We showed that finite-array and infinite-array approaches can be reconciled by using the solutions of the Array Scanning Method (ASM) as Macro Basis Functions (MBFs). In practice, the ASM must be computed with a limited number 𝑁 of infinite-array solutions. It is striking to see how fast the solution converges toward the reference result (obtained without reduction of the system of equations) when the number 𝑁 of MBFs is increased, even when the array supports eigenmodes, which can strongly distort the embedded element patterns. If 𝑀 is the number of elementary basis functions and 𝑁 is the number of macro basis functions, for large arrays, the solution time is proportional to 𝑁3 instead of 𝑀3. Knowing that, with the ASM, 𝑁 is an order of magnitude lower than 𝑀, very large time savings are achieved, while preserving an accuracy close to single machine precison.


A. Validation Data

Figure 7 shows a comparison between results obtained with NEC2 [14] and with the proposed open-source code for the example given in Figure 4.5 of [15] for a dipole with a ratio between length 𝐿 and diameter equal to 74.2. In both cases, 41 basis functions were considered. Values for the conductance 𝐺 are extremely close, while a slight drift for the susceptance 𝐵 appears for 𝐿/𝜆 ratios larger than 0.6. It is interesting to notice, however, that results from [15] (shown with circles) are slightly closer to our results than to those obtained with NEC2. Also, for this isolated dipole, and for 𝐿/𝜆=2, the power conservation check (see below) provided a relative error limited to 2 104. Figure 8 compares port currents obtained at 1 GHz for an array of 4 such dipoles for 𝐿=𝜆/2 and spacing 𝑑=𝜆/2.

Regarding results obtained for arrays, it is interesting to verify that power accepted by a given antenna in the array corresponds to the sum of radiated power and power dissipated in the loads of the other elements of the array. This verification is presented in Table 1 for the two different arrays considered throughout the paper, with 8 elements each. The wire radius is 1 mm, array spacing is 15 cm. For Type 1, 𝜆=0.3 m, load impedance is 100 Ohm and wire length is 15 cm. For Type 2, 𝜆=0.66 m, load impedance is 0 Ohm and wire length is 30 cm.

For the Type 1 array, after considering individual excitation at successive ports, the maximum relative error found is 1.3 104, for Type 2 array, it is equal to 12 104. The latter has a zero load impedance (from there the zero dissipated power in the Table). If a 100 Ohm load is considered for the Type 2 case, the maximum relative error is very close to 104.

B. Details About Singularity Extraction

For the sake of completeness, we provide here more details about the singularity extraction procedure. It consists of carrying out analytically the convolution integral over the testing function for the singular part of the free-space Green's functions, that is, for 𝐺𝑠(𝑟,𝑟)=1/(4𝜋𝑅) with 𝑅=|𝑟𝑟|. We denote by 𝑧 the height of the observation point (on the surface of the cylindrical conductor) and, in a first instance, we consider the half basis function with a triangular shape equal to zero at 𝑧=𝑧𝑚 and equal to one at 𝑧=𝑧𝑝=𝑧𝑚+𝑑𝑙/2 where 𝑑𝑙 is the length of the domain over which the complete basis function is defined. Then, within a factor 1/(4𝜋), the inner integral in (1) can be decomposed into the two following terms:𝐼𝑎=𝑘2𝐽𝑡1(𝑑𝑙/2)𝑧𝑝𝑧𝑚𝑧𝑧𝑚𝑅𝐼𝑑𝑧𝑏=𝑑𝐽𝑡/𝑑𝑧1(𝑑𝑙/2)𝑧𝑝𝑧𝑚1𝑅𝑑𝑧(B.1) The 𝐼𝑎 integral is decomposed into two terms using 𝑧𝑧𝑚=(𝑧𝑧)+(𝑧𝑧𝑚) and 𝐼𝑎 and 𝐼𝑏 then become: 𝐼𝑎=𝑘2𝐽𝑡1𝐼(𝑑𝑙/2)1+𝑧𝑧𝑚𝐼2(B.2)𝐼𝑏=𝑑𝐽𝑡/𝑑𝑧1(𝑑𝑙/2)𝐼2(B.3) with𝐼1=𝑥2+𝑎2𝑥=𝑧𝑝𝑧𝑥=𝑧𝑚𝑧𝐼2=ln(𝑥+𝑥2+𝑎2)𝑥=𝑧𝑝𝑧𝑥=𝑧𝑚𝑧(B.4) A similar treatment is applied to the other half of the basis function. In that case, the differences are (𝑖) an overall change of sign, (𝑖𝑖)𝑧𝑚 is the previous 𝑧𝑝 and 𝑧𝑝=𝑧𝑚+𝑑𝑙/2 and (𝑖𝑖𝑖) the use of 𝑧𝑧𝑝 instead of 𝑧𝑧𝑚 in (B.2).

C. Organization of Routines

Here, we briefly summarize the different routines of the open-source code available on [4] and we provide some guidelines on how to try them.(1)wiremom-finite.m gives the currents on a finite array when it is excited at successive ports. To see how it can be called, one can have a look at the patterns.m routine, which provides the embedded element patterns. (2)wiremom-infinite.m is a similar code, for infinite arrays. To see how it can be called, one can have a look at asm.m, which corresponds to the exploitation of infinite-array solutions in the framework of the Array Scanning Method. (3)fininf.m compares finite and infinite-array solutions for the case of periodic excitations with inter-element phase shift 𝜓; it also makes use of the previous codes). (4)arrays-compare.m provides the brute-force and approximate currents for a finite array excited at element shift (defined inside the code). “Approximate” means with the help of the ASM-MBF method. The sweep.m routine computes the errors versus element spacing and versus frequency.