Académique Documents
Professionnel Documents
Culture Documents
a,∗ b
Hrvoje Jasak Željko Tuković
a Nabla Ltd. The Mews, Picketts Lodge, Picketts Lane, Salfords, Surrey, RH1 5RG
England
b Faculty of Mechanical Engineering and Naval Architecture, University of Zagreb,
Ivana Lučića 5, 10 000 Zagreb, Croatia
Abstract
Key words: Moving mesh, vertex motion, motion solver, unstructured, finite
volume, free surface
AMS: 74S10, 65M99, 76T10, 74S05
∗ Corresponding author
Email address: H.Jasak@Nabla.co.uk ( Hrvoje Jasak ).
URL: http://www.nabla.co.uk ( Hrvoje Jasak ).
Several deforming mesh algorithms have been presented in the past, with
various approaches to defining mesh motion. Behr and Tezduyar [4,5] use
explicit algebraic expressions in the horizontal and vertical direction with a
Finite Element (FE) Arbitrary Lagrangian-Eulerian (ALE) solver to simulate
free-surface flows with mesh deformation. The most popular method to date is
the spring analogy [6,7]. Here, all point-to-point connections within the mesh
are replaced by linear springs and point motion is obtained as a response to
the boundary loading. Several Finite Volume (FV) variants exist, e.g. [6,8,9],
covering mostly unstructured triangular meshes in 2- and 3-D. However, this
approach proved to lack robustness, particularly for arbitrarily unstructured
meshes common in FV simulations. A review of merits and limitations of
spring analogy and its variants is given by Blom [7]. In an effort to improve
the robustness of the method, Farhat et al. [10,11] propose the addition of
torsional springs to control all mechanisms of invalidating a tetrahedral cell.
2
is sometimes used in conjunction with re-meshing techniques, providing a res-
cue path when the motion algorithm fails.
The rest of this paper will be organised as follows. In Section 2 the FV method
for arbitrary moving volumes will be summarised. We will present the require-
ments on the automatic mesh motion system and review the deficiencies of
past efforts in this direction in Section 3. A notable part of this effort is a re-
view of mesh handling in an unstructured FVM code, together with the typical
errors in the mesh structure (both topological and geometrical). Section 4 lays
the foundation for a novel automatic mesh motion method, starting from the
requirements on a robust motion system, choice of motion equation, solu-
tion variable, appropriate polyhedral cell decomposition and control of mesh
quality through variable diffusion in the motion equation. A crucial part of de-
velopment is the support for motion of arbitrary polyhedra. The new method
is tested on two sample problems in Section 5. The paper is completed with
two examples of free surface flows, including a simulation of a free-rising air
bubble in water in 2- and 3-D and a closed with a short summary.
A “static mesh” FVM is based on the integral form of the governing (conserva-
tion) equation over a Control Volume (CV) fixed in space. More generally, the
integral form of the conservation equation for a tensorial property φ defined
per unit mass in an arbitrary moving volume V bounded by a closed surface
3
S states:
d Z I I Z
ρφ dV + ds•ρ(u − ub )φ = − ds•ρqφ + Sφ dV, (1)
dt
V S S V
where ρ is the density, u is the fluid velocity, ub is the boundary velocity and
qφ and Sφ are the surface and volume sources/sinks of φ, respectively. As the
volume V is no longer fixed in space, its motion is captured by the motion of
its bounding surface S by the velocity ub .
(ρP φP VP )n − (ρP φP VP )o X X
+ ρf (F − Fs )φf = − sf •ρqφ + Sφ VP , (2)
∆t f f
where the subscript P represents the cell values, f the face values and su-
perscripts n and o the “new” and “old” time level, VP is the cell volume,
F = sf •uf is the fluid flux and Fs is the mesh motion flux. The fluid flux
F is usually obtained as a part of the solution algorithm and satisfies the
conservation requirements (if any).
4
Compared with the FVM on a static mesh (e.g. [24]), Eqn. (2) shows only
two differences: the temporal derivative introduces the rate of change of the
cell volume and the mesh motion flux accounts for the grid convection. The
relationship between the two is governed by the space conservation law [25]:
d Z I
dV − ds•ub = 0. (3)
dt
V S
While Eqn. (3) is always satisfied in the integral form, it also needs to be
preserved in the discrete form:
VPn − VPo X
− Fs = 0. (4)
∆t f
For this reason, the mesh motion flux Fs is calculated as the volume swept by
the face f in motion during the current time-step rather than from the grid
velocity ub , making it consistent with the cell volume calculation.
From the case setup point of view, it is the fact that the shape of the domain
changes in time that influences the solution; in fact, the boundary shape itself
may in some cases be a part of the solution. Thus, one can distinguish be-
tween boundary motion and internal point motion. Boundary motion can be
considered as given: it is either prescribed by external factors, e.g. piston and
valve motion for in-cylinder flow simulations in internal combustion engines,
or a part of the solution as in free surface tracking simulations.
In the past, point motion in the FVM has been provided in various ways,
ranging from pre-calculated point positioning, interaction with a pre-processor
or a mesh generator, to the more flexible and user-friendly automatic methods.
The latter provide great advantage, both in terms of easier and faster case
setup, allowing for dynamically changing topology (e.g. adaptive refinement)
or automatic improvements of mesh quality.
5
In summary, the objective of automatic mesh motion is to determine internal
point motion (not involving topological changes) to conform with the given
boundary motion while preserving mesh validity and quality.
A valid mesh is a pre-requisite for a good numerical solution and a critical in-
gredient of automatic mesh motion. For this reason, we will briefly summarise
the validity and quality measures from the FVM standpoint.
The investigation of mesh validity can be separated into topological and geo-
metrical tests. The first group contains the tests that can be performed without
knowing the actual point positions, while the second deals with the shape of
cells and the boundary. Note that it is the job of mesh generation to produce
a mesh satisfying these requirements; here, we shall concentrate on typical
errors found in real-life meshes and on methods of preserving the validity of
an initially valid computational mesh.
In the face-addressed mesh definition, a polyhedral mesh for the FVM is de-
fined by the following components:
• A list of points. For every point, its space co-ordinates are given; the point
label is implied from its location in the list. Every point must be used in at
least one face;
• A list of polygonal faces, where a face is defined as an ordered list of point la-
bels. Faces can be separated into internal (between two cells) and boundary
faces. Every face must be used by at least one cell;
• A list of cells defined in terms of face labels. Note that the cell shape is
unknown and irrelevant for discretisation;
• Boundary faces are grouped into patches, according to the boundary con-
dition. A patch is defined as a list of boundary face labels.
6
define the owner and neighbour cell such that owner appears first in the cell
list. Face orientation is determined using the right-hand rule and it is such
that the area vector points outwards from the owner cell. The face list will
first collect all internal faces and then all boundary faces patch by patch in
the order of patch definition. Internal faces are ordered to contain all faces
from the first cell with the increasing neighbour label, followed by the faces
owned by the second cell etc. This approach has proven to be robust and easy
to handle as it enforces strict and unique face ordering 1 .
The first four conditions control the validity of the mesh definition while the
last two check that all cells and the boundary hull are topological closed.
Additionally, mesh ordering rules are checked and enforced.
Geometrical tests deal with the positivity of face areas and cell volumes, as
well as convexity and orientation requirements. In the context of second-order
FVM, it is sufficient to use the weak definition of a convex shape. Here, the
geometrical measures (face area and normal vector, face and cell centroid,
volume swept by the face in motion etc.) for a polygonal face are calculated by
decomposing the face into triangles. Two possible triangular decompositions
of a polygon (with different severity of the convexness criteria) are shown in
Fig. 2.
1 An alternative definition, giving the owner and neighbour cell index for mesh
faces instead of the faces of a cell is also possible. The difference between the two
is only in terms of enforcing the ordering of the face list.
7
While some of the tests are clearly redundant (e.g. if a cell is closed topologi-
cally it is also closed geometrically), experience shows that various combina-
tions of failures indicate common errors in mesh generation. We shall assume
the existence of a topologically and geometrically valid mesh as a starting
point for automatic mesh motion.
During mesh motion, mesh topology remains unaffected and only the point
positions change. Thus, preserving the mesh quality only relates to the ge-
ometrical tests. Moreover, once the convexness and orthogonality tests are
satisfied, an initially valid mesh remains valid if no triangles or tetrahedra
are inverted. We will use this criterion to examine existing automatic mesh
8
motion algorithms and devise a new approach.
Let us consider the limitations and failure modes of some existing mesh motion
techniques as a basis for the new approach.
The first obvious point-based solution strategy is the spring analogy [7]. Here,
all edges in the mesh are replaced by elastic springs and point motion is
obtained by “loading” the spring system with the prescribed boundary motion.
The linear system of motion equations is obtained from the force balance in
all points.
While this seems intuitively right, a number of failure modes has been ob-
served, especially on polyhedral cells. This has occured in spite of the fact
that the system of linear equations describing point motion has been solved
to machine tolerance before moving the mesh. In other words, the failure is
associated with the final solution rather than intermediate mesh states or the
relaxation procedure. Let us start by imagining a linear spring analogy solver
and examining various failure modes using the rules from Section 3.1.3. After
each failure, an improvement on the method will be suggested.
9
c’
a’ b’
a b
The simplest failure mode is a situation where two points a and b of a triangle
(separate at the beginning of the motion) end up on top of each other, Fig.
3(a), and the triangle degenerates into a line.
The cause of the failure is the fact that with linear spring analogy the force
resulting from an edge being collapsed to a point does not tend to infinity.
This can be easily remedied, by introducing non-linearity, i.e. by making the
stiffness coefficient length-dependent, using e.g. the exponential spring law.
The price, however, is substantial: a linear elastic problem has been converted
into a non-linear problem and an iterative solution procedure is required.
Additional problems exist with relation to unloading (long non-linear springs
tend to relax faster than the short ones), but for the case of presentation, we
may consider this problem as solved.
The second mode of failure is a triangle flip, Fig. 3(b). Here, a triangle be-
comes degenerate by pushing point c through the opposite edge without ever
degenerating any of its edges. No edges are reduced to zero length and the
non-linear spring fix mentioned above will not remedy the problem. Farhat et
al. [10,11] propose a solution by introducing torsional springs in points which
control internal edges of triangles. Additional equations are now obtained from
the torque balance in all points.
One can easily infer that a torsional spring will need to be replaced by its
non-linear equivalent to produce a torque moment tending to infinity as the
angle between two adjacent edges approaches zero, with additional corrections
on unloading. Additionally, the problem of torsional springs becomes substan-
tially more complex on 3-D polyhedra in relation to a tetrahedron flip. Thus,
a reliable spring analogy setup would consist of linear and torsional springs
with length/angle-dependent coefficient sensitised on loading/unloading, Fig.
10
Fig. 4. Combined linear-torsional spring analogy.
4.
Taking a step back, it seems that a reliable spring-based mesh motion system
has come at a very high price: a non-linear component-coupled system which
is difficult and costly to solve. At the same time, the FEM community uses a
linear Laplace equation with impunity, producing reliable and bounded motion
fields at a fraction of a price, indicating that a fundamental re-think may be
required.
Looking at the previous section, it seems that spring analogy continually at-
tempts to overcome numerical deficiencies by introducing non-linearity. At
the same time, one could clearly claim that the Laplacian operator is a per-
fect choice to govern mesh motion 2 , as it is unconditionally bounded; it only
remains to devise a solution strategy that will preserve boundedness in the
discrete form. One could claim that spring analogy is no more than a numeri-
cally clumsy approach to solving a Laplacian-based mesh motion equation on
the points of the mesh.
Taking a lead from the FEM practice, we can state the following requirements
on the mesh motion solver:
11
4.1 Tetrahedral Elements and Discretisation of a Laplacian
The “obvious” solution of using a classical FEM solver to solve for mesh motion
is rejected: to the authors’ knowledge, automatic definition of shape functions
for arbitrary polyhedra does not exist and it is impractical to categorise all
“allowed” cell shapes in the face-addressed mesh. Also, it is unclear whether
such a shape function would produce a diagonally dominant matrix we are
seeking for efficiency reasons.
At the same time, tetrahedral finite elements for a Laplacian produce a diag-
onally equal matrix and second-order discretisation. Also, matrix coefficients
tend to infinity for both degenerate situations in Fig. 3. We can prove this
by considering a trick for calculating the off-diagonal matrix coefficient for a
tetrahedron in real space, Fig. 5.
l
k
si
i
j
The coefficient contribution for a point pair (i, j) and the Laplacian operator
can be calculated as:
Z
si • s j
aij = ∇Ni •∇Nj dV = . (6)
9 VT
VT
12
The final step in the analysis is the recognition that the cell measures we are
trying to preserve are obtained by using a tetrahedral decomposition (which
can be performed irrespective of the shape): it is precisely these tetrahedra
whose quality we need to preserve.
13
introduces an additional point in all cell centres, whereas cell-and-face decom-
position adds a point in all face centres as well, giving a considerable increase
in the number of unknowns. The issue of solution cost will be investigated
further in Section 4.4.
Unlike the classical face-addressed FV solver [26], where the matrix is assem-
bled by looping over all mesh faces for all the operators and calculating the
complete coefficient, the FEM assembles the matrix by looping over all ele-
ments and distributing coefficient contributions into the diagonal, off-diagonal
and source vectors. A concern is the fact that the number of tetrahedra in the
mesh will be considerably higher than the number of cells in the mesh. For ex-
ample, in an all-hexahedral mesh of 100 000 CVs, the number of tetrahedra will
14
be 1.2 million for the cell decomposition or 2.4 million for the cell-and-face de-
composition. Fortunately, the decomposition can be done “on-the-fly”, without
storing the actual tetrahedra and, combined with an efficient matrix assembly
algorithm, poses limited storage and matrix assembly overhead. Furthermore,
additional efficiency is obtained by operating on a group of tetrahedra at a
time (resulting from a single polyhedral cell) with no storage overhead. This
is sometimes called the “mini-element” technique.
Taking the efficiency concern a step further, we can compare the size of the
pressure matrix in the FV solver (1 equation per cell) with the size of the
motion matrix. In spite of the large number of tetrahedra, the number of equa-
tions is not excessive: a 100 000 cell mesh in 3-D produces a motion matrix of
approx. 200 000 (cell decomposition) to 500 000 (cell-and-face decomposition);
it remains to be seen whether the solution cost is acceptable.
Looking at the polyhedral decomposition, Fig. 6, it can be seen that the cell
centre point in the decomposition is connected only to the points of the current
cell. We could thus examine the possibility of eliminating the equation for the
centre point before assembling the matrix as point motion is needed only in
the actual points of the mesh. However, it turns out that the elimination of
additional variables would severely deteriorate the matrix condition number
and preclude the use of iterative solvers. This option would therefore result in
a substantial increase in the solution cost and is abandoned.
In terms of storage requirements, one should note that in segregated FVM fluid
flow solvers, the memory peak occurs during the pressure-velocity solution
(using SIMPLE [29] or PISO [30]). Here, it is necessary to simultaneously
store the momentum and pressure matrices. The mesh motion solver operates
either before of after the pressure-velocity module and some storage will be re-
used (subject to dynamic memory handling within the code). This somewhat
decreases the perceived storage peak of the motion solver relative to the FVM
part of the algorithm.
15
For better precision, the motion velocity on the boundary is calculated from
the current and desired point position and the time-step. This approach avoids
the accumulation of round-off errors associated with solving for motion veloc-
ity and using point position.
(1) Every polyhedral cell is split into tetrahedra by splitting its faces into
triangles and introducing a point in cell centroid. Consistency in tetra-
hedral connectivity is obtained by using identical face decomposition for
both cells sharing an internal face.
(2) The Laplace operator:
∇•(γ∇u) = 0 (7)
where xold and xnew are the point positions before and after mesh motion
and ∆t is the time-step. Eqn. (7) is discretised on the tetrahedral decom-
position using standard second-order finite element method and produces
a diagonally equal matrix. For efficiency reasons, the matrix coefficients
are calculated in real space using Eqn. (6).
(3) Boundary conditions for the motion equation are enforced from the known
boundary motion; this may include free boundaries, symmetry planes,
prescribed motion boundary etc.
(4) The matrix is solved using an iterative linear equation solver; here the
choice falls on the Incomplete Cholesky preconditioned Conjugate Gra-
dient (ICCG) solver [31], also used by the FVM solver.
16
mechanics library. The software is constructed to allow extensive code re-
use, typically impossible in more traditional designs. FOAM currently imple-
ments a second- and fourth-order collocated FVM on arbitrarily unstructured
meshes. It is written in operator form and has a class hierarchy designed to
be shared between various discretisation practices.
Examining the code structure, it emerges that the classes representing the
computational mesh, fields and field algebra, boundary conditions, linear equa-
tion matrix and solver technology as well as problem setup and post-processing
can be shared. All the components listed above are intrinsically discretisation-
independent, totalling over 100 000 lines of code and provide an excellent head-
start.
17
We shall now apply the novel motion algorithm on two test problems and ex-
amine the mesh quality for various definitions of non-constant diffusion fields.
The first test case consists of a triangular mesh in 2-D and a circle moving
within it 3 . Constant motion velocity is prescribed for the points on the circle,
the left and right boundary are fixed and a slip condition is prescribed at the
top and bottom.
Fig. 7 shows the mesh at several positions. It can be clearly seen that while
the mesh remains valid, its quality is not satisfactory. The main objection is
excessive mesh density in front of the moving cylinder and the overall reduction
in quality due to stretching. It is still encouraging that even for such a large
mesh deformation, the final mesh remains valid.
18
distorted, its further deformation should be avoided. In both cases, the way to
diminish local distortion is by increasing local diffusivity in the motion opera-
tor. Note that the Laplacian operator remains bounded for arbitrary variation
of the positive diffusion coefficient.
Out of a variety of diffusion laws one could devise, the following have been
tested in this study:
(a) Constant.
Fig. 8 shows the mesh comparison for various choices of diffusivity where the
19
moving circle has been chosen as the reference boundary. It can be clearly
seen that distance-based diffusivity improves the overall mesh quality and
especially mesh spacing near the circle. The result for quality-based method
(Q1) was almost identical to Fig. 8(a), i.e. no significant improvement has
been observed.
The second test case consists of a pitching airfoil with a 2-D hybrid mesh. The
airfoil moves according to the sinusoidal law, including both translation and
pitching.
Fig. 9 shows the mesh around the airfoil during three phases of motion using
the D2 distance-based diffusivity. Of particular interest is the mesh around
the trailing edge. The selected method preserves the mesh quality very well.
20
(a) Constant. (b) Linear distance-based (D1).
see how the mesh quality impacts on the computational cost. Fig. 11(c) plots
the number of iterations in the ICCG solver for the motion equation solved to
the same relative tolerance (1 × 10−9 ). For the methods with adverse effect on
mesh quality, the solution cost increases considerably. The D2 solution method
consistently requires around 130 solver iterations, comparable with the effort
of the FV pressure solver for the same case.
21
80 220
constant constant
D1 D1
75 D2 200 D2
D3 D3
Q1 Q1
70 Q2 Q2
180
Q3 Q3
65
160
Maximal non-orthogonality
60
Maximal skewness
140
55
120
50
100
45
80
40
60
35
30 40
25 20
0 0.5 1 1.5 2 0 0.5 1 1.5 2
t, s t, s
700
constant
D1
D2
D3
600 Q1
Q2
Q3
500
Number of iterations
400
300
200
100
0
0 0.5 1 1.5 2
t, s
22
conditioned matrix which, for the same mesh, sometimes requires only a tenth
of the number of iterations used with the cell decomposition.
This study will be concluded by presenting two simulations of free surface flows
using a surface tracking algorithm. Here, the fluid equations are solved in both
phases and coupled across the free surface. The free surface is represented as
a mesh interface whose motion depends on the flow solution. A schematic
representation of the free surface condition is given in Fig. 12.
Liquid
free surface(fs)
pf s = pf ss − σKf s
µgas
(∇u)f s = µliquid
(∇u)f ss
Gas
Second-order FVM is used for the fluid flow and the automatic mesh motion
solver described above adjusts the mesh. On the free surface, a double bound-
ary condition is imposed: fixed pressure and zero flux condition need to be
satisfied simultaneously. The fluid flow equations are solved using a segregated
SIMPLE procedure, taking into account the kinematic and dynamic condition
on the free surface, as well as surface tension. The “no-flux” condition is sat-
isfied in an iterative sequence [34,35], providing the boundary condition for
mesh motion on the free surface.
The solution procedure enforces the fixed pressure boundary condition on the
free surface and consequently a non-zero-flux is obtained. Position of the faces
in the free surface patch is adjusted such that the area swept in motion equals
the flow flux for the face. Clearly, the change in domain shape influences the
pressure and flux solution and the procedure is repeated in an iterative manner
for every time-step until the fixed surface pressure and zero flux condition are
satisfied simultaneously.
23
6.1 Hydrofoil Under a Free Surface
The first free surface flow simulation consists of an inclined NACA 0012 hy-
drofoil placed 0.203 m below a free surface in water at an angle of attack of 5◦
[36]. The Froude number for the flow is F r = 0.567. In this simulation only
the water component is modelled. The mesh consists of 14 508 CVs. Fig. 13
shows the mesh and pressure distribution for an instant in time.
As a result of the pressure distribution around the profile, waves are induced
on the free surface and convected downstream. Motion of the free surface close
to the inlet on the left is constrained to represent constant inlet depth. The
wave motion only occurs in the vertical direction; in the horizontal direction
the mesh remains undisturbed.
The driving force behind this study is a desire to assemble a tool for Di-
rect Numerical Simulation (DNS) of air bubbles in water, with the aim of
providing lift and drag data needed for two-phase Eulerian modelling. Sim-
ilar calculations, using the surface capturing method have been reported by
Rusche [37], indicating some deficiencies in the handling of surface tension.
A surface-tracking approach has the potential of treating surface tension to
much higher accuracy and, provided the method is reliable and efficient, can
be compared with [37]. Here, we shall report some initial results for free rising
air bubbles in water in 2- and 3-D.
The bubble is located in a large box and the flow boundary conditions are
24
adjusted such that it remains centred in the domain. The actual bubble tra-
jectory and rising velocity transients can be followed through the changes in
the boundary condition. In this simulation, the bubble rises through a quies-
cent fluid and the material properties of air and water are used including the
surface tension effects. Note that, unlike in the surface capturing methods,
the strength of surface tension or the jump is the density and viscosity do not
pose a problem.
Fig. 14 shows the mesh deformation and the pressure field around a 2-D air
bubble of 1 mm diameter freely rising in water. After the initial transient,
the bubble reaches terminal velocity and shape. The mesh in this simulation
consists of 12 840 CVs in two disconnected regions and captures the interface
coupled through the free surface condition.
Fig. 14. Free-rising air bubble in water in 2-D: pressure iso-lines and surface defor-
mation.
A timing breakdown for a single iteration are given in Table 1. The simulation
is performed on a Linux computer with a 2 GHz Intel Pentium IV processor
with 1 GB of memory.
Finally, Fig. 15 shows the flow field around the free rising air bubble of the
same diameter in 3-D. The mesh consists of 561 920 cells with the near-surface
resolution sufficient to resolve surfactant transport effects. A detailed break-
25
Table 1
Timing breakdown for a 2-D bubble simulation.
Operation Time [s] Cumulative [s]
down of the timing for a single iteration of the simulation is given in Table 2
for the same platform as before.
Fig. 15. Free-rising air bubble in water in 3-D: pressure iso-lines and surface pressure.
Table 2
Timing breakdown for a 3-D bubble simulation.
Operation Time [s] Cumulative [s]
26
In both simulations, the cost associated with the mesh motion solver is 50 −
60% of the complete cost of simulation, which is high but acceptable. It has
been noted that the cost balance is more favourable in 3-D and on large
meshes, due to the change in the balance of the number of cells and points.
However, the selected mesh motion algorithm is inherently parallel, both in
terms of selected discretisation and the choice of linear equation solvers. A
combination of a massively parallel FVM flow solver already available in
FOAM and a parallel motion solver working on the identical mesh decomposi-
tion offers considerable scope in terms of reduced execution time per time-step.
Good parallel efficiency seems to be the way to afford the cost of long transient
runs needed to accumulate sufficient DNS statistics.
Having analysed several popular automatic mesh motion approaches and their
advantages and drawbacks, we have settled on a second-order quasi-tetrahedral
Finite Element method and the Laplace operator to govern the motion. Sup-
port for polyhedral cells is provided using the “mini-element” technique, where
each polyhedron is, for the purposes of motion discretisation, split into tetra-
hedra and a second-order shape function is used. Analysis shows that it is
precisely those tetrahedra that control the quality and validity of the face-
addressed unstructured FV mesh and that the chosen method of discretisa-
tion guarantees to preserve their quality. Furthermore, the chosen method of
discretisation produces a symmetric positive definite matrix ideal for iterative
linear equation solvers.
27
bubbles in water. Overall, the cost of the automatic motion solver is about
50 − 60% of the overall cost of simulation.
In future work, the flow solver will be used in DNS simulations of gas bubbles in
liquids, establishing a base for phase interaction modelling in Eulerian multi-
phase simulations.
References
28
[14] A. Masud, T. Hughes, A space-time Galerkin/least-squares finite element
formulation of the navier-stokes equations for moving domain problems,
Comput. Methods Appl. Mech. Engrg. 146 (1997) 91–126.
[23] B. Helenbrook, Mesh deformation using the biharmonic operator, Int. J. Numer.
Meth. Engrg. 56 (2003) 1007–1021.
[24] H. Jasak, A. Gosman, Automatic resolution control for the finite volume
method. Part 1: A-posteriori error estimates, Numerical Heat Transfer, Part
B 38 (3) (2000) 237–256.
[26] H. Jasak, Error analysis and estimation in the finite volume method with
applications to fluid flows, Ph.D. thesis, Imperial College, University of London
(1996).
[27] H. Jasak, H. Weller, A. Gosman, High resolution NVD differencing scheme for
arbitrarily unstructured meshes, Int. J. Numer. Meth. Fluids 31 (1999) 431–449.
[28] H. Jasak, H. Weller, Application of the finite volume method and unstructured
meshes to linear elasticity, Int. J. Num. Meth. Engineering 48 (2) (2000) 267–
287.
29
[29] S. Patankar, Numerical heat transfer and fluid flow, Hemisphere Publishing
Corporation, 1981.
[30] R. Issa, Solution of the implicitly discretized fluid flow equations by operator-
splitting, J. Comp. Physics 62 (1986) 40–65.
[31] M. Hestens, E. Steifel, Method of conjugate gradients for solving linear systems,
Journal of Research 29 (1952) 409–436.
[33] H. Jasak, H. Weller, N. Nordin, In-cylinder cfd simulation using a c++ object-
oriented toolkit, SAE Technical Paper 2004-01-0110 (2004).
[35] Ž. Tuković, H. Jasak, Unstructured finite volume free surface tracking algorithm
with automatic mesh motion, to be published.
30