Posts Tagged ‘Heat transfer’

The deception of unconditionally stable solvers

December 21st, 2014 by Charles Xie
Unconditionally stable solvers for time-dependent ordinary or partial differential equations are desirable in game development because they are highly resilient to player actions -- they never "blow up." In the entertainment industry, unconditionally stable solvers for creating visual fluid effects (e.g., flow, smoke, or fire) in games and movies were popularized by Jos Stam's 1999 paper "Stable Fluids."

Figure 1: Heat conduction between two objects.
The reason that a solver explodes is because the error generated in a numerical procedure gets amplified in iteration and grows exponentially. This occurs especially when the differential equation is stiff. A stiff equation often contains one or more terms that change very rapidly in space or time. For example, a sudden change of temperature between two touching objects (Figure 1) creates what is known as a singularity in mathematics (a jump discontinuity, to be more specific). Even if the system described by the equation has many other terms that do not behave like this, one such term is enough to crash the whole solver if it is linked to other terms directly or indirectly. To avoid this breakdown, a very small time step must be used, which often makes the simulation look too slow to be useful for games.

The above problem typically occurs in what is known as the explicit method in the family of the finite-difference methods (FDMs) commonly used to solve time-dependent differential equations. There is a magic bullet for solving this problem. This method is known as the implicit method. The secret is that it introduces numerical diffusion, an unphysical mechanism that causes the errors to dissipate before they grow uncontrollably. Many unconditionally stable solvers use the implicit method, allowing the user to use a much larger time step to speed up the simulation.

There ain't no such thing as a free lunch, however. It turns out that we cannot have the advantages of both speed and accuracy at the same time (efficiency and quality are often at odd in reality, as we have all learned from life experiences). Worse, we may even be deceived by the stability of an unconditionally stable solver without questioning the validity of the predicted results. If the error does not drive the solver nuts and the visual looks fine, the result must be good, right?

Figure 2: Predicted final temperature vs. time step.
Not really.

The default FDM solver in Energy2D for simulating thermal conduction uses the implicit method as well. As a result, it never blows up no matter how large the time step is. While this provides good user experiences, you must be cautious if you are using it in serious engineering work that requires not only numerical stability but also numerical reliability (in games we normally do not care about accuracy as long as the visual looks entertaining, but engineering is a precision science). In the following, I will explain the problems using very simple simulations:

1. Inaccurate prediction of steady states

Figure 3. Much longer equilibration with a large time step.
Figure 1 shows a simulation in which two objects at different temperatures come into contact and thermal energy flows from the high-temperature object into the low-temperature one. The two objects have different heat capacities (another jump discontinuity other than the difference in initial temperatures). As expected, the simulation shows that the two objects approach the same temperature, as illustrated by the convergence of the two temperature curves in the graph. If you increase the time step, this overall equilibration behavior does not change. Everything seems good at this point. But if you look at the final temperature after the system reaches the steady state, you will find that there are some deviations from the exact result, as illustrated in Figure 2, when the time step is larger than 0.1 second. The deviation stabilizes at about 24°C -- 4°C higher than the exact result.
Figure 4. Accurate behavior at a small time step.

2. Inaccurate equilibration time

The inaccuracy at large time steps is not limited to steady states. Figure 3 shows that the time it takes the system to reach the steady state is more than 10 times (about 1.5 hours as opposed to roughly 0.1 hours -- if you read the labels of the horizontal time axis of the graph) if we use a time step of 5 seconds as opposed to 0.05 second. The deceiving part of this is that the simulation appears to run equally quickly in both cases, which may fool your eyes until you look at the numerical outputs in the graphs.

3. Incorrect transient behaviors

Figure 5. Incorrect behavior at a very large time step.
With a more complex system, the transient behaviors can be affected more significantly when a large time step is used. Figure 4 shows a case in which the thermal conduction through two materials of different thermal conductivities (wood vs. metal) are compared, with a small time step (1 second). Figure 5 shows that when a time step of 1,000 seconds is used, the wood turns out to be initially more conductive than metal, which, of course, is not correct. If the previous example with two touching objects suggests that the simulation result can be quantitatively inaccurate at large time steps, this example means that the results can also be qualitatively incorrect in some cases (which is worse).

The general advice is to always choose a few smaller time steps to check if your results would change significantly. You can use a large time step to set up and test your model rapidly. But you should run your model at smaller time steps to validate your results.

The purpose of this article is to inform you that there are certain issues with Energy2D simulations that you must be aware if you are using it for engineering purposes. If these issues are taken care of, Energy2D can be highly accurate for conduction simulations, as illustrated by this example that demonstrates the conservation of energy of an isolated conductive system.

European scientists use Energy2D to simulate submarine eruptions

December 9th, 2014 by Charles Xie
The November issue of the Remote Sensing of Environment published a research article "Magma emission rates from shallow submarine eruptions using airborne thermal imaging" by a team of Spanish scientists in collaboration with Italian and American scientists. The researchers used airborne infrared cameras to monitor the 2011–2012 submarine volcanic eruption at El Hierro, Canary Islands and used our Energy2D software to calculate the heat flux distribution from the sea floor to the sea surface. The two figures in the blog post are from their paper.

According to their paper, "volcanoes are widely spread out over the seabed of our planet, being concentrated mainly along mid-ocean ridges. Due to the depths where this volcanic activity occurs, monitoring submarine volcanic eruptions is a very difficult task." The use of thermal imaging in this research, unfortunately, can only detect temperature distribution on the sea surface. Energy2D simulations turn out to be a complementary tool for understanding the vertical body flow.

Their research was supported by the European Union and assisted by the Spanish Air Force. Sadly, the intense daily flights to monitor the eruptions has cost the life of an air force pilot. I could not help wondering if our Energy2D simulation software has helped reduce the risks.

Although Energy2D started out as an educational program, we are very pleased to witness that its power has grown to the point that even scientists find it useful in conducting serious scientific research. We are totally thrilled by the publication of the first scientific paper that documents the validity of Energy2D as a research tool and appreciate the efforts of the European scientists in adopting this piece of software in their work.

Visualizing the "thermal breathing" of a house in 24-hour cycle with Energy3D

September 9th, 2014 by Charles Xie
The behavior of a house losing or gaining thermal energy from the outside in a 24-hour cycle, when visualized using Energy3D's heat flux view, resembles breathing, especially in the transition between seasons in which the midday can be hot and the midnight can be cold. We call this phenomenon the "thermal breathing" of a house. This embedded YouTube video in this blog post illustrates this effect. For the house shown in the video, the date was set to be May 1st and the location is set to Santa Fe, New Mexico.


This video only shows the daily thermal breathing of a house. Considering the seasonal change of temperature, we may also definite a concept "annual thermal breathing," which describes this behavior on an annual basis.

This breathing metaphor may help students build a more vivid mental picture of the dynamic heat exchange between a house and the environment. Interestingly, it was only after I realized this thermal visualization feature in Energy3D that this metaphor came to my mind. This experience reflects the importance of doing in science and engineering: Ideas often do not emerge until we get something concrete done. This process of externalization of thinking is critically important to the eventual internalization of ideas or concepts.

Simulating cool roofs with Energy3D

August 20th, 2014 by Charles Xie
Fig. 1: Solar absorption of colors.
Cool roofs represent a simple solution that can save significant air-conditioning cost and help mitigate the urban heat island effect, especially in hot climates. Nobel Prize winner and former Secretary of Energy Steven Chu is a strong advocate of cool roofs. It was estimated that painting all the roofs and pavements around the world with reflective coatings would be "equivalent to getting 300 millions cars off the road!"

With Version 4.0 of Energy3D (BTW, this version supports 200+ worldwide locations -- with 150+ in the US), you can model cool roofs and evaluate how much energy you can save by switching from a dark-colored roof to a light-colored one. All you need to do is to set the colors of your roofs and other building blocks. Energy3D will automatically assign an albedo value to each building block according to the lightness of its color.

Figure 1 shows five rectangles in different gray colors (upper) and their thermal view (lower). In this thermal view, blue represents low energy absorption, red represents high energy absorption, and the colors in-between represents the energy absorption at the level in-between.

Now let's compare the thermal views of a black roof and a white roof of a cape code house, as shown in Figure 2. To produce Figure 2, the date was set to July 1st, the hottest time of the year in northern hemisphere, and the location was set to Boston.

Fig. 2: Compare dark and white roofs.
How much energy can we save if we switch from a perfectly black roof (100% absorption) to a perfectly white roof (0% absorption)? We can run the Annual Energy Analysis Tool of Energy3D to figure this out in a matter of seconds. The results are shown in Figure 3. Overall, the total yearly energy cost is cut from 6876 kWh to 6217 kWh for this small cape code house, about 10% of saving.

Figure 3 shows that the majority of savings comes from the reduction of AC cost. The reason that the color has no effect on heating in the winter is because the passive solar heat gains through the windows in this well-insulated house is enough to keep it warm during the sunshine hours. So the additional heat absorbed by the black roof in the same period doesn't offset the heating cost (it took me quite a while to figure out that this was not a bug in our code but actually the case in the simulation).

Fig. 3: Compare heating and AC costs (blue is white roof).
Of course, this result depends on other factors such as the U-value and thermal mass of the roof. In general, the better the roof is insulated, the less its color impacts the energy cost. With Energy3D, students can easily explore these design variables.

This new feature, along with others such as the heat flux visualization that we have introduced earlier, represents the increased capacity of Energy3D for performing function design using scientific simulations.

Here is a video that shows the heating effect on roofs of different colors.

Visualization of heat flux in Energy3D using vector fields

August 14th, 2014 by Charles Xie
Fig. 1: Winter in Boston
One of the strengths of our Energy3D CAD software is its 3D visualizations of energy transfer. These visualizations not only allow students to see science concepts in action in engineering design, but also provide informative feedback for students to make their design choices based on scientific analyses of their design artifacts.

Fig. 2: Summer in Boston
A new feature has been added to Energy3D to visualize heat transfer across the building envelope using arrays of arrows. Each arrow represents the heat flux at a point on the surface of the building envelope. Its direction represents the direction of the heat flux and its length represents the magnitude of the heat flux, calculated by using Fourier's Law of Heat Conduction. Quantitatively, the length is proportional to the difference between the temperatures inside and outside the building, as well as the U-value of the material.

Fig. 3: Winter in Miami
The figures in this post show the heat flux visualizations of the same house in the winter and summer in Boston and Miami, respectively. Like the solar radiation heat map shown in the figures, the heat flux is the daily average. The U-value of the windows is greater than those of the walls and roof. Hence, you can see that the heat flux vectors in the winter sticking out of the windows are much longer than those sticking out of the walls or roof. In the summer, the heat flux vectors point into the house but they are much shorter, agreeing with the fact that Boston's summer is not very hot.

Fig. 4: Summer in Miami
Now move the same house to Miami. You can see that even in the winter, the daily average heat flux points inside the house, agreeing with the fact that Miami doesn't really have a winter. In the summer, however, the heat flux into the house becomes significantly large.

These visualizations give students clear ideas about where a house loses or gains energy the most. They can then adjust the insulation values of those weak points and run simulations to check if they have been fixed or not. Compared with just giving students some formulas or numbers to figure out what they actually mean to science and engineering practices, experiential learning like this should help students develop a true understanding of thermal conduction and insulation in the context of building science and technology.

Here is a YouTube video of the heat flux view.

Multiphysics simulations of inelastic collisions with Energy2D

July 4th, 2014 by Charles Xie
Figure 1. Mechano-thermal simulation of inelastic collision.
Many existing simulations of inelastic collisions show the changes of speeds and energy of the colliding objects without showing what happens to the lost energy, which is often converted into thermal energy that spreads out through heat transfer. With the new multiphysics modeling capabilities, the Energy2D software can show the complete picture of energy transfer from the mechanical form to the thermal form in a single simulation.

Figure 2. Thermal marks left by collisions.
Figure 1 shows the collisions of three identical balls (mass = 10 kg, speed = 1 m/s) with three fixed objects that have different elasticities (0, 0.5, and 1). The results show that, in the case of the completely inelastic collision, all the kinetic energy of the ball (5 J) is converted into thermal energy of the rectangular hit object (at this point, the particles in Energy2D do not hold thermal energy, but this will be changed in a future version), whereas in the case of completely elastic collision, the ball B1 does not lose any kinetic energy to the hit object. In the cases of inelastic collisions, you can see the thermal marks created by the collisions. The thermometers placed in the objects also register a rise of temperatures. This view resembles infrared images of floors taken immediately after being hit by tennis balls.

Figure 3. Collisions in Energy2D.
Energy2D supports particle collisions with all the 2D shapes that it provides: rectangles, ellipses, polygons, and blobs. Figure 2 shows the thermal marks on two blobs created by a few bouncing particles. And Figure 3 shows another simulation of collision dynamics with a lot of particles bouncing off complex shapes (boy, it took me quite a while in this July 4 weekend to hunt down most of the bugs in the collision code).

The multiphysics functionality of Energy2D is an exciting new feature as it allows more realistic modeling of natural phenomena. Even in science classrooms, realism of simulations is not just something that is nice to have. If computer simulations are to rival real experiments, it must produce not only the expected effects but also the unexpected side effects. Capable of achieving just that, a multiphysics simulation can create a deep and wide learning space just like real experiments. For engineering design, this depth and breadth are not options -- there is no open-endedness without this depth and breadth and there is no engineering without open-endedness.

Simulating thermal radiation with Energy2D

June 27th, 2014 by Charles Xie
Figure 1: Stefan's Law in action.
The original ray-tracing radiation solver in our Energy2D software suffers from performance problems as well as inaccuracies (no, light particles do not travel that slowly as shown in it). After some sleepless nights, I finally implemented a real radiation solver, coupled it with the heat and fluid solvers, and supported both the convex and concave shapes (see this short paper for the mathematics and the algorithms). At last, Energy2D is capable of simulating all three heat transfer mechanisms in a decent way.

Figure 2: Radiation in a box.
Able to simulate heat, fluid, radiation, particles, and any combination of them, Energy2D is now one step closer towards a full multiphysics capacity. Despite the fact that all these complex calculations are done in real time on a single computer, the software still runs at a pretty amazing speed on an average Windows tablet (such as the Surface Pro). I guess this is why our industry friends love it (although Energy2D is mostly designed for K-12 students, to my surprise, quite a number of engineers are using it to do conceptual product design). Who doesn't like a CFD tool for dummies that can save time from the long preprocessor-solver-postprocessor cycle?

Figure 1 shows a simulation that illustrates radiation heat transfer. As you can see, energy can "jump" from a high-temperature object (a radiator) to a low-temperature one without heating the medium between them (unlike the cases of conduction and convection). Users
Figure 3. Radiation in a circle.
can adjust the temperature of the radiator on the left and investigate how the radiation heat transfer increases with respect to the temperature, as per Stefan-Boltzmann's Law. The image also shows the view factor field used in the computation. The simulation provides many subtleties. For example, if you observe carefully, you can find that the radiation barrier used to separate the left compartment from the right one increases the heating on the right side of the upper left object and the left side of the upper right object -- because it reflects the radiation from the two radiators at the lower part of the box to the two sides!

Figures 2 and 3 show radiation among different shapes in an enclosed space. They show how accurate the radiation solver may be. The radiation heating on the side walls seems to make sense. In Figure 2, the upper one gets the most radiation energy because it is the closest to the radiator. The right one gets the least because part of it is blocked from the radiator by the other object in a box. A further test case using a symmetric setup shows its accuracy.

Temperature change may not represent heat transfer; heat flux does.

May 4th, 2014 by Charles Xie
Figure 1 (go to simulation)
There has been some confusion lately about the heat transfer representations in Energy2D simulations. By default, Energy2D shows the temperature distribution and uses the change of the distribution to visualize heat flow. This is all good if we have only one type of medium or material. But in reality, different materials have different thermal conductivities and different volumetric heat capacities (i.e., the ability of a given volume of a substance to store thermal energy when the temperature increases by one degree; the volumetric heat capacity is in fact the specific heat multiplied by the density).

A
Figure 2 (go to simulation)
According to the Heat Equation, the change of temperature is affected by the thermal diffusivity, which is the thermal conductivity divided by the volumetric heat capacity (now that I have written the terminology down, I can see why these terms are so confusing). In general, a higher thermal conductivity and a lower volumetric heat capacity will both result in faster temperature change.

To illustrate my points, Figure 1 shows a comparison of temperature changes in two materials. The pieces that have the same texture are made of the same material. The upper ones have a lower thermal conductivity but a higher thermal diffusivity. The lower ones have a higher thermal conductivity but a lower thermal diffusivity. In both upper and lower setups, the piece on the left side maintains a higher temperature to provide the heat source. Everything else starts with a low temperature initially. The entire container is completely insulated -- no heat in, no heat out. Two thermometers are placed just at the right ends of the middle rods. Their results show that the temperature rises more quickly in the upper setup (Figure 1) -- because it has a higher diffusivity.

The fact that something diffuses faster doesn't mean it diffuses more. In order to see that, we can place two heat flux sensors somewhere in the rods to capture the heat flows. Figure 2 shows the results from the heat flux sensors. Obviously, there is a lot more heat flow in the lower setup in the same time period.

Figure 3 (go to simulation)
The conclusion is that it is the heat flux, not the temperature change, that ultimately measures heat transfer. If you want to know how fast heat transfer occurs, the thermal conductivity is a good measure. However, if you want to know how fast temperature changes, the thermal diffusivity is a good measure. This may be also important to remember for those who use infrared cameras: Infrared cameras only measure temperature distribution, so what we really see from infrared images is actually thermal diffusion and thermal diffusion alone could be deceiving.

Figure 4 (go to simulation)
To make this even more fun (or confusing), let's replace the pieces on the right of the container with two pieces that are made of the same material that has a volumetric heat capacity between those of the other upper and lower ones. You wouldn't think this change would affect the results, at least not qualitatively. But the truth is that, the temperature in the lower setup in this case rises more quickly than the temperature in the upper setup -- exactly opposite to the case shown in Figure 1! The surprising result indicates how unreliable temperature change may be as an indicator of heat transfer. In this case, the temperature field of the middle rod is affected by what it is connected with. If we look at the results from the heat flux sensors (Figure 4), the heat flux that goes through the rod is much higher in the lower setup. This once again shows that heat flux is a more reliable measure of heat transfer.

In Energy2D, we have implemented an Energy Field view to supplement the Temperature Field view to remedy this problem.

Getting sensor data out of Energy2D

February 9th, 2014 by Charles Xie
Figure 1: Copy data from Energy2D.
Since a few users asked if the simulation data in Energy2D can be exported to other applications such as Excel, I have added a feature to the app for extracting virtual sensor data as multi-column time series data. For the user's convenience, there are three different ways of getting these data:
  1. When right-clicking on a sensor, the "View Data..." from the popup menu returns the data that has been recorded by the selected sensor.
  2. When right-clicking on a spot not occupied by a sensor, the "View Data..." from the popup menu returns a tabbed pane that contains all the sensor data -- different types of sensor are organized in different tabs.
  3. When the translucent graph is open, clicking the View Data button on the graph window's control panel returns the data recorded by all the sensors of the selected type, in consistent with the current display of the data in the graph window.
Figure 2: Paste data into Excel.
Regardless of which way you use, use the "Copy Data" button at the bottom of the data window to copy the data (Figure 1) and paste it into Excel. Once you get the data into Excel, you can process and plot them in any way you want (Figure 2). This feature is very handy if you need to combine data from multiple simulations into a single graph.

Note: This feature only works for the app. For security reason, the embedded applet is not allowed to access the System Clipboard (this is understandable, because people often copy and paste important information!)

Season’s greetings from Energy2D

December 14th, 2013 by Charles Xie
I have been so swamped in fund raising these days that I haven't been able to update this blog for more than two months. Since it is the time of the year again, I thought I should just share a holiday video made by Matthew d'Alessio, a professor at California State University Northridge, using our signature software Energy2D.

The simulator currently attracts more than 5,000 unique visitors each month, a number that probably represents a sizable portion of engineering students studying the subject of heat transfer on the planet. Over the past year, I have received a lot of encouraging emails from Energy2D's worldwide users. Some of them even compared it with well-known engineering programs. Franco Landriscina at the University of Trieste has written Energy2D into his recent Springer book "Simulation and Learning: A Model-Centered Approach."

I am truly grateful for these positive reactions. I want to say "Thank You" for all your nice words. There is nothing more rewarding than hearing from you on this fascinating subject of fluid dynamics and heat transfer. Rest assured that the development of this program will resume irrespective of its funding. In 2014, I hope to come up with a better radiation solver, which I have been thinking for quite a long time. It turns out that simulating radiation is much more difficult than simulating convection!

Here is a tutorial video in Spanish made by Gabriel Concha.