CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Nusselt Number calculation in Ansys CFX (https://www.cfd-online.com/Forums/cfx/84138-nusselt-number-calculation-ansys-cfx.html)

azurespirit January 20, 2011 20:25

Nusselt Number calculation in Ansys CFX
 
Hi,

I am running 2D jet impingement problem on my CFX. To get ahead with the theoretical aspects etc, I need to calculate the Nusselt Number and Nu distribution across the wall, so I can compare it against an experimental case.

The problem is I am unsure of how to calculate the Nu from the data in CFX post processing. I know that heat fluxes are to be calculated first, but can someone please direct me as to how I could go about finding a solution. Help please.

Thanks.:)

pavitran January 21, 2011 09:25

Hi
 
Nu= HL/k

H=wall heat transfer coefficient, (This variable is available in CFX post, take area average)
L= reference length
k= Thermal conductivity of working fluid.

Heat transfer coefficient in cfx is calculated as

H= q/(Thot-Tcold)

where q=wall heat flux in W/m2
Thot= Temperature of the heated surface
Tcold= Temperature at the near wall node.

By default cfx considers Tcold as near wall node temperature(This makes your Nusselt number taking very high values).

To be consistent with literature, you can replace the Tcold temperature with the ambient/far field temperature. You can do this by going into expert parameters and find "tbulk for htc", and change the temperature(in kevlin).

azurespirit January 21, 2011 09:43

Hi,

I did realise the math eventually. The problem is with the post processing software as I don't really know it well enough. How do I extract the heat flux values for my wall? Do I need to alter any boundary conditions for the wall, to include heat flux terms?

Also, I suppose the values for heat flux will be local from that how can I extract Nu number distribution over the entire span on wall?

azurespirit January 21, 2011 15:04

I tried the method that you have mentioned, and it works fine. But this way the problem is I can't extract heat coefficient values at various points along my wall, instead what I get is a area average. But for my Nusselt number distributions, I need heat coefficient values at discrete points. Can you please help me by telling how to extract these from cfx-post.

I am able to create a contour plot of heat coefficient values on wall, but I am not able to extract these values in a table. Is this possible in cfx-post? Once I get these values I can calculate the Nu number, as I already have values for k (air at 25 deg c being the working medium).

pavitran January 21, 2011 21:02

Hi
 
  1. Create a line/polyline in cfxpost.
  2. Write an expression for Nusselt number.
  3. Use chart option & plot Nu no. on the created line/polyline.
You can find these operations in some tutorials, just check them in help file.:)

ghorrocks January 22, 2011 05:06

You should be able to get HTC evaluated at all points, not just a surface average. You probably have to set up a CFD-Post variable to get it if the default HTC is wrong (which it will be if you have not set "tbulk for htc").

azurespirit January 22, 2011 13:57

Thanks for the advise.

I tried both methods:

First with specifying the 'tbulk for htc' in expert parameters. I specified the value as 298 Kelvin since the farfield temperature on the part 'OUTLET' in contour plot that I had created earlier reported 299 K, which is quite close. Also, the reason being my inlet fluid is air at 25 deg C, which is 298 K.

The problem with this method was that the value for area avg Wall heat transfer coefficient showed up as ZERO. I might have gone wrong with specifying the value in 'tbulk for htc'. Please let me know if you understand.

When I ran the simulation without specifying the 'tbulk for htc' the post processor gave an average value for htc as 273 W m^-2 K^-1. Again, I have no way to verify this value. But this method at least returns a value.

As for calculating the Nu number distribution, as pavitran suggested, I created an expression for Nu number using a variable for wall htc, and expressions for characteristic length and thermal conductivity (0.026 for air at 25 deg C. The expression evaluates perfectly. Again I encountered problem after this, I created a line, but firstly it doesn't show in the 3-d viewer and I'm not sure what I did wrong. I created the line using TWO POINT method, and specified the two points as the geometric coordinates of my wall (since it is a 2d simulation). And I chose the SAMPLE type. But it doesn't show.

Moreover, I continued by trying to plot the chart anyway by choosing the LINE as reference. The chart is also empty. I am currently hung about in this situation, please suggest any advise that might be of help.

azurespirit January 27, 2011 12:10

Hi,

I am awaiting for any replies with some help. Anybody got suggestions? Please help.

samanpnh February 8, 2013 15:51

2 Attachment(s)
I wrote a code that gives average nusselt number in steady state as a scalar number for a cylinder in cross flow with Induced Vibrations
local nusselt
nuL= (Wall Heat Flux *shoa*2[m])/(75 [K]*Thermal Conductivity )
that 75 is Temperature difference
average nusselt number
nuave=areaAve(nuL)@Pipe1

but I need a way that plot average nusselt number as a function of time like the follow picture
of course I Send the variable nuave to a monitor point, but it gives this error in follow picture. please help me

marcoac14 February 10, 2013 23:49

2 Attachment(s)
Hello guys,

I'm also trying to calculate Nusselt number in a internal flow.

As Pavitran said, by default CFX considers Tcold as near wall node temperature and Nusselt number is very high. We need to be consistent with literature in order to compare results. His solution is to define a known Tbulk (far field temperature) but as it's a internal flow and there's no far field temperature.

Incropera et al (Fundamentals of Heat and Mass Transfer) defines a mean temperature (see attached file) that is to be used in place of Tbulk. Since Tm is varies along the pipe and the expert parameter htc does not allow to use an expression I'm not able to calculate Nusselt number.

Am I doing anything wrong?

Regards,
Marco

ghorrocks February 10, 2013 23:59

You can divide your pipe up into shorter lengths, and do areaAve() on each segment.

Alternately you could use the idea of what Incropera says by integrating enthalpy over a flow cross section, then working that back to an average temperature and use that. You can then evaluate that exactly at a point, providing you put a surface you can integrate over at that point.

marcoac14 February 11, 2013 00:11

I'm not sure if I got what you said. Let me know if I'm wrong.

If I were to divide the pipe into shorter lengths, I'd need to do areaAve to calculate heat flux (q) and temperature (Ts) over the interface (fluid/solid), do areaAve to calculate Tm over a cross section, then calculate h = q / (Ts - Tm).

Isn't it too complicated? Isn't there an easier way to calculate htc?
I'd be easier if it were possible to set an expression for Tbulk.

Thanks

marcoac14 February 11, 2013 00:44

Quote:

Originally Posted by ghorrocks (Post 407044)
You can divide your pipe up into shorter lengths, and do areaAve() on each segment.

Alternately you could use the idea of what Incropera says by integrating enthalpy over a flow cross section, then working that back to an average temperature and use that. You can then evaluate that exactly at a point, providing you put a surface you can integrate over at that point.

Since Tm varies along the pipe (z axis), I'm trying to create a variable to plot Tm(z).

Tm defines as follows:
areaInt(Temperature*Velocity w)@Plane 0/(areaAve(Velocity w)@Plane 0*area()@Plane 0)

The problem is that in order to calculate Tm I need a plane to integrate over, but Plane 0 is static and I need to make it move along z. Is it possible?

Regards

ghorrocks February 11, 2013 04:53

You can sweep it over z in CFD-Post using a session file.

If you want to do it in the solver you need to define the cross sections somehow (make them interfaces or similar) and send it to a monitor point.

marcoac14 February 11, 2013 07:19

Quote:

Originally Posted by ghorrocks (Post 407077)
You can sweep it over z in CFD-Post using a session file.

If you want to do it in the solver you need to define the cross sections somehow (make them interfaces or similar) and send it to a monitor point.

Thanks for helping.

I'm sorry for asking you so many questions, but I'm not an expert user. Actually I've been using the software for a month.

What's a session file and a monitor point? Is it difficult to implement any of these ideas? I need to create an expression for the htc and Nusselt and set them as an output parameter because I'm gonna use Goal Driven Optimization. The idea is to vary wall thicknes, channel width and height and mass flow to maximize Nusselt and minimize Pump power.

Meanwhile, I'm gonna search the web for it.

Regards,
Marco

ghorrocks February 11, 2013 17:07

If you are going to do an optimisation exercise then I recommend you go to the ANSYS customer web page (from www.ansys.com) and download the tutorials on optimisation and parametric design. This will show you how to set them up.

marcoac14 February 11, 2013 17:53

Quote:

Originally Posted by ghorrocks (Post 407251)
If you are going to do an optimisation exercise then I recommend you go to the ANSYS customer web page (from www.ansys.com) and download the tutorials on optimisation and parametric design. This will show you how to set them up.

Thanks for your suggestion but I've already done. There's an optimization chapter in CFX Tutorial. The problem is not the optimization itself, but how to get the htc in terms of the mean temperature on the cross section.

I cannot figure out how to calculate Tm along the channel automatically because it's necessary to do an areaAve over every cross section along the channel. It would be easier if it were possible to set a plane location in terms of a variable, which in my case is Z.

Thanks for spending your valuable time trying to help me.

Regards

Regards

ghorrocks February 12, 2013 06:05

My post #11 had a suggestion which does not require sweeping a plane over a length. Try that.

marcoac14 February 14, 2013 23:30

Quote:

Originally Posted by ghorrocks (Post 407361)
My post #11 had a suggestion which does not require sweeping a plane over a length. Try that.

Thanks for helping!

siavash_y April 24, 2013 17:35

Quote:

Originally Posted by marcoac14 (Post 407937)
Thanks for helping!

I have the same problem, did u find a solution marcoac?

marcoac14 April 24, 2013 18:18

Quote:

Originally Posted by siavash_y (Post 422953)
I have the same problem, did u find a solution marcoac?

Well, not a good one. I found workarounds, not real solutions.

As many users suggested, you can use design modeler to imprint planes along the channel and interpolate them. If you're working with parameters this is the best solution in my opinion because you can write an expression to give you the result right away. It will give you a fairly good idea of what's happening, but may not be as accurate as required.

Another solution is to export temperature and velocity as a csv file and use it in Mathematica (or similar) to interpolate over the domain and extract the results you need.

Regards,
Marco

VIPIN KAKKAR February 24, 2015 11:35

Hi,
i am simulating natural convection heat transfer from perforated fin array and have solved the problem in CFX,but i am unable to find out Nusselt number of the fin array.
please tell me how to find out Nusselt number of fin array.

VIPIN KAKKAR February 24, 2015 11:49

i am working on natural convection heat transfer of perforated fin array in CFX. i have solved it in CFX, now i need to find out Nusselt no. of fin array for that first of all i have to find out heat flux value of fin. The problem is with the post processing software as I don't really know it well enough. How do I extract the heat flux values for my FIN wall?

singer1812 February 25, 2015 10:23

Use variable "Wall Heat Flux". This of course assumes you didnt model the wall as adiabatic......

VIPIN KAKKAR February 27, 2015 21:42

Quote:

Originally Posted by singer1812 (Post 533376)
Use variable "Wall Heat Flux". This of course assumes you didnt model the wall as adiabatic......

sir,
may you explain me how to use "wall heat flux" variable. when i select wall heat flux in variable tab it shows value of min & max heat flux, whether this min & max value is for whole body?
i want to find out Average heat flux for a single body & single surface. Please tell me how to find out.

ghorrocks February 28, 2015 06:29

The min and max refer to the object locator it is referring to.

Use the function calculator to calculate any function of any area.

VIPIN KAKKAR March 1, 2015 08:17

Quote:

Originally Posted by ghorrocks (Post 533752)
The min and max refer to the object locator it is referring to.

Use the function calculator to calculate any function of any area.

sir,
i am finding heat flux using two expressions- areaAve(wall heat flux)@location and ave(wall heat flux)@location.
value for both the expressions is different.
what does function areaAve and ave mean?

ghorrocks March 1, 2015 17:18

This is explained int he documentation, in the CFX reference guide. areaAve is the area weighted average and ave is just a simple arithmetic average.

VIPIN KAKKAR March 1, 2015 23:41

Quote:

Originally Posted by ghorrocks (Post 533908)
This is explained int he documentation, in the CFX reference guide. areaAve is the area weighted average and ave is just a simple arithmetic average.

Thank you sir for your suggestion!
sir,please tell me one more thing what does areaAve(Temperature)@location
" area weighted average temperature" mean. Is it absolute temperature or relative temperature(difference of absolute and atmospheric temperature).
In my fin array problem when i gave heat flux 5900 W/m2 to fin base then areaAve(Temperature)fin shows 140 K.

ghorrocks March 1, 2015 23:57

The temperature returned will be the temperature variable - that will be defined as C, F or K depending on your setup. And it is an absolute value, not a relative one.

If you have and areaAve(temperature) of 140K then your fin is really cold. This is 140K absolute, so 133K below the freezing point of water. I hope this is what you intended to do.

VIPIN KAKKAR March 3, 2015 06:43

Quote:

Originally Posted by ghorrocks (Post 533917)
The temperature returned will be the temperature variable - that will be defined as C, F or K depending on your setup. And it is an absolute value, not a relative one.

If you have and areaAve(temperature) of 140K then your fin is really cold. This is 140K absolute, so 133K below the freezing point of water. I hope this is what you intended to do.

Thank you sir!
sir, in my problem of "natural convection heat transfer from perforated fin array", i can calculate heat flux and temperature at any face of fin array in CFX-post ,but how to calculate Nusselt Number of Fin Array in CFX-post

VIPIN KAKKAR April 2, 2015 09:58

sir please tell me how to find wall heat transfer coefficient and wall adjacent temperature. what are expressions to find these variables.

Thomas MADELEINE April 2, 2015 10:24

I don't understand your question...
you have the name of the variable so you can plot it in CFD-Post...
both of them are Wall variable so plot it on the Wall with a contour.
For better understanding use the CFD-Post Help on these variable and the CEL function...

Pyotr December 1, 2016 22:23

Hi everyone,


I’ve been running a simulation of gas flowing through a multi hole heated solid body. I need to obtain data like Reynolds, Prandtl and Nusselt number along the channel.


In order to obtain data from various cross-sections along the channel, I’ve created a surface (Insert -> Location -> User Surface), Method -> Offset From Surface, which is parallel to the outlet surface. I just change the distance from the outlet and I get all the data in the new location. All the expressions contain a reference to this location.


I called the user surface “Data Collection” and the expressions are as follows:

ReDataCollection (Reynolds number):
sqrt(4*area()@Data Collection/pi)*areaAve(Velocity)@Data Collection*areaAve(Density)@Data Collection /areaAve(Dynamic Viscosity)@Data Collection

PrDataCollection (Prandtl Number):
areaAve(Specific Heat Capacity at Constant Pressure)@ Data Collection*areaAve(Dynamic Viscosity)@ Data Collection / areaAve(Thermal Conductivity)@Data Collection

TwallDataCollection (Temperature at the wall):
areaAve(Wall Adjacent Temperature)@Data Collection+(areaAve(Wall Heat Flux)@Data Collection/areaAve(Wall Heat Transfer Coefficient)@Data Collection)

TbulkDataCollection (Bulk Temperature):
areaAve(Temperature)@Data Collection

MyHTCDataCollection:
areaAve(Wall Heat Flux)@Data Collection/(TwallDataCollection- TbulkDataCollection)

NuDataCollection (Nusselt Number):
MyHTCDataCollection* sqrt(4*area()@Data Collection/pi)/ areaAve(Thermal Conductivity)@Data Collection

I got the diameter of the channel from sqrt(4*area()@Data Collection/pi), since the calculated area is not exactly what I expected from theory (just a minor difference), but to maintain the consistency, I chose to evaluate like this.

I managed to get results that seem to be reasonable, but I am still uncertain about the accuracy of expressions I used to obtain Nusselt Number.

Is it correct to use “areaAve(Wall Heat Flux)@Data Collection”, “areaAve(Wall Adjacent Temperature)@Data Collection”, and “areaAve(Wall Heat Transfer Coefficient)@Data Collection” in this context?

“areaAve(Wall Heat Flux)@Data Collection”, for example, gives me the heat flux in the specific cross-section I am working on?


Thanks!

Antanas December 2, 2016 03:02

It seems to me that Wall Heat Flux is defined on wall, but not on cross-section.
Also keep in mind that locator based CEL functions use conservative values in calculations i.e. average over near wall control volume, but not boundary values.

ghorrocks December 2, 2016 04:40

As Antanas states, wall heat flux is not defined on a flow cross section plane.

You will have to define a curve at the intersection of your plane "Data Collection" and the wall. You can do this by a polyline with the "Boundary Intersection" option. Then you can do lengthAve(Wall Heat Flux)@Line on the curve to get the average Wall heat flux at that countour.

Pyotr December 3, 2016 19:29

Hi Antanas and Glenn,


I did what you suggested, and the data I extracted from the polyline are about 1.5% higher, on average, than the ones I got from areaAve(Wall Heat Flux) at the cross-section.


Thanks a lot!


All times are GMT -4. The time now is 15:00.