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

Appropriate monotone flux for WENO3

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By praveen

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   November 7, 2017, 11:58
Default Appropriate monotone flux for WENO3
  #1
Senior Member
 
Selig
Join Date: Jul 2016
Posts: 213
Rep Power: 10
selig5576 is on a distinguished road
I've recently successfully implemented WENO-3 for the advection term in my incompressible solver and am interested in implementing a monotone flux scheme, such as Godunov. For the Godunov it adjusts the stencil via


F_{i+1/2,j}= \min_{u_{L} \le u \le u_{R}} F(u),u_{L} \le u_{R}
\max_{u_{R} \le u \le u_{L}} F(u) ,u_{L} > u_{R}

I have naively implemented this with my WENO scheme and it seems to work, however I have read that calculating the Godunov flux is difficult as it reduces to solving an optemization problem for each quadrature. But since I am on a structured grid, do I need to worry about solving an optemization problem?
selig5576 is offline   Reply With Quote

Old   November 7, 2017, 23:11
Default
  #2
Super Moderator
 
Praveen. C
Join Date: Mar 2009
Location: Bangalore
Posts: 342
Blog Entries: 6
Rep Power: 18
praveen is on a distinguished road
It is not a grid related issue. If you have to find the min and max as written in your formula, that can be expensive in general.

If F(u) is convex, then you can write down the solution explicitly. In other situations, you may be able to find the min/max explicitly, in which it is ok. But if you have to apply some numerical optimization technique to find the min/max, then it can become expensive.

Also, the formula you write for Godunov flux is only for a scalar conservation law.
selig5576 likes this.
praveen is offline   Reply With Quote

Old   November 8, 2017, 09:02
Default Monotone flux
  #3
Senior Member
 
Selig
Join Date: Jul 2016
Posts: 213
Rep Power: 10
selig5576 is on a distinguished road
Praveen, thank you for the reply. The Godunov method is indeed slowing my code down. In the case of using the Local Lax Friedrichs (or Rusanov scheme), given I am in a incompressible regime, how would one calculate \alpha. In compressible flows it is calculated as \alpha = \max\left({|u_{i,j}| + c_{i,j}, |u_{i,j}| - c_{i,j}}\right), i.e. the Eigenvalues.

EDIT: For the burgers equation \alpha is calculated as \alpha = \max(u_{i}, u_{i+1}), i.e. differentiating the flux. Applying the same procedure for the F and G flux for the u-momentum I would have \alpha = \max(u_{i,j}, u_{i+1,j}) for F flux and \alpha = \max(u_{i,j},u_{i,j+1},v_{i,j},v_{i,j+1}) for the G flux. Given there are u and v velocity components I would imagine it would have to be modified for the G flux so it could accommodate the relevant ranges.

The definition of the Local Lax Friedrichs I am following is the one in Shu's monograph:

f(u_{i+1/2,j}^{+},u_{i+1,j}^{-}) = \frac{1}{2} \left(F(u_{i+1/2,j}^{+}) + F(u_{i+1/2,j}^{-}) - \alpha (u_{i+1/2,j}^{+} - u_{i+1/2,j}^{-})\right)

Last edited by selig5576; November 8, 2017 at 10:03.
selig5576 is offline   Reply With Quote

Old   November 10, 2017, 07:15
Default
  #4
Member
 
AGN
Join Date: Dec 2011
Posts: 70
Rep Power: 14
arungovindneelan is on a distinguished road
Quote:
Originally Posted by selig5576 View Post
In the case of using the Local Lax Friedrichs (or Rusanov scheme), given I am in a incompressible regime, how would one calculate \alpha. In compressible flows it is calculated as \alpha = \max\left({|u_{i,j}| + c_{i,j}, |u_{i,j}| - c_{i,j}}\right), i.e. the Eigenvalues.
Sorry, I don't have experience on WENO on incompressible flows. In incompressible flow also u can calculate the speed of sound, may end up in slightly wrong result if u assume density is constant.

I'm just curious to know: whether these kinds of flux calculating algorithm is required for incompressible flow? can't we use physical flux directly? I have studied on papers that this kind of density based algorithms are very slow in the incompressible region but can be overcome by pre-conditioner.

The computational cost of WENO is much higher than simple interpolation. WENO is a good interpolation scheme where we have shard corners but those structures may not possible in incompressible flow. Please answer whether it is worth or not. Is there any special incompressible case it is required?
arungovindneelan is offline   Reply With Quote

Old   November 10, 2017, 11:41
Default Weno
  #5
Senior Member
 
Selig
Join Date: Jul 2016
Posts: 213
Rep Power: 10
selig5576 is on a distinguished road
I've only just implemented the WENO-3 scheme, however I do believe its worth while as a scheme for the advection term.

I have not noticed any slow down using the LLxF scheme for the advection term. I am using LLxF so I could accommodate the different wind directions without using an upwind type method. I am still in the testing phase, however I can send you my code if you are interested. I've tested my solver on the lid driven cavity test and am getting pretty good results. I have also red in literature being have used MUSCL for the advection term, which would probably be much faster than WENO or ENO.
selig5576 is offline   Reply With Quote

Reply


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
Radiation in semi-transparent media with surface-to-surface model? mpeppels CFX 11 August 22, 2019 07:30
My radial inflow turbine Abo Anas CFX 27 May 11, 2018 01:44
How to use "translation" in solidBodyMotionFunction in OpenFOAM rupesh_w OpenFOAM Running, Solving & CFD 5 August 16, 2016 04:27
Udf for moving heat flux in 2D cylindrical geometry devia21 Fluent UDF and Scheme Programming 0 April 20, 2015 00:27
Question about heat transfer coefficient setting for CFX Anna Tian CFX 1 June 16, 2013 06:28


All times are GMT -4. The time now is 02:43.