HeatFlux in buoyantBoussinesq
I would like to use the buoyantboussinesq solver with a turbulentHeatFluxTemperature patch. The turbulentHeatFluxTemperature patch seems to need a name for the alphaEff-field (an Cp). But this solver doesn't seem to estimate alphaEff. What have I do to use this patch? Have I to adapt the solver to estimate alphaEff there or is there a easier way?
Thank you very much for your help.
kappaEff at the buoyantBoussinesqSimpleFoam solver and alphaEff in the turbulentHeatFluxTemperature patch are the same variable. So rename one of them, recompile it and that's it.
The easiest way is to copy the solver, rename it to your own and change in the Teqn.H kappaEff to alphaEff.
thanks a lot for your reply.
I looked a little bit in more detail into the Buoyant Boussinesq-solvers. But I think I have do multiply kappaEff with the real density as well. I think alpha should be in [kg/m/s] while kappaEff has the same Units than nu [m²/s]. But rhoK doesn't seem to be a "real" density but a relative density change due to the thermal expansion. So I have ro read a reference density somewhere to work with this patch.
Do you agree?
Or can I use e.g. alphaEff = kappaEff *rhoK, to consider the density effect in the heat transfer and keep in mind that this not a real "alpha" but alpha/(reference density) same as "kinematic pressure"?
Thanks once more for your help.
I think alphaEff and kappaEff is the same, look:
For the wallheatflux:
gradient = heatflux / (alphaEff * cp0 *rho0)
heatflux = J/(s*m^2)
cp0 = J/(kg*K)
rho0 = kg/m^3
the gradient of the temperaure has the units:
gradient = K/m
so alphaEff has the units m^2/s.
Looking in the solver we see:
kappaEff = turbulence->nu()/Pr + turbulence->nut()/Prt
Prt has no units-> kappaEff = m^2/s
So alphaEff and kappaEff have both the same units.
thanks once more for your reply.
But where did you find the formula for the wallheatflux?
>For the wallheatflux:
>gradient = heatflux / (alphaEff * cp0 *rho0)
If I look at the this patch for the incompressible case, it seems the wallheat heat flux is not divided through rho. In the compressible case it is (as you said).
const scalarField& alphaEffp =
const scalarField& Cpp =
gradient() = q_/(Cpp*alphaEffp);
So maybe it makes sense to define a non mass related Cp, something like Cpp = Cp * reference density.
Also I wonder how this patch considers density changes in the near wall region caused by thermal expansion (e.g. a rhoK )? But probably they are assumed to be small due to the Boussinesq approach is only valid for small density changes. What is your estimation? These incompressible solvers look a little bit confusing for me...
Thanks once more
I'm using OpenFOAM-1.6. For the wallheatflux I implemented a boundary condition downloaded from the wikipage of OpenFOAM.
The last version is for OF1.5, but it works in OF1.6, too.
You are only using the Boussinesq-approximation if density changes can be neglected in every term, but buoyancy-effects mustn't be neglected, (changes of the material properties are neglected, too)
It should make no difference if you solve with rho0 or with the local rho, because the difference should be very small. If there's a change, you are not allowed to use the boussinesq-approximation.
I'm using buoyantBoussinesqSimpleFoam for solve laminar flow (laminar RASmodel) in an annular duct with constan heat flux in the outer wall. My question is: Why does exist a boundary condition based on the heat transfer coefficient? To apply the heat flux I'm using the expression q=k·fixedGradient(T) because the relation q=k·(Temperature gradient) must be met near the wall (due to the continuity of the heat transfer), so I don't understand the necessity of the other equation. May be the fixedGradient b.c doesn't work as I think. Could you explain me where I'm wrong?
Thankyou very much in advance for your attention.
if you solve a turbulent flow you have to use k=alpha_eff=alpha_laminar+alpha_turbulent p.e. for RANS. So because you don't know alpha_turbulent pre the simulation if you're using a high-reynolds-turbulence-model.
But you're right, you don't need this all if you're solving a laminar flow.
Could you explain us how buoyantBoussinesqSimpleFlam or buoyantBoussinesqPisoFoam works ?
Because I don't know how this solver deal with temperature in the wall.
If I use standard kEpsolon model, that means need wall functions in the wall. I don't know how it works .Because k,epsilon and nut all have there own wall function, but temperature doesn't have wall function. If I should deal with teperature by myself ?
you need to understand how the temperature-field is determined with the basic turbulence models (like kepsilon). Normally you set a turbulent Prandtlnumber as a constant (e.d. 0.9) and give a relation for the Reynolds-stresses and the turbulent heat fluxes. I think everything is explained in the wiki
So you calculate the temperature-field by using the RS. That means, if you use a wallfunction in the k-, elsilon-equation you are using this, because of the coupling, in your alphaEff-field and so in the temperature-field, too. But sometimes you're not allowed to set the turbulent Prandtl-number as constant, so you have to modify it to a function or even use a reynolds-flux-turbulence-model.
But if you solve with a wallfunction and a turbulent Prandtl-number you have to be careful how to get walltemperature-gradients or the temperature at the wall, because you determine these values with the aid of your "cell next-to-wall". But here are the values getting by linear interpolation wrong, because here is the wallfunction used (the same problem as getting the wall-velocity-gradient or the wall-friction).
I have a few questions that need to be clarified if you don't mind.
I am using porousSimpleFoam + bousinessq to solve very low flow (laminar RAS) with three modes of heat transfer (conduction, convection, and radiation). So, I have set a heat source (radiation) for a specific value under transportProperties and I am wondering is there any need for me to set the convective coefficient using wallHeatFlux utility for the convection part? and how do I obtain the convective coefficient since I only know the Twater not the Tsolid?
And I used this http://openfoamwiki.net/index.php/Bu...sinesqPisoFoam energy equation plus the added heat source (radiation) by changing kappaEff to alphaEff, so I think the conduction term is already covered in here?
Thanks very much for your time and attention. Really appreciate if you can give me a feedback.
you have normally two kinds of boundary conditions:
set a fixed value, for example the temperature or set a gradient for example wallheatflux. You mkust know more details of yoyur experiment or flow-problem to set the right boundary condition...
Changing kappaEff to alphaEff you should be able to use the wallheatflux-utility.
Do you know how to implement it on OF-1.6.x? Following the instructions didn't work too well.
I have never used OpenFOAM-1.6.x.
But it works using OpenFOAM-1.6 and the same data works with OpenFOAM-1.7.
I have a small question and wondering over few things like kappaEff in buoyantBoussinesqSimpleFoam.
Temperature equation for both piso and simple solvers is same. I have read the docu of buoBPISOFoam under the following link.
In this link, the author say that kappaEff = heat transfer coefficient (Eq 17).
I am wondering how it is so. kappaEff = nu / Pr + turb part.
Pr = Cp * mu / lambda lambda = conductance
if i put back Pr in above kappEff eq then i get following.
kappaEff = (nu * lambda ) / (Cp * mu) = (nu * lambda )/(Cp * rho * nu)
kappaEff = lambda / (Cp * rho)
above equation shows that this lambda is diffusivity?
Actually I am looking to get conductivity to calculate heatflux near the boundary wall region by following formula.
q= lambda (Gradient (T))
if I use q = kappaEff * Grad(T) then i get better results
if i use q = Cp * rho * kappaEff * Grad(T) then i get really bad results.
I am not sure what is kappaEff... but i think its conductance. I want to prove it that this kappaEff = conductance.
Can anyone please help me out in clearing what is kappaEff?
Thanks a lot for attention.
looking forward to replies.
I am workig with that solver for laminar regime. kappaEff is the thermal diffusivity, wich in an exclusive laminar solver is called DT. In fact, it is calculated as nu/Pr, which gives k/rho*cp, the thermal diffusivity.
I also have employed an existen wallHeatFlux b.c to do grad(T)=heatFlux/k, where k is the thermal conductivity (which in my case is temperature dependent) to impose a uniform heat flux.
I hope this helps you.
Thanks for reply. one thing is now little bit sure that kappaEff = alphaEff = thermal diffusivity. Can you please let me know why the author say in the following link that it is heat transfer coefficient?
Eq no 17.
it confuses me.
My case is an incompressible one. What can you sugguest me? that do i have to use q = k Grad(T), and i give conductivity from outside.. or do i calculate conductivity from kappaEff (thermal diffusivity) by using Cp and rho.
Thanks for your help
Take a look to this thread:
I think it will be useful for you. I don´t know why the author calls kappaEff the heat transfer coefficient. As I understand heat transfer coefficient comes from h=q/DT, where DT in this case is the temperature difference, and q is the heat flux (in W/m^2), so h must be W/m^2·K. Then, the boundary condition would be
gradient = heatflux / (kappaEff * cp0 *rho0)
But look to the existen wallHeatFlux b.c.
If you dont mind, can I ask you? whats the difference between snGrad and simple grad in OpenFOAM?
Actually, am asking it because generally we say.
q = - k grad(T) is it equivalent to openfoam like q = k snGrad(T)...
Thanks in advance.
snGrad is the gradient normal to a surface. The gradient term can be evaluated in different manners, and in the case of the temperature gradient at the wall, the heat flux expression q=k(DT/DX) employs the gradient normal to that wall, so snGrad is the correct way.
I suggest you to take a look to the Programmers Guide, I think it explains this better than me.
Hope it helps, regards
|All times are GMT -4. The time now is 18:26.|