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

Trying to validate fvDOM and view factors methods

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

Like Tree4Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 12, 2015, 05:03
Default
  #21
New Member
 
RobinZ
Join Date: Apr 2014
Posts: 19
Rep Power: 11
RobinZ is on a distinguished road
Hi Alex,

did you ever tried to change the number of rays for your fvDOM calculation?
In your posted radiationProperties i can see your nPhi is 3 and your nTheta is 5, that's ok but that will not give you a uniformly field of rays.
nPhi are the number of rays over 90 azimuthal
nTheta over 180 polar
So if you want to solve the field equidistant it is more useful to take 2*nPhi for the nTheta value.
When you rise the number of rays the failure you make by simplify the radiation field with a definite number of rays will decrease.

The other question is: why do you have defined G?
The G BC is only used in the P1 model.
IDefault is for fvDOM an Qr for viewFactor model.
The generated fields differ to that.

best regards

Robin
RobinZ is offline   Reply With Quote

Old   June 12, 2015, 09:11
Default
  #22
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Quote:
Originally Posted by RobinZ View Post
Hi Alex,

did you ever tried to change the number of rays for your fvDOM calculation?
In your posted radiationProperties i can see your nPhi is 3 and your nTheta is 5, that's ok but that will not give you a uniformly field of rays.
nPhi are the number of rays over 90 azimuthal
nTheta over 180 polar
So if you want to solve the field equidistant it is more useful to take 2*nPhi for the nTheta value.
When you rise the number of rays the failure you make by simplify the radiation field with a definite number of rays will decrease.

The other question is: why do you have defined G?
The G BC is only used in the P1 model.
IDefault is for fvDOM an Qr for viewFactor model.
The generated fields differ to that.

best regards

Robin
Hi Robin,

Thanks for your insight and your advices.

Some days ago I found that chosing an odd number of nTheta provokes an unexpected behavior in the radiation calculation. See a deep analysis here and feel free to respond if you have some knowledge on the matter.

With regard to the definition of G in the fvDOM, I didn't know it was not necessary to define it! I have always done it because I started my fvDOM calculations with the "hotRadiationRoomFvDOM" tutorial under "tutorials/heatTransfer/buoyantSimpleFoam" and, if you take a look into that case, you will see that G is also specified... Besides that, if you execute the following command in the terminal:
Code:
find $FOAM_TUTORIALS -iname "rad*prop*" | xargs grep -il fvdom
you will see all the tutorials that use fvDOM in the radiation calculation. You can check that all tutorials shown have G defined but only one ("flameSpreadWaterSuppressionPanel") that it doesn't. However, after I read your advise about the unnecessity to define G when using fvDOM, I immediately ran a simple test case (the same that is uploaded in the link above) without G and the results were exactly the same that I obtained with G. Thus, it makes no difference to define G or not...

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   June 12, 2015, 10:07
Default
  #23
New Member
 
RobinZ
Join Date: Apr 2014
Posts: 19
Rep Power: 11
RobinZ is on a distinguished road
First of all it's an interesting behaviour of the fvDOM model you have in your Case.
I never tried to use a odd number for nTheta. I always tried to have the same angles of polar and azimuthal between the rays, so nTheta=2*nPhi like i've mentioned before.

Then to the G BC topic. I know it is often specified in the tutorials, but when you look in the code of viewFactor.C or fvDOM.C you will see that G don't have to be specified.
You already seen that by running your Case without the G BC.

To your Case how fine is your grid?
I've seen a paper in which is mentioned, that the grid spacing have an enourmous influence on the quality of the radiation results. I've attached a .png from the paper.
So i think you can make your results better by increasing the number of rays and decreasing your grid spacing.

Finally i have an own question on the viewFactor model.
In the radiationProperties you can specify the viewFactorCoeffs.
I don't find the influence(if there is one) of constantEmissivity. I run some testcases and i see no difference if i set it false or true.
I already checked the source code of viewFactor.C and .H but for now in which i can see there is no difference for calculating the radiation in the end.

Best regards

Robin
Attached Images
File Type: jpg PLagge_fvDOM.jpg (45.0 KB, 78 views)
RobinZ is offline   Reply With Quote

Old   June 12, 2015, 10:35
Default
  #24
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Thanks for the information about the grid spacing. Is that paper written in german? If the answer is no, can you please attach it here?

Regarding the question related to the view factors I can't help you much for now...
__________________
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   June 12, 2015, 10:45
Default
  #25
New Member
 
RobinZ
Join Date: Apr 2014
Posts: 19
Rep Power: 11
RobinZ is on a distinguished road
The answer is yes it is written in german.
That's why i did not posted it in my last reply. Sorry.
I will open a new thread for my question on the viewFactor model.
Hopefully someone else have more experience with this model and is able to answer my question.
Good luck for your case, perhaps my annotations will help you.

best regards

Robin
RobinZ is offline   Reply With Quote

Old   May 23, 2018, 09:46
Default
  #26
Member
 
chengan.wang
Join Date: Jan 2016
Location: china
Posts: 47
Rep Power: 9
wangchengan2003 is on a distinguished road
Send a message via Skype™ to wangchengan2003
Dear olivier,


If you chould share your validation case of S2S and DO on this website?


Best regards,


Chengan
wangchengan2003 is offline   Reply With Quote

Old   July 24, 2018, 15:45
Default
  #27
Senior Member
 
Zeppo's Avatar
 
Sergei
Join Date: Dec 2009
Posts: 260
Rep Power: 20
Zeppo will become famous soon enough
Quote:
Originally Posted by RobinZ View Post
Finally i have an own question on the viewFactor model.
In the radiationProperties you can specify the viewFactorCoeffs.
I don't find the influence(if there is one) of constantEmissivity. I run some testcases and i see no difference if i set it false or true.
I already checked the source code of viewFactor.C and .H but for now in which i can see there is no difference for calculating the radiation in the end.
ViewFactor radiation solves linear system Ax=b where normally (static geometry and constant emissivity) only b can change over iterations. So that you can decompose A into LU only once at the very beginning and solve the system with back substitution at every iteration. If A is not constant you have to do LU decomposition at every iteration which is not good performancewise. You might have not seen any difference between on and off because your simulation model was rather small and LU decomposition didn't affect performance that much.
nick54 likes this.
Zeppo is offline   Reply With Quote

Old   June 8, 2021, 08:26
Default
  #28
Member
 
JuanMi
Join Date: Nov 2017
Posts: 39
Rep Power: 8
keitaro7_14 is on a distinguished road
Hello,

I had a similar problem and found the solution recently. I am sharing it in this thread so that people can check it out.

Both the viewFactor model and the fvDOM model create fields named G and qr. You have to be very aware of this, as the fvDOM, in its initial conditions, does not require qr, but viewFactors does.

In case of including qr in the initial conditions (folder 0) for the fvDOM case, the calculations will be WRONG (likely).

That happened to me. I copied the case with viewFactors to the fvDOM case, adding only the boundary conditions corresponding to IDefault. By not removing qr. In this way, boundary conditions for qr were being imposed that prevented fvDOM from reaching the good result.

Also watch out for G.
altinel likes this.
keitaro7_14 is offline   Reply With Quote

Old   August 25, 2021, 02:48
Default
  #29
Member
 
Bushra Rasheed
Join Date: Dec 2020
Posts: 97
Rep Power: 4
B_R_Khan is on a distinguished road
Hi! I am trying to use fvDOM to simulate UV radiations. Can anyone guide if we can define wavelength band in fvDOM? I know there is nLambda in code of fvDOM but I don't know how do we define it in radiationProperties in constant folder.

Thanks!
B_R_Khan is offline   Reply With Quote

Old   August 25, 2021, 03:46
Default
  #30
Member
 
JuanMi
Join Date: Nov 2017
Posts: 39
Rep Power: 8
keitaro7_14 is on a distinguished road
Take a look to :

https://github.com/OpenFOAM/OpenFOAM-9/blob/master/src/radiationModels/absorptionEmissionModels/

If it is not suitable for you, try to implement a new absorptionEmissionModel to be in the range of UV.

Another option is modifying fvDOM. Create a new emissor different from BlackBody emission https://github.com/OpenFOAM/OpenFOAM...ckBodyEmission
keitaro7_14 is offline   Reply With Quote

Old   August 25, 2021, 03:57
Default
  #31
Member
 
JuanMi
Join Date: Nov 2017
Posts: 39
Rep Power: 8
keitaro7_14 is on a distinguished road
Quote:
Originally Posted by B_R_Khan View Post
Hi! I am trying to use fvDOM to simulate UV radiations. Can anyone guide if we can define wavelength band in fvDOM? I know there is nLambda in code of fvDOM but I don't know how do we define it in radiationProperties in constant folder.

Thanks!
I am not an expert, but I would try to modify fvDOM creating a new emissor different from BlackBodyemission. In this way you can adjust the emission band to the UV.
https://github.com/OpenFOAM/OpenFOAM...ckBodyEmission

Another option would be modifying the emissivity. Take a look to:
https://github.com/OpenFOAM/OpenFOAM...EmissionModels
keitaro7_14 is offline   Reply With Quote

Old   August 25, 2021, 05:16
Default
  #32
Member
 
Bushra Rasheed
Join Date: Dec 2020
Posts: 97
Rep Power: 4
B_R_Khan is on a distinguished road
Quote:
Originally Posted by keitaro7_14 View Post
I am not an expert, but I would try to modify fvDOM creating a new emissor different from BlackBodyemission. In this way you can adjust the emission band to the UV.
https://github.com/OpenFOAM/OpenFOAM...ckBodyEmission

Another option would be modifying the emissivity. Take a look to:
https://github.com/OpenFOAM/OpenFOAM...EmissionModels
Thanks for quick reply!

There will not be any obstacle so I can turn off absorption. I just need a boundary emitting UV rays. Does that still need modifying blackBodyEmissions?
B_R_Khan is offline   Reply With Quote

Old   August 25, 2021, 06:07
Default
  #33
Member
 
JuanMi
Join Date: Nov 2017
Posts: 39
Rep Power: 8
keitaro7_14 is on a distinguished road
Quote:
Originally Posted by B_R_Khan View Post
Thanks for quick reply!

There will not be any obstacle so I can turn off absorption. I just need a boundary emitting UV rays. Does that still need modifying blackBodyEmissions?
The correct way would be to modify the emissivity to be temperature and wavelength dependent. The issue is that it is not clear to me how to do it. I should study the code more deeply.

I am practically certain that the correct way is creating a new BC for your emitting surface, similar to https://github.com/OpenFOAM/OpenFOAM...usiveRadiation

Obviously, your surface could be diffusive but not grey and emissivity depends on temperature and wavelength.

For that reason I proposed you the "hack" of changing the blackBodyEmission instead of creating a new BC. It's not at all the ideal way, but my mind is not capable of anything else at the moment. I think it could work.
B_R_Khan likes this.
keitaro7_14 is offline   Reply With Quote

Old   August 25, 2021, 08:58
Default
  #34
Member
 
Bushra Rasheed
Join Date: Dec 2020
Posts: 97
Rep Power: 4
B_R_Khan is on a distinguished road
Quote:
Originally Posted by keitaro7_14 View Post
The correct way would be to modify the emissivity to be temperature and wavelength dependent. The issue is that it is not clear to me how to do it. I should study the code more deeply.

I am practically certain that the correct way is creating a new BC for your emitting surface, similar to https://github.com/OpenFOAM/OpenFOAM...usiveRadiation

Obviously, your surface could be diffusive but not grey and emissivity depends on temperature and wavelength.

For that reason I proposed you the "hack" of changing the blackBodyEmission instead of creating a new BC. It's not at all the ideal way, but my mind is not capable of anything else at the moment. I think it could work.
Thank You for your valuable insights. One thing more that I need to ask, do you know which tutorial utilizes wideBand model?
Also, fvDOM source code mentions nLambda but it is not asked from user or calculated anywhere else in the code. Do you know how does openfoam calculate nLmabda in fvDOM?
B_R_Khan is offline   Reply With Quote

Reply

Tags
chtmultiregion, fvdom, radiation, thermal baffles, viewfactor

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



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