Automobile aero ground boundary layer OR simpleFoam/GAMG and high aspect ratio cells
I am trying to run an external aero case of an automobile at yaw, which means the tangential velocity of the ground is not the same as the freestream velocity. So, a boundary layer will form on the ground plane. My issue is that if I use the large cells on the ground away from the vehicle, the boundary layer grows much too quickly because the y+ is so high. Refining these cells down to the correct size would create way too many cells.
The approach that I normally take is to refine the cells in the ground boundary layer, but only refine them in the direction normal to the ground. I am normally a Star-CD/Star-CCM+ user, and this approach seems to work fine for those codes. However, with simpleFoam and a GAMG preconditioner for pressure, I cannot get it to run. The first iteration seems to solve for pressure fine, but the number of iterations required to solve for P at each iteration keeps increasing until it just stalls.
I know OpenFOAM is used heavily in the automotive industry, so there must be some way to solve this problem. Are there settings to make simpleFoam/GAMG more tolerant to high aspect ratio cells? Is there another approach that I can take to capture the ground plane boundary layer correctly?
Would you mind trying PCG for p with the same type of mesh? Though slow, PCG would ensure better conservation !
As the run progresses, you could limit max. iterations to 200 or something in PCG which would make it go a bit faster...
I too have had issues with OpenFOAM and high aspect ratio cells. My research focused on high aspect ratio anisotropic elements rather than structured cells. So my first question would be, what is your element type?
If you're using structured cells that are flow aligned, there should be no issue as long as no highly 3D flows are occurring in that region (separated flow, reattachment, etc.). However, if you're using unstructured cells, there is a limit on the aspect ratio mainly due to the limitations of the surface normal gradient schemes.
As the aspect ratio of these unstructured elements increase, the angle between the surface normal and the line connecting adjacent cell centers increases and approaches 90 degrees, degrading the interpolation of the gradient and usually causes the solution to diverge. The limit I found seems to be around an aspect ratio of 100. This is low, but it is a limit that is tough to break without a lot of playing around.
Hope this helps.
I am using snappyHexMesh, and I am only refining cells that are not on the surface, so only hexes should have a high AR.
I seem to have got it running by reducing the relative convergence tolerence of P. It is strange that it would have such a hard time dropping the P residuals more than one order of magnitude just because a few hexes have an aspect ratio of ~50. The solution looks valid so I'm satisfied.
In general, t prevent divergence for complex real world meshes.
for a first 100-200 iterations:
rel Tolerance 0.1
for all variables (p,U,k,epsilon )
|All times are GMT -4. The time now is 08:30.|