Skip to main content
Chemistry LibreTexts

The Classical Virial Theorem (microcanonical derivation)

  • Page ID
    5165
  • [ "article:topic", "Author tag:Tuckerman", "showtoc:no" ]

    Consider a system with Hamiltonian \(H (x) \). Let \(x_i\) and \(x_j\) be specific components of the phase space vector.

    Theorem: Classical Virial Theorem

    The classical virial theorem states that

    \[\langle x_i \dfrac {\partial H}{ \partial x_j}\rangle = kT\delta_{ij}\]

    where the average is taken with respect to a microcanonical ensemble.

    To prove the theorem, start with the definition of the average:

    \[\langle x_i \dfrac {\partial H}{\partial x_j}\rangle = \dfrac {C}{\Omega (E)} \int dx  x_i \dfrac {\partial H}{\partial x_j} \delta(E-H(x))\]

    where the fact that \(\delta (x) = \delta (-x) \) has been used. Also, the \(N\) and \(V\) dependence of the partition function have been suppressed. Note that the above average can be written as

     

    \(\langle x_i \frac {\partial H}{ \partial x_j}\rangle\)

    $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$

    \( \frac {C}{\Omega(E)} \frac {\partial}{\partial E}\int dx  x_i \frac {\partial H}{\partial x_j} \theta (E-H(x))\)

     
           
      $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$

    \(\frac {C}{\Omega(E)} \frac {\partial}{\partial E} \int_{H(x)<E} dx x_i \frac {\partial H}{\partial x_j}\)

     
           
      $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$

    \(\frac {C}{\Omega(E)} \frac {\partial}{\partial E} \int_{H(x)<E} dx x_i \frac {\partial (H-E)}{\partial x_j}\)

     

    However, writing

    \[ x_i \frac {\partial (H-E)}{\partial x_j} = \frac {\partial}{\partial x_j} \left [x_i(H-E)\right ] - \delta_{ij}(H-E)\]

    allows the average to be expressed as

     

    \(\langle x_i \frac {\partial H}{ \partial x_j}\rangle\)

    $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$

    \(\frac {C}{\Omega(E)} \frac {\partial}{\partial E} \int_{H(x)<E} dx \left \{\frac {\partial}{\partial x_j} \left [ x_i(H-E)\right ] + \delta_{ij}(E-H(x))\right \}\)

     
           
      $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$

    \( \frac {C}{\Omega(E)} \frac {\partial}{\partial E}\left [ \oint_{H=E} x_i (H-E) dS_j + \delta_{ij} \int_{H<E}d{x} (E-H(x)) \right ]\)

     

    The first integral in the brackets is obtained by integrating the total derivative with respect to \(x_j\) over the phase space variable \(x_j\). This leaves an integral that must be performed over all other variables at the boundary of phase space where \(H = E\), as indicated by the surface element \(dS_j\). But the integrand involves the factor \(H - E \), so this integral will vanish. This leaves:

    \[\langle x_i \frac {\partial H}{ \partial x_j}\rangle = \frac {C\delta_{ij}}{\Omega(E)} \frac {\partial}{\partial E}\int_{H(x)<E} dx (E-H(x))\]

    \[= \dfrac {C\delta_{ij}}{\Omega(E)} \int_{H(x)<E} dx \]

    \[=\dfrac {\delta_{ij}}{\Omega(E)} \Sigma (E)\]

    where \(\Sigma (E)\) is the partition function of the uniform ensemble. Recalling that \(\Omega(E) = \frac {\partial}{\partial E} \Sigma (E)\) we have

    \[\langle x_i \dfrac {\partial H}{ \partial x_j}\rangle= \delta_{ij} \dfrac {\Sigma(E)}{\frac {\partial \Sigma(E)}{\partial E}}\]

    \[ = \delta_{ij} \frac {1}{\dfrac {\partial \ln \Sigma(E)}{\partial E}}\]

    \[ = k\delta_{ij} \frac {1}{\dfrac {\partial \tilde{S}}{\partial E}}\]

    \[ = kT\delta_{ij}\]

    which proves the theorem.

     

    Example
    Example \(x_i = p_i \): and \(i = j\) The virial theorem says that

    \(\langle p_i \frac {\partial H}{ \partial p_j}\rangle\)

    $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ \(KT\)  

    \(\langle \frac {p_i^2}{m_i} \rangle$

    $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ \(kT\)  

    \( \langle \frac {p_i^2}{2m_i} \rangle\)

    $\textstyle =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ data-cke-saved-style =$ \(\frac {1}{2} kT \)  

    Thus, at equilibrium, the kinetic energy of each particle must be \(\frac {kT}{2}  \). By summing both sides over all the particles, we obtain a well know result

    \[\sum_{i=1}^{3N} \langle \frac {p_i^2}{2m_i} \rangle =\sum_{i=1}^{3N} \langle \frac {1}{2}m_i v_i^2 \rangle = \frac {3}{ 2}NkT\]