This action might not be possible to undo. Are you sure you want to continue?

Hrvoje Jasak

a

a,∗

ˇ Zeljko Tukovi´ c

b

Nabla Ltd. The Mews, Picketts Lodge, Picketts Lane, Salfords, Surrey, RH1 5RG England Faculty of Mechanical Engineering and Naval Architecture, University of Zagreb, Ivana Luˇi´a 5, 10 000 Zagreb, Croatia cc

b

Abstract Moving-mesh unstructured Finite Volume Method (FVM) is a good candidate for tackling ﬂow simulations where the shape of the domain changes during the simulation or represents a part of the solution. For eﬃcient and user-friendly approach to the problem, it is necessary to automatically determine the point positions in the mesh, based on the prescribed boundary motion. In this paper, we present a vertex-based unstructured mesh motion solver designed to work with the movingmesh FVM. Motion is determined by solving the Laplace equation with variable diﬀusion on mesh points, using a tetrahedral decomposition of polyhedral cells. Cell decomposition and discretisation guarantees that an initially valid mesh remains geometrically valid for arbitrary boundary motion. Eﬃciency of the method is preserved by careful discretisation and the choice of iterative solvers, allowing the motion solver to eﬃciently couple with the FVM ﬂow solver. This combination is tested on two free surface tracking ﬂow simulations, including the simulation of free-rising air bubbles in water. Key words: Moving mesh, vertex motion, motion solver, unstructured, ﬁnite 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 ).

Preprint submitted to Elsevier Science

20 February 2004

1

Introduction

There exists a number of physical phenomena in which the continuum solution couples with additional equations which inﬂuence the shape of the domain or the position of an internal interface. Examples of such cases include prescribed boundary motion simulations in pumps and internal combustion engines, free surface ﬂows, where the interface between the phases is captured by the mesh, solidiﬁcation and solid-ﬂuid interaction, where the deposition or deformation of a solid changes the shape of the ﬂuid domain etc. Two most popular approaches are based on tracking the front of interest, either by marker particles or an indicator variable (e.g. [1–3]), or by deforming the computational mesh to accommodate the interface motion. In the deforming mesh method, the computational mesh is adjusted to the shape of the boundary which is updated in every step of the transient simulation. Motion of all points internal to the mesh is based on the prescribed boundary motion. The main diﬃculty in tackling cases with variable geometry is maintaining the mesh quality. Several deforming mesh algorithms have been presented in the past, with various approaches to deﬁning 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 ﬂows 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 eﬀort 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. Numerous other approaches to creating a robust mesh motion solver include the use of Laplacian smoothing [12–15] with constant and variable diﬀusivity and the pseudo-solid approach [16–22] in the ALE FEM codes. Notably, in an eﬀort to simultaneously control the position of the free boundary and mesh spacing next to it, Helenbrook [23] proposes the use of a biharmonic equation to govern mesh motion. From the FV viewpoint, research into dynamic mesh deformation seems to be limited to various forms of spring analogy and sometimes limited to triangular/tetrahedral cells. In order to remedy the lack of robustness, spring analogy 2

is sometimes used in conjunction with re-meshing techniques, providing a rescue path when the motion algorithm fails. In this paper we will present a general-purpose moving mesh algorithm developed to simulate deforming mesh cases compatible with arbitrarily unstructured FV solvers. A new second-order polyhedral “motion element” consistent with the FV mesh handling has been developed and used with a vertex-based solution method. A crucial part of the algorithm is that its eﬃciency matches the segregated FV ﬂow solvers, both is terms of storage and CPU time requirements. The deforming mesh solver will be validated in isolation and as a part of a FV free surface ﬂow solver based on the surface tracking approach. Robustness and eﬃciency of the motion solver will be examined on several 2- and 3-D test cases. The objective of the study is to assemble a FV surface tracking solver capable of performing Direct Numerical Simulation (DNS) of rising gas bubbles in liquids. For this purpose, the two solvers will be closely integrated, with particular attention to their joint eﬃciency and data sharing. Here, the ﬂow equations are solved using a standard FVM approach and the motion of the free surface is obtained as a part of the solution. 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 requirements on the automatic mesh motion system and review the deﬁciencies of past eﬀorts in this direction in Section 3. A notable part of this eﬀort is a review 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, solution variable, appropriate polyhedral cell decomposition and control of mesh quality through variable diﬀusion in the motion equation. A crucial part of development 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 ﬂows, including a simulation of a free-rising air bubble in water in 2- and 3-D and a closed with a short summary.

2

Finite Volume Method on Moving Meshes

A “static mesh” FVM is based on the integral form of the governing (conservation) equation over a Control Volume (CV) ﬁxed in space. More generally, the integral form of the conservation equation for a tensorial property φ deﬁned per unit mass in an arbitrary moving volume V bounded by a closed surface 3

S states: d dt ρφ dV +

V S

ds•ρ(u − ub )φ = −

S

ds•ρqφ +

V

Sφ dV,

(1)

where ρ is the density, u is the ﬂuid 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 ﬁxed in space, its motion is captured by the motion of its bounding surface S by the velocity ub . Unstructured FVM discretises the computational space by splitting it into a ﬁnite number of convex polyhedral cells bounded by convex polygons which do not overlap and completely cover the domain. The temporal dimension is split into a ﬁnite number of time-steps and the equations are solved in a timemarching manner. A sample cell around the computational point P located in its centroid, a face f , its area vector sf and the neighbouring computational point N are shown in Fig. 1.

z x y

N

¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡¢¡¢¡¢¡¢¡¢¡¢¢¡¢¡¢¡¢¡

sf

f

P

Fig. 1. Finite volume cell.

Second-order FV discretisation of Eqn. (1) transforms the surface integrals into sums of face integrals and approximates them to second order using the mid-point rule: (ρP φP VP )n − (ρP φP VP )o + ∆t ρf (F − Fs )φf = −

f f

sf •ρqφ + Sφ VP , (2)

where the subscript P represents the cell values, f the face values and superscripts n and o the “new” and “old” time level, VP is the cell volume, F = sf •uf is the ﬂuid ﬂux and Fs is the mesh motion ﬂux. The ﬂuid ﬂux F is usually obtained as a part of the solution algorithm and satisﬁes the conservation requirements (if any). 4

Compared with the FVM on a static mesh (e.g. [24]), Eqn. (2) shows only two diﬀerences: the temporal derivative introduces the rate of change of the cell volume and the mesh motion ﬂux accounts for the grid convection. The relationship between the two is governed by the space conservation law [25]: d dt dV −

V S

ds•ub = 0.

(3)

**While Eqn. (3) is always satisﬁed in the integral form, it also needs to be preserved in the discrete form:
**

n o VP − V P − ∆t

Fs = 0.

f

(4)

For this reason, the mesh motion ﬂux 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.

3

Deforming Mesh Simulation

From the case setup point of view, it is the fact that the shape of the domain changes in time that inﬂuences the solution; in fact, the boundary shape itself may in some cases be a part of the solution. Thus, one can distinguish between 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 ﬂow simulations in internal combustion engines, or a part of the solution as in free surface tracking simulations. The role of internal point motion is to accommodate changes in the domain shape (boundary motion) and preserve the validity and quality of the mesh. Internal point motion inﬂuences the solution only through mesh-induced discretisation errors [26] and is therefore detached from the remainder of the problem. Consequently, internal point motion can be speciﬁed in a number of ways, ideally without user interaction. 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 ﬂexible 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 reﬁnement) 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.

3.1 Mesh Deﬁnition and Validity A valid mesh is a pre-requisite for a good numerical solution and a critical ingredient of automatic mesh motion. For this reason, we will brieﬂy summarise the validity and quality measures from the FVM standpoint. The investigation of mesh validity can be separated into topological and geometrical tests. The ﬁrst 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.

3.1.1 Face-Based Mesh Deﬁnition Traditional points-and-cells mesh deﬁnition consists of a list of points and a list of cells deﬁned in term of point labels. Additionally, the vertex ordering pattern is pre-deﬁned for every available cell shape and allows the mesh faces to be calculated. This approach limits the number of available cell shapes which, while acceptable in the FEM (due to the fact that a shape function needs to be deﬁned a-priori for every possible cell shape), it is unnecessarily limiting for the face-addressed FVM [27]. In the face-addressed mesh deﬁnition, a polyhedral mesh for the FVM is deﬁned 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 deﬁned as an ordered list of point labels. 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 deﬁned 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 condition. A patch is deﬁned as a list of boundary face labels. Additionally, face ordering is also enforced. For internal faces it is possible to 6

deﬁne the owner and neighbour cell such that owner appears ﬁrst 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 ﬁrst collect all internal faces and then all boundary faces patch by patch in the order of patch deﬁnition. Internal faces are ordered to contain all faces from the ﬁrst 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 .

3.1.2 Topological Tests Face-addressed mesh deﬁnition is exposed to some mesh topology errors which are “impossible” in the points-and-cells approach; interestingly, the errors actually occur even there but typically remain undetected. Topological validity tests consist of the following criteria: • A point can appear in a face only once; • A face can appear in a cell only once. A face cannot belong to more than two cells. A boundary face can belong to only one patch; • Two cells can share no more than one face; • Collecting all faces from one cell and decomposing faces into edges, every edge must appear in exactly two cell faces; • Collecting all faces from the boundary and decomposing faces into edges, every edge must appear in exactly two boundary faces. The ﬁrst four conditions control the validity of the mesh deﬁnition while the last two check that all cells and the boundary hull are topological closed. Additionally, mesh ordering rules are checked and enforced.

3.1.3 Geometrical Tests 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 suﬃcient to use the weak deﬁnition 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 diﬀerent severity of the convexness criteria) are shown in Fig. 2.

An alternative deﬁnition, giving the owner and neighbour cell index for mesh faces instead of the faces of a cell is also possible. The diﬀerence between the two is only in terms of enforcing the ordering of the face list.

1

7

(a) Using face centroid.

(b) Using internal edges.

Fig. 2. Decomposing a face into triangles.

A face is considered convex if all triangle normals point in the same direction. For a cell, where the metrics are calculated on a tetrahedral decomposition, an equivalent convexness deﬁnition is used. The tetrahedra are constructed using the (approximate) cell centroid and the triangles of the face decomposition. Geometrical validity criteria can be summarised as follows: • All faces and cells must be weakly convex; • All cells must be geometrically closed: the sum of outward-pointing face area vectors for a cell faces must be zero to machine tolerance; • The boundary must be geometrically closed (see above); • For all internal faces, the dot-product of the face area vector sf and the df = P N , Fig. 1, must be positive; this is usually termed the orthogonality test: df •sf > 0. (5)

While some of the tests are clearly redundant (e.g. if a cell is closed topologically it is also closed geometrically), experience shows that various combinations 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.

3.1.4 Preserving Mesh Quality in Motion During mesh motion, mesh topology remains unaﬀected and only the point positions change. Thus, preserving the mesh quality only relates to the geometrical tests. Moreover, once the convexness and orthogonality tests are satisﬁed, 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.

3.2 Failure Modes of Simple Motion Algorithms

Let us consider the limitations and failure modes of some existing mesh motion techniques as a basis for the new approach.

3.2.1 Cell-Based Motion Equation The simplest suggestion for automatic mesh motion in the FV framework would be to re-use the available numerical machinery and solve a Laplace (or a linear elastic solid) equation to provide vertex motion. However, as the FVM provides the solution in cell centres and motion is required on the points, this necessarily leads to interpolation. Experience shows that is extremely diﬃcult to construct an interpolation practice which stops the cells from ﬂipping and degenerating even if the cell-centred motion ﬁeld is bounded. Moreover, motion of corner points (belonging to only one cell) and intersections of free-moving boundaries cannot be reconstructed reliably. Finally, while the FVM is unconditionally bounded for the convection operator, on badly distorted meshes one needs to sacriﬁce either the second-order accuracy or boundedness in the Laplacian, due to the explicit (and unbounded) nature of the non-orthogonal correction [24]. A combination of the two has forced us to quickly abandon this approach with the lesson that a point-based solution for the motion equation is essential.

3.2.2 Spring Analogy The ﬁrst 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 observed, 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 ﬁnal 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’ a b’ b

c

(a) Coincident points. (b) Triangle ﬂip.

Fig. 3. Failure modes for triangle motion in spring analogy.

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 inﬁnity. This can be easily remedied, by introducing non-linearity, i.e. by making the stiﬀness coeﬃcient 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 ﬂip, Fig. 3(b). Here, a triangle becomes 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 ﬁx 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 inﬁnity as the angle between two adjacent edges approaches zero, with additional corrections on unloading. Additionally, the problem of torsional springs becomes substantially more complex on 3-D polyhedra in relation to a tetrahedron ﬂip. Thus, a reliable spring analogy setup would consist of linear and torsional springs with length/angle-dependent coeﬃcient 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 diﬃcult and costly to solve. At the same time, the FEM community uses a linear Laplace equation with impunity, producing reliable and bounded motion ﬁelds at a fraction of a price, indicating that a fundamental re-think may be required.

4

Polyhedral Vertex-Based Motion Solver

Looking at the previous section, it seems that spring analogy continually attempts to overcome numerical deﬁciencies by introducing non-linearity. At the same time, one could clearly claim that the Laplacian operator is a perfect 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 numerically 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: • A vertex-based solution method, avoiding the need for interpolation; • Use of iterative solvers for eﬃciency, implying diagonally dominant matrices resulting from discretisation; • No triangles or tetrahedra in the cell decomposition should be inverted – this should be guaranteed by the discretisation practice.

We shall examine the pseudo-solid approach as an alternative choice later in the text.

2

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 deﬁnition 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 eﬃciency reasons. At the same time, tetrahedral ﬁnite elements for a Laplacian produce a diagonally equal matrix and second-order discretisation. Also, matrix coeﬃcients tend to inﬁnity for both degenerate situations in Fig. 3. We can prove this by considering a trick for calculating the oﬀ-diagonal matrix coeﬃcient for a tetrahedron in real space, Fig. 5.

l k

i

Fig. 5. Calculating matrix coeﬃcients for a tetrahedron in real space.

**The coeﬃcient contribution for a point pair (i, j) and the Laplacian operator can be calculated as: aij =
**

VT

Ni • Nj dV =

si • s j . 9 VT

Here, N is the element shape function, si is the surface-normal vector on the triangular face opposite point i and VT is the volume of the tetrahedron. Consider a case where a tetrahedron approaches a degenerate state, either by a point approaching another point or the opposite face. In this case, the face area vectors si and sj will still be ﬁnite (and come close to being parallel), whereas the volume will approach zero. Thus, as the denominator in Eqn. (6) approaches zero and the nominator remains ﬁnite, aij tends to inﬁnity. As a result, the tetrahedral FEM discretisation will remain bounded irrespective of mesh quality and, if used to solve for point motion, it guarantees no tetrahedra will be collapsed or ﬂipped. 12

¦¥¦¥

¨§¨§

¢ ¡ ¢¡ £ £¤¡ ¤¡££

si

j

(6)

It remains to choose an appropriate decomposition of a polyhedron into tetrahedra; two methods investigated in this study are shown in Fig. 6.

4.2 Choice of Cell Decomposition

The ﬁnal 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.

The matrix discretising the motion equation governed by a Laplacian as described above will be sourceless and diagonally dominant, allowing the use of iterative solvers. The motion variable will be bounded irrespective of mesh quality, thus answering all the motion solver requirements stated above.

The choice of decomposition is a balance between the convexness requirement, quality of resulting tetrahedra and the computational cost: cell decomposition Consistent with face decomposition, Fig. 2, a cell is decomposed by introducing a point in its centroid and building tetrahedra above the triangular decomposition of a face. The two methods proposed here are the cell decomposition, Fig. 6(a), where additional points are introduced only in cell centres; and cell-and-face decomposition, Fig. 6(b), where points are introduced in both face and cell centres.

#"#" )()( !! £¢£¢

@ @ @ @ 3E3 93939393 F3 F %$%$ E3 @3@3@3@3 E3 93939393 F3 F3 @3@3@3@3@ E3 939393939 E3EF FE3F E3 @3@3@3@3@ F3 93939393@9 F3EF F3 E3 9@39@39@39@3@9 E3EF F3 E3 9@39@39@39@3@9 E3FE F3 E3 9@39@39@39@3@9 F3EF F3 E3 @3@3@3@3 F3 939393939@9 E3EFEF F3 E3 @3@3@3@3 E3 93939393 F3 F3 E3 @3@3@3@3@ F3 939393939 E3EF FE3 @3@3@3@3@ FE3 939393939 EF3EF EF3 @3@3@3@3@ F3 939393939 FE3FE FE3 @3@3@3@3@ F3 939393939 E3EF F3 E3 @3@3@3@3@ E3 939393939 F3EF F3 E3 @3@3@3@3@ E3 939393939 E3EF F3 E3 @3@3@3@39@9@ I3EFEF F3 E3 P P P 3F3 P3 F3 I3I3I3F3P3 I3 E3 8 8 8 3333@ P3 'P &3P 3P 3 @3@3@3@3 I3 &I3I3I3 939393939 F3 737373 9 P39 P39 P39 3I3 3I3I3 93939393 P3F P3P3P33F3 P3 F3 IP3P3P3 @3@3@3@39@ I3E I3I3I3F3E3 I3 E3 838383 I3I3I3E3F3 '3P3P3 @3@3@3@3 E3 737373 P3P3P33E3 3I3I3I397P 878 3939393 F3FP IP3P3P3I3@8P33@3@3@39@ E3EI IP3 838383 I3I3I3I33 3I3I3I397P33939393 P3FP IP333P333339@9@ I3EFIPEI 838383 I3I3I3G3 737373 H3H3H3F3P PIPE3 636363 G3G3G3E3 573573573 P3P3P3H3 PIP3P3P33@ 3@ 3@ 3@ 3F3FP P3P3P3E3I3 P3H3 H3F3 F3P3 I3I3I3I 78 93939393 E3 3A3A3P333339@ B3EI I3I3I3D3H3 I3G3 G3E3 636363 H3H3H3PA3G3 3P 53P 53 G3G3G3I3F3 53I3I3 P3P3P3H3E3 P3P3P3I3A3A3A3A3D3FHP I3I3I333333C3EGI B3B3B3P 6 24 324 324 324 3C3 636363 H3H3H3F3I3 A3B3B3345I3343434324 B3EFGHIP 535353 I3I3I3G3PD3 3A3A3I326P345A 66556 3243243243 A3 636363 G3G3G3E3H3 535353 333B3G3 AB3B3B3B345B3343434324 B3EFGHIP 3A3A3A325B326A33223223223 A3B 636363 BA BA BA 3A3 535353 333CD33 AB3B3B3B3333324 B3CAD 1010 3A3A3A3333324 A3BABCD 636363 B B B BC3 535353 AB AB AB AB3 636363 3333 AAB3A3A3A3A3A3A3A3A3 3B3B3B3B3B3B3B3B3A 535353 B3B3B3B3 BB3B3B3B3B3B3B3B3B3B 636363 A3A3A3A3A3A3A3A3A3 3B3B3B3B3B3B3B3B3A 535353 A A A A 3A3A3A3A3A3A3A3A3B 6363636 5353535 AB3B3B3B3B3B3B3B3B3A 3A3A3A3A3A3A3A3A3B 6363636 5353535 AB3B3B3B3B3B3B3B3B3A 3A3A3A3A3A3A3A3A3B 6363636 AB3AB3AB3AB3AB3AB3AB3AB3AB3BABA 53535365 56356356365 ABAB3AB3AB3AB3AB3AB3AB3AB3AB3 3B3B3B3B3B3B3B3B3BA 56356356365 56356356365 ABB3AB3AB3AB3AB3AB3AB3AB3AB3 3B3B3B3B3B3B3B3B3BA 636363 535353565 AAB3B3B3B3B3B3B3B3B3ABA 3A3A3A3A3A3A3A3A3 636363 3A3A3A3A3A3A3A3A3 535353 3A3A3A3A3A3A3A3A3B 6363636 AB3B3B3B3B3B3B3B3B3A 5353535 3A3A3A3A3A3A3A3A3AB 6363636 5353535 BAB3B3B3B3B3B3B3B3B3B 6363636 5353535 A3A3A3A3A3A3A3A3A3A B3B3B3B3B3B3B3B3B3B 6363636 5353535 A3A3A3A3A3A3A3A3A3A B3B3B3B3B3B3B3B3B3B 6363636 A3A3A3A3A3A3A3A3A3 333333333ABABA 535353565 33356

(a) Cell decomposition.

Fig. 6. Decomposing a polyhedral cell into tetrahedra.

13

(b) Cell-and-face decomposition.

©¨©¨ §¦§¦ ¥¤¤¥ ¡ ¡

introduces an additional point in all cell centres, whereas cell-and-face decomposition 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. 4.3 Choice of Motion Equation In the FE mesh motion framework, we can choose several candidate equations to govern mesh motion. The most obvious choices are the Laplace equation with constant and variable diﬀusivity [12] and the small-strain formulation of the linear elastic model [16]. The diﬀerence between the two is that the former only allows direction-decoupled transﬁnite mapping, while the latter also allows rotation which may be preferable under some circumstances. However, this comes at a relatively high price: the pseudo-solid equation also couples the motion vector components (due to rotation), [28]. The choice here is either a further increase in storage associated with the coupled solution or an iterative segregated solution method. Numerical experiments in this direction show that the substantial increase in cost associated with the pseudo-solid equation is not justiﬁed by improved mesh quality; for this reason, the Laplace equation will be used in the rest of this study. Some evidence exists that introduction of variable diﬀusivity in the Laplacian can give substantial control over mesh quality. However, it is not immediately clear how to formulate the variable diﬀusivity ﬁeld and this will be further investigated in numerical studies. As a guidance, increased diﬀusivity corresponds to increased stiﬀness of the “equivalent spring system”: a choice for governing the diﬀusivity can thus be a measure of mesh quality or distance to some chosen boundary. 4.4 Eﬃciency Concerns A critical requirement in this work is the motion solver which co-exists in the code with the FVM ﬂow solver and matches it for eﬃciency of matrix assembly, execution speed and storage requirements. Unlike the classical face-addressed FV solver [26], where the matrix is assembled by looping over all mesh faces for all the operators and calculating the complete coeﬃcient, the FEM assembles the matrix by looping over all elements and distributing coeﬃcient contributions into the diagonal, oﬀ-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 example, 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 decomposition. Fortunately, the decomposition can be done “on-the-ﬂy”, without storing the actual tetrahedra and, combined with an eﬃcient matrix assembly algorithm, poses limited storage and matrix assembly overhead. Furthermore, additional eﬃciency 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 eﬃciency 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 equations 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 ﬂuid ﬂow 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 reused (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. Simulations involving dynamic (or solution-dependent) mesh motion are typically done in the transient mode – this fact can be used for further optimisation of the motion solver. Apart from the choice of the motion equation, we are free to choose the motion variable to be either point position or motion velocity. With the use of iterative solvers and in transient simulations one can assume that the motion velocity ﬁeld changes slower than point position and thus a better initial guess is available. For stationary meshes the velocity solution equals to zero everywhere and is less polluted by round-oﬀ errors than the (linear) point position ﬁeld. For constant-velocity deformation the cost of solving the motion equation in terms of velocity becomes trivial (a good initial guess is available), which is not the case if point position is chosen as the primitive variable. 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-oﬀ errors associated with solving for motion velocity and using point position.

4.5 Final Form of the Motion Solver

In summary, the polyhedral mesh motion solver is constructed as follows: (1) Every polyhedral cell is split into tetrahedra by splitting its faces into triangles and introducing a point in cell centroid. Consistency in tetrahedral connectivity is obtained by using identical face decomposition for both cells sharing an internal face. (2) The Laplace operator:

•

(γ u) = 0

(7)

with constant or variable diﬀusion ﬁeld γ is chosen to govern mesh motion. Here, u is the point velocity ﬁeld used to modify point positions: xnew = xold + u∆t, (8)

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 decomposition using standard second-order ﬁnite element method and produces a diagonally equal matrix. For eﬃciency reasons, the matrix coeﬃcients 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 Gradient (ICCG) solver [31], also used by the FVM solver.

4.6 Implementation of the Mesh Motion Solver

Several code organisation issues need to be examined, dealing with component interaction and the actual implementation of the proposed motion solver. One could consider it an overkill to implement a fully-ﬂedged FEM solver in order to move the mesh in an existing FVM code. In this study, the motion solver is implemented in FOAM [32,33], an object-oriented C++ continuum 16

mechanics library. The software is constructed to allow extensive code reuse, typically impossible in more traditional designs. FOAM currently implements 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, ﬁelds and ﬁeld algebra, boundary conditions, linear equation matrix and solver technology as well as problem setup and post-processing can be shared. All the components listed above are intrinsically discretisationindependent, totalling over 100 000 lines of code and provide an excellent headstart. What remains to be implemented are the FEM-speciﬁc parts: derived mesh handling adapted for the FE discretisation (and using raw mesh information from the base class), FE calculus (e.g. divergence and gradient operators etc.) and the actual FE discretisation operators (e.g. convection, diﬀusion, time derivative etc.) with boundary condition handling. This totals just under 21 000 lines of code, including both cell decomposition methods, and the handling of solver parallelisation (to be described in future publications). The code architecture allows us to keep the FEM implementation on the tetrahedral decomposition separate from the rest of the code, but still relying on the common components mentioned above. It is encapsulated in its own library and loaded on demand. The FE solver is also implemented in the operator form, currently providing the temporal derivative ∂u and various form ∂t of the div-grad operators: •(γ u), •(γ uT ) and •[γI( •u)]. The solver has been validated in isolation by solving linear elasticity model problems. The actual motion solver is implemented by using the discretisation operators in the FEM library and packed for ease of use in a separate module, together with the necessary mesh checking and setup tools.

5

Examples of Mesh Motion

Numerical experiments show that the cell decomposition is suﬃciently robust for 2-D and “trivial” 3-D meshes; for simulations on industrial-standard meshes with considerable geometrical complexity and cell distortion, the celland-face decomposition is preferred. Note that for the mesh motion solver, the original mesh will be decomposed into tetrahedra (as shown in Section 4.2) even if it is already composed exclusively of tetrahedra: in the face-based mesh format, this fact is not immediately obvious. 17

We shall now apply the novel motion algorithm on two test problems and examine the mesh quality for various deﬁnitions of non-constant diﬀusion ﬁelds.

5.1 Motion of a Cylinder The ﬁrst 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 ﬁxed 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 ﬁnal mesh remains valid.

Fig. 7. Motion of a cylinder in a duct.

The simplest way of improving mesh quality is by introducing variable diffusivity. The rationale here is that the mesh quality is more important close to boundaries, whereas the “core” mesh has more freedom to deform. One could also postulate various “cell quality” indicators: as a cell becomes more

3

In reality, the mesh is 3-D and consists of prismatic elements, as the software only operates on 3-D meshes. Although this is not strictly necessary, motion equation is solved for all points in the mesh.

18

distorted, its further deformation should be avoided. In both cases, the way to diminish local distortion is by increasing local diﬀusivity in the motion operator. Note that the Laplacian operator remains bounded for arbitrary variation of the positive diﬀusion coeﬃcient. Out of a variety of diﬀusion laws one could devise, the following have been tested in this study: • Distance-based methods, where a number of boundary patches are selected by the user and the diﬀusion ﬁeld γ is a function of cell centre distance l to the nearest selected boundary: · Linear (D1): γ = 1 ; l · Quadratic (D2): γ = l1 ; 2 · Exponential (D3): γ = e−l . • Quality-based methods, where the diﬀusion ﬁeld γ is a function of a cell quality measure: · Mean cell non-orthogonality (Q1); · Mean cell skewness (Q2); · Mixed (Q3) – a combination of Q1 and Q2.

(a) Constant.

(b) Linear distance-based (D1).

(c) Quadratic distance-based (D2). Fig. 8. Inﬂuence of diﬀusivity on mesh quality.

Fig. 8 shows the mesh comparison for various choices of diﬀusivity where the 19

moving circle has been chosen as the reference boundary. It can be clearly seen that distance-based diﬀusivity 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 signiﬁcant improvement has been observed.

5.2 Pitching Airfoil 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 diﬀusivity. Of particular interest is the mesh around the trailing edge. The selected method preserves the mesh quality very well.

Fig. 9. Motion of a NACA airfoil, D2 diﬀusivity method.

A comparison of mesh quality for four diﬀusivity methods is shown in Fig. 10. In this case, all distance-based methods seem to perform very well, giving notable improvement over constant diﬀusivity. A quantitative conﬁrmation of improved mesh quality is given in Fig. 11. Distance-based methods produce meshes with lowest non-orthogonality and skewness, while the constant diﬀusivity method considerably deteriorates the mesh. However, in all cases the resulting mesh remains valid. It is interesting to 20

(a) Constant.

(b) Linear distance-based (D1).

(c) Quadratic (D2).

distance-based

(d) Quality-based (Q1).

Fig. 10. Mesh quality around the trailing edge.

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 eﬀect on mesh quality, the solution cost increases considerably. The D2 solution method consistently requires around 130 solver iterations, comparable with the eﬀort of the FV pressure solver for the same case. In realistic simulations, the transient nature of the ﬂow introduces a time-step limitation on the FVM solver used for the ﬂow equation, somewhat mitigating the cost of the motion solver. Also, in the iterative solution framework, for most cases it is enough to reduce the residual by approximately 2 orders of magnitude instead of converging the solution to machine tolerance for every time step. Partial convergence only becomes an issue on extremely distorted meshes (which can no longer be used for the FV solution) or in cases where one boundary comes to close proximity of another, e.g. Fig. 7. In conjunction with partial convergence, one can resort to an a-priori indicator of motion validity. The simplest solution is to manually check the mesh before executing the motion. However, this is expensive and unnecessary and 21

80 75 70 65 Maximal non-orthogonality Maximal skewness 60 55 50 45 40 35 30 25 0 0.5 1 t, s 1.5 2 constant D1 D2 D3 Q1 Q2 Q3

220 200 180 160 140 120 100 80 60 40 20 0 0.5 1 t, s 1.5 2 constant D1 D2 D3 Q1 Q2 Q3

**(a) Mesh non-orthogonality.
**

700

(b) Mesh skewness.

constant D1 D2 D3 Q1 Q2 Q3

600

500 Number of iterations

400

300

200

100

0 0 0.5 1 t, s 1.5 2

(c) Number of iterations. Fig. 11. Mesh quality indicators and computational eﬀort.

a simpler method can be proposed. Consider two points A and B along an edge e = AB in space. The requirement of two points “crossing over” reduces to the condition of e•( u)•e < 1. If desired, this can be checked for all mesh edges before executing motion. Experience shows that the most robust way of dealing with problematic motion solutions is to halve the time-step size and/or tighten the solution tolerance before recalculating the motion solution for the current time-step. Comparing the performance of the two polyhedral decomposition methods, a curious fact has been noted. On reasonably complex meshes in 3-D it turns out that the cost of solution of the cell-and-face decomposition in total execution time becomes substantially lower than that for the cell decomposition. This is counter-intuitive, as the number of unknowns for the cell-and-face decomposition is considerably greater (in both cases, it is only the point positions that are used; the solution in cell and face centres is discarded). The crossover in solution cost is due to an increased number of iterations in the ICCG solver for the cell decomposition method. It seems that the higher quality of decomposition tetrahedra for the cell-and-face decomposition creates a better22

conditioned matrix which, for the same mesh, sometimes requires only a tenth of the number of iterations used with the cell decomposition.

6

Free Surface Flow Simulations

This study will be concluded by presenting two simulations of free surface ﬂows using a surface tracking algorithm. Here, the ﬂuid 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 ﬂow solution. A schematic representation of the free surface condition is given in Fig. 12.

Liquid

**free surface(fs) pf s = pf ss − σKf s ( u)f s =
**

µgas ( µliquid

u)f ss

Gas

free surface shadow (fss) ( p)f ss = 0 uf ss = uf s

Fig. 12. Motion of a NACA airfoil, D2 diﬀusivity method.

Second-order FVM is used for the ﬂuid ﬂow and the automatic mesh motion solver described above adjusts the mesh. On the free surface, a double boundary condition is imposed: ﬁxed pressure and zero ﬂux condition need to be satisﬁed simultaneously. The ﬂuid ﬂow 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-ﬂux” condition is satisﬁed in an iterative sequence [34,35], providing the boundary condition for mesh motion on the free surface. The solution procedure enforces the ﬁxed pressure boundary condition on the free surface and consequently a non-zero-ﬂux is obtained. Position of the faces in the free surface patch is adjusted such that the area swept in motion equals the ﬂow ﬂux for the face. Clearly, the change in domain shape inﬂuences the pressure and ﬂux solution and the procedure is repeated in an iterative manner for every time-step until the ﬁxed surface pressure and zero ﬂux condition are satisﬁed simultaneously. 23

6.1 Hydrofoil Under a Free Surface The ﬁrst free surface ﬂow simulation consists of an inclined NACA 0012 hydrofoil placed 0.203 m below a free surface in water at an angle of attack of 5◦ [36]. The Froude number for the ﬂow 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 proﬁle, 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.

Fig. 13. Hydrofoil under a free surface.

6.2 Free-Rising Air Bubbles in Water The driving force behind this study is a desire to assemble a tool for Direct Numerical Simulation (DNS) of air bubbles in water, with the aim of providing lift and drag data needed for two-phase Eulerian modelling. Similar calculations, using the surface capturing method have been reported by Rusche [37], indicating some deﬁciencies 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 eﬃcient, 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 ﬂow boundary conditions are 24

adjusted such that it remains centred in the domain. The actual bubble trajectory and rising velocity transients can be followed through the changes in the boundary condition. In this simulation, the bubble rises through a quiescent ﬂuid and the material properties of air and water are used including the surface tension eﬀects. 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 ﬁeld 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 deformation.

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 ﬂow ﬁeld 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 suﬃcient to resolve surfactant transport eﬀects. A detailed break25

Table 1 Timing breakdown for a 2-D bubble simulation. Operation Building momentum matrix Solving momentum equation Building pressure matrix Solving pressure equation Building motion matrix Solving motion equation Time [s] 0.12 0.06 0.06 0.33 0.27 0.70 Cumulative [s] 0.12 0.18 0.24 0.57 0.84 1.54

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 Building momentum matrix Solving momentum equation Building pressure matrix Solving pressure equation Building motion matrix Solving motion equation Time [s] 6.34 3.16 3.09 29.02 12.80 39.95 Cumulative [s] 6.34 9.50 12.59 41.61 54.41 94.36

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 ﬂow solver already available in FOAM and a parallel motion solver working on the identical mesh decomposition oﬀers considerable scope in terms of reduced execution time per time-step. Good parallel eﬃciency seems to be the way to aﬀord the cost of long transient runs needed to accumulate suﬃcient DNS statistics.

7

Summary and Future Work

In this study we have examined the requirements of deforming mesh simulations in a Finite Volume framework, with the objective of developing a robust and reliable automatic mesh motion tool. The purpose of a mesh motion solver is to determine the point positions for the mesh based on the prescribed boundary motion – this can be prescribed by external events or calculated as a part of the solution. While performing automatic mesh motion, it is crucial to preserve the validity and quality of the mesh. 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. Support for polyhedral cells is provided using the “mini-element” technique, where each polyhedron is, for the purposes of motion discretisation, split into tetrahedra and a second-order shape function is used. Analysis shows that it is precisely those tetrahedra that control the quality and validity of the faceaddressed unstructured FV mesh and that the chosen method of discretisation guarantees to preserve their quality. Furthermore, the chosen method of discretisation produces a symmetric positive deﬁnite matrix ideal for iterative linear equation solvers. The quality of the mesh in motion is preserved by prescribing non-constant diﬀusion ﬁeld in the Laplace operator. Several techniques have been tested, most notably the distance-based diﬀusion, where the coeﬃcient depends on the distance between the cell centre and the nearest boundary of interest. A combination of the above components with a second-order FV ﬂow solver creates a robust and eﬃcient dynamic mesh motion solver capable of handling free surface ﬂows using a surface-tracking algorithm. The solver has been tested on two free surface ﬂows, including a simulation of free rising air 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 ﬂow solver will be used in DNS simulations of gas bubbles in liquids, establishing a base for phase interaction modelling in Eulerian multiphase simulations.

References

[1] F. Harlow, J. Welsh, Numerical computation of time dependent viscous ﬂows with free surface, Phys. Fluds 8 (1965) 2182–2189. [2] C. Hirt, B. Nichols, Volume of ﬂuid (VOF) method for the dynamics of free boundaries, J. Comp. Physics 39 (1981) 201–225. [3] O. Ubbink, R. Issa, ”a method for capturing sharp ﬂuid interfaces on arbitrary meshes, J. Comp. Physics 153 (1999) 26–50. [4] M. Behr, T. Tezduyar, Finite element solution strategies for large-scale ﬂow simulations, Comput. Methods Appl. Mech. Engrg. 113 (1994) 3–24. [5] I. G¨ler, M. Behr, T. Tezduyar, Parallel ﬁnite element computation of freeu surface ﬂows, Computational Mechanics 23 (1999) 117–123. [6] J. Batina, Unsteady Euler airfoil solutions using unstructured dynamic meshes, AIAA Journal 28 (8) (1990) 1381–1388. [7] F. Blm, Considerations on the spring analogy, Int. J. Num. Meth. Fluids 32 (2000) 647–668. [8] B. Perot, R. Nallapati, A moving unstructured staggered mesh method for the simulation of incompressible free-surface ﬂows, J. Comp. Physics 184 (2003) 192–214. [9] Y. Zhao, J. Tai, F. Ahmed, Simulation of micro ﬂows with moving boundaries using high-order upwind method on unstructured grids, Computational Mechanics 28 (2002) 66–75. [10] C. Farhat, C. Degand, B. Koobus, M. Lesoinne, Torsional springs for twodimensional dynamic unstructured meshes, Comput. Methods Appl. Mech. Engrg. 163 (1998) 231–245. [11] C. Degand, C. Farhat, A three-dimensional torsional spring analogy method for unstructured dynamic meshes, Computers and Structures 80 (2002) 305–316. [12] R. L¨hner, C. Yang, Improved ALE mesh velocities for moving bodies, o Communications in Numerical Methods in Engineering 12 (1996) 599–608. [13] D. Littleﬁeld, The use of r-adaptivity with local, intermittent remesh for modeling hypervelocity impact and penetration, Int. J. Impact Engrg. 26 (2001) 433–442.

28

[14] A. Masud, T. Hughes, A space-time Galerkin/least-squares ﬁnite element formulation of the navier-stokes equations for moving domain problems, Comput. Methods Appl. Mech. Engrg. 146 (1997) 91–126. [15] I. Robertson, S. Sherwin, Free-surface ﬂow simulation using hp/spectral elements, J. Comp. Physics 155 (1999) 26–53. [16] M. Behr, F. Abraham, Free-surface ﬂow simulations in the presence of inclined walls, Comput. Methods Appl. Mech. Engrg. 191 (2002) 5467–5483. [17] R. Cairncross, P. Schunk, T. Baer, R. Rao, P. Sackinger, A ﬁnite element method for free surface ﬂows of incompressible ﬂuids in three dimensions. Part I. Boundary ﬁtted mesh motion, Int. J. Numer. Meth. Fluids 33 (2000) 375–403. [18] G. Chiandussi, G. Bugeda, E. O˜ate, A simple method for automatic update n of ﬁnite element meshes, Commun. Numer. meth. Engrg. 16 (2000) 1–19. [19] A. Johnson, T. Tezduyar, Mesh update strategies in parallel ﬁnite element computations of ﬂow problems with moving boundaries and interfaces, Comput. Methods Appl. Mech. Engrg. 119 (1994) 73–94. [20] P. Sackinger, P. Schunk, R. Rao, A Newton-Raphson pseudo-solid domain mapping technique for free and moving boundary problems: A ﬁnite element implementation, J. Comp. Physics 125 (1996) 83–103. [21] M. Souli, J. Zolesion, Arbitrary Lagrangian-Eulerian and free surface methods in ﬂuid mechanics, Comput. Methods Appl. Mech. Engrg. 191 (2001) 451–466. [22] H. Zhou, J. Derby, An assessment of a parallel, ﬁnite element method for three-dimensional, moving-boundary ﬂows driven by capillarity for simulation of viscous sintering, Int. J. Numer. Meth. Fluids 36 (2001) 841–865. [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 ﬁnite volume method. Part 1: A-posteriori error estimates, Numerical Heat Transfer, Part B 38 (3) (2000) 237–256. [25] I. Demirdˇi´, M. Peri´, Space conservation law in ﬁnite volume calculations of zc c ﬂuid ﬂow, Int. J. Num. Meth. Fluids 8 (9) (1988) 1037–1050. [26] H. Jasak, Error analysis and estimation in the ﬁnite volume method with applications to ﬂuid ﬂows, Ph.D. thesis, Imperial College, University of London (1996). [27] H. Jasak, H. Weller, A. Gosman, High resolution NVD diﬀerencing scheme for arbitrarily unstructured meshes, Int. J. Numer. Meth. Fluids 31 (1999) 431–449. [28] H. Jasak, H. Weller, Application of the ﬁnite 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 ﬂuid ﬂow, Hemisphere Publishing Corporation, 1981. [30] R. Issa, Solution of the implicitly discretized ﬂuid ﬂow equations by operatorsplitting, 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. [32] H. Weller, G. Tabor, H. Jasak, C. Fureby, A tensorial approach to computational continuum mechanics using object orientated techniques, Computers in Physics 12 (6) (1998) 620 – 631. [33] H. Jasak, H. Weller, N. Nordin, In-cylinder cfd simulation using a c++ objectoriented toolkit, SAE Technical Paper 2004-01-0110 (2004). [34] S. Muzaferija, M. Peri´, Computation of free surface ﬂows using c interface-tracking and interface-capturing methods, Computational Mechanics Publications, Southampton, 1998, Ch. 3. ˇ [35] Z. Tukovi´, H. Jasak, Unstructured ﬁnite volume free surface tracking algorithm c with automatic mesh motion, to be published. [36] J. Ferziger, M. Peri´, Computational methods for ﬂuid dynamics, Springer c Verlag, Berlin-New York, 1995. [37] H. Rusche, Computational ﬂuid dynamics of dispersed two-phase ﬂows at high phase fractions, Ph.D. thesis, Imperial College, University of London (2003).

30

- MODELLING THE INITIAL SPRAY CHARACTERISTICS OF FIRE SPRINKLERS
- Theoretical Modelling of Sprinkler Sprays
- Dimensionless study of spray formed by impinging jets over a flat deflector
- Sprinkler Spray Modelling
- 2007_Jan_2812_01
- Sprinkler Spray Modelling - Hamed Aghajani
- Cfd Modeling of Fire Suppression
- Msc Thesis Hamed Aghajani Amirkabir University of Technology
- Analytical Modeling of Flame Kernel Formation and Development
- Aghajani Greece Paper 85-01-25
- ISME2007 Full One
- Tunesia Ganz Total-86!02!24
- Hamed Aghajani-CFES Development Day-290110
- Liquid H2 Jet Revised 080409x
- The Potential of Large Eddy Simulation for the Modeling of Wall Bounded Flows EugeneDeVilliersPhD2006
- The Numerical Simulation of Two Phase Flow in Settling Tanks DanielBrennanPhD
- The Computer Simulation of Dispersed Two Phase Flows David Hill Phd 1998
- Predicting Residual Stresses Due to Solidification in Cast Plastic Plates VladoTropsaPhD
- Particle Tracking in Unstructured, Arbitrary Polyhedral Meshes for Use in CFD and Molecular Dynamics
- On Modelling the Mass of Arctic Sea Ice JennyHutchingsPhD
- VirtuhconUniFreibergOct2007
- Using Openfoam to Model Energy Taken From the Swirl Behind a Car
- Surface Capturing in Droplet Breakup and Wall Interaction
- Some Experiences on the Accuracy and Parallel Performance of OpenFOAM for CFD in Water Turbines
- Solve Cavitating Flow Around a 2D Hydrofoil With Inter Phase Change Foam

Sign up to vote on this title

UsefulNot useful- HrvojeJasakPhD
- bookevol
- Implement at Ing Third Order Compressible Flow Solver for Hexahedral Meshes in OpenFoam
- Dynamic Mesh Handling in OpenFOAM_AIAA2009
- Adaptive Tetrahedral Remeshing for Multi Phase Flow Simulation in OF_2009_Schmidt_slides
- AM 12 Chapter 3
- Beauty and Symmetry Writing Exercise
- Jana Comstock- A finite presentation of knotted trivalent graphs
- meshing 010.pdf
- Generative 3D Models
- Silicon Dioxide
- ComputationalGeometry P5 Library
- III Unit Solids Ok
- Wordware Maya 8 Character Modeling Oct 2006
- solid state IIT
- SA_Maths
- Example Problems
- CAEE_6_169_98
- De Answers
- System Dynamics An Introduction.pdf
- Class 10NCO
- Freuden Stein
- appendixA.pdf
- HS Math May 2014
- Big Apple or Bust -3 Pages
- MathPower 10 Practise Masters
- Full Text
- Conditional Modeling
- Tech Report Without Damping!!! (Final Draft) (1)
- Automatic Mesh Motion for the Unstructured Finite Volume Method