Upgraded Compression solver for inductive computations in Flux PEEC


The Compression solver provided in Flux PEEC for inductive calculations has been upgraded in Flux 2022.1. The new implementation benefits from improved matrix compression techniques that may significantly reduce the memory requirements and the solving time in the case of large Flux PEEC projects.

The concerned Flux PEEC applications are:
  • Conductor Impedances (with and without capacitive effects);
  • Supplied conductors (with and without capacitive effects, with thermal coupling).

Simplification of the Compression solver options

The Compression solver becomes easier to use in version 2022.1, since its solving options are simplified with this upgrade. The procedure to select the Compression solver in a Flux PEEC project remains the same:

  • In the Solving menu, the user must select Solving optionsEdit to open the Solving options dialog box.
  • Then, in Inductive solving options, the user must select Compression solver in the Type of solver drop-down menu to enforce its choice.
The following modifications were made in the Solving options dialog box:
  • In its Preconditioner tab, the provided options are now Block LU, MUMPS LU, LU decomposition and No preconditioner. The InnerOuter preconditioner is no longer provided in the new implementation.
  • Its Compression matrix tab has been renamed to Matrix Compression. In this tab, the user may still choose the type of compression (Adaptive Multi-Level Fast Multipole Method (AMLFMM) or No compression).
  • In the case of AMLFMM compression, the advanced domain partitioning and multipole order parameters are now automatically managed by the new implementation. Thus, the corresponding parameters are no longer available.
  • The Options tab available until version 2022.0 was suppressed, since its solving parameters are no longer required by the new implementation of the Compression solver.

Keep in mind that the solver parameters that are automatically set when the user selects the new Compression solver are expected to provide good results for most Flux PEEC projects.

Automatic choice of the solver in Flux PEEC

With the new implementation of the Compression solver, the behavior of the default option Solver automatically chosen in the Type of solver drop-down menu (available in the aforementioned Solving options dialog box) has also changed in version 2022.1. Previously, in version 2022.0, selecting this option has always resulted in a solution with the Generic inductive solver. From now on, when this automatic option is selected, Flux PEEC will choose internally the upgraded Compression solver in the case of projects containing a large number of discretization elements. On the other hand, the Generic solver is chosen internally for projects with small discretization meshes and, in the case of Conductor Impedance applications, if the project contains more than one impedance probe.

Backward compatibility

In version 2022.1, backward compatibility is assured for existing Flux PEEC projects that were solved with the previous implementation of the compression solver.

Thus, under certain circumstances, the following warning message may be displayed in Flux PEEC's console:

Warning: The compression solver has been upgraded since this project was last saved. The solving options have been updated accordingly. Please check the new settings in SolvingSolving optionsEdit.
Actions that may trigger this warning in an old Flux PEEC project include:
  • Deleting results that were computed with the previous implementation of the Compression solver.
  • Opening an unsolved project that had the previous implementation of the Compression solver selected in its solving options.
  • Executing the PyFlux command that corresponded to the previous implementation of the Compression solver.

Example of application

This section presents speedup results obtained with the new Compression solver in Flux PEEC 2022.1.

The device considered in this example corresponds to a power converter busbar modeled with the Conductor impedances application of Flux PEEC. The imported geometry was simplified and meshed with two elements along the thickness of the conducting elements of the busbar, leading to a total of 40478 discretization elements. The project contains a single impedance probe and was solved for a single frequency with the Compression solver with versions 2022.0 and 2022.1 of Flux PEEC.

Table 1 below displays the observed computation times and the resulting speedup values for an increasing number of processor cores. All solutions were obtained with the same computer, and for all speedup values, the reference time corresponds to the solution obtained with four processor cores in Flux PEEC 2022.0.

Table 1. Total computation time speedup up verified in Flux PEEC 2022.1 for a power converter busbar problem (Conductor impedances application at a single frequency, 1 single impedance probe and 40478 discretization elements).
Compression solver version Number of cores Computation time (minutes) Speedup
Flux PEEC 2022.0 4 457 (reference) 1
8 154 2.97
16 107 4.27
Flux PEEC 2022.1 4 74 6.14
8 60 7.62
16 53 8.67

The speedup results in Table 1 show the new Compression solver is now at least six times faster than its previous implementation in this particular example.