Tag Archives: Heat transfer

Modeling solar thermal power using heliostats in Energy2D

An array of heliostats in Energy2D (online simulation)
A new class of objects was added in Energy2D to model what is called a heliostat, a device that can automatically turn a mirror to reflect sunlight to a target no matter where the sun is in the sky. Heliostats are often used in solar thermal power plants or solar furnaces that use mirrors. With an array of computer-controlled heliostats and mirrors, the energy from the sun can be concentrated on the target to heat it up to a very high temperature, enough to vaporize water to create steam that drives a turbine to generate electricity.

Image credit: Wikipedia
The Ivanpah Solar Power Facility in California's Mojave Desert, which went online on February 13, 2014, is currently the world's largest solar thermal power plant. With a gross capacity of 392 megawatts, it is enough to power 140,000 homes. It deploys 173,500 heliostats, each controlling two mirrors.

A heliostat in Energy2D contains a planar mirror mounted on a pillar. You can drop one in at any location. Once you specify its target, it will automatically reflect any sunlight beam hitting on it to the target.

Strictly speaking, heliostats are different from solar trackers that automatically face the sun like sunflowers. But in Energy2D, if no target is specified, as is the default case, a heliostat becomes a solar tracker. Unlike heliostats, solar trackers are often used with photovoltaic (PV) panels that absorb, instead of reflecting, sunlight that shine on them. A future version of Energy2D will include the capacity of modeling PV power plants as well.

Energy2D video tutorials in English and Spanish

Many users asked if there is any good tutorial of Energy2D. I apologize for the lack of a User Manual and other tutorial materials (I am just too busy to set aside time for writing up some good documentations).


So Carmen Trudell, an architect who currently teaches at the School of Architecture of the University of Virginia, decided to make a video tutorial of Energy2D for her students. It turned out to be an excellent overview of what the software is capable of doing in terms of illustrating some basic concepts related to heat transfer in architectural engineering. She also kindly granted permission for us to publish her video on Energy2D's website so that other users can benefit from her work.

If you happen to come from the Spanish-speaking part of the world, there is also a Spanish video tutorial made by Gabriel Concha based on an earlier version of Energy2D.

The deception of unconditionally stable solvers

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

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.

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

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

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

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

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

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.

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.