dynamic mesh handling in openfoam -...

10
Dynamic Mesh Handling in OpenFOAM Hrvoje Jasak *† Director, Wikki Ltd, United Kingdom; Professor, University of Zagreb, Croatia Extension of static mesh numerics in a CFD solver to cases with deforming boundaries considerably expands the scope of its use. Dynamic mesh handling includes deforming mesh cases, where the number and connectivity of mesh elements remains unchanged; and topological changes, where mesh size and connectivity varies during the simulation. Cases where the boundary deformation itself represents a part of the solution demand special attention: here, mesh handling needs to be fully automatic. This paper describes dynamic mesh support in OpenFOAM, a C++ object-oriented library for numerical simulations in continuum mechanics. Unlike other tools, where dy- namic mesh support is usually retro-fitted, object-oriented dynamic mesh engine has been built up from ground-up. Emphasis is given polyhedral cell support in mesh analysis and discretisation, vertex-based automatic mesh motion techniques and hierarchical design of topology morphing engine. The paper is completed with examples of solution-dependent motion with large boundary deformation. Nomenclature n Unit normal vector N Neighbour cell centroid P Cell centroid S Surface s φ Volumetric source u Fluid velocity u s Velocity of the boundary surface V Volume α Non-orthogonality angle γ φ Diffusivity Δ max cylinder displacement φ General tensorial property ρ Density Subscript f Face, face value N Neighbour cell value P Cell value I. Introduction Examples of physical problems in aeronautical Computational Fluid Dynamics (CFD) which involve moving boundaries range from prescribed motion of wing actuators and similar flow control devices during take-off and landing to cases of missile release involving a 6 degrees-of-freedom (6-DOF) flow-dependent solid body motion and even more general cases of flow-induced boundary deformation. The latter also appear in contact stress analysis, fluid-structure interaction or other similar coupled problems. Beyond the basic Wikki Ltd. 33 Palmerston House, 60 Kensington Place London, W8 7PU, United Kingdom Faculty of Mechanical Engineering and Naval Architecture, University of Zagreb, Ivana Luˇ ci´ ca 5, 10 000 Zagreb, Croatia 1 of 10 American Institute of Aeronautics and Astronautics

Upload: nguyenanh

Post on 06-Mar-2018

239 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

Dynamic Mesh Handling in OpenFOAM

Hrvoje Jasak∗†

Director, Wikki Ltd, United Kingdom; Professor, University of Zagreb, Croatia

Extension of static mesh numerics in a CFD solver to cases with deforming boundaries

considerably expands the scope of its use. Dynamic mesh handling includes deforming

mesh cases, where the number and connectivity of mesh elements remains unchanged; and

topological changes, where mesh size and connectivity varies during the simulation. Cases

where the boundary deformation itself represents a part of the solution demand special

attention: here, mesh handling needs to be fully automatic.

This paper describes dynamic mesh support in OpenFOAM, a C++ object-oriented

library for numerical simulations in continuum mechanics. Unlike other tools, where dy-

namic mesh support is usually retro-fitted, object-oriented dynamic mesh engine has been

built up from ground-up. Emphasis is given polyhedral cell support in mesh analysis and

discretisation, vertex-based automatic mesh motion techniques and hierarchical design of

topology morphing engine. The paper is completed with examples of solution-dependent

motion with large boundary deformation.

Nomenclature

n Unit normal vectorN Neighbour cell centroidP Cell centroidS Surfacesφ Volumetric sourceu Fluid velocityus Velocity of the boundary surfaceV Volumeα Non-orthogonality angleγφ Diffusivity∆max cylinder displacementφ General tensorial propertyρ DensitySubscript

f Face, face valueN Neighbour cell valueP Cell value

I. Introduction

Examples of physical problems in aeronautical Computational Fluid Dynamics (CFD) which involvemoving boundaries range from prescribed motion of wing actuators and similar flow control devices duringtake-off and landing to cases of missile release involving a 6 degrees-of-freedom (6-DOF) flow-dependent solidbody motion and even more general cases of flow-induced boundary deformation. The latter also appearin contact stress analysis, fluid-structure interaction or other similar coupled problems. Beyond the basic

∗Wikki Ltd. 33 Palmerston House, 60 Kensington Place London, W8 7PU, United Kingdom†Faculty of Mechanical Engineering and Naval Architecture, University of Zagreb, Ivana Lucica 5, 10 000 Zagreb, Croatia

1 of 10

American Institute of Aeronautics and Astronautics

Page 2: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

objective of supporting mesh motion in the flow solver, several objectives arise. Handling mesh deformationin a robust and reliable manner is of primary importance: without it, it is impossible to produce simulationresults. For cases where domain shape is unknown a-priori, user intervention must be eliminated: a trulyautomatic solution-dependent motion is sought. Having in mind difficulties of problem setup, automaticdynamic mesh handling proves beneficial even for simple cases of prescribed motion.

One can recognise two fundamentally different dynamic mesh actions. Mesh deformation involves caseswhere boundary motion is accommodated simply by moving points that support the mesh, while in topological

changes, the number or connectivity of points, faces and cells in the mesh changes within a time-step.Discretisation support for deforming mesh cases may be considered complete: Arbitrary Lagrangian-

Eulerian Finite Element Method (ALE-FEM) is a textbook subject, while moving mesh extensions to theFinite Volume (FV) discretisation have been present since the 1980s.1 In both cases, moving mesh supportintroduces no further discretisation error compared with static mesh techniques. In contrast, topological meshchanges, where mesh elements are added or removed between time-steps necessarily involve data mapping,with associated distribution and conservation errors. For this reason, deforming mesh techniques are easierto implement and numerically superior.

Some cases with significant boundary deformation make it impossible to accommodate the change usingsimple point motion: to preserve mesh quality and solution accuracy, faces or cells need to be added orremoved from the mesh. Topological changes manipulate mesh resolution and connectivity in order toaccommodate boundary deformation, typically using sliding interfaces, cell layering and similar techniques.In general, any local re-meshing or error-driven adaptive refinement may be considered as an example oftopological change.

In this paper we shall address the subject of dynamic mesh handling and its implementation in Open-FOAM. In Section II, a moving mesh extension to the Finite Volume Method (FVM) on a polyhedral mesh isbriefly summarised. Concentrating on the need for automatic mesh motion, a vertex-based solution techniqueusing a mini-element Finite Element Method (FEM) with polyhedral cell support and variable diffusivityis presented in Section III. Layered implementation of topological change machinery in OpenFOAM is de-scribed in Section IV. The paper is completed with examples of dynamic mesh components working inunison on complex solution-dependent motion, Section V, and closed with a summary, Section VI.

II. FVM on a Moving Polyhedral Mesh

Moving mesh FVM is based on the integral form of the governing equation over an arbitrary movingvolume V bounded by a closed surface S. For a general tensorial property φ it states:

∂t

V

ρφ ∂V +

S

ρn•(u − us)φ∂S −

S

ργφn•∇φ∂S =

V

sφ ∂V, (1)

where ρ is the density, n is the outward pointing unit normal vector on the boundary surface, u is thefluid velocity, us is the velocity of the boundary surface, γφ is the diffusion coefficient and sφ the volumesource/sink of φ. Relationship between the rate of change of the volume V and the velocity us of theboundary surface S is defined by the space conservation law (SCL):2

∂t

V

∂V −

S

n•us ∂S = 0. (2)

Polyhedral FVM discretises the space by splitting it into convex polyhedra bounded by convex polygons.Temporal dimension is split into time-steps and equations are solved in a time-marching manner. Cellnotation is shown in Fig. 1: a computational point P in cell centroid, a face f , with area Sf and unit normalnf with a neighbouring computational point N .

Second-order discretisation of Eqn. (1) using a three time level scheme yields the following discretisedform of Eqn. (1) for cell P :

3ρnP φn

P V nP − 4ρo

P φoP V o

P + ρooP φoo

P V ooP

2∆t+

∑f

(mnf − ρn

f V nf )φn

f =∑

f

(ργφ)nf Sn

f nnf •(∇φ)n

f + snφV n

P , (3)

where the subscript P represents the cell values, f the face values and superscripts n and o the ”new” and”old” time level, ∆t is the time step size, mf = nf •ufSf is the fluid mass flux and Vf = nf •usfSf is the

2 of 10

American Institute of Aeronautics and Astronautics

Page 3: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

f

P

Vy

z

x

N

d

sf

f

r

Figure 1. Polyhedral control volume (cell).

volumetric face flux. Cell volume V nP , V o

P and V ooP and volumetric face flux Vf are calculated directly from

geometric considerations and satisfy the discrete form of the SCL.2

III. Automatic Mesh Motion

Objective of automatic mesh motion is to accommodate externally prescribed boundary deformation bychanging positions of mesh points. During motion, the mesh must remain geometrically valid;3 this conditionreduces to preservation of cell and face convexness and mesh non-orthogonality bounds.

III.A. Problem Definition and Validity Constraints

A general mesh deformation problem can be stated as follows. Let D represent a domain configuration at agiven time t with its bounding surface B and a valid computational mesh, Fig. 2. During a time interval ∆t,D changes shape into a new configuration D′. A mapping between D and D′ is sought such that the meshon D forms a valid mesh on D′ with minimal distortion of control volumes.

Initial configuration Deformed configuration

r r’

D’Dt t + dt

B’B

B B’

xx

y y

Figure 2. Mesh deformation problem.

Mesh validity constraints indicate that a domain could be considered as a linear elastic solid body underlarge deformation, governed by the Piola-Kirchoff stress-strain formulation. This is a non-linear equationand thus expensive to solve; in this study, a numerically cheaper Laplace equation with variable diffusivityis used instead.

A number of similar attempts has been reported in the past, ranging from cell-centred mesh motionsolution (followed by cell-to-point interpolation), linear and non-linear spring analogy, torsional springsetc. In all cases, the critical component is control of discretisation error in the motion equation: it is thiscomponent that brings about deformation errors and algorithmic breakdown. A further complication is

3 of 10

American Institute of Aeronautics and Astronautics

Page 4: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

related to polyhedral mesh support, implying that standard FEM discretisation may not be used: to theauthor’s knowledge, a second-order cell shape independent FEM has not been offered to date.

Calculation of polyhedral mesh metrics reveals a clue on control of discretisation error: for a polygon, facearea is calculated by decomposition into triangles, while the cell volume calculation uses pyramids decom-posed above the faces. Thus, if no face triangles and no cell pyramids are inverted during motion, initiallyvalid mesh remains valid. Based on this idea, a mini-element approach is used. Here, each polyhedral cellis decomposed into tetrahedra on-the-fly, with the second-order shape function for a polyhedron assembledas a mini-element combination of second-order tetrahedral shape functions. Numerical properties of second-order tetrahedral shape functions controls inversion of individual tetrahedra by forcing the associated matrixcoefficient to infinity.3

A choice of mesh motion equation falls on the Laplace equation with variable diffusivity. Efficient diffu-sivity choices are based on distance from a moving boundary or measure cell distortion. For more details onvariable organisation and motion-dependent diffusion the reader is referred to Jasak and Tukovic.3

III.B. Motion of a Cylinder

Figure 3. Cylinder motion in 2-D: Initial polygonal mesh.

The test case3 used to illustrate the performance of automatic mesh motion consists of a circle movingin a channel in 2-Da. Identical setup and a triangular mesh has been used by Baker4 with the pseudo-solidequation, and Helenbrook5 on the biharmonic equation.

Figure 3 shows the polygonal mesh used for the test, where D is the cylinder diameter, the height ofthe channel is 2D and average mesh size is 0.15D. The polygonal mesh is generated using the algorithmproposed by Virag and Dzijan.6

The test consists determining the maximum displacement of the cylinder in one step without mesh inver-sion when the outside boundary remains fixed. Mesh quality is measured in terms of the non-orthogonalityangle αf between df and nf , Fig. 1. Maximum single-step displacement ∆max = 1.39D is achieved usingthe diffusivity proportional to the distortion energy accumulated in motion.

IV. Topological Changes

In cases of extreme shape change, mesh motion alone is not sufficient to accommodate boundary de-formation. Examples include a mixer vessel, where the internal part of the mesh rotates significantly pastthe stator, Fig. 5 and a case with two approaching boundaries, Fig. 6. For such cases, a mesh with fixedconnectivity would quickly break down, unable to withstand additional twisting, or would introduce highdiscretisation error due to poor distribution of computational points.

In terms of software support, topological changes can be separated into clear functional levels. Ourobjective is to examine the levels and their interaction in a framework of object-oriented software like Open-FOAM. Components handling topological changes are separated into primitive mesh operations, topological

modifiers and application-specific dynamic mesh objects.

IV.A. Primitive Mesh Changes

The lowest mesh manipulation layer specifies a topological change in terms of primitive operations: addition,removal or (connectivity) modification for a point, a face or a cell. Primitive mesh operations define alanguage for more complex mesh changes. A proposed set of nine mesh operations allows us to completelycollapse an existing mesh or to build a mesh starting from empty space, thus proving generality of theinterface.

aIn reality, the mesh is 3-D and consists of prismatic elements, as the software only operates on 3-D meshes.

4 of 10

American Institute of Aeronautics and Astronautics

Page 5: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

(a) γ = const. ∆max = 0.65 D,αf,max = 83.4◦, αf,mean = 4.1◦.

(b) γ(l) = l−1, ∆max = 1.1 D, αf,max = 80◦,αf,mean = 7.3◦.

(c) γ(l) = l−2, ∆max = 0.95 D, αf,max = 82◦,αf,mean = 7◦.

(d) γ(l) = e−l, ∆max = 0.94 D, αf,max = 85.1◦,αf,mean = 6.3◦.

(e) γ(Ud) = Ud, ∆max = 1.39 D, αf,max = 85◦,αf,mean = 10.4◦.

(f) γ(Ud) = U3

d, ∆max = 0.67 D, αf,max = 68◦,

αf,mean = 6.2◦.

Figure 4. Deformed mesh for the limiting cylinder displacement with various non-constant diffusivity fields.

Figure 5. Mixer simulation: sliding interface in action.

Figure 6. Cell layering around a moving object.

5 of 10

American Institute of Aeronautics and Astronautics

Page 6: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

The first functional level incorporates discretisation support, consisting of mesh and data renumbering.This functionality is built into the mesh object and is discretisation-independent.

Primitive mesh operations are sufficiently flexible, but impractical and tedious to use. For example, asingle primitive operation may not lead to a valid mesh, eg. removal of a single point. For this reason,primitive operations are executed in batches that make logical sense; complete mesh is rebuilt and checkedfor validity only when it is correctly re-assembled.

IV.B. Topology Modifiers

The second level of topological change machinery consists of higher-level objects called mesh modifiers. Amesh modifier holds a self-contained definition and a triggering mechanism for a topological change, executedin terms of primitive mesh operations. As an example, consider a layer addition/removal interface. Whenmaximum layer thickness is achieved, a cell layer is added in front of a pre-defined mesh surface; whenminimum thickness is breached, layer removal occurs.

Definition of a topology modifier relates only to a static mesh and come into action without user inter-vention. This is termed a “set-and-forget” strategy: a modifier present in a static mesh will be triggeredautomatically by mesh motion. OpenFOAM currently implements the following mesh modifier objects:

• Cell layer addition/removal, defined as a set of mesh faces which create an oriented surface, withminimum and maximum layer thickness, shown schematically in Fig. 7;

Figure 7. Addition of an internal cell layer (yellow) during motion.

• Attach-detach boundary, converting a set of internal faces into a boundary patch, thus attaching anddetaching mesh components. Attach-detect action is triggered by either at times pre-defined by theuser or in a solution-dependent manner;

• Sliding interface, defined as a pair of detached surfaces moving relative to each other, which will beattached in the overlapping region. Topological action removes the original interface faces and replacesthem with facets to achieve one-to-one connectivity, Fig. 8;

master patch

slavepatch

facets

Figure 8. Coupling a sliding interface.

Operation of a sliding interface is shown schematically in Fig. 9.

• Regular oct-tree refinement for hexahedral mesh regions.

6 of 10

American Institute of Aeronautics and Astronautics

Page 7: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

Figure 9. Operation of a sliding interface.

More general mesh modifiers can also be defined: examples include error-driven adaptive mesh refinementor arbitrary crack propagation in structural analysis. Design of the topology engine allows simultaneousaction of multiple non-interacting mesh modifiers. For cases where mesh modifiers interact or depend oneach other, a further level of management is needed.

IV.C. Dynamic Mesh Objects

Mesh modifiers are considerably easier to use than primitive mesh changes but there exists room for furtherimprovement, particularly when multiple modifiers are used in unison in a recognisable geometry-relatedmanner, interacting with complex mesh motion.

Figure 10. Examples of dynamic mesh definition: mixer vessel, left; piston and valves, right.

To build on this, one may recognise typical cases of topological changes, using multiple mesh modifiersand prescribing motion in a user-friendly manner. Examples shown in Fig. 10 include a mixer vessel meshobject and a piston-and-valves configuration in internal combustion engine. For a mixer vessel mesh, motionis prescribed with axis of rotation and rotational speed in rpm, using a single sliding interface between arotor and stator region (in red). It is clear how such mesh definition covers a range of topologically similarobjects without reference to the geometry of a particular mixer.

A piston-and-valve configuration illustrates multiple interacting mesh modifiers: cell layering occurs atthe piston as well as top and bottom valve surfaces (red and green), operating together with a sliding interfaceon a valve curtain (blue). During valve action, a sliding interface is decoupled first, followed by layering

7 of 10

American Institute of Aeronautics and Astronautics

Page 8: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

action and re-attachment of the sliding interface. For user convenience, motion is specified with reference toengine geometry, rotational speed and valve lift curves.

V. Results

Two example cases are given to illustrate dynamic mesh features in action. In the first, automaticmesh motion is used together to handle solution-dependent coupled motion-flow algorithm, while the secondcombines free surface flow CFD with 6-DOF solid body motion.

Consider a case7 of a free-rising bubble of air in a large water tank simulated using a surface trackingalgorithm. Here, two fluids (inside and around the bubble) are handled by separate meshes and coupled onthe free surface through boundary conditions. Surface motion is obtained as a part of the solution of theflow equation as a consequence of a double boundary condition.7,8

Fig. 11 shows the mesh deformation and the pressure field around a 2-D air bubble of 1.5mm diameterfreely rising in water. After the initial transient, the bubble reaches terminal velocity and shape. The mesh inthis simulation consists of 12 480 CVs in two disconnected regions and handles the interface using a coupledfree surface boundary condition.

Here, mesh motion is dynamically re-calculated and bubble shape is a part of the solution. Variablediffusivity in the motion Laplacian is used to preserve boundary layers close to bubble surface. While bubbledeformation is handled with ease, it is clear that mesh motion alone cannot accommodate bubble breakup,since this would involve a local and global solution dependent topology change.

(a) t = 0 s, αf,max = 26.1◦,αf,mean = 1.1◦.

(b) t = 0.035 s, αf,max = 32.41◦,αf,mean = 3.8◦.

(c) t = 0.075 s, αf,max = 37.9◦,αf,mean = 5.5◦.

(d) t = 0.25 s, αf,max = 39.9◦,αf,mean = 6.1◦.

Figure 11. Free-rising air bubble in water in 2-D: pressure field and interface deformation with mesh quality indicators.

The second example consists of a floating body in a free surface flow. Functionally, the implementationseparates into two layers:

• A Volume-of-Fluid (VOF) fluid flow solver9 formulated with support for mesh motion and topologicalchanges. Note that a solver operates on a moving mesh without reference as to how mesh motion hasbeen performed but only requires motion data as described in Section II;

• A floating body dynamic mesh class, which calculates forces on a given surface and solves the 6-DOFequation of motion for a solid body. Motion of the body acts as a boundary condition for the automaticmesh motion solver: as a result, the mesh deforms in response to forces given by the flow.

8 of 10

American Institute of Aeronautics and Astronautics

Page 9: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

In this structure, a VOF solver is functionally independent from the way a mesh is moved and vice versa:a single mesh motion class can be used with multiple solvers. From the viewpoint of 6-DOF motion, itmakes no difference whether the flow around a body is high-speed compressible (as in missile release) orincompressible free surface (as in naval hydrodynamics): this is simply a source of external forcing.

Fig. 12 shows 4 snapshots of the mesh in motion, where a barge is carried on an incoming wave using a6-DOF motion solver in association with automatic mesh motion. The mesh quality is preserved even forlarge deformation, but motion alone does not allow for overturning.

In order to simulate the flow around an overturning body, computational mesh and 6-DOF motion willbe decomposed into two components and assembled with the help of a sliding interface. Internal part ofthe mesh translates and rotates with the body, while the external part undergoes translation motion only.Connection between the two parts is handled with a sliding interface, compensating for rotation; in 3-D asliding interface will be a sphere enveloping the body.

Figure 12. 6-DOF motion in free surface flow: Floating body.

Figure 13. 6-DOF motion in free surface flow: Overturning body.

Fig. 13 illustrates the free surface flow around an overturning body, given initial rotational velocity.Sliding between components can be clearly seen. As added benefit, internal part of the mesh moves as a

9 of 10

American Institute of Aeronautics and Astronautics

Page 10: Dynamic Mesh Handling in OpenFOAM - POWERLABpowerlab.fsb.hr/ped/kturbo/OpenFOAM/papers/dynamic... · Dynamic Mesh Handling in OpenFOAM ... any local re-meshing or ... objective is

solid body (attached to the barge) and undergoes no deformation. This is beneficial when fine near-wallmesh resolution is used: layered mesh structure next to the wall will remain intact. Note that the meshdoes not match at the sliding interface, making it easy to increase mesh resolution close to the body withoutresorting to hanging node adaptation or propagating mesh refinement away from the region of interest.

VI. Conclusion

This paper describes the dynamic mesh capability for general polyhedral meshes implemented in Open-FOAM. Its main components are automatic mesh motion, topological modifiers and dynamic mesh classes.

Automatic mesh motion is deforms the mesh to respond to boundary motion prescribed in advance orin a solution-dependent manner. This is achieved by solving a motion equation formulated as a Laplacianwith variable diffusivity, where boundary motion acts as a boundary condition. Polyhedral cell support isachieved using a vertex-based mini-element technique in the manner of a Finite Element Method.

For cases where simple mesh deformation will not suffice, topological mesh changes are used to varythe number and connectivity of primitive mesh components (points, faces, cells) during the simulation in auser-friendly manner. Topological changes are supported at the primitive level in a mesh object, includingdata mapping and renumbering. Two further levels combine primitive operations for ease of use: meshmodifiers and dynamic mesh classes. A mesh modifier handles a single self-contained operation, such assurface sliding or cell layering. At the top level, topology modification is married to mesh motion for specificclasses of problems: examples include dynamic meshes for mixer vessels (motion + sliding interface) andsolution-dependent motion in the case of a 6-DOF floating body.

Software architecture separates the implementation of flow solvers from dynamic mesh classes undergeneric interfaces, since mesh motion and flow solution are formally independent. Thus, a single dynamicmesh can be used with multiple flow solvers with no change.

A combination of an easy-to-use dynamic mesh engine and substantial physical modelling capabilities ofOpenFOAM make a powerful tool, capable of handling complex physics in an environment where the domainshape varies in time- and solution-dependent manner.

Acknowledgments

Contribution of dr. Zeljko Tukovic of the University of Zagreb, Croatia for the work on automatic meshmotion and example of moving bubble is gratefully acknowledged. Examples of complex topological actionwith piston-and-valves have been prepared in collaboration with drs. Tommaso Lucchini and GianlucaD’Errico of Politecnico di Milano, Italy.

References

1Demirdzic, I. and Peric, M., “Finite volume method for prediction of fluid flow in arbitrarily shaped domains with movingboundaries,” International Journal for Numerical Methods in Fluids, Vol. 10, 1990, pp. 771–790.

2Demirdzic, I. and Peric, M., “Space conservation law in finite volume calculations of fluid flow,” International Journal forNumerical Methods in Fluids, Vol. 8, 1988, pp. 1037–1050.

3Jasak, H. and Tukovic, v., “Automatic Mesh Motion for the Unstructured Finite Volume Method,” Transactions ofFAMENA, Vol. 30, No. 2, 2007, pp. 1–18.

4Baker, T. J., “Mesh modification for solution adaptation and time evolving domains,” 7th International Conference onNumerical Grid Generation in Computational Field Simulations, Whistler, British Columbia, Canada, 2000.

5Helenbrook, B. T., “Mesh deformation using the biharmonic operator,” International Journal for Numerical Methods inEngineering, Vol. 56, 2003, pp. 1007–1021.

6Virag, Z., Dzijan, I., and Savar, M., “Unstructured grid solver for the convection-diffusion equation,” Proceedings of the2003 International Conference on Computational & Experimental Engineering & Science, edited by S. Atluri, Tech SciencePress, Corfu, Greece, 2003.

7Tukovic, Z., Finite volume method on domains of varying shape (in Croatian), Ph.D. thesis, Faculty of mechanicalengineering and naval architecture, University of Zagreb, 2005.

8Tukovic, v. and Jasak, H., “Simulation of Free-Rising Bubble with Soluble Surfactant using Moving Mesh FiniteVolume/Area Method,” 6th International Conference on CFD in Oil & Gas, Metallurgical and Process Industries, SIN-TEF/NTNU, June 2008.

9Rusche, H., Computational fluid dynamics of dispersed two-phase flows at high phase fractions, Ph.D. thesis, ImperialCollege, University of London, 2003.

10 of 10

American Institute of Aeronautics and Astronautics