|MadSci Network: Earth Sciences|
Your question seems straightforward enough, until you start to think about what you mean by absorbing heat "efficiently". This can mean either of two things: 1. The amount of heat absorbed during a given rise in the temperature of the material. 2. The rate at which heat is absorbed. The first is a matter of heat capacity, and to answer this you must either measure or look up the heat capacity of the materials in question. The second, however, is much more complex. It depends not only on the heat capacity, but the the heat transfer coefficient and whether or not the material is porous. There's something of a further difficulty in that "rock", "sand" and "soil" are not precise terms, and each can be made of quite a large variety of materials. I am going to guess (and it is that, so you may have to resubmit another question after reading this answer) that what you are concerned about is the differences in heat absorbtion due to porosity. In the most common case, rocks, sands, and soils are mostly silicates that differ in the size of the constituent particles. We will take it that we are absorbing the heat from a fluid (either gas or liquid). The governing equation is Q = U * A * delta-T where Q is the heat transferred U is a constant dependent on the materials used, called the heat transfer coefficient A is the area in contact between the sand/soil/rock and fluid delta-T is the temperature dif- ference between fluid and the rock/soil/sand. Now, it is true that rock will have far less area of contact than will sand, which in turn will have far less area of contact than soil. We will take it as given that U is about the same for all 3 materials and that the initial delta-T (which changes as heat is absorbed, of course) is the same. So it'd seem at first glance that soil would be best. Unfortunately, since the pore sizes of soil are quite small, pushing the fluid through it is a good deal harder than with sand. Thus the ability to provide enough hot fluid may be the limiting factor, not the heat transfer coefficient at the fluid/silicate interface, or the internal thermal conductivity of the silicates themselves. This Mad Scientist went through this exercise when thinking about adding a solar heat reservoir to his house. It turns out that fairly small rocks or large gravel was the material of choice for that application, and this was due to the need to be able to circulate the air through the heat absorbing bed fast enough to capture the heat while the sun was shining, but not dissipate a lot of power running the fan. However, it is quite possible that with a smaller souce of fluid (say a small supply of superheated steam into a large bed of silicate) that you might find the fluid circulation to not be an issue and soil may be better than sand. In applications where very slow heat transfer rates are required, but as much heat must be stored in a given volume as possible, even non-porous rock could be the best choice. At the risk of complicating the matter more, let me mention that there are far better heat-absorbing materials than any of rock, sand or soil. These are generally materials associated with a phase change. For solar heating, for example, there are certain salts that change phase at temperatures close to those we nomally like to keep inside our houses. The heat capacity becomes essentially infinite until the phase change is completed (that is, you can absorb heat without having to raise the temperature) and this makes for a very efficient system that can absorb a lot of heat. It also turns out that the amount of heat that can be taken up by a phase change is generally large with respect to the simple warming of a material. Where to go for additional information? You can look up heat capacities of quite a number of materials in handbooks such as the "Handbook of Chemistry and Physics". For the mathematics of heat transfer (a complicated subject that is likely to get into differential equations quite quickly) I can refer you to "Transport Phenomena" by Bird, Stewart, and Lightfoot. For some real data on solar heating, you will need to contact people more active in the field that I am. I'd suggest seeing if there are any civil engineers or architects in your area that specialize in solar heating applications. They may well be willing to help out on a science project by being interviewed, or providing specific data on materials presently in use for the heat storage beds. The U.S. Dept. of Energy has a set of web pages: http://www.er en.doe.gov/buildings/case_study/casestudy.html that includes examples of solar designs, some of which use concrete slabs for heat reservoirs (pretty close to rock), some use pipes through the soil beneath the basement, and some use pea gravel (pretty close to sand). There are a number of different approaches to look at. You might also wish to go to the more general DOE site http://www.eren.doe.gov and browse around.
Try the links in the MadSci Library for more information on Earth Sciences.