Skip to main content
Physics LibreTexts

4.9: Solitons

  • Page ID
  • \( \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}\)

    Tutorial 4.9: Solitons

    As we have seen, if other forces are present in the system (such as nonlinear springs or friction) the wave equation must be modified to account for those forces with the result that simple trigonometric functions are no longer solutions. It would be logical to assume that there may be no stable solutions if other forces act. However there are a few special cases where the effects of dispersion and dissipation (which tend to make a wave pulse spread out) are exactly compensated for by a nonlinear force (which, as we have seen, tends to cause steepening of a wave). In this case there may be a special wave pulse shape that can travel and maintain its shape called a soliton.

    Solitons have been used to model many different physical phenomena, for example tidal bores (last two pictures), electro-chemical pulses moving along nerve fibers, domain barriers between regions of different magnetic orientation in a metal, light pulses in optical cables, ion acoustic waves in plasmas, sound waves in a crystal, the great red spot on Jupiter and many other phenomena.

    In this simulation we present the special case of the Sine Gordon wave equation. The Sine Gordon equation is \(\partial ^{2}y/ \partial x^{2}=1/v^{2}\partial ^{2}y/ \partial t^{2}+\zeta\sin (y)\) where \(\sin (y)\) acts as both a nonlinear term and a dispersion term. The strength of the nonlinear term is given by \(\zeta\). Sines, cosines and exponentials are not solutions to this equation but there is an exact solution called a kink given by

    \[y(x,t)=4\tan ^{-1}\dfrac{\exp\pm\zeta (x-x_{0}-vt}{(1-v^{2})^{1/2}}.\]

    Here \(x_{0}\) is the initial center location of the kink and \(v\) is the speed. There are only a few other known solutions and, because the equation is nonlinear, we cannot find new solutions by adding known solutions as can be done in the linear case with a Fourier series.

    Note that, in order to make the simulation run on a web page a certain amount of accuracy had to be sacrificed in the simulation. The energy should remain perfectly constant in all cases; non-constant energy indicates the numerical calculations are failing. It is also the case that we are approximating a continuous system with a set of discrete masses which makes the simulation less accurate.

    Sine Gordon Soliton


    Exercise \(\PageIndex{1}\)

    With the nonlinear coefficient set to zero, first check to see if the sine wave and Gaussian pulse initial conditions are solutions. They should be since for \(\zeta=0\) the equation reduces to the linear wave equation. What happens to these solutions if you turn on a small amount (\(\zeta =2\)) of nonlinearity?

    Exercise \(\PageIndex{2}\)

    Try the kink initial condition with zero nonlinearity. You will notice that a kink is not a solution to the linear wave equation (energy is not conserved). Reset the simulation and try various choices of values of the nonlinear parameter and speeds for the kink initial condition. What effect does \(\zeta\) have on the shape and speed of the kink?

    Exercise \(\PageIndex{3}\)

    On a graphing calculator make a plot of the kink solution for \(t=0\) (use the plus sign in the solution). What is the value of the solution as \(x\) goes to \(\infty\)? What happens as \(x\) goes to \(-\infty\)? How does your answer change if you use the minus sign in the solution?

    Solitons that have different values at \(\pm\infty\) are called topological solitons. One way to think about what is going on is to imagine a series of parallel troughs or ditches (running horizontally in the simulation) with a hump in between. One physical system represented by the Sine Gordon equation is a stretched string which starts out on one end in one trough but at the location of the kink goes over the hump to lie in the neighboring trough. As the kink moves the string changes from one trough to another. Another physical model of a Sine Gordon kink is a \(360\) degree twist in a chain of masses connected by springs. The location of the kink is where the twist is located.

    Exercise \(\PageIndex{4}\)

    Using the physical analogy of the elastic string in a series of troughs, what is the difference between the solution with the plus sign (the kink) and the solution with the minus sign (called an anti-kink)?

    Exercise \(\PageIndex{5}\)

    Show that the kink solution as given above really is a solution to the Sine Gordon equation. [Substitute the solution into the equation, take derivatives, etc. You will need several trig identities.]

    Exercise \(\PageIndex{6}\)

    In our trough analogy, we might ask what happens if the string goes over into the next trough but then sometime further away comes back to the original trough. Or imagine starting a kink from one end and an anti-kink from the other so that the string starts and ends in the same trough but is located in a second trough in the middle. If they are moving and collide in the middle what happens? Try the collision case for both small amounts of nonlinearity (\(\zeta =2\)) and different speeds. Describe the results (there are several possible outcomes, depending on the nonlinear parameter and speed including a breather solution where a kink/anti-kink pair fluctuate together in place)?


    If the energy is not at least approximately conserved, the simulation has probably failed to show an accurate result; try a smaller amount of nonlinearity.

    Exercise \(\PageIndex{7}\)

    In our trough analogy we can imagine more than one neighboring trough. In fact the sine term in the Sine Gordon equation makes an infinite number of troughs available for the elastic string. Experiment with the two-kink initial condition for various amounts of nonlinearity and speeds. What happens to two kinks when they collide? This is a general property of solitons; they maintain their shape after collision. This is not the same thing as linear superposition; solitons often have different speeds and positions after collisions whereas colliding pulses in a linear system are exactly the same afterwards.

    Exercise \(\PageIndex{8}\)

    Find at least two interesting YouTube videos on solitons and discuss what you see (be sure they are really about solitons and not something else). Hint: Search for soliton, soliton wave, Korteweg de Vries soliton, Kline Gordon soliton, Phi-4 soliton, nonlinear schrodinger equation, or Boussinesq soliton. Be sure you understand what you are looking at before writing a description.

    This page titled 4.9: Solitons is shared under a CC BY-NC-SA 3.0 license and was authored, remixed, and/or curated by Kyle Forinash and Wolfgang Christian via source content that was edited to the style and standards of the LibreTexts platform.