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

Conjugate Heat Transfer: slow solid temperature convergence

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

Like Tree1Likes
  • 1 Post By zfaraday

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   February 2, 2016, 08:18
Default Conjugate Heat Transfer: slow solid temperature convergence
  #1
New Member
 
Join Date: Sep 2015
Posts: 4
Rep Power: 11
Kockaluring is on a distinguished road
Hi!

I am currently running CHT simulations using chtMultiRegionSimpleFoam. My case is approximately 10 million cells, devidied to 8 million in a fluid region and the remaining 2 million cells is devided in over 60 different solid regions.

The simulation runs smooth and fine, but my problem is that when convergence is achived in the fluid region, the temperatures in the solid region is not even close to converged.

My question is if there is any option/setting availabe to speed up the simulation in the solid parts? As example I know that in CFX one can utulize a "solid time scale factor" which has a significant impact on the convergence time.

Thank you!
Kockaluring is offline   Reply With Quote

Old   February 2, 2016, 14:31
Default
  #2
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 22
zfaraday will become famous soon enough
Hi Kocklauring!

This is a matter of great interest and in the following links you will find the answer to it:

slow-heat-transfer-solid-regions-chtmultiregionsimplefoam

slow-convergence-chtmultiregionsimplefoam

What are your specifications in fvSolution for the solid regions?

Hope it helps.

Best regards,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   February 2, 2016, 15:42
Default
  #3
New Member
 
Join Date: Sep 2015
Posts: 4
Rep Power: 11
Kockaluring is on a distinguished road
Thank you for your answer!

Quote:
Originally Posted by zfaraday View Post
What are your specifications in fvSolution for the solid regions?
When I started this case (which is a part of my master thesis) I had never used OpenFOAM before, so to make my life easy I quite simply copied fvSchemes and fvSolution from the chtMultiRegionHeater tutorial. Now I have modified the fluid fvSchemes and fvSoution, but for the solid regions they are still the same as in the tutorial.

Thus, my fvSolution for the solid regions look something like below. So if I understand the threads right, simply setting the h-relaxation factor to 1 should severly decrease the number of iterations needed to convergence? I shall try this and come back with the results.

solvers
{
h
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
relTol 0.1;
}
}

SIMPLE
{
nNonOrthogonalCorrectors 0;
}

relaxationFactors
{
fields
{
}
equations
{
h 0.7;
}
}
Kockaluring is offline   Reply With Quote

Old   February 2, 2016, 15:56
Default
  #4
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 22
zfaraday will become famous soon enough
First of all, what version of the software are you using? As per what I know chtMultiRegionSimpleFoam solves the energy equation for enthalpy not for temperature, I'm not aware if they changed it in the newest versions but I'm familiar with OF 2.3.x and in this version energy is solved for entalpy.

Besides that, I would recomend you to lower the relTol to 0.01 or even lower so that the solver will take more iterations in the first time steps. Maybe I would even lower the tolerance to 1e-07 or 1e-08. According to the links I gave you above, you should use some nNonOrthogonalCorrectors, maybe 2 or 3 would do the trick, I don't know, you should try it in order to find the proper amount of correctors. Finally, the relaxationFactor for T is exaggeratedly reduced, I recomend you to try with a value of 0.9 at least, being even advisable to use 0.95 or even 1.

Best regards,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   February 2, 2016, 16:04
Default
  #5
New Member
 
Join Date: Sep 2015
Posts: 4
Rep Power: 11
Kockaluring is on a distinguished road
Quote:
Originally Posted by zfaraday View Post
First of all, what version of the software are you using? As per what I know chtMultiRegionSimpleFoam solves the energy equation for enthalpy not for temperature, I'm not aware if they changed it in the newest versions but I'm familiar with OF 2.3.x and in this version energy is solved for entalpy.
Im not at the office atm, and therefore I just googled and copy/pasted the fvSolution from an old tutorial. However, I am using version v2.3 and I did edit my previous post with a correct version of the fvSolution.


Quote:
Originally Posted by zfaraday View Post
Besides that, I would recomend you to lower the relTol to 0.01 or even lower so that the solver will take more iterations in the first time steps. Maybe I would even lower the tolerance to 1e-07 or 1e-08. According to the links I gave you above, you should use some nNonOrthogonalCorrectors, maybe 2 or 3 would do the trick, I don't know, you should try it in order to find the proper amount of correctors. Finally, the relaxationFactor for T is exaggeratedly reduced, I recomend you to try with a value of 0.9 at least, being even advisable to use 0.95 or even 1.
Thank you for your tips, they are very much appreciated! As mentioned I am new to OpenFOAM, and I still struggle with learning what every setting do.
Kockaluring is offline   Reply With Quote

Old   February 2, 2016, 17:16
Default
  #6
Senior Member
 
Join Date: Sep 2013
Posts: 353
Rep Power: 21
Bloerb will become famous soon enough
As mentioned slow convergence is due to the relaxation factor of your energy equation. Set it to 1 if possible. From my experience the relaxation factor should only be used to stop crashes. If those happen remove it later on in the simulation. Other ways to achieve faster convergence is increasing nonOrthogonalCorrectors. However the relaxationfactor does the trick more efficiently. The standard relaxation factors for pressure and velocity however should stay in place.

Always check the residuals and make sure the solver is still solving. If the number of iterations becomes zero nothing will change anymore in that region. Because you have that many use minIter 1 for h in your fvSolution file to make sure the solver iterates even if the tolerance is reached. Often the tolerance of 1e-6 is not enough to reach convergence. You could also simply lower it but this might increase your simulation time more. Convergence for heat transfer calculations should always be checked via temperature and heat flux values. Use the heatFlux utility and compare the fluxes between regions. They should be nearly identical.

In addition if you want to speed up transient simulations and your flow pattern does not change use the frozenFlow option. This drastically reduces the computation time for chtMultiRegionFoam. I think this switch was implemented in V2.4.0. And can be activated in fvSolution.
Bloerb is offline   Reply With Quote

Old   February 3, 2016, 05:32
Default
  #7
New Member
 
Join Date: Sep 2015
Posts: 4
Rep Power: 11
Kockaluring is on a distinguished road
Thank you zfaraday and Bloerb for your help.

Quote:
Originally Posted by Bloerb View Post
Use the heatFlux utility and compare the fluxes between regions. They should be nearly identical.
How do I utilize this? Tried to google it but I don't understand.

Additionally, is there an way to briefly explain what the relTol and nNonOrthogonalCorrectors options acctually do? Why does changing them increase the convergence speed?

Also, to efficient monitor Temperatures I've been trying to use probes, but I can not get them to work. Do you know any "guide" or similar where it is explained how I can implement probes?
Kockaluring is offline   Reply With Quote

Old   February 3, 2016, 15:03
Default
  #8
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 22
zfaraday will become famous soon enough
Hi Kockaluring,

Quote:
Originally Posted by Kockaluring View Post
Thank you zfaraday and Bloerb for your help.

How do I utilize this? Tried to google it but I don't understand.
First of all, the utility real name is "wallHeatFlux". In order to find a brief description of how a utility works, find its own code and check it out! Type the following command in the terminal in order to find the directory where the code is located and open the "*.C" file contained in it
Code:
find $FOAM_APP -iname "wallHeatFlux"
If you want to know how it is used you can visit my site and see the tutorial case where I use it.

Quote:
Originally Posted by Kockaluring View Post
Additionally, is there an way to briefly explain what the relTol and nNonOrthogonalCorrectors options acctually do? Why does changing them increase the convergence speed?
As for these questions, the User Guide is your friend! Check the following link!
fvSolution

Quote:
Originally Posted by Kockaluring View Post
Also, to efficient monitor Temperatures I've been trying to use probes, but I can not get them to work. Do you know any "guide" or similar where it is explained how I can implement probes?
A quick way to understand how a utility works is to find a tutorial where it is used and study it as thorough as you can. For instance with this command
Code:
find $FOAM_TUTORIALS -type f -name controlDict | xargs grep -l "probes" | xargs gedit&
you will open all "controlDict" files that contain a "probes" function object defined in it within the "tutorials" directory. Choose the tutorial that you like (or hate) the most, run it and see what happens!

Hope it helps.

Best regards,
Alex
stingph likes this.
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Reply

Tags
conjugate heat transfer, convergence issues, openfoam

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
Quenching simulation : how to set up a conjugate heat transfer between solid&liquid Rockda FLUENT 24 August 30, 2016 07:33
Problem in setting Boundary Condition Madhatter92 CFX 12 January 12, 2016 05:39
Slow heat transfer in solid regions (chtMultiRegionSimpleFoam) SvenH OpenFOAM Running, Solving & CFD 2 July 23, 2014 19:05
Enforce bounds error with heat loss boundary condition at solid walls Chander CFX 2 May 1, 2012 21:11
Conjugate Heat Transfer between fluid and solid Li Yang Main CFD Forum 8 March 27, 2004 12:05


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