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

Convergence problem at high reynolds number

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

Like Tree6Likes
  • 1 Post By FMDenaro
  • 1 Post By FMDenaro
  • 2 Post By sbaffini
  • 1 Post By sbaffini
  • 1 Post By gnwt4a

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 20, 2022, 15:09
Question Convergence problem at high reynolds number
  #1
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
Hi,

I am studying on heat transfer with SOR method using Matlab. The code is pretty good for ra=10^3 and ra=10^4. But for ra=10^5 the code is running for hours but never converge. The error is firstly decreasing then increasing and it keep going like this.


What could be the problem?


Thanks in advance.

Last edited by bgm; July 20, 2022 at 19:49.
bgm is offline   Reply With Quote

Old   July 20, 2022, 16:09
Default
  #2
Senior Member
 
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,174
Rep Power: 66
FMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura about
Quote:
Originally Posted by bgm View Post
Hi,

I am studying on heat transfer with SOR method using Matlab. The code is pretty good for re=10^3 and re=10^4. But for re=10^5 the code is running for hours but never converge. The error is firstly decreasing then increasing and it keep going like this.


What could be the problem?


Thanks in advance.
SOR method says almost nothing. You have to address the equations and discretization.
bgm likes this.
FMDenaro is offline   Reply With Quote

Old   July 20, 2022, 16:19
Default
  #3
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
Quote:
Originally Posted by FMDenaro View Post
SOR method says almost nothing. You have to address the equations and discretization.
Thak you, all discretizations are made with FDM, do you mean there is a discretization mistake or should i change the method ? i will check anyway.

but i can not understand how come the others (at lower rayleigh) are giving correct results?

Last edited by bgm; July 20, 2022 at 19:50.
bgm is offline   Reply With Quote

Old   July 20, 2022, 16:26
Default
  #4
Senior Member
 
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,174
Rep Power: 66
FMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura about
Quote:
Originally Posted by bgm View Post
Thak you, all discretizations are made with FDM, do you mean there is a discretization mistake or should i change the method ? i will check anyway.

but i can not understand how come the others (at lower reyonolds) are giving correct results?
Again, what about the matrix of your algebric system after the discretization?
How do you check the acceleration factor? The Gauss-Seidel works at that Reynolds?
bgm likes this.
FMDenaro is offline   Reply With Quote

Old   July 20, 2022, 16:40
Default
  #5
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
Quote:
Originally Posted by FMDenaro View Post
Again, what about the matrix of your algebric system after the discretization?
How do you check the acceleration factor? The Gauss-Seidel works at that Reynolds?
The acceleration factor has the bounds 0 to 2 you know. But the Gauss-Seidel does not work, yes that is the problem. So how can i fix or modify it?

As I understand it, you are suggesting that I change the method.
bgm is offline   Reply With Quote

Old   July 20, 2022, 19:50
Default
  #6
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
I wrote Reynolds instead of Rayleigh. Please take in Rayleigh.
bgm is offline   Reply With Quote

Old   July 21, 2022, 12:01
Default
  #7
Senior Member
 
sbaffini's Avatar
 
Paolo Lampitella
Join Date: Mar 2009
Location: Italy
Posts: 1,924
Blog Entries: 29
Rep Power: 36
sbaffini will become famous soon enoughsbaffini will become famous soon enough
Send a message via Skype™ to sbaffini
You still haven't provided any detail on the method (finite difference, per se, still means nothing), problem, boundary conditions.

In general, high Re and high Ra cases will get harder and harder to converge, until they don't anymore. If you were doing everything correctly, then you would just be catching the higher Ra for which a steady (guessing from your presentation of the facts) solution exists. In general, I have doubts you are doing everything correctly, so you aren't probably catching the exact Ra for which the solution becomes unsteady, yet the reason for your lack of convergence is roughly/probably the same.
FMDenaro and bgm like this.
sbaffini is offline   Reply With Quote

Old   July 22, 2022, 10:09
Default
  #8
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
Quote:
Originally Posted by sbaffini View Post
You still haven't provided any detail on the method (finite difference, per se, still means nothing), problem, boundary conditions.

In general, high Re and high Ra cases will get harder and harder to converge, until they don't anymore. If you were doing everything correctly, then you would just be catching the higher Ra for which a steady (guessing from your presentation of the facts) solution exists. In general, I have doubts you are doing everything correctly, so you aren't probably catching the exact Ra for which the solution becomes unsteady, yet the reason for your lack of convergence is roughly/probably the same.
Let me start by thanking you for your interest.

problem: natural convection in square cavity
aim: create my own matlab code
method: SOR method (gauss-seidel) with finite difference discretization
boundary conditions: left and right walls are isolated, heated from below


the problem i have : my code runs and gives very appropriate results both in meaning graphical and numerical at ra=10^3 and ra=10^4 and it has correct convergence. but when taking ra=10^5 there isn't any convergence

my wish: realize and learn my mistake. Is it choosing wrong method or coding the algortihm false? or any other mistakes offer anyone says. i want to run my code correctly.
bgm is offline   Reply With Quote

Old   July 25, 2022, 07:34
Default
  #9
Senior Member
 
sbaffini's Avatar
 
Paolo Lampitella
Join Date: Mar 2009
Location: Italy
Posts: 1,924
Blog Entries: 29
Rep Power: 36
sbaffini will become famous soon enoughsbaffini will become famous soon enough
Send a message via Skype™ to sbaffini
Quote:
Originally Posted by bgm View Post
Let me start by thanking you for your interest.

problem: natural convection in square cavity
aim: create my own matlab code
method: SOR method (gauss-seidel) with finite difference discretization
boundary conditions: left and right walls are isolated, heated from below


the problem i have : my code runs and gives very appropriate results both in meaning graphical and numerical at ra=10^3 and ra=10^4 and it has correct convergence. but when taking ra=10^5 there isn't any convergence

my wish: realize and learn my mistake. Is it choosing wrong method or coding the algortihm false? or any other mistakes offer anyone says. i want to run my code correctly.
Obviously, we can't say if your coding is correct or not but, in general, what I already wrote applies. The problem you are trying to solve gets harder and harder to converge with increasing Ra, then it doesn't anymore, no matter what. It obviously depends ALSO from your coding. For example, are all your terms implicitly discretized? What form of convection scheme are you using? But, again, this sort of behavior is expected.
bgm likes this.
sbaffini is offline   Reply With Quote

Old   July 26, 2022, 19:09
Default
  #10
bgm
New Member
 
Join Date: Jul 2022
Posts: 6
Rep Power: 2
bgm is on a distinguished road
Quote:
Originally Posted by sbaffini View Post
Obviously, we can't say if your coding is correct or not but, in general, what I already wrote applies. The problem you are trying to solve gets harder and harder to converge with increasing Ra, then it doesn't anymore, no matter what. It obviously depends ALSO from your coding. For example, are all your terms implicitly discretized? What form of convection scheme are you using? But, again, this sort of behavior is expected.
thanks a lot for your answers. Is there any way to improve the SOR method?
bgm is offline   Reply With Quote

Old   July 27, 2022, 02:38
Default
  #11
Member
 
EM
Join Date: Sep 2019
Posts: 47
Rep Power: 5
gnwt4a is on a distinguished road
Just in case: the g-s method is convergent when the matrix for
inversion is diagonally dominant. have u checked this? otherwise
you are shooting in the dark. Second, are we to assume that with
increasing Ra you also increase the number of grid points in each
direction? if you are doing so, then you should be aware that
point-relaxation methods become increasing slow with increasing
number of grid points eventually becoming unusuable. This is why
multigrid methods were developed. What kinds of grids are you
using? Numbers, Stretching etc..? Third, have you checked your
converged cases against direct solvers and or with external
linear algebra routines? If so, have you also tried doing the
non-convergent one with external direct and iterative solvers?
These will give you clue if there is physical reason causing the
lack of convergence @ higher Ra. Fourth, plot the the state of
the struggling unconverged non-solution (i assume your problem is
2d) to check for the presence of gravity waves. These are
large-scale ie the wavelength is comparable to the box you are
using as opposed to numerical instabilities that tend to be
strong at grid scale.


you have got the cfd spirit right: you suspect the numerics
before any physical reason. people that use ready software tend
to jump straight into physical explanations.

also, the same convergence difficulties show up in the
side-heated/cooled rectangular cavities when increasing Ra but
in this case the physical reason is well known: the core flow
develops stable stratification giving rise to unsteady gravity
waves at the Brunt-Vaisala frequency. I have come across (and
ignored) a number of plane channel bottom-heated dns publications
that may be worth looking into for any special physical phenomena
that the flow may be developing large-scale oscillatory
behaviour.

--
sbaffini likes this.
gnwt4a is offline   Reply With Quote

Old   July 27, 2022, 05:35
Default
  #12
Senior Member
 
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,174
Rep Power: 66
FMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura about
Quote:
Originally Posted by bgm View Post
thanks a lot for your answers. Is there any way to improve the SOR method?
Ra=O(10^5) should be the limit for a steady solution if I rember correctly the historical test case.
Again, what you did not understand is the fact that you have to see the property of the matrix resulting from you discretization. That depends also on your linearization.
Furthermore, the optimal acceleration parameter depends on the grid size.
FMDenaro is offline   Reply With Quote

Reply

Tags
convergence failure, heat and mass transfer, matlab, reynolds number, sor

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
decomposePar problem: Cell 0contains face labels out of range vaina74 OpenFOAM Pre-Processing 37 July 20, 2020 06:38
[snappyHexMesh] Error snappyhexmesh - Multiple outside loops avinashjagdale OpenFOAM Meshing & Mesh Conversion 53 March 8, 2019 10:42
Compressor Simulation using rhoPimpleDyMFoam Jetfire OpenFOAM Running, Solving & CFD 107 December 9, 2014 14:38
DecomposePar unequal number of shared faces maka OpenFOAM Pre-Processing 6 August 12, 2010 10:01
Multicomponent fluid Andrea CFX 2 October 11, 2004 06:12


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