CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > General Forums > Main CFD Forum

Accuracy problem of HO schemes on unstructured mesh, HO scheme gives 1st order result

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 24, 2011, 13:21
Unhappy Accuracy problem of HO schemes on unstructured mesh, HO scheme gives 1st order result
  #1
Member
 
Join Date: Mar 2009
Location: Istanbul, Turkiye
Posts: 47
Rep Power: 17
gemini is on a distinguished road
Hi,

I am trying to develop an unstructured finite volume solver and it has problem with solution accuracy. Here the details;

- The test problem is standard lid driven cavity flow at Re = 1000.
- Colocated arrangement is used with MIM
- MESH is triangular and about 2000 cells
- The convective terms are discretized using 1st order upwind FOU or MUSCL scheme
- SIMPLE algorithm is used

The point I am stuck is that; when I select FOU scheme, my solver gives exactly the same result that is obtained from using a commercial solver using the same mesh. However, I cannot obtain the same agreement when I used MUSCL scheme.

The difference between my solver result and that of commercial is very big. Actually my solver give nearly the same result when FOU scheme is used. I tried several different HO formulations, ie. TVD , NVSF , GAMMA scheme, but my solution accuracy did not changed from first order.

Any help with this would be greatly appreciated.

Thanks in advance.
gemini is offline   Reply With Quote

Old   December 24, 2011, 14:36
Default
  #2
Senior Member
 
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 20
cfdnewbie is on a distinguished road
Hi gemini,
did you test the convergence of your formulation beforehand? Does it give second order for a convergence test?

Cheers
cfdnewbie is offline   Reply With Quote

Old   December 24, 2011, 16:21
Default
  #3
Member
 
Join Date: Mar 2009
Location: Istanbul, Turkiye
Posts: 47
Rep Power: 17
gemini is on a distinguished road
hi,
I could not get the point what you meant. could you give me more specific examples.

both FOU and HO SCHEME implementation of my code converges well and i did not observe any convergence difficulty.

on the other hand, is there any critical issues in FV discretization on unstructured meshes? I have used over-relaxed approach and MIM (majumdar formulation) in my code and as I point before the results with FOU scheme match closely with literature results.

Quote:
Originally Posted by cfdnewbie View Post
Hi gemini,
did you test the convergence of your formulation beforehand? Does it give second order for a convergence test?

Cheers
gemini is offline   Reply With Quote

Old   December 24, 2011, 16:31
Default
  #4
Senior Member
 
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 20
cfdnewbie is on a distinguished road
Hello, I will try to make more clear what I meant.
If you write your own code, it is customary to test the code with an analytical example before starting to do "real" computations. For example, for linear scalar advection, you could use a simple transport to test your scheme. For Euler or Navier-Stokes, the transport of a density profile gives you a first clue if something is wrong.

The basic idea is to test your implementation with examples for which you know the solution, so you can be sure that your code itself is ok.

If you need more help, let me know!

read e.g.:
http://www.innovative-cfd.com/manufa...-overview.html
http://csm.mech.utah.edu/content/201...ation-testing/
http://www.personal.psu.edu/jhm/ME54...MS_summary.pdf

cheers
cfdnewbie is offline   Reply With Quote

Old   December 24, 2011, 18:47
Default
  #5
Senior Member
 
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,289
Rep Power: 34
arjun will become famous soon enougharjun will become famous soon enough
Quote:
Originally Posted by gemini View Post
Hi,

I am trying to develop an unstructured finite volume solver and it has problem with solution accuracy. Here the details;

- The test problem is standard lid driven cavity flow at Re = 1000.
- Colocated arrangement is used with MIM
- MESH is triangular and about 2000 cells
- The convective terms are discretized using 1st order upwind FOU or MUSCL scheme
- SIMPLE algorithm is used

The point I am stuck is that; when I select FOU scheme, my solver gives exactly the same result that is obtained from using a commercial solver using the same mesh. However, I cannot obtain the same agreement when I used MUSCL scheme.

The difference between my solver result and that of commercial is very big. Actually my solver give nearly the same result when FOU scheme is used. I tried several different HO formulations, ie. TVD , NVSF , GAMMA scheme, but my solution accuracy did not changed from first order.

Any help with this would be greatly appreciated.

Thanks in advance.

Your implementation may have some problem.

In all the higher order scheme implementation, a normalized variable at the face is calculated. Based on this variable it is decided that whether to use higher order scheme or just use first order upwind scheme.

In your case it seems the normalized variable at face that you calculate is such that always FOU is selected.

So check your implementation.
arjun is offline   Reply With Quote

Old   December 24, 2011, 19:14
Smile
  #6
Senior Member
 
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 20
cfdnewbie is on a distinguished road
Quote:
Originally Posted by arjun View Post
In all the higher order scheme implementation, a normalized variable at the face is calculated. Based on this variable it is decided that whether to use higher order scheme or just use first order upwind scheme.
But wouldn't that totally depend on how/if he implemented it that way? I can implement a MUSCL with a decent Riemann solver without any switch to FOU, or am I misunderstanding your remark?

cheers!
cfdnewbie is offline   Reply With Quote

Old   December 24, 2011, 19:25
Default
  #7
Senior Member
 
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,289
Rep Power: 34
arjun will become famous soon enougharjun will become famous soon enough
Quote:
Originally Posted by cfdnewbie View Post
But wouldn't that totally depend on how/if he implemented it that way? I can implement a MUSCL with a decent Riemann solver without any switch to FOU, or am I misunderstanding your remark?

cheers!

Yes you can, but it does not say that everyone else is doing what you are doing.
arjun is offline   Reply With Quote

Old   December 24, 2011, 19:34
Default
  #8
Senior Member
 
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 20
cfdnewbie is on a distinguished road
So how come you assumed that he had such a switch implemented, and how come you stated that all codes had such a switch? Am I the one making assumptions and invalid generalizations here, or is it you, my friend? )

Maybe we should stop this cat fight and try to help the guy asking his question! )

Cheers!

Last edited by cfdnewbie; December 24, 2011 at 20:28. Reason: Better sense!
cfdnewbie is offline   Reply With Quote

Old   December 24, 2011, 21:01
Default
  #9
Senior Member
 
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,289
Rep Power: 34
arjun will become famous soon enougharjun will become famous soon enough
Quote:
Originally Posted by cfdnewbie View Post
So how come you assumed that he had such a switch implemented, and how come you stated that all codes had such a switch? Am I the one making assumptions and invalid generalizations here, or is it you, my friend? )

Maybe we should stop this cat fight and try to help the guy asking his question! )

Cheers!

I have already answered him and to him it will make sense. It is clear that you do not have much experience implementing the schemes he was talking about.

Spend some time with this page:

http://www.cfd-online.com/Wiki/Discr...onvection_term
arjun is offline   Reply With Quote

Old   December 24, 2011, 21:37
Default
  #10
Senior Member
 
cfdnewbie
Join Date: Mar 2010
Posts: 557
Rep Power: 20
cfdnewbie is on a distinguished road
Quote:
Originally Posted by arjun View Post
I have already answered him and to him it will make sense. It is clear that you do not have much experience implementing the schemes he was talking about.

Spend some time with this page:

http://www.cfd-online.com/Wiki/Discr...onvection_term
Good, I'm looking very much forward to his response! I'm sure it will be very clear to him now! And thank you for the link, that was a true eye opener!!
cfdnewbie is offline   Reply With Quote

Old   December 25, 2011, 03:22
Default
  #11
Senior Member
 
duri
Join Date: May 2010
Posts: 245
Rep Power: 17
duri is on a distinguished road
Gemini, check you limiter implementation, I think it some how pushes to first order reconstruction at face.
duri is offline   Reply With Quote

Old   December 26, 2011, 05:45
Default
  #12
Member
 
Join Date: Mar 2009
Location: Istanbul, Turkiye
Posts: 47
Rep Power: 17
gemini is on a distinguished road
Quote:
Originally Posted by arjun View Post
Your implementation may have some problem.

In all the higher order scheme implementation, a normalized variable at the face is calculated. Based on this variable it is decided that whether to use higher order scheme or just use first order upwind scheme.

In your case it seems the normalized variable at face that you calculate is such that always FOU is selected.

So check your implementation.
Hi,

I found the mistake, it is indeed a simple mistake of implementation of flux direction check. flow direction check must be performed using face normal velocities (or simply normal mass flux) not V_x for x-momentum and V_y for y-momentum

Thanks to everybody

Last edited by gemini; December 26, 2011 at 07:28. Reason: problem solved.
gemini is offline   Reply With Quote

Old   December 27, 2011, 22:01
Default
  #13
Senior Member
 
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,289
Rep Power: 34
arjun will become famous soon enougharjun will become famous soon enough
Quote:
Originally Posted by gemini View Post
Hi,

I found the mistake, it is indeed a simple mistake of implementation of flux direction check. flow direction check must be performed using face normal velocities (or simply normal mass flux) not V_x for x-momentum and V_y for y-momentum

Thanks to everybody

glad it worked out for you. Generally it is a silly mistake that creates problems.
arjun is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Moving mesh Niklas Wikstrom (Wikstrom) OpenFOAM Running, Solving & CFD 122 June 15, 2014 07:20
Need help with 1st order FV scheme Andrei Chernousov Main CFD Forum 1 March 14, 2013 04:37
Unstructured grid order of accuracy Biga Main CFD Forum 12 October 13, 2005 20:56
Higher Order FV Schemes for unstructured meshes Apurva Shukla Main CFD Forum 4 December 15, 2000 10:17
unstructured vs. structured grids Frank Muldoon Main CFD Forum 1 January 5, 1999 11:09


All times are GMT -4. The time now is 17:54.