# Understanding temperature coupling BCs

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

October 28, 2014, 07:44
Understanding temperature coupling BCs
#1
Senior Member

Join Date: Oct 2013
Posts: 393
Rep Power: 13
I'm currently trying to understand the boundary conditions for temperature coupling between two regions, namely compressible::turbulentTemperatureCoupledBaffleMix ed and compressible::turbulentTemperatureRadCoupledMixed (source files located in turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/ ). In the first BC, radiation is neglected and the problem thus simplifies. In the .C file, one finds the following comment:
Quote:
 // Both sides agree on // - temperature : (myKDelta*fld + nbrKDelta*nbrFld)/(myKDelta+nbrKDelta) // - gradient : (temperature-fld)*delta // We've got a degree of freedom in how to implement this in a mixed bc. // (what gradient, what fixedValue and mixing coefficient) // Two reasonable choices: // 1. specify above temperature on one side (preferentially the high side) // and above gradient on the other. So this will switch between pure // fixedvalue and pure fixedgradient // 2. specify gradient and temperature such that the equations are the // same on both sides. This leads to the choice of // - refGradient = zero gradient // - refValue = neighbour value // - mixFraction = nbrKDelta / (nbrKDelta + myKDelta())
I completely agree to and understand the value of the temperature on both sides of the patch. This is just a weighted average of the temperatures in the cells weighted with the heat conductivities divided by the length from center of the cell to the patch face.
I then assume that the gradient which is written here is only meant for the first side, and that the neighbour side is meant to be (temperature-nbrFld)*nbrDelta (possibly negative when the direction of the surface normal vector is considered).

Now the two strategies below are meant to be used in iterative solvers I suppose. Does anyone know how the second one can be derived from the formulas? Or is it somewhat empirically determined to accelerate convergence maybe?

For the second BC, things become more difficult because there are additional radiative heat fluxes, and no explaining comment. The strategy which is used here appears to be a bit different. The formulas used are:
$refValue_o=\frac{K_{\Delta_n}&space;\cdot&space;T_n}{\alpha}=\frac{\frac{\kappa_o}{\Delta_o}&space;\cdot&space;T_n}{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}}&space;\newline&space;refGrad=0\newline&space;valueFraction=\frac{\alpha}{\alpha&space;+&space;K_{\Delta_o}}=\frac{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}}{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}&space;+&space;\frac{\kappa_o}{\Delta_o}}$
, where o=owner, n=neighbour, Delta=distance between cell center and patch face, kappa heat conductivity and Qr radiative heat flux.

Does anyone understand this or has seen a derivative? I think this could be interesting for different heat transfer applications at boundaries.

 October 31, 2014, 08:31 #2 Senior Member   Join Date: Oct 2013 Posts: 393 Rep Power: 13 I've spent some more time thinking about this. Using the equations above inserted into the mixed BC formula: $T_{F_0}=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;(1&space;-&space;\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}})&space;T_0&space;=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0&space;=\frac{\frac{\kappa_1}{\Delta_1}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_{F_1}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0$, here with 0: first region, 1: second region, so T0: temperature in first region cell, T_F_0: temperature in first region patch. I'm wondering if the signs at the radiation fluxes are correct. For positive Q_r (meaning outgoing radiation) an iteration procedure using this formula is bound to diverge, because the sum of the two weighting factors in front of the temperatures is not 1??? As an example: Consider radiation coming out of a gas (0) being absorbed completely by a solid (1). In this case, Qr_0 > 0, Qr_1 = 0 and the sum of both factors is larger than 1. In my understanding this should result in an increasing temperature on each iteration. I'm going to test this series one dimensionally with MATLAB to investigate the convergence properties. Does anyone have any better explanation for the reasoning behind these formulas or maybe a literature recommendation? roucho, atulkjoy, Zhiheng Wang and 1 others like this.

 November 3, 2014, 11:06 #3 Senior Member   Join Date: Oct 2013 Posts: 393 Rep Power: 13 See http://www.cfd-online.com/Forums/ope...tml#post517173 for further results. atulkjoy and Zhiheng Wang like this.

November 26, 2018, 00:20
#4
Member

Atul Kumar
Join Date: Dec 2015
Location: National Centre for Combustion Research and Development
Posts: 42
Rep Power: 5
Quote:
 Originally Posted by chriss85 I've spent some more time thinking about this. Using the equations above inserted into the mixed BC formula: $T_{F_0}=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;(1&space;-&space;\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}})&space;T_0&space;=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0&space;=\frac{\frac{\kappa_1}{\Delta_1}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_{F_1}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0$, here with 0: first region, 1: second region, so T0: temperature in first region cell, T_F_0: temperature in first region patch. I'm wondering if the signs at the radiation fluxes are correct. For positive Q_r (meaning outgoing radiation) an iteration procedure using this formula is bound to diverge, because the sum of the two weighting factors in front of the temperatures is not 1??? As an example: Consider radiation coming out of a gas (0) being absorbed completely by a solid (1). In this case, Qr_0 > 0, Qr_1 = 0 and the sum of both factors is larger than 1. In my understanding this should result in an increasing temperature on each iteration. I'm going to test this series one dimensionally with MATLAB to investigate the convergence properties. Does anyone have any better explanation for the reasoning behind these formulas or maybe a literature recommendation?

HI Hi chriss

Did you find a way to couple radiation of solid and gas phase. ????

November 26, 2018, 00:24
Coupled Boundaries
#5
Member

Atul Kumar
Join Date: Dec 2015
Location: National Centre for Combustion Research and Development
Posts: 42
Rep Power: 5
Quote:
 Originally Posted by chriss85 I've spent some more time thinking about this. Using the equations above inserted into the mixed BC formula: $T_{F_0}=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;(1&space;-&space;\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}})&space;T_0&space;=\frac{\alpha}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;\frac{\frac{\kappa_1}{\Delta_1}T_{F_1}}{\alpha}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0&space;=\frac{\frac{\kappa_1}{\Delta_1}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_{F_1}&space;+&space;\frac{\frac{\kappa_0}{\Delta_0}}{\alpha&space;+&space;\frac{\kappa_1}{\Delta_1}}&space;T_0$, here with 0: first region, 1: second region, so T0: temperature in first region cell, T_F_0: temperature in first region patch. I'm wondering if the signs at the radiation fluxes are correct. For positive Q_r (meaning outgoing radiation) an iteration procedure using this formula is bound to diverge, because the sum of the two weighting factors in front of the temperatures is not 1??? As an example: Consider radiation coming out of a gas (0) being absorbed completely by a solid (1). In this case, Qr_0 > 0, Qr_1 = 0 and the sum of both factors is larger than 1. In my understanding this should result in an increasing temperature on each iteration. I'm going to test this series one dimensionally with MATLAB to investigate the convergence properties. Does anyone have any better explanation for the reasoning behind these formulas or maybe a literature recommendation?
Quote:
 Originally Posted by chriss85 I'm currently trying to understand the boundary conditions for temperature coupling between two regions, namely compressible::turbulentTemperatureCoupledBaffleMix ed and compressible::turbulentTemperatureRadCoupledMixed (source files located in turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/ ). In the first BC, radiation is neglected and the problem thus simplifies. In the .C file, one finds the following comment: I completely agree to and understand the value of the temperature on both sides of the patch. This is just a weighted average of the temperatures in the cells weighted with the heat conductivities divided by the length from center of the cell to the patch face. I then assume that the gradient which is written here is only meant for the first side, and that the neighbour side is meant to be (temperature-nbrFld)*nbrDelta (possibly negative when the direction of the surface normal vector is considered). Now the two strategies below are meant to be used in iterative solvers I suppose. Does anyone know how the second one can be derived from the formulas? Or is it somewhat empirically determined to accelerate convergence maybe? For the second BC, things become more difficult because there are additional radiative heat fluxes, and no explaining comment. The strategy which is used here appears to be a bit different. The formulas used are: $refValue_o=\frac{K_{\Delta_n}&space;\cdot&space;T_n}{\alpha}=\frac{\frac{\kappa_o}{\Delta_o}&space;\cdot&space;T_n}{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}}&space;\newline&space;refGrad=0\newline&space;valueFraction=\frac{\alpha}{\alpha&space;+&space;K_{\Delta_o}}=\frac{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}}{\frac{\kappa_n}{\Delta_n}-\frac{Qr_o+Qr_n}{T_o}&space;+&space;\frac{\kappa_o}{\Delta_o}}$ , where o=owner, n=neighbour, Delta=distance between cell center and patch face, kappa heat conductivity and Qr radiative heat flux. Does anyone understand this or has seen a derivative? I think this could be interesting for different heat transfer applications at boundaries.

Nice work Chriss

 November 26, 2018, 11:38 #6 Senior Member   Join Date: Sep 2013 Posts: 213 Rep Power: 11 At the interface between fluid and solid (or solid and solid) the following is true: and This means, that the heat flux exiting one domain enters the other and that both regions agree on temperature. The heat flux can be written as: The gradient at the wall can be expressed as the difference between the value at the cell center and wall face devided by the distance between those. OpenFOAM uses the inverse of that however: . From here it is only a bit of math. We summarize the above condition: and simplify with . This depends on the region you want to use the boundary condition for. For illustration we'll use the fluid side. a mixed boundary condition in OpenFOAM is defined as follows: We can rewrite the above formula to match this: The actual implementation Code:  this->refValue() = nbrIntFld(); // This is T_s this->refGrad() = 0.0; this->valueFraction() = nbrKDelta()/(nbrKDelta() + myKDelta()); This is kappa*Delta This is the derivation for the boundary condition. For adding in heat fluxes due to radiation you'd slightly modify the initial set up I have however not referenced this to the code. And am unsure about the sign of the radiation flux definition in OpenFOAM, so this might differ. It should however be a starting point for understanding the code. snak, Daniel_Khazaei, atulkjoy and 5 others like this. Last edited by Bloerb; November 27, 2018 at 03:05.