Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

2.7. Linear Rigid Rotor

Course-wide Conventions & Notation

Overview and Learning Objectives

The linear rigid rotor models molecular rotation (especially for diatomics) and provides the rotational partition function used in molecular thermodynamics. We derive the quantized rotational levels and their degeneracies, develop the high-TT approximation qrot≈T/(σΘrot)q_{\mathrm{rot}}\approx T/(\sigma\Theta_{\mathrm{rot}}), and obtain the corresponding rotational contributions to the internal energy and heat capacity.

Learning objectives:

Core Ideas and Derivations

Review of the Linear Rigid Rotor

Source
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d.art3d import Poly3DCollection
from scipy.constants import k, eV
from labellines import labelLines
from myst_nb import glue

fig, axs = plt.subplot_mosaic([[0]], figsize=(4, 4))

# Plot the energy levels (blue lines)
for J in range(0, 3):
    g_J = 2 * J + 1
    x_min = -0.04 - 0.1 * (g_J - 1) / 2
    for i in range(g_J):
        # Plot each degenerate sub-level horizontally
        if i == (g_J - 1) / 2:
            energy_line = axs[0].plot(
                [x_min, x_min + 0.08], 
                [J * (J + 1), J * (J + 1)], 
                color='blue',
                label=r'$E_{%d}$' % J
            )
        else:
            axs[0].plot(
                [x_min, x_min + 0.08], 
                [J * (J + 1), J * (J + 1)], 
                color='blue'
            )
        x_min += 0.1
    # Label only one line at each J for clarity
    labelLines(energy_line, zorder=2.5)

axs[0].set_ylabel('Energy (arb. units)')
axs[0].set_xticks([])
axs[0].set_yticks([])
axs[0].spines['top'].set_visible(False)
axs[0].spines['bottom'].set_visible(False)
axs[0].spines['right'].set_visible(False)
axs[0].spines['left'].set_visible(False)

plt.tight_layout()
plt.show()
plt.close(fig)
<Figure size 400x400 with 1 Axes>

Energy levels for a linear rigid rotor. Each level EJE_J has degeneracy gJ=2J+1g_J = 2J + 1 (magnetic quantum numbers m=−J,…,Jm=-J,\ldots,J). For example, the J=2J=2 level contains five degenerate microstates with m=−2,−1,0,1,2m=-2,-1,0,1,2.

For a linear rigid rotor with moment of inertia II, the energy levels are:

EJ  =  ℏ22I J(J+1)forJ=0,1,2,…E_J \;=\; \frac{\hbar^2}{2I}\,J\bigl(J+1\bigr) \quad\text{for}\quad J = 0, 1, 2, \dots

Here, ℏ\hbar is the reduced Planck constant, and gJ=2J+1g_J=2J+1 is the degeneracy of the level EJE_J.

Partition Function for a Linear Rigid Rotor

In the canonical ensemble, the rotational partition function is

qrot  =  ∑i=0∞e−βEi  =  ∑J=0∞gJ e−β EJ  =  ∑J=0∞(2J+1) exp⁡ ⁣[−β ℏ22I J(J+1)].q_{\mathrm{rot}} \;=\; \sum_{i=0}^\infty e^{-\beta E_i} \;=\; \sum_{J=0}^\infty g_J \, e^{-\beta\,E_J} \;=\; \sum_{J=0}^\infty (2J+1)\,\exp\!\Bigl[-\beta \,\frac{\hbar^2}{2I}\,J(J+1)\Bigr].

High-Temperature Approximation

When kBT≫ℏ22Ik_{\mathrm{B}}T \gg \frac{\hbar^2}{2I}, we can approximate the discrete sum by treating JJ as continuous and converting the sum to an integral. Define

x  =  J(J+1),dx  =  (2J+1) dJ.x \;=\; J(J+1), \quad dx \;=\; (2J+1)\,dJ.

Then

qrot  ≈  ∫0∞(2J+1) exp⁡[−β ℏ22I J(J+1)]  dJ  =  ∫x=0∞exp⁡[−β ℏ22I x]  dx.q_{\mathrm{rot}} \;\approx\; \int_{0}^{\infty} (2J+1)\,\exp\Bigl[-\beta \,\frac{\hbar^2}{2I}\,J(J+1)\Bigr]\;dJ \;=\; \int_{x=0}^{\infty} \exp\Bigl[-\beta \,\tfrac{\hbar^2}{2I}\,x\Bigr]\;dx.

Evaluating the integral gives

∫0∞exp⁡[−β ℏ22I x]  dx  =  1β ℏ22I  =  2I kBTℏ2.\int_{0}^{\infty} \exp\Bigl[-\beta \,\tfrac{\hbar^2}{2I}\,x\Bigr]\;dx \;=\; \frac{1}{\beta \,\frac{\hbar^2}{2I}} \;=\; \frac{2I\,k_{\mathrm{B}} T}{\hbar^2}.

We define the rotational temperature Θrot\Theta_{\mathrm{rot}} by

Θrot  =  ℏ22kB I.\Theta_{\mathrm{rot}} \;=\; \frac{\hbar^2}{2k_{\mathrm{B}}\,I}.

Thus, for a heteronuclear diatomic rotor (symmetry factor σ=1\sigma=1),

qrot  ≈  2I kBTℏ2  =  TΘrot.q_{\mathrm{rot}} \;\approx\; \frac{2I\,k_{\mathrm{B}} T}{\hbar^2} \;=\; \frac{T}{\Theta_{\mathrm{rot}}}.

Ensemble Averages

Natural Logarithm of the Partition Function

From the high-TT approximation (with σ=1\sigma=1 for simplicity),

ln⁡qrot  =  ln⁡(TΘrot)  =  ln⁡T  −  ln⁡Θrot.\ln q_{\mathrm{rot}} \;=\; \ln \Bigl(\tfrac{T}{\Theta_{\mathrm{rot}}}\Bigr) \;=\; \ln T \;-\;\ln \Theta_{\mathrm{rot}}.

Internal Energy

The rotational internal energy (per rotor) is

Urot  =  −(∂ln⁡qrot∂β)N,V  =  kB T2(∂ln⁡qrot∂T)N,V.U_{\mathrm{rot}} \;=\; - \left(\frac{\partial \ln q_{\mathrm{rot}}}{\partial \beta}\right)_{N,V} \;=\; k_{\mathrm{B}}\,T^2 \left(\frac{\partial \ln q_{\mathrm{rot}}}{\partial T}\right)_{N,V}.

Since ln⁡qrot=ln⁡T−ln⁡Θrot\ln q_{\mathrm{rot}}=\ln T-\ln \Theta_{\mathrm{rot}}, we have

∂ln⁡qrot∂T  =  ∂∂T(ln⁡T)  =  1T.\frac{\partial \ln q_{\mathrm{rot}}}{\partial T} \;=\; \frac{\partial}{\partial T}\bigl(\ln T\bigr) \;=\; \frac{1}{T}.

Hence,

Urot  =  kB T.U_{\mathrm{rot}} \;=\; k_{\mathrm{B}} \, T.

Heat Capacity at Constant Volume

The rotational contribution to the heat capacity (per rotor) is

CV(rot)  =  (∂Urot∂T)N,V  =  kB.C_V^{(\mathrm{rot})} \;=\; \left(\frac{\partial U_{\mathrm{rot}}}{\partial T}\right)_{N,V} \;=\; k_{\mathrm{B}}.

Physically, this means a single linear rotor contributes kBk_{\mathrm{B}} to the heat capacity in the classical (high-TT) limit, corresponding to two rotational degrees of freedom (each contributing 12kB\tfrac{1}{2}k_{\mathrm{B}}).

Computational Studio: Linear Rigid Rotor

Explore how molecular geometry and symmetry impact rotational thermodynamics. Use this studio to visualize the rotor, analyze the population distribution across quantum states, and compare the partition function and entropy of heteronuclear vs. homonuclear diatomic molecules.

You can open the studio in a new tab: Rigid Rotor Computational Studio.

Worked Example

Rotational temperature and qrotq_{\mathrm{rot}} for CO

Approximate CO as a rigid rotor with bond length r=1.128 A˚=1.128×10−10 mr = 1.128\ \text{\AA} = 1.128\times10^{-10}\ \mathrm{m}. Use mC=12um_C=12u, mO=16um_O=16u, and u=1.66054×10−27 kgu=1.66054\times10^{-27}\ \mathrm{kg}.

  1. Reduced mass

    μ=mCmOmC+mO=(12u)(16u)28u=6.857u=1.14×10−26 kg.\mu=\frac{m_Cm_O}{m_C+m_O} =\frac{(12u)(16u)}{28u}=6.857u =1.14\times10^{-26}\ \mathrm{kg}.
  2. Moment of inertia

    I=μr2=(1.14×10−26)(1.128×10−10)2=1.45×10−46 kg m2.I=\mu r^2=(1.14\times10^{-26})(1.128\times10^{-10})^2 =1.45\times10^{-46}\ \mathrm{kg\,m^2}.
  3. Rotational temperature

    Θrot=ℏ22kBI=(1.055×10−34)22(1.381×10−23)(1.45×10−46)≈2.78 K.\Theta_{\mathrm{rot}}=\frac{\hbar^2}{2k_{\mathrm{B}}I} =\frac{(1.055\times10^{-34})^2}{2(1.381\times10^{-23})(1.45\times10^{-46})} \approx 2.78\ \mathrm{K}.
  4. High-TT partition function (heteronuclear, σ=1\sigma=1) at T=300 KT=300\ \mathrm{K}

    qrot≈TΘrot=3002.78≈1.08×102.q_{\mathrm{rot}}\approx \frac{T}{\Theta_{\mathrm{rot}}}=\frac{300}{2.78}\approx 1.08\times10^{2}.

Result. For CO at room temperature, T≫ΘrotT\gg \Theta_{\mathrm{rot}}, so the high-TT approximation is well justified.

Concept Checks

  1. Why does each JJ level have degeneracy 2J+12J+1? What symmetry is responsible?

  2. What changes in the partition function when the molecule is homonuclear rather than heteronuclear?

  3. Why does the classical (high-TT) rotor have Urot=kBTU_{\mathrm{rot}}=k_{\mathrm{B}}T per molecule?

  4. What physical parameter(s) of the molecule increase Θrot\Theta_{\mathrm{rot}}?

Key Takeaways