answers to those doggone thermal design questions by tony kordyban
dear tony,
there is disagreement here in my crossfunctional work team about how to determine the percent error when comparing measured temperatures with cfd predictions. sometimes when component temperature predictions seem close to measured numbers we feel good but i think the actual percent error may be quite high. i realize this is not a simple issue  but let's assume for the sake of simplicity that the measured values are accurate and the cfd model is as good as it can get.
how would you calculate the error in temperature predictions in the following examples?

scenario 1

scenario 2

ambient temperature

65°c

23°c

measured component temperature

92°c

86°c

cfd predicted component temperature

95°c

89°c

in which scenario would you say the cfd tool did a better job?
rhett from atlanta
dear rhett,
you ran a cfd analysis and came out within 3 degrees c of a measured result? congratulations! you are better at cfd modeling than i am. if i could routinely predict electronic component temperatures to within plus or minus 3 degrees c, i would not bother with calculating the percent error. who cares what the relative accuracy is?
temperature is what you really want to predict, and it seems to me from your examples that you are doing a great job.
but i can read between the lines of your email, (using a special feature of microsoft outlook), and i detect a more general question. i am assuming from the way you frame your question that your disagreement is between two different ways of computing the percent error. one way would be to compare the "error" between the prediction and the measurement to the measured component temperature. the second way would be to compare the error to the temperature rise above ambient of the measurement. let's try it both ways:

error

% error based on t_{component}

% error based on (t_{component } t_{ambient})

scenario 1

3c

3/92 = 3%

3 / (92  65) = 11%

scenario 2

3c

3/86 = 3%

3 / (86  23) = 5%

if the basis for your error calculation is just the component temperature measurement, the percent error for both scenarios is about the same, and quite low, at about 3%.
but if you base the percent error on the component temperature rise above ambient, you get a somewhat different picture. the percent error for the two scenarios is quite different. the percent error for scenario 1 is more than double that for scenario 2. (in my opinion, the error, and the percent error, are still quite low, but that all depends on what you expect your cfd tool to accomplish.)
you gave away your own view on the matter when you supplied the ambient temperature for each scenario. of course the only correct way is to base the percent error on the temperature rise! the celsius temperature scale is a relative one. you can't make ratios of temperatures. is 100°c twice as hot as 50°c? what is twice as cold as 0 degrees c?
if you can stand to hear some more explaining on this topic, i'd like to give you a more general reason to do it my way. more general than just the fact that celsius degrees are based only on the boiling and freezing points of water. it has to do with basic error analysis, something that more people should be doing when they report cfd or measurement results.
your question is: how accurately can cfd predict temperature?
but to be more specific, you should be asking : how accurately can cfd do what it is supposed to do?
because cfd does not predict temperatures.
whoa! don't panic, flotherm and icepak folks! you'll be agreeing with me in a second. of course your cfd (and any other software like it) does not calculate temperatures. they can't.
let's look at the simplest problem you could solve with cfd: a single heated object surrounded by an ambient fluid. you wouldn't use cfd to solve it because you could do it by hand. you would use an equation like this:
t_{object} = t_{fluid} + power / (h x area)
your cfd tool doesn't calculate t_{object} . the most you can claim that it is responsible for is the temperature rise above the fluid, (t_{object}  t_{fluid}). the fluid temperature is a boundary condition! you supply it as an input number, and the cfd tool just spits it back out at you as a piece of the object temperature result. does it make any sense to include the magnitude of input temperature when you are trying to estimate how well the cfd is working?
that's what i mean when i claim that cfd doesn't predict temperature. it predicts the temperature rise of the objects in the system above the ambient fluid. (in a real problem, cfd does a lot more than that  calculating the temperature rise of the fluid as it passes through the system. my point is that cfd does not calculate its own boundary conditions, especially the ambient temperature.)
so for judging the accuracy of cfd predictions, we should ignore the ambient, and look only at the temperature rise, given by:
t_{object}  t_{fluid} = power / (h x area)
now we can talk about some error analysis. check out the right side of this equation and you might notice that the temperature rise calculated by cfd depends on a couple of other inputs  power and area. the temperature rise is directly proportional to the power value supplied by you, the user. a 10% overestimate of component power will lead to a 10% overprediction of the temperature rise. the same thing applies to the area. if you specify the geometry in your cfd problem incorrectly, that will cause errors in the temperature rise.
this concept is actually useful when you are trying to decide how accurate your cfd prediction is. before you start comparing temperatures, compare the power values you put into your cfd tool to the actual component power in your measurement. if your power estimates were 30% off, how could you expect the temperature rise predictions to be any closer than that?
now you can see why i was stunned by your scenarios. if you had a real circuit board for which cfd had consistently predicted component temperatures to within 3 degrees c, and even if the percent error was as high as 11%, that would mean you had known the component power to within 11% of the value it was when you measured it. rhett, can you really get your power estimates that close before you build your circuits? if so, please share the secret with me. together, we will rule the electronics cooling world.
dear tony,
isn't your characterization of cfd much too simple? cfd doesn't use a onedimensional heat convection equation to calculate component temperatures. it's a full solution of the navierstokes equations.
paul from left bank cfd company
dear paul,
well, sure.
my excuse for simplification is that it is really hard to display all those italic greek letters you need to spell out partial differential equations in a web page.
plus nobody would read it.
so i represented the general process of heat transfer between a simple object and a surrounding fluid with this simple equation:
t_{object} = t_{fluid} + power / (h x area)
the term "h" is the convective coefficient. in hand calculation you would estimate it from an empirical correlation. cfd does not solve heat transfer that way. i used that deceptively tiny letter "h" to represent the complex algorithms used by cfd to solve energy and momentum balance equations to calculate the pressure, velocity and temperature fields for the problem.
but i am pretty sure that power and area inputs have the same general influence on those complex algorithms as they do on the onedimensional convection equation. so even if you use a sophisticated finitevolume cfd solver to find the temperature of a single heated component, you would have to say that a 10% error in the power input will give you about a 10% error in the temperature rise calculation. that would be on top of any errors due to numerical roundoffs, geometric oversimplifications, turbulence approximations, or inadequate gridding.
i still find estimating power to be my biggest source of mismatch between cfd results and measurements. so i try to spend more time on refining those power estimates rather than agonizing over which turbulence model best represents the flow between my circuit boards.
about tony kordyban
tony kordyban has been an engineer in the field of electronics cooling for different telecom and power supply companies (who can keep track when they change names so frequently?) for the last 20 years. maybe that doesn't make him an expert in heat transfer theory, but it has certainly gained him a lot of experience in the ways not to cool electronics.
he does have some booklearnin', with a b.s. in mechanical engineering from the university of detroit and a master’s in mechanical engineering from stanford. in those 20 years tony has come to the conclusion that a lot of the common practices of electronics cooling are full of baloney. he has run into so much nonsense in the field that he has found it easier to just assume "everything you know is wrong" (from the comedy album by firesign theatre), and to question everything against the basic principles of heat transfer theory.
tony has been collecting case studies of the wrong way to cool electronics, using them to educate the cooling masses, applying humor as the sugar to help the medicine go down. these have been published recently by the asme press in a book called, "hot air rises and heat sinks: everything you know about cooling electronics is wrong." it is available at https://www.amazon.com/hotairrisesheatsinks/dp/0791800741. this advice column is an extension of that educational effort.
