Skip to main content
Physics LibreTexts

8.2: Damped Harmonic Oscillator

  • Page ID
    17411
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)
    dampedharmosc.JPG
    Figure \(\PageIndex{1}\): Position as function of time for four types of oscillation: undamped (\(\zeta = 0\), blue), underdamped (\(0 < \zeta < 1\), orange), critically damped (\(\zeta = 1\), green) and overdamped (\(\zeta > 1\), red). In all cases the initial conditions are \(x(0) = 1\) and \(v(0) = 0\).

    So far we’ve disregarded damping on our harmonic oscillators, which is of course not very realistic. The main source of damping for a mass on a spring is due to drag of the mass when it moves through air (or any fluid, either gas or liquid). For relatively low velocities, drag forces on an object scale linearly with the object’s velocity, as illustrated by Stokes’ law (Equation 2.2.5). For an object of arbitrary shape moving through an arbitrary fluid we’ll write \(F_{\mathrm{drag}}=-\gamma \dot{x}\), with \(\gamma\) the drag coefficient, and of course opposing the direction of motion. Adding this to the spring force gives for the equation of motion of the damped harmonic oscillator:

    \[m \ddot{x}=-\gamma \dot{x}-k x \label{dampedharmosc}\]

    We now have two numbers that determine the motion: the undamped frequency \(\omega_{0}=\sqrt{k / m}\) and the damping ratio \(\zeta=\gamma / 2 \sqrt{m k}\). In terms of these parameters, we can rewrite Equation \ref{dampedharmosc} as:

    \[\ddot{x}+2 \zeta \omega_{0} \dot{x}+\omega_{0}^{2} x=0 \label{rewritten}\]

    The solution of Equation \ref{rewritten} depends strongly on the value of \(\zeta\), see Figure 8.2.1. We can find it2 by substituting the Ansatz \(x(t)=e^{\lambda t}\), which gives a characteristic equation for \(\lambda\):

    \[\lambda^{2}+2 \zeta \omega_{0} \lambda+\omega_{0}^{2}=0\]

    so

    \[\lambda=-\zeta \omega_{0} \pm \omega_{0} \sqrt{\zeta^{2}-1} \label{lambda}\]

    For \(\zeta < 1\), there are two complex solutions for \(\lambda\), and we find that \(x(t)\) undergoes an oscillation with an exponentially decreasing amplitude:

    \[x(t)=e^{-\zeta \omega_{0} t}\left[A \cos \left(\omega_{d} t\right)+B \sin \left(\omega_{d} t\right)\right]\]

    where \(\omega_{d}=\omega_{0} \sqrt{1-\zeta^{2}}\) and A and B follow from the initial conditions. Because there is still an oscillation, this type of motion is called underdamped. In contrast, if \(\zeta > 1\), the roots \(\lambda_{ \pm}\) in Equation \ref{lambda} are real, and we get qualitatively different, overdamped behavior, in which x returns to 0 with an exponential decay without any oscillations:

    \[x(t)=A e^{\lambda_{+} t}+B e^{\lambda_{-} t}=e^{-\zeta \omega_{0} t}\left[A e^{\Omega t}+B e^{-\Omega t}\right]\]

    where \(\Omega=\omega_{0} \sqrt{\zeta^{2}-1}\). Naturally the boundary case is when \(\zeta = 1\), which is a critically damped oscillator - the fastest return to 0 without oscillations. Because in this case Equation \ref{lambda} only has one root, we again get a qualitatively different solution:

    \[x(t)=(A+B t) e^{-\omega_{0} t}\]

    The three different cases and the undamped oscillation are shown in Figure 8.2.1.

    2 See appendix A.3.2 for the mathematical details on how to solve general equations of this type.


    This page titled 8.2: Damped Harmonic Oscillator is shared under a CC BY-NC-SA 4.0 license and was authored, remixed, and/or curated by Timon Idema (TU Delft Open) via source content that was edited to the style and standards of the LibreTexts platform.