buoyantBoussinesqSimpleFoam with ExternalHeatFluxTemperature
Dear Community,
I am trying to simulate the flow through a simple heat exchanger. What I am trying to simulate (simplified) is a peltier dumping heat into a heatexchanger. Below you can find a figure explaining the simplified setup. https://i.imgur.com/nMjElwk.png https://i.imgur.com/N1sH75b.png I am using openFoam V5.0. My case is set up to use the buoyantBoussinesqSimpleFoam solver. Please find the full case here: Full case My model is running and converging when using fixed temperature boundary conditions. However, I have not understood how to add a heat flux boundary condition. I tried to use the externalWallHeatFluxTemperature boundary condition, but was not able to set it up correctly. checkMesh returns the following: https://www.dropbox.com/s/hik8gp0oua...kMesh.log?dl=0 https://i.imgur.com/fEvnu8Z.png https://www.dropbox.com/s/2tioav0723...vSolution?dl=0 https://www.dropbox.com/s/t19m0dqd5t...fvSchemes?dl=0 The T file is as follows: Code:
/*--------------------------------*- C++ -*----------------------------------*\ Code:
/*---------------------------------------------------------------------------*\ Can someone point me to a minimum working example using buoyantBoussinesqSimpleFoam and externalWallHeatFlux? Or tell me what I am doing wrong? For information, my next step in this model will be to include the body of the heat exchanger as a solid and have the heatflux boundary condition on one of the walls of the solid. I intend to do that by changing the solver to chtMultiRegionSimpleFoam. This is why in my current model I did not separate a single wall to apply the heatflux to as the wall from the fluid domain will be touching the solid. I hope to have given enough information for someone to be able to give me some pointers on what I am doing wrong. If more information is required, please ask. Thanks in advance, Kasper |
Hello kasper.
Actually I dont know about fixedWallHeatFluxTemperature but for specifying heat flux from wall as boundary condition there is one way. You can specify it as fixedGradient in the temperature file. The gradient can be found from fourier law of heat conduction Q = -k(dT/dy). so you are calculating dT/dy = -Q/k. I hope this will solve your problem. In case if you find someother method kindly update. Thank you. |
Quote:
However, I still don't see why the externalWallHeatFluxTemperature BC doesn't work. Looking at the documentation I don't see what I am doing wrong. Someone more experienced than me might find something obvious. Kind regards, Kasper |
Hello Kasper,
The problem you are facing stems from the fact that buoyantBoussinesqSimpleFoam is for incompressible fluids, while the externalWallHeatFluxTemperature boundary condition is for compressible fluids. You may want to work with buoyantSimpleFoam and use the Boussinesq equation of state: Code:
/*--------------------------------*- C++ -*----------------------------------*\ |
Hi Tom,
Thanks for your help. I tried it and indeed, everything is now working. For some reason, when I decompose my case, I had an error, because the solver cannot find Ta, which according to the documentation (and when running single core) is not necessary. I solved it by manually adding it to the decomposed T files, but it's annoying... Is there any way I could have known that this boundary condition only works on compressible solvers? I found no reference to it in the documentation. Kind regards, Kasper |
Hi,
If you do a find in a terminal: Code:
find $FOAM_SRC -iname *externalWallHeatFluxTemperature* Code:
src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/externalWallHeatFluxTemperature That is usually a hint. I have not looked into the code or documentation for this. Regards, Tom |
All times are GMT -4. The time now is 00:27. |