# Accelerating FVM-Based Parallel Fluid Simulations with Better Grid Renumbering Methods
## 5 Results
### Reducing Parallel Simulation Time of a Real-World CFD Case  
There is a consensus that reducing the profile and bandwidth of the matrix can improve the solving speed of the linear system. However, fluid simulations also involve matrix assembly and parallel communication on complex unstructured grids. As described in the previous section, the calculations in FVM-based simulations are directly related to the cell numbers. Simple metrics about the linear systems can not provide accurate measurement for a complete numerical simulation. Therefore, we build a real-world CFD case on YHACT for quantitatively analyzing the algorithm and the framework. As shown in Figure 7, the flow through a fuel rod bundle (named FuelRodBundleFlow) with positioning lattice is simulated. This case comes from real-world scenarios in a nuclear reactor core. The numerical results contain the essential thermal-hydraulics characteristics in the fluid flow. It is crucial for nuclear core design and optimization. The stirred wings on the positioning lattice can effectively mix the coolant in the core and reduce the fuel rod surface temperature. It is widely used in engineering practice, and its fluid computational domain and cross-sectional grid model are shown in Figure 7a,b. Figure 7c,d reflect the consistency of velocity and pressure in the \(z\)-direction for the case with multiple cores in parallel and single cores in serial. The data consistency of the case FuelRodBundleFlow with different computation modes and numbering methods were analyzed using \(Tecplot\). Figure 7c represents the velocity distribution in the \(z\)-axis direction for the case in both serial and parallel computation modes. Different numbering methods are used for each computation mode. The velocity distribution of each slice is consistent \begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline \multirow{2}{*}{**Method**} & \multirow{2}{*}{**Index**} & \multicolumn{5}{c}{**Quantity (k)**} \\ \cline{3-8}  & & **270** & **800** & **1600** & **2240** & **4000** & **8648** \\ \hline \multirow{3}{*}{Original} & bandwidth & 272,883 & 802,837 & 1,601,796 & 2,236,304 & 4,003,663 & 8,645,851 \\  & profile & 31,475,740,701 & 294,927,759,978 & 1,130,160,745,627 & 2,279,170,105,336 & 6,842,108,134,704 & 30,723,125,177,693 \\  & MDMP & 913.196 & 45,719,74 & 90,351,71 & 133,808,299 & 238,231,64 & 409,337.80 \\ \hline \multirow{3}{*}{Greedy} & bandwidth & 228,185 & 514,128 & 1,765,540 & 1,219,768 & 2,184,311 & 3,428,878 \\  & (growth) & (16,38\%) & (35,96\%) & (26,55\%) & (45,46\%) & (45,44\%) & (60,34\%) \\  & profile & 2,706,632,365 & 15,055,731,993 & 87,668,806,598 & 110,044,892,719 & 437,301,559,155 & 1,420,551,357,616 \\  & (growth) & (91,47\%) & (94,6\%) & (92,24\%) & (95,17\%) & (93,6\%) & (95,38\%) \\  & MDMP & 37.23 & 41.37 & 43.95 & 42.71 & 46.23 & 4,373 \\  & (growth) & (99.59226\%) & (99.9051\%) & (99.95136\%) & (99.96808\%) & (99.9806\%) & (99.98932\%) \\ \hline \multirow{3}{*}{CQ} & bandwidth & 47.840 & 110,648 & 254,891 & 560,816 & 685,326 & 610,811 \\  & (growth) & (82.47\%) & (86.21\%) & (84,90\%) & (74,92\%) & (82.88\%) & (92,94\%) \\ \cline{1-1}  & profile & 1,023,867,234 & 8,054,992,527 & 35,761,499,444 & 56,943,570,117 & 206,200,122,641 & 400,613,572,413 \\ \cline{1-1}  & (growth) & (96.75\%) & (97.27\%) & (96,84\%) & (97.50\%) & (69.99\%) & (98.70\%) \\ \cline{1-1}  & MDMP & 128.10 & 298.63 & 767.87 & 96.31 & 1070,11 & 2025,220 \\ \cline{1-1}  & (growth) & (98.59720\%) & (99.34683\%) & (99.15013\%) & (99.92803\%) & (99.55081\%) & (99.49865\%) \\ \hline \hline \end{tabular}
\end{table} 
Table 5: Mesh quality comparison. Each algorithm measures the nature of the sparse matrix using three metrics, bandwidth, profile and MDMP, respectively. The round brackets indicate the degree of optimization of the current data relative to the original grid data. with an error of no more than \(10^{-5}\). Figure 7d shows the pressure distribution in the \(z\)-axis direction for different calculation modes and numbering methods.