
[Sponsors] 
August 22, 2001, 00:26 
How to get converged on the stretched mesh?

#1 
Guest
Posts: n/a

Dear All, I developed an viscous flow code based on SIMPLE method. It can work very well on the mesh of good quality.However, it will usually diverged on the mesh of bad quality. In my case the bad mesh is usually highly stretched in one direction. I think it should be the problem of significant crossdiffusion term. Any cure for this ? Thanks in advance.


August 22, 2001, 01:19 
Re: How to get converged on the stretched mesh?

#2 
Guest
Posts: n/a

(1). Keep the grid size ratio to below 1.2, based on my experience with finite difference formulation. (2). On the other hand, you could use coordinate transformation and solve the transformed equations in the uniform mesh.


August 22, 2001, 01:39 
Re: How to get converged on the stretched mesh?

#3 
Guest
Posts: n/a

Dear John, Thanks for your kind response. (1) I am using tetrahedral (3d) or triangular (2d) mesh. The mesh size is uniform, but all elements are stretched in onedirection so as to increase the resolution in that direction. (2) In my discritizaton, all tensors or vector are computed in their Cartesian coordinate. Coordinate transfomration is not practical because I have to handle viscous flow in highly complex geometry.


August 22, 2001, 01:57 
Re: How to get converged on the stretched mesh?

#4 
Guest
Posts: n/a

(1). I had a great deal of experience in using unstructured mesh using commercial codes. (2). My suggestion is: increase the mesh size (more smaller good tri/tet cells) at the place where the resolution is needed rather than stretch the mesh. (3). And this is exactly why hybrid mesh was created. That is, use quad mesh in the boundary layer instead of tet mesh to improve the accuracy and the convergence. (4). Highly skewed mesh is not good for accuracy or convergence.


August 22, 2001, 03:10 
Re: How to get converged on the stretched mesh?

#5 
Guest
Posts: n/a

Dear John, Consider the viscous flow in a very thin plate, e.g. H/W or H/L <0.1: 1) to have good resolution in thickness direction by using uniform tetra mesh, the resulting total no. of element will be incredible huge!! 2) If you use mixed element with core region meshed by tetra element, the tetra element will be compressed and stretched, and then quaility is bad again. So i still have to face the stretched element, and my questions are: 1) why stretched mesh cause divergence in the computation of viscous flow ? 2) It seems that in inviscid solver the stretched mesh is not problem, Is that right ? 3) How to handle visous corssdiffusion term in the discritization on stretched element, i think it is corssdiffusion term cause diverge. 4) Is it possible to have a speical discritizaiton scheme suitable for onedimeinsoally stretched mesh ?


August 22, 2001, 10:15 
Re: How to get converged on the stretched mesh?

#6 
Guest
Posts: n/a

If you have multigrid coded in, try semicoarsening. It helps a great deal in some cases.


August 22, 2001, 12:17 
Re: How to get converged on the stretched mesh?

#7 
Guest
Posts: n/a

If you are using a Jameson style solver, the initial guess is also important, if your mesh is too coarse and your initial guess is not good, you can get diverging solution.


August 22, 2001, 18:41 
Re: How to get converged on the stretched mesh?

#8 
Guest
Posts: n/a

What kind of method are you using:
1) FDM 2) FVM 3) FVEM (dicontunous Galerkin) 4) FEM And, what kind of approximation for your functions (constant by element, linear ....) are you using. If you are using a traditional FVM method with unknowns located at the gravity center of your tets, these kind of your results can be expected for viscous flow (the flux between two volumes wont be consistant if the mesh is too streched or nonorthogonal). 

August 22, 2001, 20:04 
Re: How to get converged on the stretched mesh?

#9 
Guest
Posts: n/a

Hi,
In my opinion the reason of divergence in using very stretched tri(tetra) mesh is pressure correction equation. Of course viscous term or any other term makes convergence problem. For pressure correction eq. you should dicretise Laplacian operator. But usually in the papers such as Mathur, Peric, Lars Davidson's the Laplacian operator is very simplified because we don't know gradient of p' and we don't want to increase Anb in discrete eq. So only face normal directional term of Laplacian operator is used. Is that right, Poster? Dr. Peric said multicorrection of p' is useful to cure divergence problem. I already checked that it is right. Another way is to use hybrid mesh or mixed element mesh to reduce grid skewness. Frankly speaking I don't know how you discretise NS eq. But I recommand you check term by term by solving basic problems. If you doubt viscous term, you can solve heat conduction eq. on very stretched trimesh. If your code arrived at convergence very quickly. Your viscous term work good. If you want to know how your p' solver is strong, you can solve 10% bump inviscid flow with stretched grid. When you have good pressure contours, you can believe p' eq. works well on stretched grid. But if you failed to get converged solution of the bump flow, you should check p' solver or go around the stretched trimeshes. Good luck 

August 22, 2001, 20:31 
Re: How to get converged on the stretched mesh?

#10 
Guest
Posts: n/a

I felt that you are aware of viscos flux discretisation If you use FEM, you know that there should be no problem. In the context of FVM, gradient of velocity is requared at the face center. Averaging of two faceneighbor cells' gradients make convergence problem and generate wiggles on solution contours.
I think you read Dr. Demirdzic or Dr. Mathur's papers. They suggested a way of diagonally dominant discretisation for viscous terms. Dr. Peric's code Kaffa which is a kind of opensource already used the scheme for viscous flux discretisation. I believe that the scheme does not make any problem for mildly stretched tri meshes. If you want your code to be converged on any stretched grid, there is no way. You know very**10 good structured solvers still diverge on HIGHLY(important) skewed quad or hexa cells. I remember that thers is a method which is free from grid skewness, that is meshless method. 

August 22, 2001, 21:15 
Re: How to get converged on the stretched mesh?

#11 
Guest
Posts: n/a

(1). I have done that before, that is if you use uniform mesh size in both streamwise direction and the lateral direction, you should be able to get good result. (2). But as you said this could be difficult especially for 3D flow problem. (3). If you stretch the mesh in the streamwise direction, the truncation error will increase because of the large mesh size in that direction. (4). For inviscid flow or equations, there is no boundary layer (or region with high velocity gradient near the wall). So, the flow field will be more uniform near the wall, in addition to the pressure field which should have zero normal gradient near the wall. (5). In other words, the solution is uniform, and the mesh truncation error will not create problems for it. If the flow field is highly nonuniform, then the truncation errors will be high, and the only way to reduce it is by reducing the mesh size itself. (or using higher order method. but this is difficult because higherorder method most of the time is more unstable)(6). Anyway, the mesh must be consistent with the solution in the first place in order to have accurate solution. If the mesh can not give you the accurate solution, then the truncation error will cause stability problem if you try to use higherorder method. Or you can use lower order method to induce the numerical viscosity to damp out the oscillation so that you can get better convergence.


August 23, 2001, 20:44 
Re: How to get converged on the stretched mesh?

#12 
Guest
Posts: n/a

John's suggestions are reasonable even if they seem unpalatable. I'm not hugely familiar w/ SIMPLE but most CFD techniques do not work very well on stretched tris. to solve your problems in reasonable time you should consider an acceleration technique like multigrid or even something simple like grid sequencing to give you a better initialization on the fine grid.
It may be that increasing your numerical precision (from single to double for example) can help. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
nonsmooth mesh  Svensson  OpenFOAM Native Meshers: snappyHexMesh and Others  11  January 18, 2012 10:13 
snappyHexMesh won't work  zeros everywhere!  sc298  OpenFOAM Native Meshers: snappyHexMesh and Others  2  March 27, 2011 21:11 
external flow with snappyHexMesh  chelvistero  OpenFOAM  11  January 15, 2010 20:43 
How to import an existing converged soultion into a similar refined mesh?  Sophie  FLUENT  1  March 22, 2009 23:31 
loading new mesh in converged solution  Claudia  FLUENT  1  November 4, 2005 06:23 