CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM

thermal analysis with buoyantBoussinesqSimpleFoam

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

Like Tree1Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   May 27, 2010, 05:29
Default
  #21
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 14
eugene is on a distinguished road
Dear Valeria,

The solvers are applicable to any case where the Boussinesq approximation can be justified, they just do not work very well on poor meshes. So if you have a perfect block structured mesh, then the solvers work very well (in our experience), but if you have tets, polyhedra or deformed hexes, then the results are completely unphysical. It might just be that we did not use the right combination of differencing schemes, but believe me we tried many.

Also, always use 2nd order or near 2nd order schemes like linearUpwind if you are trying to match experiment - you will be disappointed otherwise.
eugene is offline   Reply With Quote

Old   May 29, 2010, 01:37
Default
  #22
Senior Member
 
Andrea Pasquali
Join Date: Sep 2009
Location: Germany
Posts: 142
Rep Power: 10
andrea.pasquali is on a distinguished road
Hi Eugene,
so what do you think, buoyantBoussinesq is good to study cool down or warm up into automotive cockpit?

Thank you

Andrea
__________________
Andrea Pasquali
andrea.pasquali is offline   Reply With Quote

Old   June 1, 2010, 05:54
Default
  #23
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 14
eugene is on a distinguished road
Hi Andrea,

In general, for the default solver implemented in 1.6.x, no. It is highly unlikely that you will be able to make a mesh for an automotive cockpit such that spurious numerical errors from the solver discretisation errors will not overwhelm the balance of buoyant and hydrostatic forces.

The most viable solution we were able to come up with was to reimplement the Boussinesq solvers to more closely match the Boussinesq approximation, i.e.

rhoPrime = -beta(T-Tref)

and then to solve for pPrime instead of p. This formulation more closely matches the "pd" formulation for the compressible buoyant solvers in 1.5.
eugene is offline   Reply With Quote

Old   June 7, 2010, 09:29
Default
  #24
Senior Member
 
Andrea Pasquali
Join Date: Sep 2009
Location: Germany
Posts: 142
Rep Power: 10
andrea.pasquali is on a distinguished road
Hi Eugene,
the problem is just for the Boussinesq approximation, or else for the buoyant solver?
Could I try with buoyantSimpleFoam?

Thanks

Andrea
__________________
Andrea Pasquali
andrea.pasquali is offline   Reply With Quote

Old   June 7, 2010, 10:30
Default
  #25
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 14
eugene is on a distinguished road
Hi Andrea,

The problem is that grad(x) where x is a linearly varying field does not return a constant value field on distorted meshes. When you have a relatively high gradient, such as that induced by the hydrostatic force (rho*g), then trying to balance it with grad(p) fails and produces large spurious momentum sources on poor mesh elements.

buoyantSimpleFoam in 1.6 uses the same kind of formulation as the Boussinesq solvers (balancing the pressure gradient against the hydrostatic component). As such I would expect it to have the same problems (I haven't tested it for this purpose myself though, so I cant be sure). buoyantSimpleFoam in 1.5 on the other hand uses the old formulation that splits the hydrostatic component of pressure, so does not suffer from this problem.

Eugene
eugene is offline   Reply With Quote

Old   June 7, 2010, 11:23
Default
  #26
Senior Member
 
Andrea Pasquali
Join Date: Sep 2009
Location: Germany
Posts: 142
Rep Power: 10
andrea.pasquali is on a distinguished road
Hi Eugene,

Thank you very much for your time and for you explanation!

I will try a comparison between OF 1.5 and 1.6.

Another question, and if I put g (0 0 0) what will it happen?

Thanks

Andrea
__________________
Andrea Pasquali
andrea.pasquali is offline   Reply With Quote

Old   June 9, 2010, 11:34
Default
  #27
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 14
eugene is on a distinguished road
If g is zero, the buoyancy force will be zero too. The issue with poor meshes should go away, since there will be no hydrostatic pressure gradient and you will be left with something like simpleFoam + uncoupled temperature solution.

Eugene
farahiam likes this.
eugene is offline   Reply With Quote

Old   May 15, 2013, 13:15
Default
  #28
Senior Member
 
Mihai Pruna
Join Date: Apr 2010
Location: Boston
Posts: 192
Blog Entries: 1
Rep Power: 9
mihaipruna is on a distinguished road
why is buoyantPressure used in the p field and not in p_rgh like the tutorials show?
mihaipruna is offline   Reply With Quote

Old   May 27, 2013, 11:12
Default
  #29
New Member
 
Stefan Gracik
Join Date: Oct 2011
Location: Penn State
Posts: 8
Rep Power: 8
stefan.gracik is on a distinguished road
Quote:
Originally Posted by mihaipruna View Post
why is buoyantPressure used in the p field and not in p_rgh like the tutorials show?
I'm wondering the same thing, when I try to calculate it that way, I get an error. When I choose p as the "calculated" boundary condition and p_rgh as the buoyant pressure boundary condition, the solver runs, but I haven't been able to get p_rgh to converge.
stefan.gracik is offline   Reply With Quote

Old   May 28, 2013, 10:36
Default
  #30
Senior Member
 
Mihai Pruna
Join Date: Apr 2010
Location: Boston
Posts: 192
Blog Entries: 1
Rep Power: 9
mihaipruna is on a distinguished road
I figured it out, p_rgh is actuall p minus rgh so in your BCs p is the buoyant component and p_rgh the rest (mainly dynamic)
mihaipruna is offline   Reply With Quote

Old   May 1, 2015, 04:46
Default
  #31
Senior Member
 
Join Date: May 2011
Posts: 231
Rep Power: 9
Kanarya is on a distinguished road
Hi All,

I am using buoyantBoussinesqSimpleFoam in order to simulate heat transfer in horizontal pipe which means my g=(0 0 0), but still I am getting minus pressure at outlet,
what does it mean? I have some wrong BC or it is normal?

Thanks in advance!

Kanarya
Kanarya is offline   Reply With Quote

Old   December 24, 2016, 13:25
Default
  #32
New Member
 
saran
Join Date: Nov 2016
Posts: 9
Rep Power: 3
Saran16 is on a distinguished road
Hii Foamers
I am new to openfoam when i do the thermal analysis with buoyant boussinesq simplefoam
I get an error message which am unable to figure it out so can anyone say what the error is the error message was


*\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*
Time = 416

smoothSolver: Solving for Ux, Initial residual = 0.078627081580006655259218462106218794360756874084 47265625, Final residual = 0.004754302950650706773016995754232993931509554386 138916015625, No Iterations 34
smoothSolver: Solving for Uy, Initial residual = 0.071250201313677444248106951363297412171959877014 16015625, Final residual = 0.004371174219772354201107855686814218643121421337 127685546875, No Iterations 38
smoothSolver: Solving for Uz, Initial residual = 0.059798420555534845255429843291494762524962425231 93359375, Final residual = 0.003684226581084196032456201663762840325944125652 313232421875, No Iterations 37
smoothSolver: Solving for T, Initial residual = 0.076515793938819090524994237512146355584263801574 70703125, Final residual = 0.005327684404854957783692626094307343009859323501 5869140625, No Iterations 3
#0 Foam::error:rintStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in "/lib/x86_64-linux-gnu/libc.so.6"
#3 Foam::GAMGSolver::scale(Foam::Field<double>&, Foam::Field<double>&, Foam::lduMatrix const&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, Foam::Field<double> const&, unsigned char) const at ??:?
#4 Foam::GAMGSolver::Vcycle(Foam::PtrList<Foam::lduMa trix::smoother> const&, Foam::Field<double>&, Foam::Field<double> const&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::PtrList<Foam::Field<double> >&, Foam::PtrList<Foam::Field<double> >&, unsigned char) const at ??:?
#5 Foam::GAMGSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const at ??:?
#6 Foam::fvMatrix<double>::solveSegregated(Foam::dict ionary const&) at ??:?
#7 Foam::fvMatrix<double>::solve(Foam::dictionary const&) at ??:?
#8 ? at ??:?
#9 ? at ??:?
#10 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#11 ? at ??:?
Floating point exception (core dumped)
Saran16 is offline   Reply With Quote

Old   January 8, 2017, 19:06
Default buoyantBoussinesqSimpleFoam
  #33
New Member
 
Join Date: Oct 2015
Posts: 4
Rep Power: 4
jipai is on a distinguished road
Hi everyone,

I encounter exactly the same behaviour for this solver.

After setting g to (0 0 0), I finally got physical results !

I study the air flow in a room with significant heat intakes. So setting g to zero is clearly an oversimplification of the problem.

How can we improve the buoyantBoussinesqSimpleFoam behaviour for middle class meshes ?

In HVAC applications, we cannot expect high quality meshes for each cases. So which solver could be an alternative to buoyantBoussinesqSimpleFoam ?

Best regards
jipai

Last edited by jipai; January 9, 2017 at 07:36.
jipai is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
FSI Transient Thermal Analysis Abduri CFX 1 January 1, 2017 23:54
wrong values in thermal analysis Trofrensis STAR-CCM+ 0 December 7, 2009 06:41
thermal analysis caesrinivas ANSYS 0 October 12, 2009 00:52
Short Course: Computational Thermal Analysis Dean S. Schrage Main CFD Forum 11 September 27, 2000 17:46
Info: Short Course On Thermal Design of Electronic Equipment Arnold Free Main CFD Forum 0 August 10, 1999 10:18


All times are GMT -4. The time now is 06:55.