You are on page 1of 9

Dynamic mesh control

Dynamic mesh control Deformation Rotational motion

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

Dynamic mesh related problems


Motion of object in fluid
Body motion with boundaries (wall, ground, free surface) requires dynamic mesh (alternative solution is overset mesh) Note: If all the outer boundaries are open, deformation is not needed

Rotating machine (open test)


Moving Reference of Frame (MRF)

Rotating machine with casing


Sliding mesh technique
H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

pimpleDyMFoam solver
movingCone case
Mesh: solution of Laplacian solver
Needs velocity boundary condition of mesh

wingMotion case
snappyHexMesh : meshing simpleFoam : prepare steady flow field pimpleDyMFoam : flow simulation with motion

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

OpenFOAM cases of dynamic mesh


MRF example
incompressible/MRFSimpleFoam/mixerVessel2D Static mesh in rotating coordinates

Dynamic mesh example


incompressible/pimpleDyMFoam
movingCone : Defomation of mesh mixerVesselAMI2D : wingMotion

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

Arbitrary Mesh Interface (AMI)


AMI is for un-matched/non-conformal cyclic patch pairs sliding interfaces, e.g. for rotating machinery mapped patches, e.g. for coupling simulations between separate mesh regions, such as surface film and bulk flow.

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

Rotating turbine example


Prepare Fluent case files of rotating part and stationery part separately
Inner.cas and outer.cas

Convert the Fluent case files to OpenFOAM case directory


fluentMeshToFoam writeZone writeSets inner.cas fluentMeshToFoam writeZone writeSets outer.cas Point is providing two cases
H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

Merge two meshes


$ mergeMesh inner outer
It creates merged mesh in run/inner/1e-5 (something like that) Directory name is the "first time step" determined by controlDict

Create rotating simulation case


Prepare mycase/system and mycase/constant Copy inner/1e-5/polymesh to the new case

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

Create cellZone data in the new case


splitMeshRegions -makeCellZones overwrite

Edit constant/polymesh/boundary and set AMI patches

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

inner-AMI { type cyclicAMI; nFaces 16; startFace 304; matchTolerance 0.0001; neighbourPatch outer-AMI; transform noOrdering; }

outer-AMI { type cyclicAMI; nFaces 16; startFace 320; matchTolerance 0.0001; neighbourPatch inner-AMI; transform noOrdering; } Then edit boundary condition and run the simulation

H. AKIMOTO, Division of Ocean Systems Engineering (OSE), Korea Advanced Institute of Science and Technology

You might also like