# linearUpwind

 User Name Remember Me Password
 Register Blogs Members List Search Today's Posts Mark Forums Read

 April 11, 2013, 08:51 linearUpwind #1 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 Hi, I'm trying to understand the linearUpwind scheme in OpenFOAM. The linearUpwind.C isn't clear to me. So I have some questions: -Is it simply the extansion of the upwind scheme to the second order? -In the User Guide, it is said to be first/second order bounded. But for me, I would not have expected it to be bounded in the second order. Where am I wrong? Thank you.

April 11, 2013, 16:28
#2
Senior Member

Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 584
Rep Power: 20
Quote:
 -Is it simply the extension of the upwind scheme to the second order?
Yes

Quote:
 -In the User Guide, it is said to be first/second order bounded. But for me, I would not have expected it to be bounded in the second order. Where am I wrong?
It is unbounded unless you use a gradient scheme that bounds the values. Maybe this older discussion will help:

A few simple questions about linearUpwind and limitedLinear

Good luck.
__________________
Dan

Find me on twitter @dancombest and LinkedIn

 April 11, 2013, 16:54 #3 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 Thank you very much for your answer!

 April 19, 2013, 06:47 #4 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 Hi again, I'm simulating a supersonic flow with a shock, inviscid case. I wanted to compare a TVD scheme (limitedLinear) with linearUpwind. I tried linearUpwind without cellLimited and then with cellLimited. What I expected was that the linearUpwind scheme without cellLimited gave me spurious oscillations but it doesn't. The two case (linearUpwind with and without cellLimited) gave me the same results. The localisation of the shock isn't very good compare to limitedLinear but I see no spurious oscillations near it. How can we explain it? Thank you. Robin

 April 20, 2013, 20:08 #5 Senior Member     Daniel P. Combest Join Date: Mar 2009 Location: St. Louis, USA Posts: 584 Rep Power: 20 What type of gradient scheme are you using? __________________ Dan Find me on twitter @dancombest and LinkedIn

 April 22, 2013, 03:28 #6 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 Gauss linear

 April 23, 2013, 10:42 #7 Senior Member   HECKMANN Frédéric Join Date: Jul 2010 Posts: 237 Rep Power: 9 give your full scheme file. Maybe you can try a leastsquare method.

 April 24, 2013, 03:30 #8 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 Here is my fvSchemes for the linearUpwind case without cellLimited: /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.1.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; } divSchemes { default none; div(phi,U) Gauss upwind; div(phid,p) Gauss linearUpwind grad(U); div(phi,e) Gauss linearUpwind grad(U); div(phi,K) Gauss linearUpwind grad(U); div((muEff*dev2(T(grad(U))))) Gauss linear 1; } laplacianSchemes { default none; laplacian((rho*(1|A(U))),p) Gauss linear corrected; laplacian(muEff,U) Gauss linear corrected; laplacian(alphaEff,e) Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } fluxRequired { default no; p ; } // ************************************************** *********************** // Thank you, I'll try leastSquare method.

 April 24, 2013, 08:18 #9 Senior Member   HECKMANN Frédéric Join Date: Jul 2010 Posts: 237 Rep Power: 9 why you didn't put "div(phi,U)" to the second order ? All the gradient should take the solved variable: div(phid,p) Gauss linearUpwind grad(p); div(phi,e) Gauss linearUpwind grad(e); div(phi,K) Gauss linearUpwind grad(K);

 April 24, 2013, 09:01 #10 New Member   Robin Debroux Join Date: Oct 2012 Posts: 22 Rep Power: 6 I noticed that for all the inviscid case in the tutorials, sonicFoam never use second order for this term. I've tried a second order but it doesn't improve my solution and gave me more spurious oscillations just after the shock. Sorry for the mistake, I saw it but forgot to change it for the "linearUpwind without cellLimited" case but I didn't made the mistake for the "linearUpwind with cellLimited" case. So I don't think the mistake come from that. But I just ran the simulation with the corrections, I'll tell you if it changes something. Thank you

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post chegdan OpenFOAM 16 October 13, 2015 03:59 Benedikt OpenFOAM Pre-Processing 1 June 25, 2012 08:54 Andy_bm OpenFOAM Running, Solving & CFD 8 November 14, 2011 12:34 cabul OpenFOAM 8 November 9, 2011 07:57 wuppdupp OpenFOAM Pre-Processing 6 July 25, 2009 02:35

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

 Contact Us - CFD Online - Top