
[Sponsors] 
[laserConvBC] Boundary condition with convection, heat source and radiation 

LinkBack  Thread Tools  Search this Thread  Display Modes 
February 15, 2017, 08:16 
Boundary condition with convection, heat source and radiation

#1 
Super Moderator

Dear everybody,
last year I build a new BC named laserConvectionBC (https://bitbucket.org/shorty/laserconvectionbc). Here we can model a heat source (LASER) with additional convection. However, today I wanted to implement the radiation into the boundary condition and focused a lot of problems. Okay starting from the scratch. At the beginning we make an equilibrium of all the heat fluxes: In addition while the capital delta is the one used in FOAM. To identify all terms we get: Here the prefactor in the last term includes the emission factor + Stefan Bolzmann Constant. However, now we equilibrate all fluxes to get: which lead to: For a own mixed BC, we have to get the following equation: The quantities are identified as:
While the infront of is equal to: The quantity comes from the linearization and denotes the T field of the last iteration. It is obvious that . So the question is, how can I implement that in FOAM. I am out of ideas but my colleague will teach me (I hope so). However, I think it might be also interesting for other people. In principle I think I am not anymore able to use the mixed BC and have to make my own BC with the correction of everything ... ? Each feedback is welcomed.
__________________
Keep foaming, Tobias Holzmann Last edited by Tobi; September 19, 2017 at 05:21. 

May 31, 2017, 16:10 

#2 
Member
Tarang
Join Date: Feb 2011
Location: Delhi, India
Posts: 47
Rep Power: 12 
I have written this condition for my own CFD code (not OpenFOAM) and I did it by numerically solving the first equation and providing the value of Tf. Although I have started using OpenFOAM very recently, I will try to write it in OpenFOAM and share it here.
Thanks for the BC  Tarang 

October 2, 2017, 05:08 

#4 
Member
Ricky
Join Date: Jul 2014
Location: Germany
Posts: 78
Rep Power: 9 
Hallo Tobi and FOAMers,
Somehow even I am in need to use the convection radiation boundary condition, but unlike you I would like to use it with groovyBC. So I tried to simplify the radiation term and incorporated in the equations as follows: Radiation: where Convection: Now if I make the energy balance for all 3 modes of heat transfer I have: After isolating and dividing by I get: on further simplification I get where f is Now implementing it in OpenFOAM with groovyBC Code:
myPatch { type groovyBC; refValue uniform 933.15; refGradient uniform 0; valueFraction uniform 1; value uniform 933.15; valueExpression "T_inf"; gradientExpression "0"; fractionExpression "1.0/(1.0+k/(mag(delta())*(h_conv +h_rad)))"; variables 6 ( "k= x ;" "sig_rad=5.6e8;" "emmi=0.7;" "T_inf=933.15;" "h_conv = y ; "h_rad=sig_rad*emmi*(pow(T,2)+pow(T_inf,2))*(T+T_inf);" ) ; } 1) I am not sure if this is the right way of doing it > 2nd Opinion is always useful 2) Are there any reference case with an analytical solution for this kind of problems? 3) Were you (Tobi) able to implement your boundary condition for any of your simulations with sane results? Cheers! Ricky PS: The Idea was taken from here.
__________________
If it is easy, then something is fishy! Last edited by kera; October 2, 2017 at 11:25. 

October 2, 2017, 05:50 

#5 
Super Moderator

Hi,
actually the post is not related to the boundary condition itself (: ... I could not find any tutorial about modeling the radiation term in the way I did or you do. However, I know it is a common method to put the radiation term into the HTC because of the high nonlinearity. Your equations are correct and the modeling and implementation are correct too. Keep in mind that based on the explicit term T_f in the HTC, you should make a few loops to converge everything. That was actually the reason why I put the radiation term directly into a temperature depended HTC (by the way, nice that you hide your k and conv part using x and y :P ). Based on the fact that you derived everything yourself, I think you know what I am talking about. Again you have as explicit term in the boundary condition which makes your problem stiff.
__________________
Keep foaming, Tobias Holzmann 

October 2, 2017, 06:03 

#6 
Member
Ricky
Join Date: Jul 2014
Location: Germany
Posts: 78
Rep Power: 9 
Hallo Tobi,
The reason for posting it here, was because of the high nonlinearity term and therefore I was not sure if at all my approach is in the right direction. > Besides I was assuming that one need very small time steps (w.r.t. the grid) to see the effects, which could have been lot more easier if there were any analytical solution for such problems or perhaps a reference case. If I understand it correctly did you mean using loops at the boundary condition? Is it possible to do that using groovyBC? if yes how? I would really appreciate your help. Regards, Ricky
__________________
If it is easy, then something is fishy! 

October 2, 2017, 07:08 

#7 
Super Moderator

Hi Ricky,
actually, I made a FOAM case where I was calculating the HTC for convection. Thus, I got an temperature depended heat flux and corresponding HTC. The same I did analytically for the radiation. Actually, I added the convective and radiation heat flux and build the temperature depended HTC which I was fitting with an polynomial which is simple to use as BC. If you want to have the real problem, then you have to make outercorrections. I have no idea how much you need because of the high nonlinearity of the explicit term. A boundary loop cannot be used and is not possible in FOAM (as far as I know). Just as an hint: The face values depend on the internal field too (gradients). Thus, you have to update everything; the internalField and boundaryField. The time step itself is questionable. I agree that larger timesteps will make the problem harder to solve. I can imagine that you need underrelaxation in combination of the outerloops (PIMPLE) and residual control.
__________________
Keep foaming, Tobias Holzmann 

October 2, 2017, 10:09 

#8  
Member
Ricky
Join Date: Jul 2014
Location: Germany
Posts: 78
Rep Power: 9 
Hallo Tobi,
Thank you for your suggestions, and I will look in to it, indeed the simulation settings need to be more stiffer for such problems. I will let you know if I come up with something else or get stuck in between Quote:
Regards, Ricky
__________________
If it is easy, then something is fishy! 

October 2, 2017, 10:25 

#9 
Super Moderator

I used that approach in my Ph.D thesis. So what I did actually was:
Good luck. Tobi
__________________
Keep foaming, Tobias Holzmann 

August 3, 2020, 08:32 

#10 
Member
Neilson Whit
Join Date: Aug 2011
Posts: 72
Rep Power: 12 
Tobias, do you have an updated version of your laserBC for the new versions of openfoam?


August 3, 2020, 14:43 

#11 
Member
Tarang
Join Date: Feb 2011
Location: Delhi, India
Posts: 47
Rep Power: 12 
Hi,
I used inspiration from Tobi's boundary condition and it works in OpenFOAM6 and it should work in v7 (I suspect no major changes in of7) but it will not work in v8. Well, it is not documented as exhaustive as Tobi's, but basic documentation is there in the header file. If you need help, pls reach out to me. https://github.com/gargtarang/OpenFO...bulentHeatFlux 

August 3, 2020, 15:07 

#12 
Super Moderator

Hi, up to now I did not port it to OpenFOAM 8 as I was not aware that people are using the boundary condition, as it is very limited (only in one axis).
Furthermore, I did not programmed it in a nice way I might update it somewhen but first, there are other things to update first. I do have too much material that wants to be updated
__________________
Keep foaming, Tobias Holzmann 

August 3, 2020, 22:10 

#13  
Member
Neilson Whit
Join Date: Aug 2011
Posts: 72
Rep Power: 12 
Quote:
I am trying to use it icoReactingMultiphaseInterFoam (OF v2006). Following compilation error comes out: Code:
In file included from laserConvectionFvPatchField.H:450, from laserConvectionFvPatchFields.H:44, from laserConvectionFvPatchFields.C:43: laserConvectionFvPatchField.C: In constructor ‘Foam::laserConvectionFvPatchField<Type>::laserConvectionFvPatchField(const Foam::fvPatch&, const Foam::DimensionedField<Type, Foam::volMesh>&, const Foam::dictionary&)’: laserConvectionFvPatchField.C:346:66: error: no matching function for call to ‘Foam::List<Foam::Vector<double> >::append(Foam::ITstream&)’ 346  sourceCenters_.append(sourceDict.lookup("spotCenter"));  ^ 

August 19, 2020, 05:12 
Laser bonding two materials

#14 
New Member
Đà Nẵng
Join Date: Jun 2019
Posts: 4
Rep Power: 4 
Hi, I am using OpenFOAM to simulate laser bonding of two materials (glasses). I have already compiled laserconvectionBC of Dr. Tobi. Nevertheless, this code is applyed for one material. I do not know which solvers I enable use my case. Could you please give me advise?
Thank you so much! 

September 2, 2020, 06:04 
Problems with Decomposing

#15 
New Member
Ramon
Join Date: May 2020
Posts: 3
Rep Power: 3 
Hallo Everyone,
i have a problem with decomposing with the laser BC. When i decompose and let the Simulation solve with the following command: "mpirun np 8 icoReactingMultiphaseInterFoam parallel" it gives me the following output: "For patch Top only convection is applied, no laser source found." And it don't uses the laser source. also the source disappears by the decomposing process in the TFiles in the Processor Folders. When i let the Simulation run without decomposing the source is used and there are no Problems. The Version of OpenFoam is v1912. If somebody could help me, that would be very nice! Best regards! 

September 2, 2020, 16:26 

#16 
Super Moderator

Interesting point. I had no problems decomposing the guy during my PhD. however, things might change can you provide a "simple" test case so that I can check it?
__________________
Keep foaming, Tobias Holzmann 

September 2, 2020, 16:27 

#17  
Super Moderator

Quote:
Just for me , ... what changes do you have in the condition?
__________________
Keep foaming, Tobias Holzmann 

September 3, 2020, 05:31 

#18  
New Member
Ramon
Join Date: May 2020
Posts: 3
Rep Power: 3 
Quote:
thats the whole case yet. I think it`s not that complex. i build it up on the solidMelting2D Case. And Thanks for the quick response! 

September 22, 2020, 06:59 

#19 
New Member
Ramon
Join Date: May 2020
Posts: 3
Rep Power: 3 

September 22, 2020, 11:30 

#20 
Member
Tarang
Join Date: Feb 2011
Location: Delhi, India
Posts: 47
Rep Power: 12 
Sorry for replying late
1. 3 types of sources > circular, ellipse, linear 2. Evaporation heat loss 3. Radiative heat loss 4. Sinusoidal movement of heat spot Radiative and evaporative heat loss is not linearised which I will solve using Ridder's method later.  gtarang Last edited by gtarang; September 22, 2020 at 11:32. Reason: Adding 

Tags 
mixed boundary condition 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Radiation in semitransparent media with surfacetosurface model?  mpeppels  CFX  11  August 22, 2019 08:30 
Question about adaptive timestepping  Guille1811  CFX  25  November 12, 2017 18:38 
Monte Carlo Simulation: HEnergy is not convergating & high Incident Radiation  volleyHC  CFX  5  April 3, 2016 06:41 
Radiation heat transfer boundary condition  natrask  OpenFOAM Programming & Development  0  February 8, 2015 10:05 
GETVAR Error in Multiband Monte Carlo Radiation Simulation with Directional Source  silvan  CFX  3  June 16, 2014 10:49 