|
[Sponsors] |
June 24, 2010, 14:23 |
|
#101 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
Hi all,
I have a question related to the "usage" of the modified solver (see link provided by madalena ): I do not understand why we need an entry: Code:
gradient uniform 0; So if I have correct understood one has to replace: Code:
FLUID_BOTTOM { type solidWallHeatFluxTemperature; K K; q uniform 25e04; // [W m⁻2] value uniform 293; // initial Temp [K] } FLUID_BOTTOM { type solidWallHeatFluxTemperature; K K; q uniform 25e04; // [W m⁻2] value uniform 293; // initial Temp [K] gradient uniform 0; } where FLUID_BOTTOM is the name of the patch where i set the heat flux. Is that entry relatedt to the heat flux or to the temperature? However the simulation start but the time step il of the order of 1e-9! Someone has an idea how to increase it without compromiss stability ? I have already set the maxCourantNumber = 0.5 instead of 0.3! In the end I'm interested in the stationary solution... Many thanks Michea PS: Maddalena I attach the boundary conditions of my case, maybe can help you to understand where the interfaces are and where I have set the heat flux. You can maybe understand my geometry using the pictures I have attached in previous posts... |
|
June 25, 2010, 03:35 |
chtMultiRegionSimpleFoam
|
#102 |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Hi Michea,
unfortunately my experience with cht is really really small: I have been using it for two weeks only ! In any case, I will look at them... If you are interested in the stationary results, maybe you can decide to switch to chtMultiRegionSimpleFoam: it is a new solver of OF1.6.x and it is the steady version of chtMultiRegionFoam! Cheers, mad |
|
June 25, 2010, 04:07 |
|
#103 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
Hi Maddalena,
I have attach the my boundary conditions to help you to understand what you have ask above (heat flux combined with the interface), in any case if you find an error or you can help me, it would be fantastic! In any case, many thanks for the hints about chtMultiRegionSimpleFoam, where have you found this solver? I didn't know it! Super, thank you There is a tutorial case related to this ? It works exactly like chtMultiRegionFoam ? I have only to change in fvSchemes: Code:
ddtSchemes { default Euler; } Code:
ddtSchemes { default steadyState; } Many thanks Best Regards Michea Last edited by mik; June 25, 2010 at 09:09. |
|
June 25, 2010, 05:24 |
|
#104 | |||
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Quote:
In regards your BC, have you seen this thread? http://www.cfd-online.com/Forums/ope...implefoam.html Maybe you will get some ideas as well... Quote:
Quote:
Let me know how it goes... cheers, mad |
||||
June 25, 2010, 13:52 |
|
#105 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
Hi Maddalena,
can you please attach the tutorial case for the chtMultiRegionSimpleFoam to a post ? Because i am interested in the system folder. Many thanks Regards Michea |
|
June 25, 2010, 17:10 |
|
#106 |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Hi Michea,
I will do it on monday: I have OF installed on my pc at work. Have a nice weekend! cheers, mad |
|
June 26, 2010, 13:09 |
|
#107 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
Hi Pawel, hi all,
an explanation of my case is attached to the nexts post, I hope is enough to understand my case ans many thanks for the help! There is a file named "explanation" to read! Cheers Michea PS: the simulation starts and runs (since the endTime) the problem is that results are not reliable and it runs with a deltaT of 1e-9!!! Not reliable because the hotter zone is the one of the the most distant zones of the cylinder and other things... To reach endTime (1e-3) I need a cluster using 32 processors for many hours! And the problem is that theoretically I am interested at a steadyState solution But this problem is theoretically easier to solve using the solver introduced by Maddalena Last edited by mik; June 26, 2010 at 13:15. Reason: The tar was to big ... |
|
June 26, 2010, 13:13 |
|
#108 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
I can not attach the tar because it is to "big" I attach the single files.
Cheers Michea |
|
June 26, 2010, 13:17 |
|
#109 |
Member
Michea Ferrari
Join Date: Mar 2010
Location: Switzerland
Posts: 30
Rep Power: 16 |
And finally...
|
|
June 26, 2010, 13:25 |
|
#110 | |
Senior Member
Pawel Sosnowski
Join Date: Mar 2009
Location: Munich, Germany
Posts: 105
Rep Power: 18 |
Quote:
It would greatly speed up your work if you would simplify the geometry to 2D. In the end, I believe that would be sufficient for the problem you are dealing with. Best, Pawel |
||
June 28, 2010, 06:29 |
|
#111 | |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Quote:
here it is! there is also a chtMultiRegionSimpleFoam tutorial (I guess the same) on the brand new OF 1.7 version. enjoy, mad |
||
July 6, 2010, 12:22 |
|
#112 | |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Quote:
do you mean that, if the mesh is too fine, the simulation is not able to capture the heat transfer? Or only that it will take longer to reach steady state? I am looking for information on how to generate a good mesh for cht simulations, do you have some good references on that? The books I am used to look up give hints only for standard aerodynamic simulations and not on cht... cheers mad |
||
July 6, 2010, 13:04 |
|
#113 |
Senior Member
Pawel Sosnowski
Join Date: Mar 2009
Location: Munich, Germany
Posts: 105
Rep Power: 18 |
I am just pointing that the time scale has to match the length scale of the problem.
Simple example: you have a iron rod with 10cm length and want to see the evolution in time of temperature of this rod supposing you heat up one end. It seems obvious that you will make measurements with interval around a second. Choosing an interval of one hour would be simply pointless. Getting back to our mesh problem. Consider that (in veeeery general approach) one can think of two points of a mesh as "ends" of a 1D rod with some thermal diffusivity coeff. In the end, if you want to have a good working time step, do the following: 1) find the smallest cell in the mesh 2) check what is the distance between its centre and its boundary, call it Lm 3) write down thermal diffusivity coeff K (in m^2/s) 4) calc the MAX time step that you can use for your problem: dTime = Lm^2/K 5) round it down to a nice value (if you got dTime = 0.04645 set dTime = 0.04 or even 0.01) One remark- this is just thermal time scale. At the same time one has to consider advective time scales, and always choose the smallest obtained time step. The worst part is- for sure you will get very small values of dTime... And the only way around is to change K or Lm. Sorry Hope it helps you a bit. Best, Pawel ps The reasoning I presented is very rough and basic. I am sure that any book of computational FD which has a heat transfer chapter will cover this subject more precisely. |
|
July 7, 2010, 05:04 |
|
#114 |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Thanks for your fast and clear answer, Pawel!
However... with the 1.6.x modification pointed out here, there should be no need of fix the time step depending on thermal diffusivity. Indeed, I can choose the maxDi as the maxDi of the region materials, and OF should adjust the time step accordingly. But what about the mesh size? Is there any relation between the solid material properties and the grid size? cheers mad Last edited by maddalena; July 7, 2010 at 05:46. Reason: wrong link |
|
July 7, 2010, 06:03 |
|
#115 | ||
Senior Member
Pawel Sosnowski
Join Date: Mar 2009
Location: Munich, Germany
Posts: 105
Rep Power: 18 |
Hello Maddalena,
Quote:
If you are interested only in stationary solution, you do not have to worry much about thermal diffusive time scale- it will simply take longer (but it may crash). But! If you want to have a transient solution- mark my words- you need to set the time step with regard to thermal diffusivity and mesh size. Quote:
Once again the time step. Lets think of 3 points on a line, lets say x=0, x=1, x=2. We know that that the material's diffusivity of some property is 2m^2/s. Let the source of disturbance be at point x=0. If you set the time step to be 1s, then, after this second, the property should diffuse up to the point x=2. But x=0 is only connected with x=1, so point x=2 does not "feel" the change from point x=0. In the end, amount of property that should go to x=2 from x=0 is lost! To have proper results, the maximum time step allowed in this system is 0.5s. Someone may write codes that consider "further neighbours" of a cell, but here we use standard methods, and consider only closest neighbours. In that case, there is no way around- you have to corelate time step, smallest mesh size and diffusivity. Best, Pawel |
|||
July 7, 2010, 07:10 |
|
#116 | ||
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Hi Pawel,
Quote:
Code:
while (runTime.run()) { #include "readTimeControls.H" #include "readSolidTimeControls.H" #include "readPIMPLEControls.H" #include "compressibleMultiRegionCourantNo.H" #include "solidRegionDiffusionNo.H" #include "setMultiRegionDeltaT.H" runTime++; Info<< "Time = " << runTime.timeName() << nl << endl; Code:
runTime.setDeltaT ( min ( min(deltaTFluid, maxDeltaTSolid)*runTime.deltaT().value(), maxDeltaT ) ); So, since the time step depends on both the solid (limited by the maxDi) and the fluid (limited by the maxCo), and usually maxDi << maxCo, the time step size depends on solid mainly. So that's why I am looking for some kind of relations that help to fix the mesh size depending on solid properties... Quote:
mad |
|||
July 7, 2010, 08:29 |
|
#117 | ||
Senior Member
Pawel Sosnowski
Join Date: Mar 2009
Location: Munich, Germany
Posts: 105
Rep Power: 18 |
Hello Maddalena,
Quote:
Quote:
I also had a problem with acquiring steady state, but I could not change the mesh. What I did was the following: (1) I run the simulation only for fluid regions using some laminar solver (like icoFoam). (2) turn off the velocity and pressure calculation in chtMRFoam and calculate only the temperature (using acquired laminar velocity field). (3) When you arrive to steady state of (2), turn on the velocity calculations in chtMRFoam and run the simulation for some time (until velocity field gets to some stable position). (4) if you "like" the velocity enough, you can speed up the calculations by turning off the velocity once again. It is the velocity and pressure calculations that mostly cause the simulation to run so slow. If you use the "cheat" above, you will not have to solve hard velocity-temperature-pressure systems until step 3. This will save you a lot of computational time during "transient" state of the simulation. Hope it helps you a bit, Pawel |
|||
July 7, 2010, 09:29 |
|
#118 | |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Hi Pawel,
Quote:
I need to know if there is a bug or something wrong on the new 1.6.x setInitialMultiRegionDeltaT.C: it seems that you are not allowed to run a simulation with a uniform (0 0 0) velocity, while this would be really interesting for flows with buoyancy. What I would like to ask you is to set U as Code:
internalField uniform (0 0 0); Code:
minX { type fixedValue; value uniform ( 0 0 0 ); } Thank you! What I suggested is really necessary in a simulation where the temperature is not know a priori and the system is heated only by volume heat generation... One more question concerning the fluid region. In a standard aerodynamic calculation not involving heat transfer, I am used to place the outer boundary as far as possible to not affect the inlet value of simulation. However, when starting to use cht, I noticed that the internalField temperature starts to decrease when increasing the flow velocity due only to buoyancy. That is true if I place the outer boundary far away from the warm region and fix a zeroGradient or inletOutlet or fixedValue BC for temperature. But it does not happen for a boundary that is closer. Have you noticed something similar? Suggestions about that? Thank you, mad |
||
July 7, 2010, 10:12 |
|
#119 | |
Senior Member
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 23 |
Quote:
|
||
July 7, 2010, 10:18 |
|
#120 |
Senior Member
Pawel Sosnowski
Join Date: Mar 2009
Location: Munich, Germany
Posts: 105
Rep Power: 18 |
I set things up just as you asked. Zero velocities everywhere. The simulation runs without any problems.
In OF-1.6 before main loop there is: Code:
if (fluidRegions.size()) { #include "compressibleMultiRegionCourantNo.H" #include "setInitialDeltaT.H" } http://foam.sourceforge.net/doc/Doxy...8H_source.html I believe the if() part (CoNum > SMALL) prevents the crash. Regarding the second question. We are dealing with a specific system here. We can characterize it with Rayleigh number (Ra). For small enough values of Ra, the flow acts as "solid conductor". If Ra exceeds a critical value- we have instability: heat convection. There are some specific features of this kind of phenomena: - we can find specific conductive boundary layer near the heated (cooled) wall - all temperature drop (or increase) happens inside this boundary region - temperature inside the convective cell is almost constant, equal to average of the boundaries - depending on stability of the system one can observe hot or cold "plumes" ripped off from boundary layer traveling in the cell. Good description can be found in the book of P.K. Kundu ("Fluid Mechanics") chapter 11, section 3. That is why I believe if you have a temperature drop due to the flow, it is a result of this "averaging" effect, since probably you have an unstable system. Best, Pawel |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
---------Tutorial help | mech | FLUENT | 4 | May 16, 2007 03:43 |
tutorial 6 in Fluent 6.2 tutorial and Mesh | pilli4u | FLUENT | 2 | April 2, 2007 06:09 |
3D Tutorial | MJ | FLUENT | 0 | January 16, 2007 09:45 |
tutorial | masood yooceframandi | FLUENT | 1 | January 25, 2005 13:28 |
tutorial | adil | FLUENT | 0 | March 8, 2004 04:48 |