How do you calculate the entropy for a molecule or atom?

1 Answer
Jul 10, 2017

Well, it's a lot more complicated than it seems... I think it's best if you stick to just using the value of the standard molar entropy as seen in your textbook appendix, not calculating it from scratch.

Boltzmann's entropy equation was:

#S = k_Blnt#,

where:

  • #t# is the distribution function for the microstates in a system.
  • #k_B# is the Boltzmann constant.

This says that the entropy of a system, which is the amount of energy dispersal throughout the system, increases with the number of microstates available to the system. It would make sense then that the entropy is a function of temperature.

DISCLAIMER: The rest of this answer demonstrates how to use this equation. You don't have to know how to use it, but if you really want to know, it's right here.

APPLYING THE BOLTZMANN ENTROPY EQUATION

Perhaps the way with the least hassle that I found is to start from a known expression for the distribution function #lnt#.

For statistically-dilute systems (i.e. those where many more states are available than occupied; so most systems), we can take #ln t# to be an explicit distribution of "corrected-boltzon" particles:

#lnt = sum_i [N_i ln (g_i/N_i) + N_i]#,

where:

  • #N_i# is the number of particles in state #i# with energy #epsilon_i#.
  • #g_i# is the degeneracy of state #i# for energy #epsilon_i#.

It turns out that the ratio #N_i/N# is

#N_i/N = (g_i e^(-betaepsilon_i))/(q)#,

where #q = sum_i g_i e^(-betaepsilon_i)# is the microcanonical partition function for the system of particles, and #beta = 1//k_BT#.

So, with some derivation (which is omitted for brevity), the molecular entropy can be written as (Statistical Mechanics, Norman Davidson):

#color(blue)(S/N = k_Bln(q/N) + (<< epsilon>>)/T + k_B)#,

where #<< epsilon >> = E/N = k_B T^2 ((del ln (q//N))/(delT))_V# is the molecular internal energy.

By knowing the single-molecule partition function #q/N# for a given molecule at the particular temperature range of interest, the molecular entropy can thus be calculated all in one go.

For another, more tedious approach, see here.

The actual number-chugging of this calculation is beyond the scope of what we need to get into, so I'll just place an example partition function and molecular energy expression here, and show the results.

METHANE PARTITION FUNCTION + MOLECULAR INTERNAL ENERGY

All of this is assuming the high temperature limit for translations and rotations. All masses here are in #"amu"#, temperatures are in #"K"#, and the Boltzmann constant is #k_B ~~ "0.695 cm"^(-1)"/K"#.

(The translational partition function uses a #"1 atm"# standard state. The rotational partition function for a symmetric top was used, i.e. #I_x = I_y = I_z -= I#.)

#q/N ~~ q_(tr)/Nq_(rot)q_(vib)#

#= overbrace(0.02560M^(3//2)T^(5//2))^(q_(tr)) cdot overbrace(0.014837/sigma I^(3//2)T^(3//2))^(q_(rot)) cdot overbrace(prod_(i=1)^(4) [e^(-omega_i//2k_BT)/(1 - e^(-omega_i//k_BT))])^(q_(vib))#,

where:

  • #M = "16.0426 amu"# is the molar mass of methane.
  • #I = "3.2164 amu"cdot Å^2# is the moment of inertia for methane.
  • #sigma = 12# is the symmetry number for methane, the number of proper rotations #+1# for methane (#hatE + 8hatC_3 + 3hatC_2 = 12#).
  • #omega_i# is the fundamental frequency of each vibrational mode of methane in #"cm"^(-1)#.
    They are #omega_i = "2917 cm"^(-1)#, #"1534 cm"^(-1)#, #"3019 cm"^(-1)#, and #"1306 cm"^(-1)#, with degeneracies #g_i = 1#, #2#, #3#, and #3#, respectively.

#<< epsilon >> = overbrace(3/2 k_B T)^"translational" + overbrace(3/2 k_B T)^"rotational" + overbrace(sum_(i=1)^(4) [(omega_i)/(2) + (omega_i)/(e^(omega_i//k_BT) - 1)])^"vibrational"#

CALCULATION RESULTS

Here is a screenshot of the spreadsheet I used to do this:

In the end, this would yield:

  • A standard molecular entropy at #"298.15 K"# of #S^@/N = "15.54 cm"^(-1)"/molecule"cdot"K"#.
  • Or, a standard molar entropy at #"298.15 K"# of #S^@ = "185.93 J/mol"cdot"K"#.

In comparison, the actual value from NIST is #S^@ = "186.25 J/mol"cdot"K"#, so #0.17%# error.