Iterative Solver
When solving an electromagnetic simulation in CENOS RF, the physical problem can be understood as an equation system. Solving this system involves performing a matrix inversion. Depending on the chosen approach, this inversion can be carried out using either a direct solver or an iterative solver.
What is an Iterative Solver?
An iterative solver is a gradual and efficient approach for solving large systems of equations, it:
- starts from an initial approximation of the solution
- repeatedly improves this approximation
- stops when a predefined convergence criterion is met
Key Benefits
The iterative solver is designed for performance, especially in large simulation cases.
- Lower memory usage. Unlike direct methods, the iterative solver does not require storing the full data in RAM.
- Efficiency with large models. Iterative solver handles large meshes and complex geometries more efficiently.
- Faster for large problems. For large models, iterative solver can significantly reduce computation time compared to direct solver.
Direct vs Iterative Solver
The direct solver is highly stable and always converges, while the iterative solver’s success depends on whether it converges – in well-defined simulation setups, convergence is typically achieved without issues. This difference also reflects in memory usage: the direct solver requires a large amount of RAM, whereas the iterative solver is more memory-efficient. Similarly, for large-scale problems, the direct solver tends to be slower, while the iterative solver can solve the system more quickly.
The following graph shows the computation time as a function of the number of mesh elements for the two numerical approaches. The results were obtained on a system with 128 GB of RAM, using the Accurate algorithm and considering a multi-frequency sweep in the simulation.

It can be observed that the direct solver exhibits an increase in computation time as the mesh size grows. In contrast, the iterative solver maintains significantly lower computation times. Although a gradual increase with the number of elements is also observed, this growth is much more controlled. For large meshes (above 400,000 elements), the required computation time remains substantially lower than that of the direct solver.
These results show that the iterative solver scales better than the direct solver in large simulations, especially under demanding setups like using the Accurate algorithm with multi-frequency analysis.
When to Use Iterative Solver
The iterative solver is recommended when:
- working with large models
- RAM memory resources are limited
- working with Accurate algorithm
For CENOS RF simulations with complex geometries and large meshes, the iterative solver provides balance between accuracy and efficiency.
