Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.
Conjugate heat transfer for Turbulent flow
Posted Jan 5, 2011, 3:13 a.m. EST Fluid & Heat, Heat Transfer & Phase Change 5 Replies
Please login with a confirmed email address before reporting spam
I am trying to simulate fluid flow in a pipe and this pipe is subjected to heat flux at upper half. I have turbulent flow. Therefore I use?Conjugate heat transfer (As I know there is no difference between Conjugate heat transfer and non-isothermal fluid flow , am right?)
I May do not expalin my problem well in the first time. The problem I got the following error when I used Conjugate heat transfer for Turbulent flow
Failed to find a solution.
In segregated group 1:
Divergence of the linear iterations.
Returned solution has not converged.
How I can Solve this problem
Attachments:
Please login with a confirmed email address before reporting spam
Please login with a confirmed email address before reporting spam
what if you "start simple" one physics at the time, i.e. fluid flow first, setting some initial conditions, getting the head loss pressure etc, and then add the temperature (or even solve for T alone and then mix)
trying to solve such a complex (turbulent) multi-physics in one go from initial conditions "0" is rather ambitious.
We all need a few years to learn physics at the university, so you should not expect COMSOL to allow us to solve such things in 5 minutes, or even a few days, without having done ourself the homework: having a validated model in a simplified analytical form
Another point with such turbulent flow it's often better also to use boundary mesh along the inside (would have to check what COMSOL proposes for "Wall function" BCs (I do not consider myself as a CFD expert ;)
a few more comments I follow for CFD:
setting up a high speed flow from initial conditions v=0[m/s] and p=0[Pa] is probably rather tough for the solver.
So to start with you could at least improve this cheaply (I'm not sure it's enough though ;)
I would propose to i.e define a cylindrical coordinate frame (sys2.r), or defining the variable rxy=sqrt(x^2+y^2) assuming your axis is along Z and passing through (0,0) and setting up an initial velocity :
v0 = Vmean*2*(1-(rxy/Radius_inner)^2).
where Radius_inner is the fluid radius, and LEN is the tube length
Then you could add an initial pressure drop i.e.
p0[Pa] = 8*mu[Pa*s]*V_mean[m/s]*Len[m]/(Radius[m])^2
From Poiseille, it's certainly not turbulent exact, but at least simple and better than "0" as starting point.
another way is to ramp your fluid velocity with a not too steep step function (step1(t)), either from "0" or from a first laminar flow
Another trick often helping is to block the absolute pressure at one "point", i.e. on a output zero pressure outlet
To check your initial conditions, select the "Dependent Variables" node of your solver and "right-click" + "Compute to Selected"
By the way v4.1 handles far better these BC and turbulent flow models than the early v4.0, you should see how to get an upgrade
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
I have tried further to run your model. That is, I got funny results with your 4.0 translated to 4.1 model, so I rebuild it (I have noticved that the translations are not really reliable, so Itend systematically to rebuild all models from scratch into v4.1).
It converges for laminar flow to some 10m/s but not above, and I cannot get it to finish/converge in turbulent mode.
One should probably ramp up the speed gently, it also requires quite some ram (16GB in default meshing) so it takes a few hours to tell you it hasnt converged ;)
perhaps you should consider a 2D axi model, even if your heat flux is not totally symmetric, at least to start with.
Anyhoe get hands on the latest v4.1 its far smoother than the 4.0, check how to with your local COMSOL rep or sysadmin
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
“what if you "start simple" one physics at the time, i.e. fluid flow first, setting some initial conditions, getting the head loss pressure etc, and then add the temperature (or even solve for T alone and then mix)”
I understand from your suggestion that I can run my model with only fluid physic at the beginning and later I used the result with heat transfer physic to solve for T. The question is how I can do that?
“another way is to ramp your fluid velocity with a not too steep step function (step1(t)), either from "0" or from a first laminar flow”
There is any example I can follow it to learn how I use the step function.
“It converges for laminar flow to some 10m/s but not above, and I cannot get it to finish/converge in turbulent mode
For”
It also converges with me for laminar flow (0.1 m/s) but I got funny result (I am using free normal tetrahedral mesh for the solid and fluid). The temperature along the pipe is going up and down and that not making sense. It should increase smoothly. If I increase the mesh size to extra fine, the outlet temperate it become in some region less than the inlet temperature which is funny. Why I got this funny resutl??????
I noticed that in version4.1 there is fluid dynamic mesh. I used it but nothing is changed
In turbulent case (30 m/s) it converges in version 4.1 but the same funny result as laminar case I got it ;(. I do not know why, but I think I need as you said I have to increase the speed smoothly. How??
Please login with a confirmed email address before reporting spam
Do not forget to upgrade to latest patch (see the main web site product upgrade, you should read 4.1.0.112 or greater)
You can first try NSF in laminar mode alone, run your model for different input velocities. And prepare the initial conditions to the right velocity profile for no slip on edges, and pressure drop along the tube length, (use Poiseille law as starting point), then switch to turbulent and try again, all without any heat, constant temperature. Note when you switch to turbulent, you must verify and redefine some of your BC such as Inlets, as these windows changes between laminar and turbulent mode.
to ramp your velocity, define a constat parameer i.e Param, and set the stationary solver to sweep through Param from 0 to1. Then define a "step" function (and you multiply inlet and initial condition values with Param), check the slope for a variation from 0-1. Note: do not start fully at "0" but a small inlet velocity (or pressure), often you have conversion problems just around "0". by default the step function starts at 50% for step1(0) you might displace this to 5-10% by subtracting an offset
Then only use the mixed thermal and flow physics (in a new model), here again start laminar and Q=0 then add some heat flux, finally turbulent Q=0 and full model.
It might need more than the default 25 iterations to converge, so you can change that to 50 but you have to wait.
Finally there is probabaly need for pre-conditionner tweaking in tubulent mode that is another story outside what we can talk about here, its better to take a few of the COMSOL courses, and discuss it there (that is a full book story ;)
--
Good luck
Ivar
Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.
Suggested Content
- FORUM Physics coupling between Turbulent Flow and acoustic calculation modules
- KNOWLEDGE BASE Manually Setting the Scaling of Variables
-
KNOWLEDGE BASE
How can I see the equations COMSOL is defining?
How do I implement a user-defined Multiphysics coupling? - BLOG Calculating the Heat Transfer Coefficient for Flat and Corrugated Plates
- FORUM Conjugate Heat Transfer Transient Model not Working