*2.3. The Developed Computer Code*

The computer code was developed in Python [38] and utilized NumPy [39] to carry out the necessary matrix computations. The Visualization Toolkit (VTK) [40] and meshio [41] libraries were used to export solution data to Kitware ParaView [42] for visualization. Although no graphical user interface (GUI) is available yet, the authors plan to add it in the future, for example, via the Django web framework [43]. Please note that the code is not publicly available.

Apart from the inclusion of heat transfer, many additional improvements of the code have been made since the publication of the initial article discussing the FEA-based model [26]. The most important one probably is parallelization of the mass flow rate corrector step (please see [26] for details). As the correction algorithm was carried out independently for each mesh edge, a set of asynchronous workers was created using the standard Python multiprocessing library, and the correction tasks were processed in batches on all available CPU cores. This then results in much shorter computational times. Parallelization of the internal matrix computations, however, was not implemented because, given the numbers of elements in the simplified meshes, the matrices were rather small. In other words, the CPU time saved by parallel solution would be wasted on auxiliary operations needed to split the task to multiple cores, thus rendering the net improvement either negligible or even negative.
