CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Simple channel case using cyclicAMI will not converge

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

Reply
 
LinkBack Thread Tools Display Modes
Old   July 15, 2015, 06:05
Default Simple channel case using cyclicAMI will not converge
  #1
New Member
 
Chris Coutinho
Join Date: Jan 2015
Location: Netherlands
Posts: 18
Rep Power: 4
cbcoutinho is on a distinguished road
Sponsored Links
Hello Foamers,

Short list of parameters:
OF2.4.x on OpenSUSE 13.2
simpleFoam using laminar settings (RASmodel = laminar)
Re number is about 50 based on rectangular duct
Case is initialized using potentialFoam
Driving force is imposed using using fvOptions (pressureGradientExplicitSource on all cells)

I constructed a test case using cyclicAMI BCs because I plan to use them later with more complex channel geometries and uncoordinated meshes for inlet and outlet. I am having trouble reaching convergence, and I can't figure out why in my limited OF experience. I am asking those with more experience to help me understand what is going on here.

Some possible issues that I have addressed:

These are things that I have gathered from the forums so far may be the issue:
  • CyclicAMI BCs have convergence problems when faces are on different processors. This was solved by creating faceSets of inlet and outlet patches and setting both to the same processor using <singleProcessorFaceSets>
  • It's possible to aid in convergence by adjusting nNonOrthogonalCorrectors and the relaxation factors. Both of these have no effect to this particular case.
  • This may be a parallel/serial issue. I have tried both and that made no difference.
  • This may be a GAMG issue. I've adjusted the <nCellsInCoarsestLevel> to a high enough number to basically render GAMG useless, but that doesn't help either.
  • The convergence tolerances may not be low enough. I've reduced them all to 1e-10 because this is a steady state case,


The main issue:

By looking at the residual plots, it looks like main culprits are p, Uy and Uz. Based on my intuition, these field values should in theory all be 0 because, in the case of p, the driving force is gradP, not a pressure difference in the p field (am I stating that correctly?), and since flow is only in the x direction, Uy and Uz should also be zero.

Looking at the results in paraview shows that this true; however, there seem to be a number of oscillations at order of machine precision which is preventing the residuals to decrease.

There must be something I am missing because this is a very simple case and it is keeping me from doing my actual work using real geometries. Can anyone give me an idea of what may be wrong? I have added screen captures and a tarball of my case for your convenience. I would really appreciate some experienced advice on this case.



Thanks in advance,
Chris


Attached figures

Residual Plot:


Continuity:


InletMesh:


channelMesh:


Ux:
Attached Files
File Type: gz testCyclicAMI.tar.gz (7.5 KB, 17 views)

Last edited by cbcoutinho; July 15, 2015 at 06:10. Reason: formatting
cbcoutinho is offline   Reply With Quote
Sponsored Links

Old   July 21, 2015, 02:56
Default No problem at all
  #2
Member
 
Carsten Thorenz
Join Date: Mar 2009
Location: Germany
Posts: 34
Rep Power: 10
carsten is on a distinguished road
Hi Chris,

is it possible that you only misinterpret your results?

To me, your results look perfect!

Why don't your residuals for Uy and Uz drop to zero? Because they are relative to the initial residual and Uy/Uz are zero, thus the initial absolute residual is ~zero.

Why doesn't your residual for P drop? Because you impose a constant slope with your fvOption on P and this is stable.

Why does the residual for Ux drop? Because you start with a constant Ux and the profile has to develop. This is fine.

So, what exactly is your problem? You reached convergence.

Best,

Carsten
carsten is offline   Reply With Quote

Old   August 4, 2015, 10:00
Default
  #3
New Member
 
Chris Coutinho
Join Date: Jan 2015
Location: Netherlands
Posts: 18
Rep Power: 4
cbcoutinho is on a distinguished road
Quote:
Originally Posted by carsten View Post
Hi Chris,

is it possible that you only misinterpret your results?

To me, your results look perfect!

Why don't your residuals for Uy and Uz drop to zero? Because they are relative to the initial residual and Uy/Uz are zero, thus the initial absolute residual is ~zero.

Why doesn't your residual for P drop? Because you impose a constant slope with your fvOption on P and this is stable.

Why does the residual for Ux drop? Because you start with a constant Ux and the profile has to develop. This is fine.

So, what exactly is your problem? You reached convergence.

Best,

Carsten
Howdy Carsten,

I apologize for the late reply, I never got an email saying someone responded to this thread.

I agree with you about the convergence of Uy, Uz and p, but if you look at the plots I posted, the residuals for those variables are not 'zero', they are at least 0.01, with p jumping up to an initial residual above 1 after a few hundred iterations. Because my residual convergence criteria are 1e-10, from this simulation I will never reach convergence and successfully exit the simulation. Have a 'converged' solution is useless if the solver won't exit and just maxing out the Maximum iterations.

What's worse, is the cumulative error keeps going up because of round off errors associated with (I think).

Luckily, when I use a geometry with more than one-directional flow, this issue goes away. I was worried that if I couldn't get such a simple geometry to converge, I wouldn't be able to do anything else. I have since moved on, even though this issue still worries me.

Thanks again,
C
cbcoutinho is offline   Reply With Quote

Old   August 4, 2015, 12:28
Default
  #4
Member
 
Carsten Thorenz
Join Date: Mar 2009
Location: Germany
Posts: 34
Rep Power: 10
carsten is on a distinguished road
Hi Chris,

I guess you didn't see my point: The residuals printed by OpenFoam are _relative_.

So, your initial estimate for, say, Uy is already perfect: Uy=0. Thus, the _absolute_ residual is already near zero in the first iteration (apart from some numerical noise). This absolute value is used to normalize the residuals in the later iterations and presented to you. Thus, it can not drop very much, as it is computed as Res_current/Res_initial.

Best,

Carsten
carsten is offline   Reply With Quote

Reply

Tags
channel, convergence, cyclicami, laminar, simplefoam

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Boundary Conditions for Lid Driven Cavity case (SIMPLE Algorithm) Mandeep Deka Main CFD Forum 1 April 7, 2015 08:01
porous jump simple case semo FLUENT 6 September 18, 2013 10:12
NACA 0012 Case Will Not Converge dancfd OpenFOAM Running, Solving & CFD 6 November 14, 2011 20:09
Free surface boudary conditions with SOLA-VOF Fan Main CFD Forum 10 September 9, 2006 12:24
Need help on simple CFD case. (using CFD-ACE+) Sean Main CFD Forum 1 September 30, 2005 10:05

Sponsored Links


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