CFD Simulations AC7-04: Difference between revisions
(25 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
}} | }} | ||
__TOC__ | __TOC__ | ||
=A pulsatile 3D flow relevant to thoracic hemodynamics: CFD - 4D MRI comparison= | =A pulsatile 3D flow relevant to thoracic hemodynamics: CFD - 4D Flow MRI comparison= | ||
'''Application Challenge AC7-04''' © copyright ERCOFTAC 2021 | '''Application Challenge AC7-04''' © copyright ERCOFTAC 2021 | ||
=CFD Simulations= | =CFD Simulations= | ||
==Overview of CFD Simulation== | ==Overview of CFD Simulation== | ||
Line 23: | Line 24: | ||
===Solution Strategy=== | ===Solution Strategy=== | ||
The blood, or blood-mimicking fluid, is described by the | The blood, or blood-mimicking fluid, is described by the filtered Navier-Stokes equations (NSE): | ||
<math> \nabla \cdot \mathbf{u} = 0 </math> | <math> | ||
\left\{\begin{array}{lcl} | |||
{\displaystyle \frac{\partial \overline{\left[\mathbf{u}\right]}}{\partial t} + \nabla \cdot \left( \overline{\left[\mathbf{u}\right]} \otimes \overline{\left[\mathbf{u}\right]} \right)= -\frac{\nabla \overline{\left[p\right]}}{\rho}+\left(\nu+\nu_{SGS}\right) \Delta \overline{\left[\mathbf{u}\right]}} \\ | |||
{\displaystyle \nabla \cdot \overline{\left[\mathbf{u}\right]}=0} | |||
\end{array} | |||
\right. </math> | |||
<math>\ | where <math>\overline{\left[.\right]}, \mathbf{u}, p, \rho = 1020 \text{ kg/m}^{3}, \nu= 4.02 \times 10^{-6} \text{m}^{2}\text{/s}</math> and <math>\nu_{SGS}</math> are the filter operator, velocity field, pressure field, density, kinematic viscosity and subgrid-scale kinematic viscosity of the fluid, respectively. | ||
</math> | |||
The governing equations are discretized and solved using the YALES2BIO solver. In the present simulation a centred fourth-order numerical scheme with an explicit fourth-order Runge-Kutta time advancement scheme was used. To ensure numerical stability, the time step was computed to keep a CFL number equal to 0.9. The pressure advancement and divergence-free condition were met thanks to a fractional-step method (Kim & Moin, 1985 [11]), a modified version of the Chorin’s algorithm (Chorin, 1968 [7]). The Sigma eddy-viscosity-based LES model (Nicoud et al., 2011 [12]) was employed to take into account the turbulence effects. In this model the subgrid-scale kinematic viscosity is modelled as: | |||
<math> | |||
\nu_{SGS} = \left( C \Delta \right)^2 \frac{\sigma_3\left(\sigma_1-\sigma_2\right)\left(\sigma_2-\sigma_3\right)}{\sigma_1^2} | |||
</math> | |||
where <math>C = 1.35</math> is the model constant, <math>\Delta</math> is the typical size of the local cell of the mesh and <math>\sigma_1 \geq \sigma_2 \geq \sigma_3 \geq 0</math> are the three singular values of the local velocity gradient tensor [12]. The Sigma model guarantees that no eddy viscosity is applied in canonical laminar flows and is well adapted to wall-bounded flows and transitional flows [13,14]. | |||
===Boundary Conditions=== | ===Boundary Conditions=== | ||
Zero pressure condition was prescribed at the outlet section while | Zero pressure condition was prescribed at the outlet section while no-slip condition was imposed at the solid boundaries. Over the whole cycle, an averaged <math>y^+ = 2.5</math> was reported. The highest values were found at peak systole with a mean <math>y^+ = 3.1</math> and maximal <math>y^+ = 8.3</math>. | ||
</math> | |||
To prescribe the velocity field at the inlet, a pixel-based inflow was derived from the 2D cine PC-MRI measurements. | |||
Beforehand the velocity field from these measurements were corrected to account for partial volume effects caused by the phantom walls and random noise, in particular for the through-plane velocity component <math>w</math>. Thereby, a linear <math>w</math>-distribution was assumed between <math>0</math> at the wall and <math>w(R_{lim})</math> at <math>R_{lim}</math>, where <math>R_{lim}</math> is an user-defined inner radius, here chosen to be <math>95\%</math> of the radius of the circular cross-sectional inlet surface. | |||
Then a 2D bilinear interpolation from this corrected velocity field onto the inlet surface of the CFD domain was performed for each of the 30 cardiac phases. Once the velocity field had been spatially interpolated, its discrete temporal evolution had to be converted into a time-continuous signal. As the flow rate delivered by the pump was periodic, a trigonometric interpolation was used by applying at each node a discrete Fourier transform of the temporally discretized velocity signal. Thereby 15 non-redundant complex Fourier coefficients were extracted and the continuous inlet velocity signal could be achieved by injected back these coefficients into a Fourier series expansion for each node of the inlet surface. | Then a 2D bilinear interpolation from this corrected velocity field onto the inlet surface of the CFD domain was performed for each of the 30 cardiac phases. Once the velocity field had been spatially interpolated, its discrete temporal evolution had to be converted into a time-continuous signal. As the flow rate delivered by the pump was periodic, a trigonometric interpolation was used by applying at each node a discrete Fourier transform of the temporally discretized velocity signal. Thereby 15 non-redundant complex Fourier coefficients were extracted and the continuous inlet velocity signal could be achieved by injected back these coefficients into a Fourier series expansion for each node of the inlet surface. | ||
Line 52: | Line 57: | ||
'''Phase-averaging''' | '''Phase-averaging''' | ||
First, the CFD was phase-averaged. Indeed during a conventional 4D Flow scan, the k-space (spatial frequencies space) is sequentially filled over hundreds of RF-pulses and magnetic gradients sequences. Thus it does not appear relevant to compare instantaneous CFD velocity fields with MRI measurements. Another argument is that high Reynolds number unsteady flows may lead to cycle-to-cycle fluctuations. | First, the CFD was phase-averaged. Indeed during a conventional 4D Flow scan, the k-space (spatial frequencies space) is sequentially filled over hundreds of RF-pulses and magnetic gradients sequences. Thus it does not appear relevant to compare instantaneous CFD velocity fields with MRI measurements. Another argument is that high Reynolds number unsteady flows may lead to cycle-to-cycle fluctuations. Hence an appropriate way seems to be to phase-average the simulated flow velocity field over a sufficiently representative number of cardiac cycles. The phase-averaged velocity <math>\bar{\mathbf{u}}(\mathbf{x},t)</math> at spatial coordinates <math>\mathbf{x} = (x,y,z)</math> and at time <math>t</math> was defined as: | ||
<math> | <math> | ||
Line 58: | Line 63: | ||
</math> | </math> | ||
where <math>\mathbf{u}(\mathbf{x},t)</math> refers to instantaneous velocity vector and <math>N = 30</math> the total number of cycles of period <math>T = | where <math>\mathbf{u}(\mathbf{x},t)</math> refers to the instantaneous velocity vector and <math>N = 30</math> is the total number of cycles of period <math>T = 1</math> s. As will be further expanded on in the numerical accuracy section, the first 10 simulated cycles were removed to cancel the effect of the arbitrary initial condition, and thus <math>N</math> corresponds to the number of cycles computed afterwards. | ||
'''Downsampling''' | '''Downsampling''' | ||
Then, both | Then, the results of both methods have to be given on the same grid in order to allow a quantitative comparison. One possibility is to interpolate the MRI velocity fields on the finer CFD grid. Another method, which is the one chosen here, is to downsample the CFD velocity fields onto the coarser MRI grid. The idea of the downsampling method is to localize the CFD nodes within a given MRI voxel and to average the contributions of each CFD node corresponding to this MRI voxel in order to build a low resolution CFD (LR-CFD) velocity field. The steps of the downsampling process (Fig. 6) were the following: first the MRI grid was subsampled with 5 voxels in each direction (5<math>^3</math> = 125 subvoxels per voxel). Then the CFD solution was linearly interpolated on the subsampled Cartesian grid. Finally these interpolated velocity fields were averaged over the 125 subvoxels included in each MRI voxel, which lead to the LR-CFD velocities expressed on the MRI grid. | ||
[[File:AC7-04_Downsampling.png|600px|center]] | [[File:AC7-04_Downsampling.png|600px|center]] | ||
<div style="text-align: center;"> | <div style="text-align: center;"> | ||
'''Figure 6:''' Illustration of the downsampling process | '''Figure 6:''' Illustration of the 3D downsampling process as viewed from the coronal mid (xz)-plane. The MRI grid is first subsampled with 5 voxels in each direction (125 subvoxels per voxel). The CFD solution is linearly interpolated on the subsampled grid, which is downsampled back to the MRI grid by averaging the velocity over the 125 subvoxels included in each MRI voxel. | ||
The MRI grid is first subsampled with 5 voxels in each direction (125 subvoxels per voxel). The CFD solution is linearly interpolated on the subsampled grid, which is downsampled back to the MRI grid by averaging the velocity over the 125 subvoxels included in each MRI voxel. | |||
</div> | </div> | ||
===Numerical Accuracy=== | ===Numerical Accuracy=== | ||
The numerical accuracy studies were conducted on previously obtained data and are detailed in T. Puiseux's PhD thesis [1]. The CFD simulation process was the same as the one described above. The only difference | The numerical accuracy studies were partly conducted on previously obtained data and are detailed in T. Puiseux's PhD thesis [1]. The CFD simulation process was the same as the one described above. The only difference to the data exposed in this document is the shape of the inlet velocity profile. Note however that the peak systolic Reynolds numbers at the inlet are very similar (1830 in this previous study against 1915 here). This allows us to have confidence in these previous analyses, which were conducted for mesh convergence and phase-averaging sensitivity. Turbulence modelling employed for the subgrid scales was analysed for the present data. | ||
'''Mesh sensitivity analysis''' | '''Mesh sensitivity analysis''' | ||
To ensure spatial convergence of the simulations, the effects of the mesh were studied on 3 different meshes: a coarse one with 622 | To ensure spatial convergence of the simulations, the effects of the mesh were studied on 3 different meshes: a coarse one with 622 thousand cells (cell size = 1.3 mm), a medium one with 1 284 thousand cells (cell size = 1.0 mm) and a fine one with 3 812 thousand cells (cell size = 0.7 mm). The magnitude of the phase-averaged velocity in the aneurysm resulted in a numerical uncertainty of 1.88% for the latter mesh, with an apparent spatial order of convergence p = 2.0 (see Sigüenza et al., 2016 [15] for further details on the method). Therefore the fine mesh was considered fine enough for the velocity field to be spatially converged and independent of the spatial resolution. | ||
'''Phase-averaging sensitivity analysis''' | '''Phase-averaging sensitivity analysis''' | ||
A sensitivity analysis was carried out to estimate the minimal number of cycles needed for the phase-averaged velocities to converge. First, as it was mentioned in the paragraph about the phase-averaging process, the first 10 cycles were removed to cancel the impact of the initial condition. 60 cycles were then simulated. The results are presented | A sensitivity analysis was carried out to estimate the minimal number of cycles needed for the phase-averaged velocities to converge. First, as it was mentioned in the paragraph about the phase-averaging process, the first 10 cycles were removed to cancel the impact of the initial condition. 60 cycles were then simulated and the 60-cycle phase-averaged velocity was compared to the phase-averaged velocity had the simulation been simulated for <math>n</math> cycles, with <math>n<60</math>. The results are presented in Fig. 7, where the metric used for analysis is the Pearson's correlation coefficient <math>r^2</math>. The <math>r^2</math>-coefficient measures the linear correlation between two sets of data and is defined as: | ||
<math> | |||
r^2_{ab} = \frac{(\sum_{i=1}^N (a_i - \overline{a}) (b_i - \overline{b}))^2}{\sum_{i=1}^N (a_i - \overline{a})^2 \sum_{i=1}^N (b_i - \overline{b})^2} | |||
</math> | |||
where <math>a</math> and <math>b</math> are two datasets, <math>N</math> the sample size, the subscript <math>i</math> the index of the individual sample points and <math>\overline{\cdot}</math> the sample mean. | |||
The results show that whereas the main components of the velocity (<math>u</math> and <math>w</math>) were well-converged after about 5 cycles, around 30 cycles were required for the transverse component of the velocity (<math>v</math>). Thereby, 30 cycles were considered sufficient to reach a reasonable asymptotic value for the velocity field. Furthermore, the reproducibility of the process was tested by extracting and independently phase-averaging two subsequent set of 30 cycles from the 60 cycles simulated. High correlation levels of the Pearson’s correlation coefficient <math>r^2</math> were found <math>(r^2(u) = 0.995, \ r^2(v) = 0.930, \ r^2(w) = 0.999 \text{ and } r^2(\vert\vert\mathbf{u}\vert\vert) = 0.997)</math>, which confirms that the process was independent from the set of cycles selected. | |||
[[File:AC7-04_PhaseAvConv.png|450px|center]] | [[File:AC7-04_PhaseAvConv.png|450px|center]] | ||
<div style="text-align: center;"> | <div style="text-align: center;"> | ||
'''Figure 7:''' Evolution of the Pearson’s correlations (<math>r^2</math>) between phase-averaged CFD velocity computed over different numbers of cycles and the 60-cycle phase-averaged CFD velocity. | '''Figure 7:''' Evolution of the Pearson’s correlations (<math>r^2</math>) between phase-averaged CFD velocity computed over different numbers of cycles and the 60-cycle phase-averaged CFD velocity. All nodes of the computation domain were included in the metric. | ||
</div> | </div> | ||
Line 93: | Line 104: | ||
<math> | <math> | ||
M(\textbf{x},t) = \frac{k_{sgs}(\textbf{x},t)}{k_{ | M(\textbf{x},t) = \frac{k_{sgs}(\textbf{x},t)}{k_{total}(\textbf{x},t)} = \frac{k_{sgs}(\textbf{x},t)}{k_{sgs}(\textbf{x},t)+k_{res}(\textbf{x},t)} < 0.2 | ||
</math> | </math> | ||
where <math>k_{res}(\textbf{x},t)</math> is the turbulent kinetic energy of the resolved eddies and <math>k_{sgs}(\textbf{x},t)</math> the turbulent kinetic energy of the unresolved subgrid scales. This latter quantity is estimated since it is not explicitly calculated in LES. The following estimate was proposed by Yoshizawa and Horitu (1985, [17]): | where <math>k_{res}(\textbf{x},t)</math> is the turbulent kinetic energy of the resolved eddies and <math>k_{sgs}(\textbf{x},t)</math> the turbulent kinetic energy of the unresolved subgrid scales. This latter quantity is estimated since it is not explicitly calculated in LES. The following estimate was proposed by Yoshizawa and Horitu (1985, [17]): | ||
<math>k_{sgs}(\textbf{x},t) = \frac{\nu^2_{sgs}}{(C \Delta)^2}</math> | |||
<math> | where <math>\nu_{sgs}</math> is the subgrid scale viscosity added by the model, <math>\Delta</math> the characteristic mesh size and <math>C \approx 0.1</math> the dimensionless dynamic constant of the model. | ||
As mentioned in the CFD post-processing section, the velocity of interest in this AC is not the instantaneous one, but a phase-averaging over 30 cycles after removal of the first 10 initializing cycles. The fluctuating part of the velocity was defined as: | |||
<math> | |||
\mathbf{u}'(x,t) = \mathbf{u}(x,t)-\overline{\mathbf{u}}(x,t) | |||
</math> | |||
and the resolved turbulent kinetic energy was computed as: | |||
<math> | |||
k_{res}(x,t)= \frac{1}{2} (\overline{u'^2}(x,t)+\overline{v'^2}(x,t)+\overline{w'^2}(x,t)) | |||
</math> | |||
<math> \ | where <math> \overline{ \ \cdot \ } </math> stands for the phase-averaging. Likewise, a phase-averaged subgrid scale viscosity <math> \overline{\nu_{sgs}} </math> was used to compute <math> k_{sgs} </math>. | ||
The resolution of the turbulence was studied for two meshes using the MR data acquisitions presented in the 'Test data' section. The first simulation was performed with the fine mesh previously mentioned of 3.8 million cells (characteristic cell size of 0.7 mm) and the second one with a finer mesh of 27 million cells (characteristic cell size of 0.35 mm). As reported in Fig. 8 , the highest ratios of unresolved turbulent kinetic energy arise around peak systole, where M superior to 20% is found for up to 4.1% and 2.6% of the nodes, respectively. | |||
As reported | |||
[[File: | [[File:PopeCriterion.png|450px|center]] | ||
<div style="text-align: center;"> | <div style="text-align: center;"> | ||
'''Figure 8:''' Temporal evolution along a cycle of the | '''Figure 8:''' Temporal evolution along a cycle of the nodes fraction having <math>M > 0.2</math>. | ||
</div> | |||
Concerning the near-wall resolution over time, an averaged <math>y^+=1.3</math> was reported for the finer mesh, where again the peak systole led to the highest value with a mean <math>y^+=1.6</math> and a maximal <math>y^+=5.6</math>. For both meshes, the higher <math>y^+</math> were observed in the collateral narrowing and in the jet outflowing around systole, as shown in Fig. 9. | |||
[[File:Yplus.jpeg|700px|center]] | |||
<div style="text-align: center;"> | |||
'''Figure 9:''' <math>y^+</math> field at '''A.''' peak systole and '''B.''' end diastole for the fine (characteristic cell size of 0.7 mm) and the finer (characteristic cell size of 0.35 mm) mesh. | |||
</div> | |||
The resolved turbulent kinetic energy <math>k_{res}</math> and the total kinetic energy <math>k_{total}</math> are displayed for the two meshes in Figure 10. For the fine mesh, viscosity is added mainly in the jet, as well as around sharp angles (e.g. the junctions in the collateral). For the finer mesh, almost no viscosity is added. | |||
[[File:TKE_Ktot.jpeg|700px|center]] | |||
<div style="text-align: center;"> | |||
'''Figure 10:''' Resolved (<math>k_{res}</math>) and total (<math>k_{total}</math>) kinetic energies at '''A.''' peak systole and '''B.''' end diastole for the fine (characteristic cell size of 0.7 mm) and finer (characteristic cell size of 0.35 mm) meshes. | |||
</div> | </div> | ||
Finally, the turbulence intensity <math>TI</math> was computed as: | |||
<math> | |||
TI(x,t) = \frac{\sqrt{\frac{2}{3}k_{res}(x,t)}}{\vert\vert\overline{\mathbf{u}}\vert\vert(x,t)} | |||
</math> | |||
where <math>\vert\vert\overline{\mathbf{u}}\vert\vert(x,t)</math> is the magnitude of the phase-averaged velocity vector. | |||
The results are displayed in Fig. 11. For both meshes, at peak systole the turbulence intensity was concentrated in the aneurysm-like region and at the jet issuing from the collateral. At end diastole, high turbulence intensity was found all over the phantom, especially at the outlet, U-bend and aneurysm. | |||
[[File:TurbulenceIntensity.jpeg|700px|center]] | |||
<div style="text-align: center;"> | |||
'''Figure 11:''' Turbulence intensity at '''A.''' peak systole and '''B.''' end diastole for the fine (characteristic cell size of 0.7 mm) and finer (characteristic cell size of 0.35 mm) meshes. | |||
</div> | |||
The relative error on the phase-averaged velocity magnitude between the two simulations amounts to 0.9% of the maximum velocity magnitude found for the finer mesh. Hence, the finer mesh was considered fine enough to resolve the turbulence. | |||
<br/> | <br/> | ||
---- | ---- | ||
{{ACContribs | {{ACContribs | ||
|authors= | |authors=M. Garreau<sup>a</sup>, T. Puiseux<sup>a,b</sup>, R. Moreno<sup>c</sup>, S. Mendez<sup>a</sup>, F. Nicoud<sup>a</sup> | ||
|organisation=University of Montpellier, France | |organisation=<br><sup>a</sup>IMAG, University of Montpellier, CNRS UMR 5149, Montpellier, France<br><sup>b</sup>Spin Up, Toulouse, France<br><sup>c</sup>I2MC, INSERM/UPS UMR 1297, Toulouse, France<br><sup>d</sup>ALARA Expertise, Strasbourg, France | ||
}} | }} | ||
{{ACHeader | {{ACHeader |
Latest revision as of 18:13, 16 February 2022
A pulsatile 3D flow relevant to thoracic hemodynamics: CFD - 4D Flow MRI comparison
Application Challenge AC7-04 © copyright ERCOFTAC 2021
CFD Simulations
Overview of CFD Simulation
Large Eddy Simulations were carried out using the in-house, massively parallel and multiphysics YALES2BIO solver based on YALES2 [4] developed at CORIA (Rouen, France). YALES2BIO is dedicated to the simulation of blood flows at the macroscopic and microscopic scales. The base is a solver for the incompressible Navier-Stokes equations. The equations are discretised using a finite-volume fourth-order scheme, adapted to unstructured meshes [5,6]. The divergence-free property of the velocity field is ensured thanks to the projection method introduced by Chorin [7]. The velocity field is first advanced in time using a low-storage fourth-order Runge-Kutta scheme [6,8] in a prediction step. This predicted field is then corrected by a pressure gradient, obtained by solving a Poisson equation to calculate pressure. This equation is solved with the Deflated Preconditioned Conjugate Gradient algorithm [9]. YALES2BIO was validated and successfully used in many configurations relevant to cardiovascular biomechanics (see [10] for a list of publications). The boundary conditions applied at the inlet came from the data acquired during the experiment (2D cine PC-MRI).
Simulation Case
Computational Domain
The geometry used in the calculation is the same as the one presented in the test data section. The computational domain has one inlet and one single outlet, so that the flow split at the main tube/collateral junction does not depend on the details of the outlet boundary condition. The mesh (Fig. 5) used to perform the simulation consisted of an unstructured tetrahedral mesh generated with GAMBIT 2.4.6 (ANSYS, Inc., Canonsburg, PA). The mesh includes 3,812,438 cells with an average cell volume of 38 mm3 (representative cell size of 0.7 mm).
Figure 5: Computational domain and numerical mesh
Left: Geometry - Dimensions are given with respect to the center of the collateral, Right: Mesh at the inlet plane
Solution Strategy
The blood, or blood-mimicking fluid, is described by the filtered Navier-Stokes equations (NSE):
where and are the filter operator, velocity field, pressure field, density, kinematic viscosity and subgrid-scale kinematic viscosity of the fluid, respectively.
The governing equations are discretized and solved using the YALES2BIO solver. In the present simulation a centred fourth-order numerical scheme with an explicit fourth-order Runge-Kutta time advancement scheme was used. To ensure numerical stability, the time step was computed to keep a CFL number equal to 0.9. The pressure advancement and divergence-free condition were met thanks to a fractional-step method (Kim & Moin, 1985 [11]), a modified version of the Chorin’s algorithm (Chorin, 1968 [7]). The Sigma eddy-viscosity-based LES model (Nicoud et al., 2011 [12]) was employed to take into account the turbulence effects. In this model the subgrid-scale kinematic viscosity is modelled as:
where is the model constant, is the typical size of the local cell of the mesh and are the three singular values of the local velocity gradient tensor [12]. The Sigma model guarantees that no eddy viscosity is applied in canonical laminar flows and is well adapted to wall-bounded flows and transitional flows [13,14].
Boundary Conditions
Zero pressure condition was prescribed at the outlet section while no-slip condition was imposed at the solid boundaries. Over the whole cycle, an averaged was reported. The highest values were found at peak systole with a mean and maximal .
To prescribe the velocity field at the inlet, a pixel-based inflow was derived from the 2D cine PC-MRI measurements. Beforehand the velocity field from these measurements were corrected to account for partial volume effects caused by the phantom walls and random noise, in particular for the through-plane velocity component . Thereby, a linear -distribution was assumed between at the wall and at , where is an user-defined inner radius, here chosen to be of the radius of the circular cross-sectional inlet surface. Then a 2D bilinear interpolation from this corrected velocity field onto the inlet surface of the CFD domain was performed for each of the 30 cardiac phases. Once the velocity field had been spatially interpolated, its discrete temporal evolution had to be converted into a time-continuous signal. As the flow rate delivered by the pump was periodic, a trigonometric interpolation was used by applying at each node a discrete Fourier transform of the temporally discretized velocity signal. Thereby 15 non-redundant complex Fourier coefficients were extracted and the continuous inlet velocity signal could be achieved by injected back these coefficients into a Fourier series expansion for each node of the inlet surface.
CFD post-processing
In order to enable comparison with the 4D Flow MRI measurements, two main post-processing steps were implemented to be coherent with the MRI acquisition process.
Phase-averaging
First, the CFD was phase-averaged. Indeed during a conventional 4D Flow scan, the k-space (spatial frequencies space) is sequentially filled over hundreds of RF-pulses and magnetic gradients sequences. Thus it does not appear relevant to compare instantaneous CFD velocity fields with MRI measurements. Another argument is that high Reynolds number unsteady flows may lead to cycle-to-cycle fluctuations. Hence an appropriate way seems to be to phase-average the simulated flow velocity field over a sufficiently representative number of cardiac cycles. The phase-averaged velocity at spatial coordinates and at time was defined as:
where refers to the instantaneous velocity vector and is the total number of cycles of period s. As will be further expanded on in the numerical accuracy section, the first 10 simulated cycles were removed to cancel the effect of the arbitrary initial condition, and thus corresponds to the number of cycles computed afterwards.
Downsampling
Then, the results of both methods have to be given on the same grid in order to allow a quantitative comparison. One possibility is to interpolate the MRI velocity fields on the finer CFD grid. Another method, which is the one chosen here, is to downsample the CFD velocity fields onto the coarser MRI grid. The idea of the downsampling method is to localize the CFD nodes within a given MRI voxel and to average the contributions of each CFD node corresponding to this MRI voxel in order to build a low resolution CFD (LR-CFD) velocity field. The steps of the downsampling process (Fig. 6) were the following: first the MRI grid was subsampled with 5 voxels in each direction (5 = 125 subvoxels per voxel). Then the CFD solution was linearly interpolated on the subsampled Cartesian grid. Finally these interpolated velocity fields were averaged over the 125 subvoxels included in each MRI voxel, which lead to the LR-CFD velocities expressed on the MRI grid.
Figure 6: Illustration of the 3D downsampling process as viewed from the coronal mid (xz)-plane. The MRI grid is first subsampled with 5 voxels in each direction (125 subvoxels per voxel). The CFD solution is linearly interpolated on the subsampled grid, which is downsampled back to the MRI grid by averaging the velocity over the 125 subvoxels included in each MRI voxel.
Numerical Accuracy
The numerical accuracy studies were partly conducted on previously obtained data and are detailed in T. Puiseux's PhD thesis [1]. The CFD simulation process was the same as the one described above. The only difference to the data exposed in this document is the shape of the inlet velocity profile. Note however that the peak systolic Reynolds numbers at the inlet are very similar (1830 in this previous study against 1915 here). This allows us to have confidence in these previous analyses, which were conducted for mesh convergence and phase-averaging sensitivity. Turbulence modelling employed for the subgrid scales was analysed for the present data.
Mesh sensitivity analysis
To ensure spatial convergence of the simulations, the effects of the mesh were studied on 3 different meshes: a coarse one with 622 thousand cells (cell size = 1.3 mm), a medium one with 1 284 thousand cells (cell size = 1.0 mm) and a fine one with 3 812 thousand cells (cell size = 0.7 mm). The magnitude of the phase-averaged velocity in the aneurysm resulted in a numerical uncertainty of 1.88% for the latter mesh, with an apparent spatial order of convergence p = 2.0 (see Sigüenza et al., 2016 [15] for further details on the method). Therefore the fine mesh was considered fine enough for the velocity field to be spatially converged and independent of the spatial resolution.
Phase-averaging sensitivity analysis
A sensitivity analysis was carried out to estimate the minimal number of cycles needed for the phase-averaged velocities to converge. First, as it was mentioned in the paragraph about the phase-averaging process, the first 10 cycles were removed to cancel the impact of the initial condition. 60 cycles were then simulated and the 60-cycle phase-averaged velocity was compared to the phase-averaged velocity had the simulation been simulated for cycles, with . The results are presented in Fig. 7, where the metric used for analysis is the Pearson's correlation coefficient . The -coefficient measures the linear correlation between two sets of data and is defined as:
where and are two datasets, the sample size, the subscript the index of the individual sample points and the sample mean.
The results show that whereas the main components of the velocity ( and ) were well-converged after about 5 cycles, around 30 cycles were required for the transverse component of the velocity (). Thereby, 30 cycles were considered sufficient to reach a reasonable asymptotic value for the velocity field. Furthermore, the reproducibility of the process was tested by extracting and independently phase-averaging two subsequent set of 30 cycles from the 60 cycles simulated. High correlation levels of the Pearson’s correlation coefficient were found , which confirms that the process was independent from the set of cycles selected.
Figure 7: Evolution of the Pearson’s correlations () between phase-averaged CFD velocity computed over different numbers of cycles and the 60-cycle phase-averaged CFD velocity. All nodes of the computation domain were included in the metric.
Turbulence resolution analysis
In the LES strategy the subgrid scales are not explicitly resolved but modelled. A general criterion of the turbulence resolution in LES was proposed by Pope (2000, [16]), where LES is considered well-resolved if at least 80% of the turbulent kinetic energy is solved. Formally, this can be written as:
where is the turbulent kinetic energy of the resolved eddies and the turbulent kinetic energy of the unresolved subgrid scales. This latter quantity is estimated since it is not explicitly calculated in LES. The following estimate was proposed by Yoshizawa and Horitu (1985, [17]):
where is the subgrid scale viscosity added by the model, the characteristic mesh size and the dimensionless dynamic constant of the model.
As mentioned in the CFD post-processing section, the velocity of interest in this AC is not the instantaneous one, but a phase-averaging over 30 cycles after removal of the first 10 initializing cycles. The fluctuating part of the velocity was defined as:
and the resolved turbulent kinetic energy was computed as:
where stands for the phase-averaging. Likewise, a phase-averaged subgrid scale viscosity was used to compute .
The resolution of the turbulence was studied for two meshes using the MR data acquisitions presented in the 'Test data' section. The first simulation was performed with the fine mesh previously mentioned of 3.8 million cells (characteristic cell size of 0.7 mm) and the second one with a finer mesh of 27 million cells (characteristic cell size of 0.35 mm). As reported in Fig. 8 , the highest ratios of unresolved turbulent kinetic energy arise around peak systole, where M superior to 20% is found for up to 4.1% and 2.6% of the nodes, respectively.
Figure 8: Temporal evolution along a cycle of the nodes fraction having .
Concerning the near-wall resolution over time, an averaged was reported for the finer mesh, where again the peak systole led to the highest value with a mean and a maximal . For both meshes, the higher were observed in the collateral narrowing and in the jet outflowing around systole, as shown in Fig. 9.
Figure 9: field at A. peak systole and B. end diastole for the fine (characteristic cell size of 0.7 mm) and the finer (characteristic cell size of 0.35 mm) mesh.
The resolved turbulent kinetic energy and the total kinetic energy are displayed for the two meshes in Figure 10. For the fine mesh, viscosity is added mainly in the jet, as well as around sharp angles (e.g. the junctions in the collateral). For the finer mesh, almost no viscosity is added.
Figure 10: Resolved () and total () kinetic energies at A. peak systole and B. end diastole for the fine (characteristic cell size of 0.7 mm) and finer (characteristic cell size of 0.35 mm) meshes.
Finally, the turbulence intensity was computed as:
where is the magnitude of the phase-averaged velocity vector.
The results are displayed in Fig. 11. For both meshes, at peak systole the turbulence intensity was concentrated in the aneurysm-like region and at the jet issuing from the collateral. At end diastole, high turbulence intensity was found all over the phantom, especially at the outlet, U-bend and aneurysm.
Figure 11: Turbulence intensity at A. peak systole and B. end diastole for the fine (characteristic cell size of 0.7 mm) and finer (characteristic cell size of 0.35 mm) meshes.
The relative error on the phase-averaged velocity magnitude between the two simulations amounts to 0.9% of the maximum velocity magnitude found for the finer mesh. Hence, the finer mesh was considered fine enough to resolve the turbulence.
Contributed by: M. Garreaua, T. Puiseuxa,b, R. Morenoc, S. Mendeza, F. Nicouda —
aIMAG, University of Montpellier, CNRS UMR 5149, Montpellier, France
bSpin Up, Toulouse, France
cI2MC, INSERM/UPS UMR 1297, Toulouse, France
dALARA Expertise, Strasbourg, France
© copyright ERCOFTAC 2021