Microwave Journal
Featured Array

Selecting the Right 3D EM Solver for Periodic Antenna Arrays

July 20, 2022

When designing and simulating periodical structures, like antenna arrays or frequency selective surfaces, an engineer wants to have a reliable tool, that does not require hours of set up. Simulation time plays significant role here as well when working with arrays that have structures much larger that wavelength with millions of mesh cells.

Most popular 3D electromagnetic (EM) simulators offer time and frequency domain solvers. Both can be potentially used for periodical structure simulation, considering the specific solver features and nuances. RF engineers must carefully explore advantages and disadvantages of different solvers, especially when it comes to large simulation models that might take days to simulate.

This article goes through the most popular electromagnetic solvers for periodic structures, describing their optimal use cases, advantages and disadvantages. As a practical example, a 4x4 mmWave cavity antenna array is simulated using a Time Domain Solver, Direct Frequency Domain Solver and Domain Decomposition Solver. The goal is to compare the available 3D solvers and find the most optimal settings for simulations of periodic structures.

Solvers overview

The Time Domain Solver uses time at discrete locations and discrete time samples to calculate the EM fields. This solver is efficient for most high frequency applications such as connectors, transmission lines, filters, antennas, etc. and can obtain the entire broadband frequency behavior of the simulated device from a single calculation.

The Frequency Domain Solver uses Maxwell's equations, when a time-harmonic dependence of the fields and the excitation are assumed. A classical frequency domain calculation carries out the simulation frequency by frequency, and every frequency sample requires solving an equation system. In general, the Direct Frequency Solver is set for most cases. 

The Domain Decomposition Solver is another type of Frequency Domain Solver, that is supposed to make it easier and faster to simulate periodic structures. The difference between Domain Decomposition solvers and Direct solvers is in meshing, as it fractions the structure into smaller blocks or domains and adapts meshing for each domain.

Figure 1 shows how exactly Domain Decomposition Solver divides the structure into smaller blocks, using 2 types of domains: the orange color denotes base blocks, that fill evenly boundary box and the pink color denotes element blocks that contain an array element inside and have higher priority. Each element of an example array is embraced in individual element block, making the mesh process simpler to handle. Base domains are helpful when the simulated periodic structure consists of surrounding elements, like a radome, mechanical feed network or reflector.

Fig 1
Figure 1. Cavity array with Domain Decomposition view.

Alternative solvers

Modern mmWave applications often require a large number of antenna elements in an array. For example, some RADAR arrays consist of hundreds of elements, which makes the model large for simulation. The example model here consists of 16 elements, that are shown on Figure 2. Each element is a cavity antenna with three metal layers. The total dimensions of the array are 30 x 30 x 2 mm.

Fig 2
Figure 2. Dual-polarized cavity antenna array.

The operating frequency band for the array is 24 to 32 GHz. It is a 4x4 array, which results in total of 16 elements, or 16 ports. Most of mmWave applications require dual polarization, which multiplies number of ports by 2, resulting in 32.

Time Domain Solvers offer both sequential and simultaneous simulation of ports. Using the sequential excitation method in antenna arrays results in running time dependency on the total number of active ports in the model. When the count goes up to hundreds of excitation ports, it can result in days of simulation. To calculate S-parameters, the port modes must be stimulated sequentially. However, EM field distributions may be calculated with multiple port modes excited simultaneously. Instead of S-parameters, normalized spectra can be calculated in this case with the digital Fourier transform. Even if each port might be excited with a different time signal, the normalization refers to the previous selected reference signal. The stimulation signal of the port modes may differ from one port to another. For each port mode, it is possible to specify the magnitude of the signal and a time shift to vary the stimulation starting among all the port modes.

However, unrelated to simultaneous or sequential excitation type, the calculation with the Time Domain Solver provides full broadband frequency behavior with a single run, which is crucial for S-parameters control. However, simulation time with the Frequency Domain Solver is not dependent on number of ports in the structure, meaning that no matter how many ports the structure has, they all will be evaluated in a single calculation run.  The drawback is the Direct Frequency Solver requires a large amount of RAM for managing the simulation which may not be available. Another tricky place is the broadband simulations as the Frequency Domain Solver can handle only one frequency sample per run, so the number of samples directly affect the running time.

By dividing structure into smaller domains, Domain Decomposition Solver gives a faster simulation speed, as domains can be solved in parallel, depending on the number of cores. If the structure contains geometrically identical elements – like antenna arrays or frequency selective surfaces – a Domain Decomposition Solver allows setting up of repetitions. The repetition algorithm uses one reference domain for a group of identical domains, performing adapting meshing and ports calculation only once, and resulting in drastically decreased simulation and meshing time.

It is common knowledge, that Frequency Domain solvers require much more memory compared to Time Domain solvers, but it is getting better with Domain Decomposition solvers, as the peak memory relates to the number and size of domains per core. By making the domains smaller, the peak memory can also be lowered.


Regardless of solver type, meshing is an obligatory step in each simulation. The number of mesh cells determines the accuracy of the results and directly affects running time. When working with mmWave applications, simplification of the structure can be dangerous, as the size of elements is smaller so requires finer meshing for high accuracy. Even slight changes can cause inaccuracy in the simulation.

The accuracy requirements lead to proper meshing specifications.  Time Domain solvers are based on hexahedral shaped meshing. A hexahedral mesh is where the computational volume is made up of discrete, variable sized rectangular cuboids. Each cuboid is referred to as a mesh cell. In discretized form, each mesh cell represents a small volume in space where the electric and magnetic fields are computed.

A special feature of the Frequency Domain Solver is the support of both hexahedral and tetrahedral meshes. The tetrahedral mesh generation normally yields a relatively coarse initial mesh.  Therefore, it is strongly recommended to use the adaptive tetrahedral mesh refinement option to ensure accurate simulation results.

The mesh adaptation strategies of the Time Domain and Frequency Domain solvers are fundamentally different. The time Domain solver runs the entire broadband simulation for every mesh adaptation pass and evaluates the worst-case deviation of two subsequent S-parameter results. The   mesh   refinement   is   then   done   based   on information from the result of the broadband data. In contrast, the Frequency Domain Solver usually runs the mesh adaptation only for a single frequency point at a time. Once the adaptation is complete, the broadband results are computed by keeping the adapted mesh.

Since by default the Frequency Domain Solver mesh adaptation runs only for a single frequency point at a time, the location of this point within the frequency spectrum is very important. For weakly resonant structures, it is usually a good policy to select the highest frequency of interest for the mesh adaptation. This will ensure that even the fields with the shortest wavelength in the frequency sweep are sampled properly.

The smaller domains feature of the Domain Decomposition Solver brings benefits for the meshing process. The computation of each subdomain is carried out independently using a local mesh. The exchange of data in between the regions is performed in the edges of each domain. Since each region has its local mesh and coordinate system, the meshes do not coordinate the data exchange that is performed by interpolating it from one region to another. An advantage with the method is that it provides the possibility of having non uniform meshes. In this way it is possible to catch the electromagnetic fields of fine structural details without using the same fine mesh over the full structure.


Run time is one of the most crucial parameters when it comes to choosing the solver for simulation. Having hundreds of elements in an array leads to many hours of waiting until simulation is complete so naturally an engineer would want to have as lightweight model as possible that yield accurate results.

This example model for this work was simulated using hardware with 2x18 cores and 128 GB of RAM. Run time, mesh cells and memory usage are shown in the Table 1.

Solver type

Time Domain Solver

Direct Frequency Domain Solver

Domain Decomposition Solver

Simulation time per active port


24 minutes

9 minutes

Total simulation time

16 hours

12 hours

4.5 hours

Mesh cells per model

7.2 million

2.3 million

1.7 million

Peak memory consumption

5.6 Gb

320 Gb

110 Gb

Table 1. Comparison of the solvers

The number of frequency samples for the Frequency Domain solvers (both, Direct and Domain Decomposition) was set to 25. As discussed, this parameter is proportional to the run time, and results reveal exactly that. The Time domain solver has the longest run time, but the lowest memory consumption as well as truly broadband S-parameters. All 32 ports are excited sequentially, to enable for future postprocessing, for example connecting phase shifters or feeding networks on schematic level. Sequential excitation allows to manually control scanning, amplitude and phase values.

Direct Frequency Solver shows the worst results in this comparison, with simulation time closer to Time Domain Solver, but using 50 times more memory. The high memory consumption makes this approach not suitable for many engineers with limited hardware resources. On the other hand, Domain Decomposition Solver shows significantly lower simulation time, than both Time Domain and Direct Frequency Domain solvers, while using only one third of the Direct solver memory. By dividing simulated model into smaller domains, and applying repetitions to identical ones, the Domain Decomposition Solver decreases run time by a factor of three compared to the Time Domain Solver.

Figure 3 shows the comparison of calculated radiation efficiencies using the Time Domain and Domain Decomposition solvers. The difference varies between 0.05 to 0.1 dB.

Fig 3
Figure 3. Radiation efficiency comparison

Radiation patterns, shown in Figure 4, are almost identical with small differences in the backside radiation and grating lobes.

Fig 4a
Fig 4b
Figure 4. Radiation pattern comparison


Each solver approach with simulation comes with advantages and disadvantages. The Domain Decomposition Solver, being the latest solver introduced in recent years, looks very promising with features such as repetition, lower memory consumption and independence from the number of active ports in the structure. The repetition feature is the most promising and useful when it comes to simulation of antenna arrays or frequency selective surfaces. Using one reference block for initial and adaptive meshing reduces running time significantly, as shown in comparison Table 1.

The Domain Decomposition Solver requires the longest simulation preparation, as the process is not fully automated. Sub-domains need to have coarse meshing on the surface to avoid intersections and overcomplication of the mesh. In practice this means that each element of the periodic structure must be put in a vacuum box. Special attention must be given to boundary conditions as Domain Decomposition Solver uses Surface Impedance Boundary Conditions, and therefore it should not lie in the reactive field of the antenna. Generally, a distance of 1.5 λ is sufficient. Additionally, sub-domains intersections are not desired, due to increasing meshing complexity. The Direct Frequency Solver is not well suited for big array simulations, especially at higher frequencies. The memory consumption is unpredictable and not sufficient for most applications.

The Time Domain Solver is one of the reliable methods that can be used for mmWave antenna arrays with a smaller number of excitation ports, or in cases when sequential excitation is not required. Using simultaneous excitation of all ports allows for only one simulation run, similar to Frequency Domain solvers, while having low memory consumption and relatively low run time.

In conclusion, each solver has a use case where it shows the best performance, but the Domain Decomposition Solver demonstrates the most promising results with large antenna array structures and can potentially become a replacement of Time Domain Solver in those cases.