
[Sponsors] 
September 20, 2012, 19:22 
convective bc based on mixed

#41 
Member
,...
Join Date: Apr 2011
Posts: 92
Rep Power: 4 
Thanks for the comment.
Is the implementation of convective bc by mixed type in the following way? refValue = Tinf refGradient = 0 valueFraction = 1/(1+k/(h*mag(delta()))) value = ??? 

September 20, 2012, 19:25 

#42 
Senior Member

You can find the description here, just read more careful
__________________
Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben FranzJosefStr. 18 A  8700 Leoben Österreich / Austria Tel.: +43 3842  402  3125 http://smmp.unileoben.ac.at 

September 21, 2012, 19:03 
Problem when formulating the energy equation with enthalpy

#43 
Member
,...
Join Date: Apr 2011
Posts: 92
Rep Power: 4 
Hi Foamers
Following the discussions above, I implemented the groovyBC for simple 2D heat conduction problem. The problem is the cooling of plate by imposing a convective bc from one side. My results seem to be reasonable when I formulate the energy equation with temperature, I mean Density*Cp*(dT/dt) = k(d2T/dx2) But when I am formulating it vs enthalpy as Density* (dh/dt) = k(d2T/dx2), the temperature reach values less than Tinf, which is wrong. Any ideas? 

September 21, 2012, 19:31 

#44 
Senior Member

Do you make correction loops for each time step?
__________________
Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben FranzJosefStr. 18 A  8700 Leoben Österreich / Austria Tel.: +43 3842  402  3125 http://smmp.unileoben.ac.at 

September 21, 2012, 20:06 

#45 
Member
,...
Join Date: Apr 2011
Posts: 92
Rep Power: 4 
makaveli_lcf thanks fro reply
Well this is the main part of the code fvScalarMatrix TEqn ( Density*fvm::ddt(h)  Cond*(fvc::laplacian(T)) ); TEqn.solve(); forAll( T, celli) { T[celli] = (h[celli](gL.value()*Latent.value()))/(Cp.value()); } is this what you ask for? 

September 21, 2012, 20:13 

#46 
Senior Member

Ok then you should put a coupling loop (like pimple e.g.) around it, because temperature values which you use in the energy equation for the enthalpy are from the previous iteration and do not meat the energy equation after you calculate them from enthalpy.
__________________
Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben FranzJosefStr. 18 A  8700 Leoben Österreich / Austria Tel.: +43 3842  402  3125 http://smmp.unileoben.ac.at 

September 21, 2012, 20:18 

#47 
Member
,...
Join Date: Apr 2011
Posts: 92
Rep Power: 4 
Do you mean previous time step? My formulation is explicit and I am not concerned about using the previous time step values for T in energy equation. By the way, with the same formulation, I get reasonable results when I use constant temperatures as the boundary condition. So I am almost sure that the problem is in the way I have applied the boundary conditions.


September 21, 2012, 20:44 

#48 
Senior Member

No I mean previus ITERATION:
Step #1: you take T from old time step (at least OpenFOAM does it for you in any case) and use them to solve dh(@_new_time_step)/dt=k*laplacian(T(@_old_time_step)) Step #2: update T from new calculated h values Step #3: since T does not fullfil dh/dt = k*laplacian(T) calculate h using T from Step #2 a) If you pretend, that your solver is transient, you have to make coupling loops Step #1#2 so many times, that T will correspond to the energy equation. Low temperature values can be explained (if you speak about some transient point in your calculation) by the fact that your system hT is not converged for the current time step. b) If you use transient way to get a steady state solution it is not necessary. But do not try to explain intermediate T values then
__________________
Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben FranzJosefStr. 18 A  8700 Leoben Österreich / Austria Tel.: +43 3842  402  3125 http://smmp.unileoben.ac.at Last edited by makaveli_lcf; September 21, 2012 at 20:48. Reason: Rearanged 

September 21, 2012, 20:48 

#49 
Member
,...
Join Date: Apr 2011
Posts: 92
Rep Power: 4 
Thanks for your comments, but I still think that there is a problem in implementing boundary conditions and not in the solver, because the solver gives good results with fixed value bc for temperature.


September 21, 2012, 20:56 

#50 
Senior Member

You are trying to compare Dirichlet and Robin boundary conditions. First one is fixing your solution to some values, the second contains gradients and nonlinearity, so can couse oscilations around final solution and needs some iterative process if you treat it explicit way and not implicitly... But Ok, it is your choise how check it...
__________________
Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben FranzJosefStr. 18 A  8700 Leoben Österreich / Austria Tel.: +43 3842  402  3125 http://smmp.unileoben.ac.at 

October 9, 2012, 10:35 
limit of applicability of the 1st order approx.

#51 
Member
Elisabet Mas de les Valls
Join Date: Mar 2009
Location: Barcelona, Spain
Posts: 60
Rep Power: 7 
Dear all,
I'm now interested in such a boundary condition (applied to other phenomena). I first must thank you all for your work! I'm sure it will be very useful I just want to mention that the 1D approach is valid for small enough values of Biot number. And NOTE THAT BIOT=1/C!!!!! For planar surfaces, typically Bi<0.1 is enough. This means that wall tangential temperature gradients does not alter the heat flux (what in fact just states that the boundary and internal nodes are close enough to consider 1D conduction) For 1D conduction in planar geometries, with no thermal production and constant thermal conductivity, the temperature difference that appears in Fourier's Law is, definitely, first order. 

January 27, 2013, 21:26 
changing htot value did not affect the results

#52 
New Member
sorush ahmadian
Join Date: Jun 2012
Posts: 5
Rep Power: 4 
Dear All,
Thanks for the good information provided here. I am solving the heat equation (enthalpy) for a food sphere with phase change. I implemented the groovyBC for my problem and in the first glance it seemed to work fine. But when I tried to change the convective heat transfer coefficient (htot) no change in the results occurred and I got the same results. I have tried all the suggestions in this post except the wallHeatTransfer which did not work for me. Any ideas? best SA 

July 4, 2013, 13:17 
Difference between parameter in groovyBC

#53 
New Member
Join Date: Feb 2012
Posts: 11
Rep Power: 4 
Dear all, Thanks for the useful discussion, but I still did not understand the groovyBC completely.
1. What is the difference between the parameters? valueExpression to set Dirichletcondition, gradientExpression to set Neumann and what is then fractionExpression? The explanation from http://openfoamwiki.net/index.php/Contrib_groovyBC doesn't help me... 2. Still I did not understand the derivation of: type groovyBC; variables "htot=1000.0;Tinf=20.0;rho=800.0;cp=385.0;k=DT*rho *cp;"; valueExpression "Tinf"; fractionExpression "1.0/(1.0 + k/(mag(delta())*htot))"; , but it works in my case. So I want to know why GroovyBC is such a powerful tool, so I finally want to understand the tool in detail. Any hints? Thanks a lot in advance 

October 6, 2013, 18:14 

#54 
New Member
eric
Join Date: Nov 2010
Location: Vancouver, Canada
Posts: 13
Rep Power: 6 
This is a life saver!!!


March 28, 2014, 15:17 

#55 
New Member
Alfonso C
Join Date: Nov 2013
Posts: 2
Rep Power: 0 
Thank you for the explanation. But, how can I use the 1/deltaCoeff() in the BC file T ??
Many thanks. Alfonso C 

May 4, 2014, 21:02 

#56 
New Member
Jonas
Join Date: Feb 2014
Location: Porto Alegre, Brazil
Posts: 1
Rep Power: 0 
I'm new in openfoam. I'm willing to implement this bc:
k (Tf  Tc)/x + h (Tf  Tinf) = 0 k, Tc, x, Tinf are given values. I want to find Tf, but h is not constant, h should be calculated in each step based in the temperature gradient (k dT/dy) / (TfTinf). Is it possible to be done? How could I implement it? ps. I would give initial values for Tf and h. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Heat transfer coefficient  what is waht  Stan  FLUENT  20  March 11, 2014 12:42 
Convective / Conductive Heat Transfer in Hypersonic flows  enigma  Main CFD Forum  2  November 1, 2009 23:53 
How can I increase Heat Transfer at Domain Interf?  B.Simon  CFX  3  October 28, 2008 20:53 
CFX Heat Transfer  RJamison  CFX  0  July 24, 2008 13:11 
Convective Heat Transfer  Heat Exchanger  Mark  CFX  6  November 15, 2004 16:55 