Many materials have a specific heat which varies with temperature, especially as the temperature change grows large. How does one calculate the heat energy that an object receives in this case? Can we simply use the specific heat capacity at the beginning temperature or the end temperature?


In a similar vein to my answer about calculating the lever force in a continuous situation; you need to use integration.

You start by taking the standard heat law that you are familiar with $$ \Delta Q=c\ m\ \Delta T $$ and replacing the $\Delta$s with differentials: $$ dQ=c(T)\ m\ dT. $$ This new equation reads: For an infinitesimal (very tiny) change in temperature, I get an infinitesimal (very tiny) change in the heat. In the limit of infinitesimals everything is linear so this simple linear equation still holds. Now you simply sum up all of the infinitesimal changes in the heat flux using integration $$ \Delta Q=m\int_{T_i}^{T_f}c(T)\ \ dT. $$ If you don't actually want to do the integration, that's ok. Matlab will have no problem doing this for you, and the Matlab approach works even if you don't have an analytic function to describe $c(T)$ (i.e. you only have data). If you don't have access to Matlab, then use Python. It's free, open source, and incredibly powerful.

  • $\begingroup$ Don't get me wrong, I am a big fan of Python, but GNU Octave seems like a better fit in the role of free alternative to MATLAB. For one thing, it's compatible with .mat files. $\endgroup$
    – Air
    Mar 20 '15 at 21:22
  • $\begingroup$ @Air That may be true; I've never really used Octave. The switch to Python from Matlab isn't a difficult one though, and it is, I believe, a more well developed language than Octave. I also know that Python's numerical integration routines (part of SciPy) are robust because I've used them a number of times. $\endgroup$ Mar 21 '15 at 15:01

Neither. In this sort of situation, there's no "simple" linear solution; you need to use integral calculus to add up the incremental heat absorbed at each temperature along the way. The only time that this calculation becomes a simple multiplication is when the quantity being integrated (the specific heat) is a constant over the range of the integration.



As has already been pointed out, this is not trivial to do, but here is a suggested method:

  1. accurately measure out a certain quantity of fuel, then burn that fuel and use a material with a very constant or otherwise well known specific heat capacity to determine how much energy your test piece is receiving through time by recording it's temperature.
  2. use the same quantity of fuel, in the same apparatus, with a test piece of identical geometric properties but a different material and repeat the experiment. This time you assume the energy which your test piece receives based on step 1 and use the recorded temperature to determine the specifc heat capacity of the material.
  3. now that you have the specific heat capacity curve for this material, use it like any other material but integrate your curve over the temperature span you measure to determine the quantity of heat energy absorbed.

This method isn't perfect, it relies on linear superposition which isn't perfectly valid for temperature as some factors of heat exchange have a non-linear dependancy, but it's not a bad method for "calibrating" your material at a basic level.


I'd try and fit the material to a model.
The Debye model is the "standard". (sorry the wiki article is a bit over the top.) In the Debye model the material can be fit with one "Debye temperature".

Edit upon request. (though, I would trust the wiki article over my answer.) At high temperatures, (but not too high) materials have a heat capacity that is equal to 3kT * N, where N is the number of atoms. (It's only atoms and not electrons that count for heat capacity, which is interesting...) As the temperature drops atoms stop shaking so much and some of the vibrational modes "freeze out". The modes are at such a high energy that there is not enough thermal energy to excite them. The Debye temperature is a rough measure of where modes freeze out, and the heat capacity starts to decrease.

  • $\begingroup$ Could you add a little more information rather than just a link? $\endgroup$
    – hazzey
    Mar 24 '15 at 23:04

If you have an equation $Cp=f(T)$, the problem is simple (as long as the integration does not make any problem) since $$\Delta Q=m\int_{T_i}^{T_f}Cp(T)\ \ dT$$ as Chris Mueller answered.

Let us admit that you only know $Cp(T_i)$ and $Cp(T_f)$. So, interpolate linearly to get $$Cp(T)=Cp(T_i)+\frac{Cp(T_f)-Cp(T_i)}{T_f-T_i} (T-T_i)$$ and, integrating, you will then get $$\Delta Q=m\, \frac{Cp(T_f)+Cp(T_i)}2 \,(T_f-T_i)$$ which shows that you just need to use the average value of the known $Cp$'s.

  • $\begingroup$ this is exactly right when $c_p$ function is linear; in all the other cases it's an approximation, good or bad approximation depending on $\delta T$ and on how and much $c_p$ function change with $T$ $\endgroup$
    – mattia.b89
    Aug 11 '15 at 8:14
  • $\begingroup$ @mattia.b89. You are totally correct but, from a practical point of view, over a limited range of temperature, $Cp$ is almost a constant and a linear approximation is quite good. When this is not the case, for sure, we need more information (fit the experimental data and integrate). $\endgroup$ Aug 11 '15 at 8:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.