|
[Sponsors] |
Adding Radiations in chtMultiRegionSimpleFoam |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
August 1, 2019, 11:02 |
Adding Radiations in chtMultiRegionSimpleFoam
|
#1 |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Hello Everyone,
I am using chtMultiRegionSimpleFoam solver. I want to add radiation in it. Do I need to modify the source code of the solver for it, or should I just add the radiationProperties into my case/region_name/ directory and apply the appropriate radiationModel? Any help would be appreciated. Thank you |
|
August 1, 2019, 11:10 |
|
#2 |
Senior Member
Join Date: Sep 2013
Posts: 353
Rep Power: 21 |
You need to add the radiationProperties file to your regions and add the corresponding boundary conditions to it.
|
|
August 5, 2019, 06:16 |
|
#3 |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
||
August 5, 2019, 11:19 |
|
#4 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
As I am new to Radiation heat transfer in Openfoam. My geometry consists of two regions (heater and the bigSolid) As you can see in the figure attached, the small green solid is heater with a temperature of 500K, which is inside the blue solid at a temperature of 300K. Now, I want to implement heat transfer through radiation from heater to the big blue solid. Can you please suggest me which radiation model would be suitable for this case? Your help would be highly appreciated. Thank you |
||
August 5, 2019, 14:35 |
|
#5 |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Hello Raza Javed!
The best modell for your case is S2S (Surface to surface) or viewfactor model. It needs huge memory to calculate the viewfactors, later on the calculation time is not so huge... For my poor knowledge the viewfactor method still have problems calculation radiation in OF! At least it was still the state in OF5.0! I did not try to use it in newer versions. Maybe the bug has been removed or fixed. fvDOM (finite volume discrate ordinats method) solves the whole radiation heat transfer equation, deliver the exacter resaults cause no simplification on the equation made... Anyway the calculation time is hier signifintly higher... If you have a good and fast cluster then by using fvDOM you make nothing wrong. Other methods are DTRM that is suppuse diffuse surfaces. That means no spectluar "reflection at the surface is possible". And P1 or Russeland are not sutable for your case and are more used in fluids with high emissivity. Those two methods are made for "optically thick" Regions. Monte Carlo is also a radiation calculation method. I am not the best one talk about this method and I dont think OF supports this method. I could be wrong. CFX does! The best source to understand radiation and its modells is the user/theory guide of FLUENT! Also if you dont use FLUENT, you can undersatnd much from the user/theory guide. If there are any questions please ask. Regards Peter Links: - Chapter 5 in: https://upcommons.upc.edu/bitstream/...=2&isAllowed=y - https://en.wikipedia.org/wiki/Discrete_ordinates_method - http://sfera.sollab.eu/downloads/Sch...OM_FVM_MCM.pdf - https://nptel.ac.in/courses/112107256/24 - Difference between IDefault and G (radiation) Last edited by peterhess; August 17, 2019 at 07:10. |
|
August 5, 2019, 18:19 |
|
#6 |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Trying to execute the case using OF7.0 I recognized, that some syntax changes has been made.
I modified the case to work on OF7.0. See attached file. Regards Peter Last edited by peterhess; August 17, 2019 at 15:35. Reason: case updated! |
|
August 6, 2019, 03:11 |
|
#7 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
Thank you so much for your reply. I checked the case you sent "HeadLamp_fvDOM". Thank you so much for that. It cleared some of my doubts. but I have some questions in that: 1. In this case, there is radiationProperties in every region (ABS, FLUID, GEH, LED), does it mean that we are checking radiation on each region? 2. OpaqueSolid is also a RadiationModel? 3. In my case, my Green small box is at higher temperature, and the blue big box is at lower temperature, so it means that there is a heat transfer from the green box to blue box. So do I need to put radiationProperties in both regions? Thank you |
||
August 6, 2019, 04:54 |
|
#8 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
One more question here I have is that, Do I need to modify fvSolution file of each region where I am putting viewFactor radiation model? For example, I am putting G, IDefault and viewFactor into my '0' directory, Do I need to put relaxation factors for these parameters also? Thank you |
||
August 6, 2019, 10:19 |
|
#9 | ||
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Quote:
The solver need to know, if there is radiation or not in every region and if it is activated, which proberties are defined. To answer this question replace OpaqueSolid in ABS with BANANA You will get this failer: --> FOAM FATAL ERROR: Unknown radiationModel type BANANA Valid radiationModel types are: 5 ( P1 fvDOM none opaqueSolid viewFactor ) From function static Foam::autoPtr<Foam::radiationModel> Foam::radiationModel::New(const volScalarField&) in file radiationModels/radiationModel/radiationModelNew.C at line 64. FOAM exiting Yes! opaqueSolid is a RadiationModel Quote:
Yes! If you have opaqueSolid Modell, then the inputs are not affecting the modell, i.e. you can put any proberties inside. any way the solver need to find them also if they are valueless... Regards Peter |
|||
August 6, 2019, 10:25 |
|
#10 | |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Quote:
You dont need to put any relaxationFactors at all! I belive that the simulation runs, also if there no relaxation factors (not sure about this point). Anyway you need them cause you will get at many steps during solving some divergences if you dont use them. That is why the answer of your question is yes Regards Peter PS: by the way all my tests trying running the example using viewFactor Modell where in the past unsuccessful. That why I use the fvDOM modell Last edited by peterhess; August 6, 2019 at 13:19. |
||
August 6, 2019, 14:14 |
|
#11 |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
And here is the same case using viewFactor method.
I did not test the case and the results. I can not at all say that the case works and delivers the right results. Anyway it is a good place where you could start. ----------------------------- In the past it was like this that radiationProperties file allways needed, else an error will happens when executing the simulation. Anyway it seams that this has been changed! Deleting the file does not affect the simulation in OF7.0 and the simulation is executed. Regards Peter Last edited by peterhess; August 17, 2019 at 15:37. Reason: case updated!!! |
|
August 7, 2019, 02:59 |
|
#12 |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Thank you so much for your reply.
I have some questions here: 1. In the file viewFactorsDict, how can we assign values to the entries. I randomly put 10 and 20 , but I don't know how to get those values. As you can see below my viewFactorsDict file: Code:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // writeViewFactorMatrix true; writeFacesAgglomeration true; writePatchViewFactors false; defaultFaces { nFacesInCoarsestLevel 20; featureAngle 10; } heater_to_room { nFacesInCoarsestLevel 20; featureAngle 10; } // ************************************************************************* // 2. Suppose I have an empty box, and we generate a vacuum inside that box. Then we put small heater inside this vacuum. Now we want to simulate the radiation heat transfer. Which model would be suitable in this case? Thank you |
|
August 7, 2019, 10:39 |
|
#13 | ||
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Quote:
Suppuse you have a surface with 120 cells. i.e. 120 faces. Instead of recognize every face as a sparate face, you can say: nFacesInCoarsestLevel 10; In this case the viewFactor-Generator will collect every 12 faces (120/10) as one face (or called patch). The temperature of the patch is the avarage temperature of the 12 faces included and the viewFactor is calculated and applied one time for one patch instead 12 times. For sure the 10 patches in this case are collecting faces that are bounded or neighboured to each other as a patch. If You increase to: nFacesInCoarsestLevel 120; Then every surface is one patch! As higher the number as more accurate the results. But also as more calculation time needed. By the way it is a good idea to apply renumberMesh utility before calculating the viewFactor. And now to: featureAngle 10; During viewFactor calculation every patch is emitting rays in all directions and see which target patch is recieving more. If patch-1 sends 10 rays and patch-3 recieve 6 of the 10 then the view factor between patch-1 and patch-3 is 0.6! As smaller the featureAngle as more rays will be emitted. Or as higher the resolution of the emitted rays. In this case: featureAngle 10; Means every 10 degrees emitte one ray! As smaller the value as exacter the calculation. Quote:
fvDOM actually works also, but has no reason to be used, cause you have vacuum. The advantage of fvDOM is that the heat exchange inside the fluid is also calculated. In the case of vacuum is that unnecessery. That why viewFactor model is here suitable. Regards Peter Last edited by peterhess; August 7, 2019 at 19:38. |
|||
August 8, 2019, 03:11 |
|
#14 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
Thank you so much for your reply. You cleared almost all of my doubts about simulating the radiations. Now I have one question related to vacuum generation. How can I generate the vacuum in OpenFoam? For example, If you see the attached figure, the green block is heater and I want to make the blue region as vacuum, So that I can check the radiation heat transfer in vacuum. But I don't know how to generate a vacuum in OpenFoam. Thank you |
||
August 8, 2019, 11:41 |
|
#15 |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Well it depends what you mean with vacuum...
------------------------- - If you mean unter atmospharic pressure, then you just need to change: p & p_rgh in system/"region"/changeDictionary to the lower value you need (I am talking here about the last simulation I uploaded!) ------------------------- - If you mean absolutly vacuum, i.e. just the radiation heat exchange equation is to be solve, then you need to do something more complexer... The problem here ist that you are not able to reduce the pressure (p & p_rgh) to zero, else you will get an errer during solving! The solution in this case is to write you own solver, compile it and use it! OF does not offer just stand alone radiation solver! You need to use the solver you already use chtM... and modefy it to just solve the radiation by deactivating other parameters solving (u,v,w,p,rho). Hier you need realy have good experience in OF to know what to do! An example how to do it (or road map) could be found here: https://openfoamwiki.net/index.php/H...ure_to_icoFoam Following the steps in the tutorial showing the steps needed to modefy the solver. ------------------------- Alternativly, you could assign very low values for p & p_rgh (100 instead 101300) in system/region/changeDictionary. AND reduce the gravity to very low value (lets say 0.1). The FLUID density (in this case air as perfect gas) is about 0.001. That is realy vacuum and the convection effect in FLUID is realy small and neglectable. Like that you still use the whole chtM... but the velocity and pressure, values and effects, are realy neglegtible. ------------------------- Anyway, with 500K at the heater in your case, the dominant heat exchange is the radiation and not the convection... Regard Peter Last edited by peterhess; August 8, 2019 at 21:06. |
|
August 9, 2019, 05:51 |
|
#16 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
Thank you so much peter, you really helped alot. I will try these things, and will ask you if I have other questions.. |
||
August 9, 2019, 06:15 |
|
#17 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
One doubt here: I am using OpenFoam 4.1 So tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation is exactly the case that I need. But one thing is that, in this tutorial it is also using viewFactor radiiation model. There is a heater in the middle and on the top and bottom, there is air. and of course the heat will radiate from the heater to the air. But, in this tutorial, If you see the radiationProperties with viewFactor Radiation model is in the regions (topair and bottomair), and the radiationProperties in the heater has the model opaqueObject. 1. Is this because Opaque Radiation can not be used for fluid(air)? 2. I copied the complete tutorial, I also have viewFactorsDict in my constant/air/ directory, but when I RUN the solver I don't get any viewFactors file into the 0/air directory, but in the tutorial he is getting. I don't know why it is like this? 3. He is also using topoSet in this case, but I don't know do I exactly need it or NOT? Now, my case is simple, the green block is heater, and the blue block is simple air. Thank you |
||
August 9, 2019, 13:15 |
|
#18 | |||
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
Quote:
I believe that this radiation model is usable/applicable also in the air (or fluids in general). Like that you deactivate the radiation calculation inside the fluid region but not outside! You can test it in the example I uploaded (viewFactor example I uploaded...) Opaque means that the radiation INSIDE the region is not calculate, but to the surrounding it is activated! In the tutorial you mentioned the surfaces of the heater are "seeing" each other. Using the opaque for heater means that the surfaces of the heater that are seeing each other does not exchange heat via radiation. i.e. the heater is not transparent for radiation. If the heater made from a transparent media (glass), then the surfaces of the heater could exchange heat radiation under themselves... In this case "glass heater" the radiation model should be viewFactor instead of opaque. That is why no viewFactor is calculated for opaque region. In the tutorial for heater or left/right solids... And just calculated for air! Quote:
By the way take please the boundaries from my example and not from the tutorial. I believe they are not right in the tutorial. Quote:
In the tutorial you mentioned the whole mesh is generated via blockMesh as one mesh. And then the topoSet defines which part in the mesh belongs to which region. Before separating the mesh via: spliteMesh Else the spliteMesh will not know which part belongs to which region! Here you could find some useful information about topoSet http://openfoamwiki.net/index.php/TopoSet Regards Peter Last edited by peterhess; August 9, 2019 at 15:15. |
||||
August 9, 2019, 15:14 |
|
#19 |
Senior Member
Peter Hess
Join Date: Apr 2011
Location: Austria
Posts: 250
Rep Power: 17 |
I applied opaqueSolid to fluid region in my example and can confirm that this model is applicable for fluid.
|
|
August 12, 2019, 06:00 |
|
#20 | |
Senior Member
Raza Javed
Join Date: Apr 2019
Location: Germany
Posts: 183
Rep Power: 7 |
Quote:
Hi. I am attaching the dropbox link for my case. I would ask you to kindly have a look once to check either I set the case correctly or not? https://www.dropbox.com/sh/it2bqe2sv...8i5qrC06a?dl=0 And one question here, After putting radiation model, How can we be sure that the heat is transferring just through radiation, not by convection or conduction? Thank you |
||
Tags |
chtmulitregionfoam, chtmultiregionsimpefoam, openfoam, radiation |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Incorporating pyrolysis Model in chtMultiRegionFoam | Archana V | OpenFOAM Programming & Development | 31 | April 2, 2022 02:11 |
multiRegionHeater error | ordinary | OpenFOAM Running, Solving & CFD | 2 | June 9, 2020 17:43 |
chtMultiRegionSimpleFoam: crash on parallel run | student666 | OpenFOAM Running, Solving & CFD | 3 | April 20, 2017 11:05 |
conjugateHeatFoam + interFoam | farhagim | OpenFOAM Programming & Development | 15 | July 19, 2016 07:55 |
chtMultiRegionSimpleFoam | samiam1000 | OpenFOAM Running, Solving & CFD | 39 | March 31, 2016 08:43 |