How to refine a 2D cylinder blockMesh

For the audience who do not know what a 'blockMesh' is, it is a Mesh tool which comes along with the open-source software called 'openFoam'. Many university students and researchers have begun using openFoam for their flow simulation problems. There is another mesh tool called the 'snappyHexMesh', which is normally employed to mesh complex geometry for the flow simulations.
In this post, although, I will restrict the information only to a 2D cylinder mesh - that is, a 2D mesh housing a cylinder. I will largely talk about how to play around with parameters in the blockMeshDict in order to obtain a refined mesh. I will also briefly talk about the turbulence models that can be used to run a high Reynolds number simulation on a refined grid.

If you are wondering where to start or where to access a case file, you can check the following website: http://www.wolfdynamics.com/. They have an extended compilation of case files and tutorials working up to almost 1.5 GB. If you are a beginner and are looking for a place to download and work on openFoam files, the website will do you justice. If you are an expert in openFoam and still require some insight into complex meshing and simulations, this again is a perfect place to look into. Having said that, the case folder to download from the website is named as "vortex shedding". This folder, in turn, is sub-divided into 12 cases, each of which is distinct in terms of solvers used and the refinement assigned. 

A coarse 2D mesh looks somethings like the following:

The above is a 2 dimensional mesh, and of course if you wish to make a 3D mesh, all you have to do is extend the co-ordinates in the Z-direction. This mesh as such is made up of several blocks, each of which are represented by a set of co-ordinates assigned inside the blockMeshDict. The case file is again available to download from the above mentioned website. The mesh can be used to perform simulations to study the force Coefficients, whose medium is Air. If you are contemplating on running a cylinder simulation with water as the medium, it is better to start refining the mesh and extending the domain in the X-direction.
The most important refinement parameters given inside the blockMeshDict for a coarse mesh can be represented below as:

If you are planning to refine the case, do so by playing around with the above parameters. Once done, you may be able to achieve a refined mesh, whose grading parameters can be the following:


And now the mesh domain as viewed in the paraFoam looks like the image attached below.


The above image may well be misleading because the thick lines in the domain aren't lines itself, but are very closely packed cells. The above mesh has a Y+ value of 60, and if you are planning to run the kOmegaSST turbulence model, you still might require further refinements to bring the Y+ value down to anything less than 1. But instead of refining the above mesh any further, I had used a scaling command to reduce the cell domain, which automatically brought down my Y+ value. The command is : transformPoints –scale “(0.015 0.015 0.015)”
The kOmegaSST model proved unsuccessful because the Clrms value for a Reynolds number of 1*10^6 was high. The error may be due to the fact that one did not use a 3D mesh for the kOmegaSST turbulence model without a wall-function. And so the scaling factor was scraped and a k-Epsilon was used along with a wall-function, in which the y+>30. Now, the simulation produced good estimates for the force Coefficients when compared with the experimental results. For more information, please check out the following video tutorial and contact me at misaacmark24@gmail.com for the case files. 


In the consecutive posts let us explore the mesh tool 'snappyHexMesh'. Thank you!

Comments

Popular posts from this blog

snappyHexMesh tutorial for a simple Geometry

snappyHexMesh Tutorial For a Complex Geometry and External Aerodynamics