The finite element method is a key player in computational electromagnetics for designing RF (Radio Frequency) components such as waveguides. The frequencydomain analysis is fundamental to identify the characteristics of the components. For the conventional frequencydomain electromagnetic analysis using FEM (Finite Element Method), the system matrix is complexnumbered as well as indefinite. The iterative solvers can be faster than the direct solver when the solver convergence is guaranteed and done in a few steps. However, such complexnumbered and indefinite systems are hard to exploit the merit of the iterative solver. It is also hard to benefit from matrix factorization techniques due to varying system matrix parts according to frequency. Overall, it is hard to adopt conventional iterative solvers even though the system matrix is sparse. A new parallel iterative FEM solver for frequency domain analysis is implemented for inhomogeneous waveguide structures in this paper. In this implementation, the previous solution of the iterative solver of Matlab (Matrix Laboratory) employing the preconditioner is used for the initial guess for the next step’s solution process. The overlapped parallel stage using Matlab’s Parallel Computing Toolbox is also proposed to alleviate the cold starting, which ruins the convergence of early steps in each parallel stage. Numerical experiments based on waveguide structures have demonstrated the accuracy and efficiency of the proposed scheme.
The analysis of electromagnetic structures requires solving the Maxwell equation according to structural specialties; however, obtaining an analytical solution is usually limited to particular cases with strong symmetry [
Representative electromagnetic numerical techniques include a finite difference time domain (FDTD), a method of moment (MoM), and a finite element method (FEM). FDTD is a method of interpreting Maxwell’s equations using differential equations in the time domain, which can easily handle the anisotropy and inhomogeneity of the medium and is known to be simple to generate meshes but challenging to model curved surfaces [
Contrary to the techniques described above, FEM is a type of electromagnetic analysis method based on differential equations and is based on dividing the region of interpretation into finite elements. Although this technique is known to be more mathematically complex than other numerical methods, it is possible to model complex structures and curves using meshes such as triangles and tetrahedrons. Furthermore, the matrix to be solved becomes a sparse matrix; hence it can effectively adopt iterative solvers [
However, in the analysis of the frequency domain of FEM, the system matrix subject to the solution becomes a complex matrix with an indefinite property [
This paper presents the analysis results of the S11 parameter of the inhomogeneous rectangular waveguide using the edge element of FEM. The simulation was implemented using the
This paper consists of the following. Section 2 describes the fundamentals of finite element method and iterative solvers, Section 3 demonstrates the implementation of parallel iterative FEM solvers for waveguide analysis, Section 4 shows simulation results and performance evaluation, and finally, Section 5 concludes the paper.
In this paper, we employ a completely selfcoded FEM to analyze the reflection coefficient S11 parameter for the waveguide structure. At the early stage, the boundary value problem of the waveguide begins with the quadratic differential equation such as
Applying a variational principle to an electric field with the differential equation on a waveguide leads to the functional form of
In addition,
In
Finally, the reflection coefficient S11 can be obtained by substituting the derived electric field in
The system matrix generated from the FEM technique in the frequency domain has a sparse property. In addition, if edge numbering, that is, connectivity, is efficiently woven in the process of creating a mesh, matrix bandwidth can be narrowed, making it a better environment to apply the iterative solver compared to the direct solver [
‘bicg’ (biconjugate gradients) can be used when the matrix is positive definite and symmetric, and it is possible to have a solution without satisfying these properties. However, the above matrix properties must be satisfied for faster convergence and accurate results [
The backslash command is a representative direct solver used in Matlab. For example, if the system to be analyzed is an upper or lower triangular matrix, backward/forward substitution can be applied. For another example, if a matrix is a symmetric or Hermitian matrix, Cholesky factorization can be applied. Other examples of backslash are shown in
Matrix type  Solve technique 

Upper or lower triangular matrix  Backward/Forward substitution 
Permutation of triangular matrix  Permuted back substitution 
Symmetric or Hermitian matrix  Cholesky factorization 
Hessenberg matrix  Reduce to upper triangular 
Square matrix  PA = LU (P is a permutation matrix. A is a square matrix. L is a lower triangular matrix. U is an upper triangular matrix.) 
Not square matrix  Householder QR (Q is an orthogonal matrix Q. R is an upper triangular matrix.) 
Several strategies can be applied to solve the ‘cold start’ problems. First, increasing the number of iterations for the solver convergence is one solution. Rather than the increasing number of iterations for convergence throughout the whole range, the number of iterations can be increased only in the early stage. Another solution is starting the simulation as early as the bias in order to alleviate the accuracy issue that occurs in the early stages of the analysis. In this case, it is unavoidable to take redundant computation for the bias. Also, it can combine with parallel processing techniques to compensate for redundant simulation time. Since the number of iterations for solver convergence has a direct influence on the simulation time, it will be necessary to rationally adjust the iteration number for each step.
When applying parallel processing to the abovementioned
The parallel processing is implemented using Matlab’s Parallel Computing Toolbox. A typical
In this paper, the analysis was conducted on the inhomogeneous waveguide structure, as shown in
Component  Specification 

Processor  11th Gen Intel(R) Core(TM) i911900 K @ 3.50 GHz 3.50 GHz 
RAM  128 GB 
Operating system  Windows 10 Pro 64bits 
Graphics card  NVIDIA GeForce RTX 3080 Ti 
The test setting is as follows; The number of samples used in the simulation is 1,000, 5,000, and 10,000, the bias is 10 and 25, and iterations for the early stage are 40, and iterations for the normal stage are 20, 15, and 10. The number of samples affects the frequency interval, and the more samples, the shorter the analysis interval. ‘Bias’ refers to the interval of the front part that is calculated in advance to alleviate the problem that the early stage solution fluctuates; for example, in the case of bias 10, the actual simulation starts as early as the interval of 10 samples. In addition, the ‘early stage iterations’ means the number of iterations for iterative solver convergence during the early stage, and the higher the number of iterations, the higher the accuracy. The ‘normal stage iterations’ refers to the number of iterations for iterative solver convergence in the actual section after the early stage. Early stage iterations are chosen higher (that is, 40) than the normal stage to alleviate the convergence issues in coldstart situation. Since the normal stage corresponds to most of the simulation, the setting of the normal stage directly affects the analysis speed. The smaller the value of iterations, the faster the simulation speed but the lower the accuracy. The normal stage does not require a large iteration for a convergence compared to the early stage, so predetermined values 10, 15, and 20 were adopted. An example of proposed solver implementation under Matlab is
The analysis was conducted by changing the number of edges that directly affect accuracy when analyzing FEM. The purpose of this simulation test is to find the most efficient parameter setting, and the simulation setting for the above conditions is listed in the following
Algorithms  # of samples  Solver  Edges  Bias 
Early Stage 
Normal Stage 

GM111  1,000 
GMRES  1,427  10  40  20 
GM121  GMRES  1,427  10  40  15  
GM131  GMRES  1,427  10  40  10  
SR11  Matlab[\]  1,427        
GM211  GMRES  5,112  25  40  20  
GM221  GMRES  5,112  25  40  15  
GM231  GMRES  5,112  25  40  10  
SR21  Matlab[\]  5,112       
Algorithms  # of samples  Solver  Edges  Bias 
Early Stage 
Normal Stage 

GM112  1,000 
GMRES  626  10  40  20 
GM122  GMRES  626  10  40  15  
GM132  GMRES  626  10  40  10  
SR12  Matlab[\]  626        
GM212  GMRES  4,312  25  40  20  
GM222  GMRES  4,312  25  40  15  
GM232  GMRES  4,312  25  40  10  
SR22  Matlab[\]  4,312       
Similar to the previous case,
It can be observed that the more sampling intervals and the fewer edges, the stronger the proposed scheme is. For the case of GM132, the simulation speed is about 2.7 times faster even though the same RMSE as the Matlab’s backslash is shown. Also, all cases demonstrate good accuracy. RMSE, RMSPE and elapsed time for structure 1/RMSE, RMSPE and elapsed time for structure 2 are shown in
Algorithms  # of samples  

1,000  5,000  10,000  
RMSE  RMSPE  time ( 
RMSE  RMSPE  time ( 
RMSE  RMSPE  time ( 

GM111  0.283  7.698  10.59  0.273  15.049  43.81  0.271  16.861  86.67 
GM121  0.288  7.772  8.81  0.274  15.085  0.272  16.881  
GM131  0.297  7.937  0.276  15.161  0.273  16.933  
SR11  0.270  7.474  8.31  0.270  14.963  41.55  0.270  16.812  81.92 
GM211  0.131  3.828  129.59  0.106  6.502  505.14  0.102  7.155  983.95 
GM221  0.136  4.142  110.11  0.109  6.681  409.96  0.104  7.252  
GM231  0.154  4.540  91.13  0.115  5.817  0.109  7.462  
SR21  0.099  3.072  80.78  0.099  6.209  404.58  0.099  6.981  814.99 
Algorithms  # of samples  

1,000  5,000  10,000  
RMSE  RMSPE  time ( 
RMSE  RMSPE  time ( 
RMSE  RMSPE  time ( 

GM112  0.055  5.693  0.054  5.541  0.054  5.517  
GM122  0.056  5.796  0.054  5.559  0.054  5.526  
GM132  0.057  6.015  0.054  5.599  0.054  5.548  
SR12  0.054  5.470  2.83  0.054  5.492  13.89  0.054  5.492  27.54 
GM212  0.029  2.390  91.55  0.026  2.046  360.95  0.026  2.006  687.72 
GM222  0.030  2.575  77.61  0.027  2.075  0.026  2.023  
GM232  0.033  3.427  64.25  0.027  2.156  0.027  2.071  
SR22  0.026  1.963  59.75  0.026  1.972  296.04  0.026  1.972  591.99 
In this paper, a new parallel iterative FEM solver for the S parameter is implemented for 3D inhomogeneous waveguide structures. Previous conventional iterative solvers are hard to be applied because the frequency domain system matrix is complexnumbered and indefinite. The proposed scheme allows applying a
It is also noted that parallelization was performed only on the proposed scheme, so Matalb’s backslash is not parallelized in the paper. Thus, parallelized backslash is likely to show better performance than the current proposed scheme. In the future, the variation of the previous solution input to the iterative solver, e.g., the average of the previous two solutions, can be further tested to demonstrate the proposed scheme. Also, we can further try larger unknown cases to deal with realistic onchip structures.