totaal - tu/e · 2007. 1. 30. · title: microsoft word - totaal.doc author: s447416 created date:...
TRANSCRIPT
Development of a mesh generation protocol
for coronary arteries including multiple bifurcations
Supervisors: ir. Alina van der Giessen
dr.ir. Frank Gijsen
prof.dr.ir. Frans van de Vosse
Carel Stasse BMTE06.41
2
Contents
Contents ___________________________________________________________ 2
1 Introduction _____________________________________________________ 3
1.1 Atherosclerosis and WSS__________________________________________________ 3
1.2 Coronary artery imaging__________________________________________________ 6
1.3 Scope __________________________________________________________________ 9
2 Mesh generation for bifurcating arterial geometries________ 11
2.1 Elements ______________________________________________________________ 11
2.2 Literature study ________________________________________________________ 13
2.3 Conclusions____________________________________________________________ 15
3 Benchmarks ____________________________________________________ 16
3.1 Introduction ___________________________________________________________ 16
3.2 Methods_______________________________________________________________ 16
3.3 Results ________________________________________________________________ 19
3.4 Conclusion_____________________________________________________________ 27
4 Meshing of a real coronary artery ____________________________ 28
4.1 Methods_______________________________________________________________ 28
4.2 Results ________________________________________________________________ 31
4.3 Conclusion_____________________________________________________________ 34
5 Conclusions, discussion and recommendations ______________ 35
Appendices _______________________________________________________ 37
Appendix A _______________________________________________________________ 37
Appendix B _______________________________________________________________ 40
Appendix C _______________________________________________________________ 41
References ________________________________________________________ 47
3
1 Introduction
Atherosclerosis may lead to irreversible clinical adverse events such as acute myocardial
infarction or sudden death [3, 4]. Low wall shear stress (WSS) is associated with the
development of atherosclerosis, which predominantly occurs at bifurcations and
curvatures in the artery [3]. When outward vessel remodeling to preserve the lumen falls
short, the atherosclerotic plaque grows into the lumen. It was recently hypothesized that
wall shear stress influences the composition, and consequently the stability, of this
inward growing plaque [4]. Because WSS is an important factor in the initiation,
development and rupture of atherosclerotic plaques, it is a widely studied parameter.
1.1 Atherosclerosis and WSS
Atherosclerosis
The development of atherosclerotic plaque formation is described in figure 1.1.
Cholesterol containing low-density lipoproteins (LDL) are stored in the vessel wall to be
used for ATP production or as building material (figure 1.1, phase 3). Oxidation of these
Figure 1.1: different stages of atherosclerosis: 1-a healthy artery, 2-
presence of lipoproteins, 3-storage of lipoproteins, 4-fibrofatty
formation, 5-thrombus formation due to cap rupture, 6-stable
fibrous/calcified plaque, 7-mural thrombus due to erosion[2]
4
Figure 1.2: overview of
typical atherosclerotic
sites in arteries [5]
LDL’s is the initial step in plaque formation. Macrophages absorb the oxidized LDL’s
and become foam cells, forming fibrofatty tissue in the wall (figure 1.1, phase 4). The
part of the wall that is located between the fibrofatty tissue and the lumen is called the
fibrous cap and is made of collagen fibers and smooth muscle cells. As the lesion
progresses, the fibrous cap may weaken and the plaque is referred to as unstable or
vulnerable. If the fibrous cap ruptures, blood coagulation may occur leading to thrombus
formation (figure 1.1, phase 5). If this thrombus doesn’t occlude the artery at the site of
thrombus formation, it can be transported downstream and block an artery distal of the
thrombus formation point. This causes acute myocardial infarction or sudden death in
case of complete blockage of coronary arteries. If outward remodeling is not longer
possible, the plaque will expand into the lumen. In this scenario the lumen becomes
occluded (figure 1.1, phase 6), producing symptoms of stable angina pectoris in cases of
significant stenosis. In figure 1.1, phase 7 shows the case in which a mural thrombus is
formed due to erosion of the inward growing wall of the plaque. This process can also
cause acute myocardial infarction.
Wall shear stress
There are many risk factors for the development of
atherosclerosis including (but not limited to) hypertension,
smoking, hyperlipidemia, diabetes mellitus and low exercise
[1]. Although the above risk factors promote atherosclerosis
formation, the geometry of the artery determines the location of
plaque formation [5]. The geometry of the artery governs the
way the blood flows through it and consequently determines
the WSS distribution along the arterial wall. WSS is associated
with atherosclerosis because it is low at sites where
atherosclerosis occurs (figure 1.2). The explanation for this
relation is the sensitivity of the endothelial lining of the wall to
shear stress [1].
WSS has an effect on the secretion of several biological
substances by the endothelial cells in the wall. In figure 1.3 the
5
differences in atherogenic phenotype induced by high and low WSS are depicted. There
are indications that WSS is not only involved in localizing early atherosclerosis, but that
it is also an important factor in destabilizing the fibrous cap of the vulnerable plaque.
Once the plaque protrudes into the lumen, specific regions of the plaque will be exposed
to higher WSS. Through it’s anti-inflammatory effects on the endothelium, these higher
WSS could induce cap regression, thus increasing plaque vulnerability [1].
Computational fluid dynamics
The product of the blood viscosity and the wall shear rate determines WSS. The shear
rate is determined from the velocity distribution near the wall. The velocity distribution in
complex geometries, like human arteries, can be obtained by application of image-based
computational fluid dynamics (CFD). In figure 1.4 an overview is given of image based
CFD modeling. The red dashed box marks the primary subject of this report; the
construction of a mesh using geometric input data of a coronary arterial tree.
Figure 1.3: differences in arterial endothelial phenotype, induced
by high and low WSS [1]
6
Figure 1.4: Overview of image-based CFD. The red dashed box marks the
primary subject of this paper with respect to the complete CFD pathway.
(http://www.erasmusmc.nl/ThoraxcenterBME/html/research/hemo.htm)
Image-based CFD consists of several parts. In the preprocessing part, the most important
step is the definition of the geometry. Based on the imaging dataset, a finite element
mesh has to be created, in which the volume is discretized with finite elements.
Furthermore, material properties and boundary conditions, including inflow conditions,
have to be determined. These data can then be fed into a finite element solver. Using the
Navier-Stokes equation, the solver computes the resulting flow velocities and pressures.
In a postprocessing step, the WSS can then be obtained and the relationship between
WSS and various wall parameters can be established.
1.2 Coronary artery imaging
Before WSS can be computed, patient specific 3D geometrical data must be obtained.
This is an important step in the image-based CFD process.
7
ANGUS
There are various methods to obtain the lumen geometry of a human coronary artery in
vivo. One method that has been successfully used by the hemodynamics lab where this
project was done is called ANGUS. ANGUS is a combination of intravascular ultrasound
(IVUS) and angiography. IVUS uses ultrasound to produces 2D cross-sectional images of
an artery (figure 1.5 a). A catheter with an ultrasound device is pulled back through the
artery with equal steps. At each step an image, in which different densities are
discernable, is produced with an orientation perpendicular to the catheter.
Biplane angiography is used to determine the position of the coronary artery and the
catheter (figure 1.5 b). With this known, the images made with IVUS can be positioned
according to the path of the catheter. By manually tracing the transition from lumen to
wall in the IVUS images, a set of contours that make up the artery are produced (figure
1.5 c). From these contours a 3D geometry can be constructed.
The ANGUS method provides a detailed and high-resolution 3D geometry of a coronary
lumen and wall. However, there are drawbacks to this procedure. Firstly, the ANGUS
technique is invasive. Secondly, bifurcations are difficult to visualize because of the
limited penetration depth of the ultrasound device.
a b c
Figure 1.5: a)tissue density image produced with IVUS, b)biplane angiography
determines 3D catheter position, c)stacking of IVUS images along the arterial
path results in a set of contours that form the basis for the 3D geometry
8
MSCT
A different method to obtain a 3D lumen
geometry is by using computed
tomography (CT). The main reason for
using CT is that it is minimally invasive.
CT scanning uses X-ray beams to produce
grayscale images, in which different
tissues can be distinguished. An X-ray
beam is sent through an object and the
transmitted photons are detected by a row
of detectors. The amount of photons that
are detected, are determined by the
object’s density. By rotating the X-ray
beam around the subject in the same plane,
a 2D picture can be constructed with
different shades of gray for different tissue
densities in that plane. A sequential CT
scanner makes pictures like this with small
increments along the length of the object (figure 1.6 a) to construct a 3D geometry
consisting of cut-planes with grayscale values indicating tissue density. A spiral CT
scanner uses the same concept, but the scan is continuous. In stead of ‘taking pictures’
every increment, as in sequential scanning, the object is moved continuously through the
scanner while the X-ray beam is rotated around the object (figure 1.6 b). The current state
of the art scanners, which are used to generate the coronary geometry in this paper, are
the 64-slice CT scanners. These multislice spiral CT (MSCT) scanners differ from spiral
CT by using multiple rows of detectors to detect the transmitted photons (figure 1.6 c).
This way, multiple slices can be obtained within one rotation and the scanned object can
pass even faster through the scanner while retaining the same spatial resolution as with a
single row of detectors. The resulting higher temporal resolution is especially useful in
cardiac CT scanning. The coronary arteries move with the beating of the heart, and a
geometry has to be extracted in a time span where the heart doesn’t move to much. By
Figure 1.6: a) sequential CT, b) spiral CT, c) MSCT
a
b
c
9
matching the results with an ECG-diagram of the patient during the scan, geometry data
can be extracted at multiple similar phases of the cardiac cycle. The diastolic phase is
mostly used, since it contains the biggest window for data retrieval with limited heart
movement. The data obtained with MSCT provides the user with a 3D visualization of
the different tissue densities in the scanned volume.
An advantage of geometry data acquisition using MSCT is that it is much faster than the
ANGUS method and it might be used for screening in the future. The possibility to obtain
the geometry of a complete arterial tree is the biggest advantage of MSCT. A
disadvantage of CT is that the patient is subjected to radiation during the scan. This
means that an assessment has to be made to weigh the benefit of gathering information
about a patient against the radiation exposure. Another limitation of CT is the resolution
of approximately 0.3 mm for current CT scanners. Also differentiation between different
tissues is limited.
1.3 Scope
Previously, the hemodynamics lab performed image-based CFD of human coronary
arteries based on ANGUS. This implies that no bifurcations were included in the CFD.
With the advantages of fast and high-resolution MSCT scanners, complete 3D coronary
artery data is available, opening new avenues for image-based CFD. For that, the CFD
procedure has to be extended to include multiple bifurcations. One of the main steps is
the conversion of the 3D lumen data set to a reliable finite element mesh, which is the
main focus of his report.
A mesh can consist of different element shapes, types and sizes that can be distributed
uniformly throughout the geometry or not. To gather information about these various
choices a literature study about CFD used for arteries with single or multiple bifurcations
was performed and presented in chapter 2. Based on the findings in the literature study,
2D and 3D benchmarks where performed to guide the choice of mesh parameters for the
meshing of a real coronary. The benchmark results are presented in chapter 3. In chapter
4, we will use these meshing parameters to develop a protocol that can be used to convert
3D lumen data from MSCT to a finite element mesh. Some preliminary CFD results will
10
be presented as well. Finally, we present conclusions, a discussion and some
recommendations in chapter 5.
11
2 Mesh generation for bifurcating arterial geometries
2.1 Elements
When computing WSS with image-based CFD, the results should be independent as
possible of the way in which the geometrical data is discretized. This mesh independency
can be achieved by using elements that are small enough to compute WSS accurately.
However, the reduction of the size of elements comes at a higher computational cost, so
an optimal element size has to be selected. The optimal element size depends on shape
and type of the elements and on flow conditions. In this chapter we will provide some
general considerations and literature reviews.
Element shape
The first choice to be made to create a mesh, concerns the shape of the
element that is used. The most used element shapes in meshes for CFD
are tetrahedrons and hexahedrons (figure 2.2). Computations using
hexahedrons require the elements to be placed in fairly structured
volumes. Meshing an arterial bifurcation using hexahedrons therefore
takes a lot time, because the arterial tree needs to be divided in
subvolumes (figure 2.1) in order to fill it with hexahedrons of a decent
quality. Especially dividing bifurcations will be time consuming.
Tetrahedrons are easier to fit in complex structures like bifurcating
arteries without having to divide the structure in subvolumes.
Element type and size
The next step is to decide on the element size and the use of linear or
quadratic elements. The quantitative difference between linear and
quadratic elements can be found in the number of nodes defining the
element (figure 2.2).
Figure 2.1: example of a
carotid bifurcation
divided in subvolumes
12
It can be roughly stated that meshes using quadratic elements have twice the amount of
element nodes compared to linear meshes. Qualitatively the elements differ in the way
that equations are solved during a simulation. With linear elements, blood velocity is
calculated linearly over the element. Since WSS is calculated using the derivative of
blood velocity, this results in a constant value for the WSS for that element. With
quadratic elements the velocity is calculated using a second order function. This means
that WSS is obtained as a linear function within that element. Hence, accurate
determination of WSS depends on the number of nodes used in a particular geometry and
the use of linear versus quadratic elements.
Element distribution
With choices for element shape, type and size, a mesh can be constructed with equally
sized elements. In order to save computation time, the element size can be distributed
unevenly. This can be done by placing smaller elements in regions of interest and regions
where large gradients in the solution are expected. An example of a region of interest is
the outer edge of an artery’s lumen in case of wall shear stress calculations. Many
Figure 2.2: a) a linear tetrahedron (4 nodes), b) a linear hexahedron
(8 nodes), c) a quadratic tetrahedron (10 nodes)
a
b
c
13
possibilities for the distribution of the elements exist. Refinement of the mesh towards the
artery wall or in regions where sharper curvatures or bifurcations occur are examples.
A different approach toward element distribution is adaptive meshing. A coarse mesh is
usually the basis for this type of meshing. After a simulation with this mesh is run, the
mesh can be refined in places where the solution requires it. These places can possibly be
defined by velocity gradients or errors in strain values within single elements [6]. The
manufacturing of such adaptive meshes is not in the range of this particular report, but
might be of interest for further studies.
2.2 Literature study
To obtain a basis for the meshing protocol, we performed a literature study focusing on
the aspects mentioned in the previous section. We searched the PubMed database for
literature about CFD with coronary arteries. Only 2 articles were found in which the CFD
process was described for a complete human coronary artery. References in these and
other articles led to the gathering of multiple articles on single bifurcations, mostly of the
carotid artery bifurcation. Since the CFD process for a single carotid bifurcation can still
be considered as a good background for performing CFD with coronary arteries with
multiple bifurcations, these articles were included in the study. The remaining articles in
the study contain relevant information and consider CFD with straight arteries, a single
abdominal bifurcation and an abdominal arterial tree. An overview of different types of
meshes for different types of arteries and bifurcations is given in table 2.1.
In all the reviewed articles the use of tetrahedral or hexahedral elements is specified. The
element shape is divided equally between hexahedral and tetrahedral for the carotid
bifurcations. The element shape used for the 3 arterial trees was tetrahedral.
Both element shapes can be linear or quadratic, but this information is only explicitly
specified in cases where quadratic elements are used. The remaining articles don’t
specify the element type. If we assume that linear elements were used in these papers, we
see that these are the dominant elements. As far as size is concerned, this is also only
specified in a limited number of papers. The range of element size given varies between
14
0.05 and 0.25 mm. Element distribution is mentioned in most articles and a general
inclination towards mesh refinement near the wall is observed.
Geometry Element shape
Element type
Element distribution Number of nodes / elements / nodal distance
reference
Coronary artery (no bifurcations)
hexahedral - unstructured - / - / - [7]
Right coronary artery (no bifurcations)
tetrahedral - results-based adaptation >200.000 / - / - [6]
Abdominal bifurcation
hexahedral - unstructured - / 8.000 / - [8]
Carotid bifurcation hexahedral - unstructured, except for single boundary layer
- / +/-40.000 / - [9]
Carotid bifurcation hexahedral - unstructured - / 42.000 / - [10]
Carotid bifurcation hexahedral - finer mesh towards the wall, 32 circumferential nodes
57.000 / 42.000 / >0.18 mm
[11]
Carotid bifurcation hexahedral - finer mesh towards wall and bifurcation
- / 45.000 / - [12]
Carotid bifurcation hexahedral quadratic moderately adapted near bifurcation
14.000 / 1500 / - [13]
Carotid bifurcation Polyhedral - finer hexahedral elements at the wall
- / 500.000-1.000.000 / 0.05-0.2 mm
[14]
Carotid bifurcation tetrahedral - adapted at higher velocity gradients
- / - / - [15]
Carotid bifurcation tetrahedral quadratic larger elements farther from the bifurcation
150.000 / 100.000 / -
[16]
Carotid bifurcation tetrahedral quadratic unstructured - / 36.000 / - [17]
Carotid bifurcation tetrahedral quadratic unstructured - / 75.000 / 0.25mm [18]
Carotid bifurcation tetrahedral quadratic more elements at bifurcation
40.000 / 65.000 / - [19]
Idealized abdominal aorta including iliac branches
tetrahedral - smaller elements toward smaller arteries
58.000 / 269.000 / - [20]
A pig’s complete left coronary artery
tetrahedral - unstructured - / 1.137.000 / - [21]
Complete left coronary artery
tetrahedral - finer mesh towards the wall 44.000 / 197.000 [22]
Table 2.1: overview of the reviewed literature. The results are discussed in paragraph 2.2
15
2.3 Conclusion
It is evident from the literature study that tetrahedrons are more flexible. In the single
bifurcations of carotids, both tetrahedrons and hexahedrons were used. In more complex
geometries, always tetrahedrons were applied. Since we will deal with complex
geometries, the choice for tetrahedral elements is an obvious one.
The general considerations and literature study do not give a clear answer as to which
element type is preferred. Both have advantages and disadvantages, although linear
elements are probably more frequently applied. Element size is not specified often, but
0.2 mm seems to be a good starting point.
In many studies an uneven distribution of the elements towards the wall was used, but the
details of those distributions were nowhere explained in detail.
In the next chapter 2D and 3D models are used to benchmark element type and size (2D)
and element distribution (3D).
16
3 Benchmarks
3.1 Introduction
Based on the general considerations and the literature study, we concluded that a
tetrahedral element is most suitable for complex geometries. However, no conclusive
answer could be given about appropriate element type, size and distribution. To obtain
this information, we will perform 2D and 3D benchmarks.
Idealized 2D and 3D models of a single bifurcation are studied to try to determine the
parameters stated above. In the 2D model, linear and quadratic meshes are produced with
different element sizes. Accuracy of the computed WSS and the computation cost are the
criteria to determine element type and size used in the 3D model. In the 3D model the
influence of distribution of elements is studied.
3.2 Methods
Geometry
A single bifurcation is the basis for both the 2D and 3D models (figure 3.1). Both
geometries have an entrance diameter of 3 mm. The lower branch of the 2D model has a
diameter of 2 mm and the upper branch has a diameter of 2.2 mm. The 3D model consists
of a main tube with a 2 mm diameter side branch attached to it under a 45 degree angle,
just as in the 2D model. The distance between the entrance and the bifurcation is long
enough to assume that a fully developed flow enters the bifurcation. Based on
observations from the 2D simulations, the entrance length of the 3D model was made
shorter to shorten computation time.
Solution strategy
A parabolic flow with a maximum velocity of 0.15 m/s is used as input for both models.
A density of 1050 kg/m3 and a viscosity of 3.5 mPa*s is assumed for blood. On the walls
the no-slip condition was applied and the flow at both outlets is stress-free.
17
The solution of the Navier-Stokes equations is computed with a segregated solution
method in the software program FIDAP. This method uses preconditioning for the
solution matrix and pressures are computed via a pressure update algorithm. Convergence
of the solution was achieved when the error in velocity computation was smaller than
10e-3 for 5 consecutive iterations. In appendix A and B the FIDAP input files for the 2D
and 3D computations are given.
Figure 3.1: The 2D and 3D geometries that were used for
benchmarking. The dots mark the points where WSS values are
extracted.
3D2
3D4
3D3
3D1
2D2 2D3
2D5
2D4
2D6
2D1
wall 1 wall 2
18
Analysis
WSS values were extracted at several relevant locations. For the 2D model locations
2D2, 2D4 and 2D6 were chosen because the flow should be fully developed there (figure
3.1 top). At 2D1 the flow might not be fully developed and at 2D3 and 2D5 a large
variation of WSS compared to the fully developed flow sites is expected. Location 2D5
was chosen to be 1 mm downstream from the apex of the bifurcation, to avoid anomalies
possibly produced at the sharp apex.
Based on the results of the WSS at the data extraction locations in the 2D model, 4 points
were chosen in the 3D model (figure 3.1 bottom). 3D1 and 3D2 are located at the lower
wall of the main branch. Flow is expected to be fully developed at these locations. 3D3 is
the point located 1 mm downstream from the apex of the bifurcation on the top wall of
the main branch. High WSS is expected here. In 3D4 on the smaller side branch the flow
is expected to be fully developed again.
At the locations where flow is fully developed a theoretical value for the WSS can be
computed with equation 3.1. Equation 3.1 is valid for steady, time-independent and fully
developed flow in a straight tube.
•
= γητ w , with dr
dv=
•
γ and
−=
2
max 1R
rvv equation 3.1
where: wτ = wall shear stress
η = blood viscosity
•
γ = shear rate
v = blood velocity
vmax = maximum blood velocity
r = radial distance from the center of the artery
R = radius of the artery
This results in the following expression for WSS for both the 2D and 3D model:
19
R
vw
max2ητ = equation 3.2
Computations with 2D meshes were considered accurate when the extracted WSS values
at locations 2D2, 2D4 and 2D6 did not differ more than a predetermined percentage from
the theoretical value at these locations. The value of this percentage is derived from the
spatial resolution of the MSCT scanner, which is 0.3 mm. The coronary artery is about 3
mm in diameter, which yields a 10 % accuracy for the geometry definition. The error
induced by WSS computation should be smaller than this. Consequently, the accuracy for
the WSS value was chosen to be between 10% and an order of magnitude smaller, which
is 1%. From this range the accuracy value of 3% was chosen.
In the 2D model, linear elements with 3 nodes and quadratic elements with 6 nodes were
used. The size of the elements varied from 0.3 to 0.04 mm for the linear elements and
from 0.3 to 0.08 mm for the quadratic elements.
For the 3D model a uniformly distributed mesh with the edge size determined by the 2D
computations was used as a basis for the benchmark. The deviation of WSS from the
appointed standard could be determined for all four data extraction points in the 3D
model. The same accuracy percentage of 3% was used to determine the accuracy of the
used meshes.
3.3 Results
2D results
An overview of the meshes used for simulations in the 2D model and their results are
given in table 3.1. WSS values at locations 2D2, 2D4 and 2D5 are given as well as the
total number of nodes per mesh and the memory usage for the simulation. The WSS
values at 2D6 almost precisely matched those of 2D4 and are omitted in the table. The
WSS values extracted at 2D1 and 2D3 did not contribute extra information and are
therefore also omitted. The theoretical values for the WSS at 2D2 and 2D4 are 0.7 Pa and
0.79 Pa respectively. This was computed using equation 3.1. The values for vmax were
20
taken from the velocity profile computed in the simulation. They did not vary
significantly for the different meshes and are therefore assumed correct.
Table 3.1: An overview of the different meshes used in the 2D model. The theoretical
value for WSS at locations 2D2 and 2D4 was 0.7 and 0.79 Pa respectively.
Mesh type and edge size (mm)
2D2 (Pa)
2D4 (Pa)
2D5 (Pa)
Number of nodes
Memory usage (MB)
Linear 0.30 0.6348 0.6804 0.6998 2736 2.4
Linear 0.20 0.6566 0.7089 0.7291 5538 5.8
Linear 0.10 0.6788 0.7426 0.7562 21588 32.8
Linear 0.08 0.6834 0.7569 0.7686 33246 57.5
Linear 0.06 0.6884 0.7663 0.7774 58402 123
Linear 0.04 0.6965 0.7772 0.7874 129756 406.4
Quadratic 0.30 0.6700 0.7315 0.7455 10425 9.4
Quadratic 0.20 0.6825 0.7538 0.7677 21377 23.2
Quadratic 0.16 0.6848 0.7582 0.7694 34211 43.2
Quadratic 0.12 0.6900 0.7681 0.7790 58451 88.3
Quadratic 0.08 0.6992 0.7780 0.7881 131053 361.4
Linear elements
In figure 3.2 the WSS is plotted along wall 1 and 2 (figure 3.1) for the different linear
meshes. Wall1 represents the lower wall of the model and wall 2 represents the horizontal
wall starting at the apex of the bifurcation. The distribution of WSS along wall 1 clearly
shows elevated WSS values in the smaller side branch and the expected dip in WSS at the
location opposite the bifurcation. The corresponding location at wall 2 near the
bifurcation shows that the WSS starts very high at the apex. For viewing purposes this
peak has been cut off. Some artefacts around the inlet and outlets can be observed.
21
Figure 3.3 shows the WSS values at 2D2, 2D4 and 2D5. For 2D2 and 2D4 the theoretical
value and the corresponding 3% range for which WSS is considered accurate is also
depicted. It can be seen that at 2D2 the mesh with an edge size of 0.08 mm is the first that
can be considered accurate. For 2D4 the mesh with edge size 0.06 mm is the first to fall
in the 3% range. WSS values for 2D5 are given to illustrate that also at the location near
the bifurcation WSS approached a constant value.
Figure 3.2: WSS along wall 1 and wall 2 starting at the
apex. The data extraction locations are indicated in the figure.
Edge size:
Edge size:
2D1
2D6 2D5
2D4 2D3 2D2
22
Quadratic elements
In figure 3.4 the results for the quadratic meshes are depicted. Note that quadratic
elements have twice the amount of nodes as linear elements. This means that the nodal
distance for a linear mesh is the same as the nodal distance for a quadratic mesh with
twice the element edge size.
For the quadratic elements the meshes with edge sizes 0.2 mm and 0.12 mm are the first
to be considered accurate at locations 2D2 and 2D4 respectively. The WSS values at 2D5
show a similar result to those for 2D2 and 2D4.
Figure 3.3: WSS plotted against the number of nodes for different edge sizes at
locations 2D2, 2D4 and 2D5. The solid red lines indicate theoretical values of
WSS. The dotted red lines indicate the bottom of the 3% range within which
the solution is considered accurate. Edge sizes are in mm.
2D2
2D4
2D5
0
0
0
23
Linear versus quadratic elements
In both the linear and quadratic meshes the accuracy range is more difficult to reach at
2D4. This can be explained by the smaller diameter at this location, which results in less
nodal points per diameter compared to 2D2. The linear mesh with edge size 0.06 mm and
the quadratic mesh with edge size 0.12 mm both satisfy the 3% criterion for the main and
side branch.
Figure 3.5 shows the WSS plots for both linear and quadratic relevant meshes. The plot
of WSS along wall 1 ends at the location of the bifurcation to enhance the view of the
differences between the linear and quadratic meshes.
Figure 3.4: WSS plotted against the number of nodes for different edge sizes at
locations 2D2, 2D4 and 2D5. The solid red lines indicate theoretical values
of WSS. The dotted red lines indicate the bottom of the 3% range within
which the solution is considered accurate. Edge sizes are in mm.
2D2
2D4
2D5
0
0
24
Figure 3.5 shows that quadratic meshes perform slightly better than linear meshes with
the same nodal distance. To further assess the difference between linear and quadratic
meshes, the memory usage in FIDAP is plotted in figure 3.6. Again a slightly better
performance can be seen with the quadratic meshes. It should be noted that the core
memory needed to perform the computation is highly dependent on the solution
parameters used in FIDAP.
The quadratic meshes perform slightly better both in results and in memory usage. An
element edge size of 0.12 mm was sufficiently small to generate reliable WSS results.
This means that the basis for the 3D benchmarks will be a quadratic mesh with an
element edge size of 0.12 mm.
Edge size:
Edge size:
Figure 3.5: WSS along the first part of wall 1 and wall 2 for both linear and
quadratic meshes
25
3D results
The outer wall of the 3D model was meshed with a quadratic surface mesh with element
edge size 0.12. This mesh was used as a basis for various levels of mesh coarsening
towards the center of the artery. This mesh coarsening is performed to reduce the number
of elements. The object is to retain the accuracy of WSS computation with the mesh. In
the mesh generator GAMBIT, coarsening the mesh was done with a so-called ‘sizing’
function. In this function a growth factor can be prescribed that determines the increase in
element edge size towards the middle of the volume starting at the outer surface. In table
3.2 the results for the different meshes are given.
Figure 3.6: The required core memory as indicated by FIDAP is slightly less for
quadratic meshes with a comparable amount of nodes
26
Table 3.2: WSS results for the 3D model at the 4 data extraction locations.
Growth factor 3D1 (Pa) 3D2 (Pa) 3D3 (Pa) 3D4 (Pa) Number of nodes
Memory usage (MB)
Uniform size 0.6910 0.5026 0.7283 0.6250 1137682 1137
1.1 0.6923 0.5035 0.7130 0.6221 933055 927
1.2 0.6888 0.5081 0.7113 0.5911 730268 719
1.5 0.6871 0.5066 0.7436 0.5876 536599 520
2.0 0.6843 0.5102 0.7290 0.5818 423872 445
4.0 0.6845 0.5061 0.7191 0.5729 314361 292
6.0 0.6814 0.5079 0.7197 0.5729 290874 288
8.0 0.6816 0.5107 0.7077 0.5725 280852 277
In figure 3.7 the WSS values are plotted for the 4 data extraction locations on the 3D
model. The 3% accuracy range indicated by the dashed red lines was based on the WSS
values computed with a mesh with a uniform edge size of 0.12 mm throughout the
volume.
Figure 3.7: The WSS values for the data extraction points on the 3D model are
plotted here. The dashed red lines indicate the 3% range with respect
to the WSS values for the uniform mesh.
.0
.0
.0
.0
3D1 3D2
3D3 3D4
27
Figure 3.7 shows that increased coarsening of the mesh only has a big influence on the
WSS values at 3D4. At all the other points, sizing can be applied without loosing WSS
computation accuracy. The data extraction point 3D4 is located at the smaller 2 mm
diameter side branch and only returns an accurate WSS value with a growth factor of 1.1.
3.4 Conclusion
Taking nodal distance into account, linear and quadratic elements were almost
comparable in the 2D geometry. Meshes with quadratic elements were slightly more
accurate, while using a little less memory. It can be concluded that nodal point distance is
more important than the choice for linear or quadratic elements.
In the main branch, a nodal point distance of 0.08 mm is sufficient for both linear and
quadratic meshes. This is well within the range indicated by the literature (0.05-0.25
mm). In the side branch a nodal point difference of 0.06 mm is required. For both
branches this leads to about 35 nodes across the artery diameter in the 2D model.
Coarser elements towards the center of the artery can be used for the larger main branch
in the 3D model. In the smaller side branch, sizing will reduce the number of elements on
a cross-section too much. Therefore, only a moderate amount of sizing can be applied in
the 3D model.
A limitation of the performed benchmarks is possible the translation of 2D results to the
3D model. This is because the 3% accuracy range is chosen fairly arbitrarily and the 2D
results are directly dependent on this range. Also the translation of the 3D benchmark
results to the human coronary model is debatable. Consequently, it seems advisable to
perform mesh-independency tests with the meshed real geometry.
It is important to note that the minimum core memory required by FIDAP to execute the
accurate 3D simulation is 927 MB. Fine-tuning the solution parameters in FIDAP might
reduce this amount, but for a large coronary arterial tree memory usage might become a
problem.
28
4 Meshing of a real coronary artery
In the previous chapters a literature study and benchmark computations were performed
to aid in developing a protocol for meshing a coronary artery tree. The results will be
used in this chapter to mesh a patient specific geometry based on MSCT. We will discuss
the way geometrical data is obtained, how these were used to generate a mesh and some
preliminary CFD results. In appendix D the hands-on protocol for the total meshing
process is given.
4.1 Methods
MSCT derived geometry
We selected a MSCT dataset of a patient with mildly diseased coronary arteries. The
coronary of interest was segmented from the dataset and post processed with MeVisLab
(MeVis, Bremen, Germany).
From the complete cardiac set (see figure 4.1), we selected a sub-volume that contained
the left main and a large part of the circumflex artery with some side-branches. Using a
LM
LA
D
LC
X
1
2
3
Figure 4.1: From
this MSCT dataset
the left main (LM)
and left circumflex
artery (LCX) with
side-branches 1 to 3
are extracted to
obtain a 3D
coronary geometry.
29
region growing segmentation algorithm, the artery with side-branches was extracted from
this sub-volume (see figure 4.2.a). The result is a 3D volume with a very irregular
surface due to the limited resolution of MSCT.
We used the WEM (winged edge mesh) tools available in MeVisLab to create a surface
on the volume, smooth that surface and adapt the number of edges and faces, which
describe the surface. The long side-branches of this surface are clipped (see figure 4.2.b).
The result is not an accurate description of the real coronary geometry of this patient,
however it is a relevant coronary geometry, which suffices for our purposes.
The surface can be imported in GAMBIT and converted to a meshable volume.
Figure 4.2: a) Segmented 3D volume of the LCX, with 3 side-braches. Note the
very irregular surface due to the limited voxel size of the CT dataset. b)
Final WEM surface of the LCX. The red parts are the clipped parts and
deleted from the surface. This surface serves as input for the meshing
software.
1
2
3
a b
30
Geometry meshing
The geometry is exported by MeVisLab as a collection of 3D
data points of the surface of the geometry in a ‘.off’ file. This file
has to be converted to a ‘.stl’ file, which GAMBIT can import.
This was done with a freeware program called ‘Meshman’.
When importing the file, GAMBIT automatically detects the
artery wall as a surface and the sharp corners formed at the inlet
and outlets. This means that GAMBIT can automatically create
edges at these locations, which can be converted into the inlet
and outlet faces by hand. The artery wall surface is directly
imported as a triangular mesh with nodal distances based on the
3D data points. This mesh can be deleted after all the faces have
been stitched together in GAMBIT to create a volume. Before
the volume can be meshed, a tube with a circular entrance is
added to the inlet of the artery. This is necessary for the inlet
flow definition in the simulation. The tube is made long enough
to insure a gradual transition from the circular to the real inlet.
The resulting geometry is depicted in figure 4.3. The final step is
the translation and rotation of the geometry to position the newly
created inlet in the xy-plane with the origin in the center of the
inlet. This is done to facilitate the definition of the inlet flow.
Now the geometry can be meshed using the findings from the literature study and the 2D
and 3D benchmarking. The surface mesh is created first, then a sizing function is defined.
When the volume mesh is created, the elements that are generated at the wall have the
same edge sizes as defined for the surface mesh. The growth factor that was defined in
the sizing function determines the size of the next row of elements in the volume, based
on the elements in the first row. The enlargement of subsequent element rows continues
until the center of the geometry is reached.
Figure 4.3: The geometry as
created with GAMBIT. Note the
extra entrance tube in the top
right corner of the figure. The
outlets are numbered.
1
2
3
4
31
Numerical procedure
A parabolic flow with a maximum velocity of 0.15 m/s is used as input for the model. A
density of 1050 kg/m3 and a viscosity of 3.5 mPa*s is assumed for blood. On the walls
the no-slip condition was applied. Since the LAD, which is the first side branch (figure
4.2.a), has a large diameter and is relatively short, it has a low flow resistance. When we
would apply free flow boundary conditions at the outlets, the flow ratio between the LAD
and LCX would be unrealistic. Therefore normal stresses were prescribed at the outlets to
produce more realistic flow ratios. Outlet 1 (figure 4.3) had a normal stress of 0 Pa
prescribed. Outlets 2 and 3 had normal stresses of 4000 Pa and outlet 4 was exposed to a
normal stress of 7000 Pa.
A segregated solving method was used to compute the Navier-Stokes equations once the
geometries were meshed. In appendix C the FIDAP input file is given. The simulation
results were visualized with viewing software Fieldview (Fluent Inc.) and postprocessed
with Matlab. All simulations were run on a computer with an Intel Xeon 3GHz CPU and
2GB of RAM.
4.2 Results
Based on the results of the benchmarks, we wanted to generate a mesh using quadratic
tetrahedrons with an element edge size 0.12 mm for the surface mesh and a growth factor
of 1.1 for the coarsening of the towards the middle of the geometry. This was not possible
due to the inability of GAMBIT to produce a quadratic surface mesh on the main face of
the geometry. This was independent of mesh size and it is therefore not caused by
memory limits. The supporting staff at Fluent Inc confirmed the problem.
Based on the results from the 2D benchmarking a linear surface mesh with an element
edge size of 0.06 mm was generated and a sizing function with growth factor 1.1 was
applied. Unfortunately GAMBIT was unable to generate the volume mesh based on the
above specifications. This time the problem was a lack of available memory for the
meshing procedure.
32
The most refined mesh that could be created is based on a linear surface mesh with an
edge size of 0.10 mm and a growth factor of 1.1 for the sizing function. In figure 4.4 an
example of the element distribution is given for a slightly sized mesh.
Figure 4.5 shows the WSS distribution obtained with this mesh. The computed WSS
pattern follows expectations. WSS is low in regions opposite the apex of the bifurcations
Figure 4.4: Meshing results in a uniformly distributed surface mesh with edge size 0.12 mm
and sizing towards the center of the geometry with growth factor 1.1. Outlet 4 (left)
and a cross section (right) are shown.
Figure 4.5: The WSS distribution obtained with a mesh based on a surface mesh of
0.10 mm and a growth factor of 1.1. The legend indicates the WSS values in
Pascal. A cutting plane was used to extract WSS data from the arterial wall to
determine mesh quality.
Pa
33
and high where the lumen is narrow. Note the high WSS at outlets 2,3 and 4. This is a
result of the applied normal stresses at these locations.
Three more linear meshes were produced to determine mesh quality. They had surface
meshes with edge sizes of 0.12, 0.16 and 0.20 mm and all were sized with the same
growth factor of 1.1. A cutting plane was used to extract WSS data from the wall for each
mesh. A bifurcation and a small diameter side branch were included to be able to make a
good assessment of mesh quality. WSS results for a section (highlighted in the left
picture in figure 4.6) of the cutting plane are plotted in figure 4.6. The results show that
the 4 different meshes produce similar WSS results, except for the second peak in the
picture on the right side in figure 4.6.
Figure 4.6: WSS values for the highlighted green section of the cutting plane, as is
displayed in the picture on the left, are displayed in the picture on the right
side of the figure. Locations A and B indicate the beginning and end of the
reviewed section. It can be seen that the results are similar for the produced
meshes, except for the second peak near location B.
A
B
B
A
1.4
0.2
0.4
0.6
0.8
1.0
1.2
0.0
Pa
0.10 mm 0.12 mm 0.16 mm 0.20 mm
34
4.3 Conclusion
The protocol to produce a finite element mesh of a coronary artery with multiple
bifurcations from MSCT data seems to work. The protocol involved generation of a
surface mesh from the MSCT data. After a conversion step, the MSCT data could be
imported in the mesh generator GAMBIT. After defining inlet and outlet surfaces, the
wall surface could be meshed with triangles. This mesh served as the starting point for
meshing the complete fluid domain.
Quadratic elements could not be applied for the surface mesh, probably due to the
complexity of the geometry surface. A linear mesh with the preferred edge size could not
be applied either due to memory limits. However, preliminary WSS computations
indicate that coarser meshes also produce accurate results. Based on the results that are
displayed in figure 4.6, a linear surface mesh with an edge size of 0.12 mm and a growth
factor of 1.1, can be considered accurate enough for WSS computations with this
geometry. This is an indication that mesh independency is reached with less nodal points
than expected from the 3D benchmarking. This means that the accuracy of WSS
computation probably cannot be translated from 3D to a real geometry. However, the
error is in a favorable direction, which means that the accuracy criteria obtained from the
3D benchmarking seem to be too strict.
The application of normal stresses at the outlets was purely done to establish reasonable
flow ratios through the bifurcations. This means that the computed WSS values are not
physiologically accurate, although they do show an expected WSS distribution over the
arterial wall. The WSS data are only used to measure the quality of the produced mesh.
35
5 Conclusions, discussion and recommendations
In this report we developed a protocol for meshing a coronary artery geometry with
multiple bifurcations in order to calculate wall shear stress. To obtain initial knowledge
about different meshing parameters we first performed a literature study and 2D and 3D
benchmarks.
Based on the performed literature study the tetrahedral element shape was chosen for
meshing the coronary artery. The results of the 2D benchmarking showed that meshes
with quadratic elements were slightly more accurate than meshes with linear elements
using the same number of nodes. However, the element edge size and thus the number of
nodes that are used largely determine the accuracy of WSS solutions. The distribution of
larger elements towards the center of the geometry could only be applied with a very
moderate amount of sizing, as determined in the 3D benchmarking.
Using the mesh parameters obtained in the literature study and the 2D and 3D
benchmarks we wanted to mesh the realistic geometry with a quadratic surface mesh with
an edge size of 0.12 mm and a sizing factor of 1.1. However, the quadratic surface mesh
could not be produced in GAMBIT. A linear mesh with a comparable number of nodes
also could not be produced due to memory limitations.
We could produce linear meshes with slightly larger edge sizes. From the WSS
computations obtained with these meshes, we obtain the preliminary conclusion that a
linear surface mesh with an edge size of 0.12 mm in combination with a sizing factor of
1.1 was enough to produce mesh-independent WSS computations.
The 3D benchmarking results proved to be too strict, because linear meshes with larger
edge sizes than predicted still provided accurate WSS computations in the human
geometry. The fairly arbitrary 3% accuracy range as defined in chapter 3 causes this. A
larger value for this range would have led to a larger edge size result from the 2D
benchmarking and consequently a coarser surface mesh as a basis for the 3D
benchmarking. The accuracy range was only a means to make a more educated choice for
36
the construction of the coronary artery mesh and the accuracy of WSS computation with
this mesh is the result that counts.
The meshing protocol was examined for a single geometry. Although the geometry
contained relevant characteristics, like multiple bifurcations and a stenosis, the protocol
should be tried on multiple geometries to assess the quality. Perhaps the creation of a
quadratic surface is possible for other coronary geometries, or a different mesh generator
can be used to accomplish this.
Computer memory requirements have played a large role in the construction of the final
coronary geometry meshes. Although it was not necessary to produce a finer mesh than
the ones that were made in chapter 4, this was also not possible due to lack of computer
memory. Application of the meshing procedure as described in chapter 4 might not be
adequate for larger coronary arteries or ones with more bifurcations in them. Fine-tuning
of the solution parameters in FIDAP might also lead to less memory usage.
In this report, only steady, time-independent flows have been considered. Meshes used
for the computation of unsteady flows might have different requirements than the ones
that were examined in this report.
The most import part of the protocol that should be considered for the computation of
realistic and accurate WSS, is the application of realistic boundary conditions for the
outlets of the coronary geometry.
37
Appendices
Appendix A The FIDAP inputfile for the simulations with the 2D model: / ***************************************************************** / Disclaimer: This file was written by GAMBIT and contains / all the continuum and boundary entities and coordinate systems / defined in GAMBIT. Additionally, some frequently used FIPREP / commands are added. Modify/Add/Uncommment any necessary commands. / Refer to FIPREP documentation for complete listing of commands. / ***************************************************************** / / CONVERSION OF NEUTRAL FILE TO FIDAP Database / FICONV( NEUTRAL ) INPUT( FILE="D:\GAMBIT\Carel\Meshes\2D_benchmarks\knp01\knp01.FDNEUT" ) OUTPUT( DELETE ) END / TITLE knp01 / FIPREP / / PROBLEM SETUP / PROBLEM (2-D, LAMINAR, NONLINEAR, ISOTHERMAL) CONFIG( FIDAPMEM=180000000 ) EXECUTION( NEWJOB ) PRINTOUT( NONE ) DATAPRINT( CONTROL ) / / CONTINUUM ENTITIES / ENTITY ( NAME = "volume", FLUID, PROPERTY = "blood" ) / / BOUNDARY ENTITIES / ENTITY ( NAME = "inlet", PLOT ) ENTITY ( NAME = "outlet1", PLOT ) ENTITY ( NAME = "outlet2", PLOT ) ENTITY ( NAME = "wall1", PLOT ) ENTITY ( NAME = "wall2", PLOT ) ENTITY ( NAME = "wall3", PLOT ) ENTITY ( NAME = "wall4", PLOT ) ENTITY ( NAME = "wall5", PLOT ) / / LOCAL COORDINATE SYSTEMS DEFINED / COORDINATE ( SYSTEM = 3, MATRIX,CARTESIAN ) 0.000000 1.500000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
38
/ / SOLUTION PARAMETERS / SOLUTION( SEGREGATED = 1000, VELCONV = .001, PREC=21, ACCF=0, PUPDATE) PRESSURE( MIXED = 1.E-19, CONTINUOUS ) SCALE( VALUE = 0.001 ) / $vmax = 0.15 $radius = 1.5 $vcoeff=$vmax/POW($radius, 2) $loopctr=1 / / MATERIAL PROPERTIES / / Partial list of Material Properties data / DECLARE $viscblood[15] $viscblood[1] = 100 $viscblood[2] = 50 $viscblood[3] = 10 $viscblood[4] = 5 $viscblood[5] = 1 $viscblood[6] = 0.5 $viscblood[7] = 0.15 $viscblood[8] = 0.1 $viscblood[9] = 0.05 $viscblood[10] = 0.025 $viscblood[11] = 0.015 $viscblood[12] = 0.01 $viscblood[13] = 0.0075 $viscblood[14] = 0.005 $viscblood[15] = 0.0035 DECLARE $str[15] $str[1] = "visc_100" $str[2] = "visc_50" $str[3] = "visc_10" $str[4] = "visc_5" $str[5] = "visc_1" $str[6] = "visc_0.5" $str[7] = "visc_0.15" $str[8] = "visc_0.1" $str[9] = "visc_0.05" $str[10] = "visc_0.025" $str[11] = "visc_0.015" $str[12] = "visc_0.01" $str[13] = "visc_0.0075" $str[14] = "visc_0.005" $str[15] = "visc_0.0035" / DENSITY( SET = "volume", CONSTANT = 1050 ) VISCOSITY( SET = "volume", CONSTANT = $viscblood[$loopctr] ) / / INITIAL AND BOUNDARY CONDITIONS / BCNODE(UX , ENTITY = "inlet", POLYNOMAL=2, SYSTEM=3, CARTESIAN, X, Y, Z) $vmax -$vcoeff 0 2 0 -$vcoeff 2 0 0
39
BCNODE(UY , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(UZ , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(VELOCITY , ENTITY = "outlet1", FREE, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "outlet2", FREE, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "wall1", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "wall2", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "wall3", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "wall4", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "wall5", ZERO, X, Y, Z ) END / CREATE( FIPREP,DELETE ) PARAMETER( LIST ) CREATE( FISOLV ) RUN( FISOLV, FOREGROUND ) $iden=getident() IDENTIFIER(NAME=$iden, OLD) / / FILE(RENA, FROM=$iden+".FDCONV", TO=$str[$loopctr]+".FDCONV") / /Reynolds stepping with automatic restart ( by Hans Schuurbiers) / DO($loopctr=2, $loopctr.LE.15, 1) $iden=getident() $from=$iden+".FDPOST" $to=$iden+".FDREST" FILE(RENA, FROM=$from, TO=$to) / IF($loopctr.GT.2) IDENTIFIER(NAME=$iden, OLD) ENDIF $iden=getident() PARA(LIST) FIPREP EXECUTION( RESTART ) VISCOSITY( REPLACE, ENTRY = "volume", SET = "volume", CONSTANT = $viscblood[$loopctr]) END CREATE( FIPREP, DELETE ) CREATE( FISOLV ) RUN( FISOLV, FOREGROUND ) FILE(RENA, FROM=$iden+".FDCONV", TO=$str[$loopctr]+".FDCONV") FILE(RENA, FROM=$iden+".FDREST", TO=$str[$loopctr]+".FDPOST") ENDDO $iden=getident() IDENTIFIER(NAME=$iden, SAVE, OLD) END
40
Appendix B
The FIDAP inputfile for the simulations with the 3D model, only parameters that differ from those in appendix A are given: FIPREP / / PROBLEM SETUP / PROBLEM (3-D, LAMINAR, NONLINEAR, ISOTHERMAL) EXECUTION( NEWJOB ) CONFIG( FIDAPMEM = 180000000 ) PRINTOUT( NONE ) DATAPRINT( CONTROL ) / / CONTINUUM ENTITIES / ENTITY ( NAME = "volume", FLUID, PROPERTY = "blood" ) / / BOUNDARY ENTITIES / ENTITY ( NAME = "inlet", PLOT ) ENTITY ( NAME = "outlet1", PLOT ) ENTITY ( NAME = "outlet2", PLOT ) ENTITY ( NAME = "main", PLOT ) ENTITY ( NAME = "side", PLOT ) / / SOLUTION PARAMETERS / SOLUTION( SEGREGATED = 1000, VELCONV = .001, CG, CGS, PREC=21, ACCF=0, PUPDATE) PRESSURE( MIXED = 1.E-19, CONTINUOUS ) SCALE( VALUE = 0.001 ) / $vmax = 0.15 $radius = 1.5 $vcoeff=$vmax/POW($radius, 2) $loopctr=1 / / INITIAL AND BOUNDARY CONDITIONS / BCNODE(UZ , ENTITY = "inlet", POLYNOMAL=2) $vmax -$vcoeff 0 2 0 -$vcoeff 2 0 0 BCNODE(UY , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(UX , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(VELOCITY , ENTITY = "outlet1", FREE, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "outlet2", FREE, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "main", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "side", ZERO, X, Y, Z )
41
Appendix C The FIDAP inputfile for the simulations with the coronary geometry, only parameters that differ from those in appendix A are given: FIPREP / / PROBLEM SETUP / PROBLEM (3-D, LAMINAR, NONLINEAR, ISOTHERMAL) CONFIG( FIDAPMEM=180000000 ) EXECUTION( NEWJOB ) PRINTOUT( NONE ) DATAPRINT( CONTROL ) / / CONTINUUM ENTITIES / ENTITY ( NAME = "volume", FLUID, PROPERTY = "blood" ) / / BOUNDARY ENTITIES / ENTITY ( NAME = "inlet", PLOT ) ENTITY ( NAME = "face main", PLOT ) ENTITY ( NAME = "face in", PLOT ) ENTITY ( NAME = "outlet1", PLOT ) ENTITY ( NAME = "outlet2", PLOT ) ENTITY ( NAME = "outlet3", PLOT ) ENTITY ( NAME = "outlet4", PLOT ) / / SOLUTION PARAMETERS / SOLUTION( SEGREGATED = 1000, VELCONV = .001, PREC=21, ACCF=0, PUPDATE) PRESSURE( MIXED = 1.E-19, CONTINUOUS ) SCALE( VALUE = 0.001 ) / $vmax = 0.15 $radius = 1.7 $vcoeff=$vmax/POW($radius, 2) $loopctr=1 / / INITIAL AND BOUNDARY CONDITIONS / BCNODE(UX , ENTITY = "inlet", POLYNOMAL=2) $vmax -$vcoeff 0 2 0 -$vcoeff 0 0 2 BCNODE(UY , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(UZ , CONSTANT = 0, ENTITY = "inlet" ) BCNODE(N , ENTITY = "outlet1", CONSTANT = 0 ) BCFLUX(N , ENTITY = "outlet2", CONSTANT = 4000 ) BCFLUX(N , ENTITY = "outlet3", CONSTANT = 4000 ) BCFLUX(N , ENTITY = "outlet4", CONSTANT = 7000 ) BCNODE(VELOCITY , ENTITY = "face main", ZERO, X, Y, Z ) BCNODE(VELOCITY , ENTITY = "face in", ZERO, X, Y, Z )
42
Appendix D: meshing protocol
In the following protocol the necessary steps to build a mesh are given. The protocol
starts with the ‘.off’ file as created in MeVisLab from MSCT data.
Prepping:
-Conversion of ‘.off-file’ to a ‘.stl-file’, which GAMBIT can import as mesh.
For this project a freeware program called ‘Meshman’ was used to convert .off files to the
.stl format. A script could be written to carry out this conversion, but this was not done
for this project.
Geometry definition:
-Import ‘.stl-file’ in GAMBIT using standard settings. Choose ‘FIDAP’ as solver, then
set import type to STL via the import mesh menu. GAMBIT may create edges and / or
faces at locations other than the inlet and outlets. Adjusting the import settings
(tolerance!) may reduce the number of these edges and faces, but it is not necessary: they
are deleted during the following steps.
GAMBIT creates virtual geometries, so the user is also bound to virtual geometries.
-Use the predefined edges of the imported mesh to create virtual faces at the inlet and
outlets of the artery.
-Use ‘stitch faces’ to create a volume using the inlet, outlets and the main face of the
artery (this face has already been created and is called: ‘default-wall’).
-Delete the surface mesh and the obsolete edges and faces. The only thing remaining
should be the created volume and the lower geometry that it is based on. This is depicted
in figure A.1.
Figure A.1: coronary volume, shading is used for better visualization.
43
-Before meshing starts, the volume needs to be aligned so that the inlet is square to the x,
y or z axis and the inlet center is in the origin. This is needed for flow simulation later on
in FIDAP.
An example of placing the inlet in the xy-plane with z = 0:
-create vertex V1 in the center of the inlet-face. The center of the face can be
found with the information option for that face. Create a vertex at the given
centroid using at least 3 decimals behind the comma.
-create another vertex V2 on the inlet-edge, the location is not important
-the vertex already existing on the inlet-face is called V3
-create vertex V4 in (0,0,0)
-create vertex V5 in (0,5,0)
-create vertex V6 in (5,0,0)
-go to ‘align volume’ option
-entries: translation vertex pair
start: V1
end: V4
rotation vertex pair
start: V2
end: V5
plane alignment vertex pair
start: V3
end: V6
-check the ‘connected geometry’ box and apply.
-all vertices created in the alignment procedure can be deleted. The axis
indicator should now be in the middle of the inlet, with the inlet surface in the xy-
plane.
44
-To achieve a fluent entrance flow, an extra piece of tube is placed in front of the inlet:
-use ‘create real circular face’ to produce a circular face with the radius of your
choice (matching the inlet face in surface area).
-translate this face 10 units in the negative z-direction.
-split the edge of the newly created circular face at a point in line with the vertex
on the inlet face. Use the ‘virtual connected’ option. A vertex is created and the
surface is transformed into a virtual geometry.In figure A.2, vertex.16 is the
vertex on the inlet face and vertex.15 is the point where the edge of the circular
face has been split.
-split the same edge at a location opposite the last split (vertex.14 in figure A.2).
-split the original inlet edge at a location opposite the existing vertex (vertex.9 in
figure A.2). It will seem like the arterial volume is deleted, but it is not (click the
shade button in the ‘global control’ panel).
-create 2 virtual straight edges between the vertices on the original inlet face and
the new circular face as in figure A.2.
-create 2 virtual surfaces using the ‘create face from wireframe’ function. Be sure
to choose the edges in the right order.
figure A.2: vertex.9 was the existing vertex on the inlet, vertex.16 is the newly
created one on the opposite end of the inlet. Vertex.14 and vertex.15 are the
vertices on the newly formed circular face and are used to attach the
straight edges toward the inlet.
45
-use ‘stitch faces’ to create a virtual volume consisting of the 2 faces created in
the previous step and the inlet and circular faces.
-use ‘merge volumes’ to merge the newly created entrance tube and the arterial
volume.
-the last task before meshing can start is the translation of the total volume so that
the new inlet has the origin as center point. In this case the volume should be
moved 10 units in the positive z-direction.
Mesh creation
-Be sure to save the progress so far!
-Create a surface mesh for the total volume by selecting the main arterial face and the two
faces that make up the sides of the new inlet tube. Be sure to select the quadratic element
type and the tetrahedral meshing scheme. It is possible that the complexity of the
geometry does not allow for quadratic elements. In this case GAMBIT will crash and
linear elements are the only option.
If there are more than 100.000 elements needed for the surface meshing, then the
maximum amount of elements needs to be adjusted via the menu:
‘defaults\mesh\trimesh\max_faces’.
-If a sizing function is needed, one can be applied by selecting the 3 meshed surfaces as
input and the total volume as the attachment in the sizing tab.
-Now the total volume can be meshed. If sizing has been applied, it takes a lot more time
for GAMBIT to create the volume mesh. 30 Minutes for a mesh of about 200.000 nodes
is not rare.
-Boundaries have to be defined before the mesh is exported. All the surfaces must have
the ‘PLOT’ type and the volume must have the ‘FLUID’ type selected.
-Export the mesh (with FIDAP as solver). GAMBIT creates two files: the ‘.FDNEUT’-
file contains the mesh and geometry data, the ‘.FIPREP’-file contains the solution
parameters for simulation in FIDAP.
46
Simulation
-The created FIPREP-file needs to be adjusted for the particular flow simulation it is used
for in FIDAP. It is possible to define the parameters in the FIPREP-file with the FIDAP
interface. It is much more convenient however to adjust the FIPREP-file manually. The
inputs used for the coronary flow simulation are given in appendix C.
A couple of parameters that need to be defined precise are the boundary entities and the
initial and boundary conditions. This includes the definition of the entrance flow (use the
appropriate radius). Another important part is the definition of the solution parameters.
These determine the exact manner of the problem solution and can affect solution times
and convergence dramatically.
-Once the FIPREP-file is correctly adjusted, the simulation can be run in FIDAP, using
the ‘readfile’ command and selecting the appropriate FIPREP-file.
-After completion of the simulation, the results can be exported to a file that can be read
in the Fluent viewing software Fieldview. First select the correct identifier in the FIDAP
interface, then select FDCONV \ export fieldview-file and terminate FIDAP.
Viewing
-The created ‘.UNS’-file can be imported in Fieldview for viewing and further data
export to Matlab for example.
47
References
1. Malek, A.M., S.L. Alper, and S. Izumo, Hemodynamic shear stress and its role in
atherosclerosis. Jama, 1999. 282(21): p. 2035-42.
2. Libby, P., Current concepts of the pathogenesis of the acute coronary syndromes.
Circulation, 2001. 104(3): p. 365-72.
3. Slager, C.J., et al., The role of shear stress in the generation of rupture-prone
vulnerable plaques. Nat Clin Pract Cardiovasc Med, 2005. 2(8): p. 401-7.
4. Slager, C.J., et al., The role of shear stress in the destabilization of vulnerable
plaques and related therapeutic implications. Nat Clin Pract Cardiovasc Med,
2005. 2(9): p. 456-64.
5. VanderLaan, P.A., C.A. Reardon, and G.S. Getz, Site specificity of
atherosclerosis: site-selective responses to atherosclerotic modulators.
Arterioscler Thromb Vasc Biol, 2004. 24(1): p. 12-22.
6. Prakash, S. and C.R. Ethier, Requirements for mesh resolution in 3D
computational hemodynamics. J Biomech Eng, 2001. 123(2): p. 134-44.
7. Quatember, B. and H. Muehlthaler, Generation of CFD meshes from biplane
angiograms: an example of image-based mesh generation and simulation.
Applied Numerical Mathematics, 2003. 46: p. 379-397.
8. Long, Q., et al., Magnetic resonance image processing and structured grid
generation of a human abdominal bifurcation. Comput Methods Programs
Biomed, 1998. 56(3): p. 249-59.
9. Antiga, L., et al., Geometric reconstruction for computational mesh generation of
arterial bifurcations from CT angiography. Comput Med Imaging Graph, 2002.
26(4): p. 227-35.
10. Glor, F.P., et al., Reproducibility study of magnetic resonance image-based
computational fluid dynamics prediction of carotid bifurcation flow. Ann Biomed
Eng, 2003. 31(2): p. 142-51.
11. Kohler, U., et al., MRI measurement of wall shear stress vectors in bifurcation
models and comparison with CFD predictions. J Magn Reson Imaging, 2001.
14(5): p. 563-73.
48
12. Marshall, I., et al., MRI and CFD studies of pulsatile flow in healthy and stenosed
carotid bifurcation models. J Biomech, 2004. 37(5): p. 679-87.
13. Rindt, C.C., et al., A numerical analysis of steady flow in a three-dimensional
model of the carotid artery bifurcation. J Biomech, 1990. 23(5): p. 461-73.
14. Birchall, D., et al., Analysis of haemodynamic disturbance in the atherosclerotic
carotid artery using computational fluid dynamics. Eur Radiol, 2006. 16(5): p.
1074-83.
15. Baghdadi, L., D.A. Steinman, and H.M. Ladak, Template-based finite-element
mesh generation from medical images. Comput Methods Programs Biomed, 2005.
77(1): p. 11-21.
16. Steinman, D.A., et al., Reconstruction of carotid bifurcation hemodynamics and
wall thickness using computational fluid dynamics and MRI. Magn Reson Med,
2002. 47(1): p. 149-59.
17. Ladak, H.M., J.S. Milner, and D.A. Steinman, Rapid three-dimensional
segmentation of the carotid bifurcation from serial MR images. J Biomech Eng,
2000. 122(1): p. 96-9.
18. Thomas, J.B., et al., Reproducibility of image-based computational fluid dynamics
models of the human carotid bifurcation. Ann Biomed Eng, 2003. 31(2): p. 132-
41.
19. Milner, J.S., et al., Hemodynamics of human carotid artery bifurcations:
computational studies with models reconstructed from magnetic resonance
imaging of normal subjects. J Vasc Surg, 1998. 28(1): p. 143-56.
20. Taylor, C.A., T.J. Hughes, and C.K. Zarins, Finite element modeling of three-
dimensional pulsatile flow in the abdominal aorta: relevance to atherosclerosis.
Ann Biomed Eng, 1998. 26(6): p. 975-87.
21. Boutsianis, E., et al., Computational simulation of intracoronary flow based on
real coronary geometry. Eur J Cardiothorac Surg, 2004. 26(2): p. 248-56.
22. Soulis, J.V., et al., Wall shear stress in normal left coronary artery tree. J
Biomech, 2006. 39(4): p. 742-9.