
4 minute read
Solving 3D-flow equations for blood vessels
Text: Ties Martens
Advertisement
Inside blood vessels, plaques can form on the vessel walls leading to a narrowed passage for the blood to flow through. As the plaques grow bigger, the risk that the blood vessel will be clogged becomes larger. As you can imagine, whenever this happens inside blood vessel that supplies the brain with blood this can have serious consequences. This problem is called ‘carotid artery disease’ and it is one of the most common causes of stroke. Luckily, when this problem is detected there are ways to reduce the plaques’ size and to increase the blood flow through specific arteries. However, these are usually drastic surgeries that could have an impact on the patient’s health, so it would be nice if it was possible to detect whether a certain person is at risk or not.
Quantities of the blood flow like blood velocity, blood pressure and wall shear stress were found to correlate with plaque development inside an artery and are thus useful predictors to use when deciding whether surgery is recommended for a patient. Quantities describing this blood flow can be determined using methods like inserting a catheter into the blood vessel. However, of course invasive methods like these often have its complications and risks, and are often limited in accuracy because of real world influences.
Therefore, if non-invasive methods could have the same level of accuracy (or better), these would be preferred.
A possible approach would be to use MRI-scans of the blood vessels to find the shape of them, and modelling the blood flow inside these arteries by solving 3D-flow equations inside them using patient-specific estimates for the values of the boundary conditions. This is exactly what I have done in my Bachelor’s Assignment.

Constructing an artery model
The medical data obtained from MRI scans are in the form of a stack of pictures, where each picture shows a slice of the artery at a different height. To extract the position of the arterial walls from these pictures is a complicated task as the images are often of poor quality and because of branches in the artery. Luckily, Dieuwertje Alblas from the Mathematics of Imaging and AI department had already made a segmentation algorithm for this such that the starting point for my project was a dataset that contained slices of 32 points each, that describe the arterial walls of real patients.
The challenge now is to construct a 3D mesh that gives a better description of what the artery actually looks like based on these datasets of points. Of course, this can be done in a variety of ways which each have their advantages and disadvantages, and for my project I took a very basic approach in which all of these points inside a slice were connected with their two neighbours such that you get a set of rings. Two adjacent rings were then connected by pairing the two closest points inside these rings and forming a zigzag pattern. After the rings are all ‘sewn’ together like this, the created mesh is closed on both ends by interconnecting the points in the first and the last ring. Then, some heuristically found smoothing algorithms are applied that perform topological operations on the mesh to get to a more regular spaced and refined model. Finally, the interior of this mesh is being filled by generating tetrahedra’s inside the mesh.
Solving flow equations
The blood flow inside the artery can be described by its velocity (vector) and the pressure (scalar) at every point of the mesh. To find values for these we can solve the NavierStokes equations. These are a set of elaborate partial differential equations and no analytic general solution to these have been found. Therefore, a numerical approach is needed, where boundary and initial conditions can be found either from medical data of the patient or by using a generic value from literature. In my project I used the latter one and solved the Navier-Stokes equations using numerical solver software.
Results
All of these steps were performed on an example dataset and the results for this were visualized to give a nice indicative view of the blood velocity and pressure profile inside the artery. This method is promising as it gives qualitatively good solutions, but even though a lot of simplifications were made for this model, it still takes quite some computational time to calculate solutions. To speed up these computations, graph convolutional neural networks are an interesting future alternative to cut down on computation time and improve accuracy.