{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "skip" } }, "source": [ "$$\\require{cancel}$$\n", "\n", "$$\\require{enclose}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# PY345\n", "\n", "## Damped and Forced Oscillations" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Puzzle of the Day\n", "\n", "Why did this happen to the Millenium Bridge in London on the day that it opened?\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Practice\n", "---\n", "\n", "When a horizontal, frictionless oscillator is subject to linear drag, the resulting equation of motion is $$m\\ddot{x}+b\\dot{x}+kx=0.$$ \n", "\n", "a) Verify that the above equation is true, then simplify it using $\\beta=\\frac{b}{2m}$ and $\\omega_0=\\sqrt{\\frac{k}{m}}$.\n", "\n", "b) Try the solution $x(t)=e^{rt}$ then solve for $r$ in terms of $\\beta$ and $\\omega_0$.\n", "\n", "c) Interpret the solutions for $\\beta<\\omega_0$ and $\\beta>\\omega_0$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Solution\n", "---\n", "\n", "a) If we suppose that the cart is to the right of the equilibrium point (i.e. in the +x-direction), then according to the free body diagram\n", "\n", "$-F_{sc}^s-F_{ac}^d=m\\ddot{x}$.\n", "\n", "$-kx-bv=m\\ddot{x}$\n", "\n", "$m\\ddot{x}+b\\dot{x}+kx=0$\n", "\n", "$\\ddot{x}+\\frac{b}{m}\\dot{x}+\\frac{k}{m}x=0$\n", "\n", "$\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=0$\n", "\n", "b) Let's try the solution $x(t)=e^{rt}$.\n", "\n", "$\\dot{x}(t)=re^{rt}$\n", "\n", "$\\ddot{x}(t)=r^2e^{rt}$\n", "\n", "Therefore the equation from Newton's Second Law becomes\n", "\n", "$r^2\\cancel{e^{rt}}+2\\beta r\\cancel{e^{rt}}+\\omega_0^2\\cancel{e^{rt}}=0$.\n", "\n", "We can solve this for $r$.\n", "\n", "$r=\\frac{-2\\beta \\pm\\sqrt{4\\beta^2-4\\omega_0^2}}{2}$\n", "\n", "$r=-\\beta \\pm \\sqrt{\\beta^2-\\omega_0^2}$\n", "\n", "c) Since $r$ has two different values, that means that our general solution can be written as a linear sum of those two solutions.\n", "\n", "$x(t)=C_1e^{r_1t}+C_2e^{r_2t}$\n", "\n", "$x(t)=e^{-\\beta t}\\left (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t}\\right )$\n", "\n", "If $\\beta<\\omega_0$, then the square roots become imaginary.\n", "\n", "$\\sqrt{\\beta^2-\\omega_0^2}=i\\sqrt{\\omega_0^2-\\beta^2}\\equiv \\omega_1$\n", "\n", "This means the terms in parentheses represent oscillations with frequency $\\omega_1=\\sqrt{\\omega_0^2-\\beta^2}$. The stuff out front of the parentheses, meanwhile, represent an exponential decay. Putting it all together, when $\\beta<\\omega_0$ the result is an exponentially decaying oscillator.\n", "\n", "$x(t)=e^{-\\beta t}\\left (C_1e^{i\\omega_1t}+C_2e^{-i\\omega_1t}\\right )$\n", "\n", "If $\\beta>\\omega_0$, then the square root is positive, which means that no oscillation occurs. \n", "\n", "In the simulation below, try playing around with the parameters so that you can see what each of these situations looks like." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "application/javascript": [ "require.undef(\"nbextensions/vpython_libraries/glow.min\");" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "require.undef(\"nbextensions/vpython_libraries/glowcomm\");" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "require.undef(\"nbextensions/vpython_libraries/jquery-ui.custom.min\");" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "require([\"nbextensions/vpython_libraries/glow.min\"], function(){console.log(\"GLOW LOADED\");})" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "require([\"nbextensions/vpython_libraries/glowcomm\"], function(){console.log(\"GLOWCOMM LOADED\");})" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "require([\"nbextensions/vpython_libraries/jquery-ui.custom.min\"], function(){console.log(\"JQUERY LOADED\");})" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "window.__context = { glowscript_container: $(\"#glowscript\").removeAttr(\"id\")}" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division, print_function\n", "from vpython import *\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "L=1 #relaxed length of spring\n", "omega0=10 #natural frequency\n", "beta=15 #decay parameter\n", "x0=L+0.2 #starting displacement\n", "t=0\n", "dt=0.01 #time increment\n", "\n", "xdata=[] #set up data array for plotting x-coordinates\n", "tdata=[] #set up data array for plotting t-coordinates\n", "\n", "#draw box and spring\n", "box=box(pos=vec(x0,0.2,0),length=0.4,height=0.4, width=0.4, color=color.blue, v=vec(0,0,0)) \n", "spring=helix(pos=vec(0,0.2,0),axis=box.pos-vec(0,0.2,0), radius=0.1)\n", "\n", "while t<=10:\n", " rate(1/dt) \n", " box.a=-2*beta*box.v-omega0**2*(box.pos-vec(L,0.2,0)) #calculate acceleration\n", " box.v=box.v+box.a*dt #update velocity\n", " box.pos=box.pos+box.v*dt #update position\n", " spring.axis=box.pos-vec(0,0.2,0) #change spring length\n", " t=t+dt #increment time\n", " xdata.append(box.pos.x) #add x-coordinate to data array for plotting purposes\n", " tdata.append(t) #add t to data array for plotting purposes\n", "\n", "plt.xlabel(\"t (s)\")\n", "plt.ylabel(\"x (m)\")\n", "plt.plot(tdata,xdata,\"b-\")\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Practice\n", "---\n", "\n", "In the previous problem, we didn't look at the case $\\beta=\\omega_0$.\n", "\n", "a) Show that the general solution $x(t)=e^{-\\beta t}\\left (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t}\\right )$ is not able to describe the cart if the initial conditions are such that $x(0)=0$ with $\\dot{x}(0)=v_0\\ne 0$.\n", "\n", "b) Show that $x(t)=C_1e^{-\\beta t}+C_2te^{-\\beta t}$ is a solution to $\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=0$ when $\\beta=\\omega_0$.\n", "\n", "c) Solve for the unknown coefficients in the special case $x(0)=0$ and $\\dot{x}(0)=v_0$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Solution\n", "---\n", "\n", "a) $x(0)=C_1+C_2=0$\n", "\n", "$\\dot{x}(0)=-\\beta (C_1+C_2)=v_0$\n", "\n", "According to the first equation, $C1=-C_2$. But if that is true, then the second equation is immediately violated.\n", "\n", "b) $\\dot{x}(t)=-\\beta C_1e^{-\\beta t}-\\beta C_2te^{-\\beta t}+C_2e^{-\\beta t}$\n", "\n", "$\\ddot{x}(t)=\\beta^2C_1e^{-\\beta t}+\\beta^2C_2te^{-\\beta t}-\\beta C_2e^{-\\beta t}-\\beta C_2e^{-\\beta t}=\\beta^2C_1e^{-\\beta t}+\\beta^2C_2te^{-\\beta t}-2\\beta C_2e^{-\\beta t}$\n", "\n", "Therefore the equation $\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=0$ becomes\n", "\n", "$\\beta^2C_1e^{-\\beta t}+\\beta^2C_2te^{-\\beta t}-2\\beta C_2e^{-\\beta t}+2\\beta \\left (-\\beta C_1e^{-\\beta t}-\\beta C_2te^{-\\beta t}+C_2e^{-\\beta t}\\right )+\\beta^2\\left (C_1e^{-\\beta t}+C_2te^{-\\beta t}\\right )\\stackrel{?}{=}0$\n", "\n", "$\\cancel{\\beta^2C_1e^{-\\beta t}}+\\cancel{\\beta^2C_2te^{-\\beta t}}-\\cancel{2\\beta C_2e^{-\\beta t}}-\\cancel{2\\beta^2C_1e^{-\\beta t}}-\\cancel{2\\beta^2C_2te^{-\\beta t}}+\\cancel{2\\beta C_2e^{-\\beta t}}+\\cancel{\\beta^2C_1e^{-\\beta t}}+\\cancel{\\beta^2C_2te^{-\\beta t}}\\stackrel{?}{=}0$\n", "\n", "$0\\stackrel{?}{=}0$\n", "\n", "c) $x(0)=C_1=0$\n", "\n", "$\\dot{x}(0)=-\\beta \\cancelto{0}{C_1}-0+C_2=v_0$\n", "\n", "$C_2=v_0$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Damped Oscillations\n", "\n", "- in **damped oscillators**, the amplitude of oscillations decreases as energy is dissipated away\n", "- in the special case of linear drag, the equation of motion is $$\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=0,$$ where $\\beta=\\frac{b}{2m}$ is a **decay parameter** and $\\omega_0=\\sqrt{\\frac{k}{m}}$ is the **natural frequency** (i.e. the oscillation frequency in the absence of damping)\n", "\n", "\n", "damping |how does $\\beta$ compare to $\\omega_0$?| decay parameter | $\\hspace{1cm}$general solution$\\hspace{1cm}$\n", ":------:|:-----------------------------:|:---------------:|:------------------------------------:\n", "none|$\\beta=0$|0|$x(t)=C_1e^{i\\omega_0 t}+C_2e^{-i\\omega_0t}$\n", "**underdamped**|$\\beta<\\omega_0$|$\\beta$|$x(t)=e^{-\\beta t} (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t})$\n", "**critically damped** | $\\beta=\\omega_0$|$\\beta$|$x(t)=C_1e^{-\\beta t}+C_2te^{-\\beta t}$\n", "**overdamped** | $\\beta>\\omega_0$|$\\beta-\\sqrt{\\beta^2-\\omega_2^2}$|$x(t)=e^{-\\beta t} (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t} )$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Linear Differential Operators\n", "\n", "Suppose we define $$D=\\frac{d^2}{dt^2}+2\\beta\\frac{d}{dt}+\\omega_0^2.$$\n", "\n", "Then the linear damped oscillator equation can be written as $$Dx=0.$$\n", "\n", "Now suppose that there is an additional external force that doesn't depend on $x(t)$ at all: $$\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=f(t),$$ where $f(t)\\equiv \\frac{F(t)}{m}$. (This is called a **forced oscillator**.) Then the linear damped oscillator equation could be written as $$Dx=f.$$\n", "\n", "We will now show that the full solution to $Dx=f$ consists of the solution to $Dx=f$ *as well as* the solution to $Dx=0$.\n", "\n", "First, if $D$ is a linear operator, then $$D(ax_1+bx_2)=aDx_1+bDx_2.$$ Suppose we somehow found a solution that works in the forced oscillator equation. We will call this the *particular* solution.\n", "\n", "$$Dx_p=f$$\n", "\n", "We will call the solution to the *unforced* oscillator the *homogeneous* solution.\n", "\n", "$$Dx_h=0$$\n", "\n", "Now because $D$ is a linear operator, then $$D(x_p+x_h)=Dx_p+Dx_h=f+0=f.$$\n", "\n", "Therefore the most general complete solution to $Dx=f$ must also include solutions to the corresponding *unforced* (i.e. homogeneous) oscillator equation. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Practice\n", "---\n", "\n", "An oscillator is forced with a forcing function $f(t)=f_0\\cos(\\omega t)$, where $\\omega\\ne\\omega_0$. (An example similar to this would be pushing someone who is on a swing.) \n", "\n", "Show that $x(t)=A\\cos(\\omega t-\\delta)$ satisfies the equation, where $$A^2=\\frac{f_0^2}{(\\omega_0^2-\\omega^2)^2+4\\beta^2\\omega^2}$$ and $$\\delta =\\arctan\\left (\\frac{2\\beta \\omega}{\\omega_0^2-\\omega^2}\\right ).$$\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Solution\n", "---\n", "\n", "First it may help to write $x(t)=\\Re\\left [Ae^{i(\\omega t-\\delta)}\\right ]$. \n", "\n", "$\\dot{x}=\\Re\\left [i\\omega Ae^{i(\\omega t-\\delta )}\\right ]$\n", "\n", "$\\ddot{x}=\\Re\\left [-\\omega^2Ae^{i(\\omega t-\\delta )}\\right ]$\n", "\n", "Then the forced oscillator equation is $$\\Re\\left [-\\omega^2Ae^{i(\\omega t-\\delta)}+2\\beta\\omega iAe^{i(\\omega t-\\delta)}+\\omega_0^2Ae^{i(\\omega t-\\delta)}=f_0e^{i\\omega t}\\right ].$$\n", "\n", "Every term contains $e^{i\\omega t}$, so we can cancel it out.\n", "\n", "$$\\Re\\left [-\\omega^2Ae^{-i\\delta}+2\\beta\\omega iAe^{-i\\delta}+\\omega_0^2Ae^{-i\\delta}=f_0\\right ]$$\n", "\n", "Now we can turn it around and solve for $A$.\n", "\n", "$$A=\\frac{f_0e^{i\\delta }}{\\omega_0^2-\\omega^2+2\\beta\\omega i}$$\n", "\n", "$$A^2=AA^*=\\frac{f_0^2}{(\\omega_0^2-\\omega^2)^2+4\\beta^2\\omega^2}$$\n", "\n", "We can also solve for $\\delta$.\n", "\n", "$$e^{i\\delta}=\\cos\\delta +i\\sin\\delta=\\frac{A(\\omega^2-\\omega_0^2+2\\beta\\omega i)}{f_0}=\\frac{A(\\omega^2-\\omega_0^2)}{f_0}+i\\frac{2A\\beta\\omega}{f_0}$$\n", "\n", "Then we can match the real terms and the imaginary terms.\n", "\n", "$$\\sin\\delta=\\frac{2A\\beta\\omega}{f_0}$$\n", "\n", "$$\\cos\\delta=\\frac{A(\\omega^2-\\omega_0^2)}{f_0}$$\n", "\n", "To solve for $\\delta$ we can divide the first equation by the second.\n", "\n", "$$\\tan\\delta=\\frac{\\frac{2\\cancel{A}\\beta\\omega}{\\cancel{f_0}}}{\\frac{\\cancel{A}(\\omega^2-\\omega_0^2)}{\\cancel{f_0}}}$$\n", "\n", "$$\\delta=\\arctan\\left (\\frac{2\\beta\\omega}{\\omega^2-\\omega_0^2}\\right )$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Driven Oscillators\n", "\n", "The general solution to $\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2=f_0\\cos(\\omega t)$ is $$x(t)=A\\cos(\\omega t-\\delta)+e^{-\\beta t}\\left (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t}\\right ),$$ where $$A^2=\\frac{f_0^2}{(\\omega_0^2-\\omega^2)^2+4\\beta^2\\omega^2}$$ and $$\\delta =\\arctan\\left (\\frac{2\\beta\\omega}{\\omega_0^2-\\omega^2}\\right ).$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Practice\n", "---\n", "\n", "a) Describe the long-term behavior of a damped, sinusoidally forced oscillator.\n", "\n", "b) For what value of the forcing frequency $\\omega$ is the amplitude of the long-term oscillations the greatest? " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Solution\n", "---\n", "\n", "a) As time goes on, the $e^{-\\beta t}$ term makes the natural oscillation disappear. It is because of this that the natural oscillation terms are referred to as **transients**. What remains is the oscillation due to the forcing.\n", "\n", "b) $A$ is maximized when $\\omega=\\omega_0$. Recall that $\\omega_0$ is the frequency of oscillation without forcing. This means that the amplitude of oscillation is biggest when the *driving frequency* is equal to the *natural frequency*. This condition is known as **resonance**. The idea of resonance makes sense when you think about pushing someone on a swing. You push only when they come back to you. You wouldn't give them a starting push and then push them again while they are on their way back to you mid-swing. \n", "\n", "This, by the way, helps us answer what happened to the Millenium Bridge. By an unfortunate accident, the tension cables of the bridge happened to create a system in which the natural frequency matched the frequency of footfalls on the bridge on that day. It didn't help that the swinging made people adjust their gait in such a way that amplified the problem. \n", "\n", "So how was the problem solved? The bridge was closed down and extra dampeners were added to the bridge." ] }, { "cell_type": "markdown", "metadata": { "collapsed": true, "slideshow": { "slide_type": "slide" } }, "source": [ "## Practice\n", "---\n", "\n", "The equation of motion of a damped, forced oscillator is $\\ddot{x}+2\\beta\\dot{x}+\\omega_0^2x=f_0\\cos(\\omega t)$ with $x(0)=0$, $\\dot{x}(0)=0$, $\\omega=2\\pi$, $\\omega_0=5\\omega$, $\\beta=\\omega_0/20$, and $f_0=1000$. Recall that the general solution is \n", "\n", "$x(t)=A\\cos(\\omega t-\\delta)+e^{-\\beta t}\\left (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t}\\right )$.\n", "\n", "a) Use the initial conditions to solve for $C_1$ and $C_2$ in terms of $A$ and $\\delta$.\n", "\n", "b) Create a plot of $x(t)$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "## Solution\n", "---\n", "\n", "a) The general solution is \n", "\n", "$x(t)=A\\cos(\\omega t-\\delta)+e^{-\\beta t}\\left (C_1e^{\\sqrt{\\beta^2-\\omega_0^2}t}+C_2e^{-\\sqrt{\\beta^2-\\omega_0^2}t}\\right )$.\n", "\n", "The first derivative is \n", "\n", "$\\dot{x}(t)=-A\\omega \\sin(\\omega t-\\delta)-\\beta e^{-\\beta t}\\left (C_1e^{i\\omega_1t}+C_2e^{-i\\omega_1t}\\right )+e^{-\\beta t}\\left (i\\omega_1C_1e^{i\\omega_1 t}-i\\omega_1C_2e^{-i\\omega_1t}\\right )$, \n", "\n", "where $\\omega_1\\equiv i\\sqrt{\\omega_0^2-\\beta^2}$ (notice that $\\beta<\\omega_0$ in this problem, which is why I switched the order and added $i$).\n", "\n", "Substituting initial conditions, we get\n", "\n", "$x(0)=A\\cos(-\\delta)+C_1+C_2=0$\n", "\n", "$\\dot{x}(0)=-A\\sin(-\\delta)-\\beta(C_1+C_2)+i\\omega_1C_1-i\\omega_1C_2=0$.\n", "\n", "Since the right hand side of the second equation is purely real, that means that $i\\omega_1(C_1-C_2)=0\\Rightarrow C_1=C_2$.\n", "\n", "Then the first equation becomes \n", "\n", "$A\\cos(-\\delta)+2C_1=0\\Rightarrow C_1=C_2=-\\frac{A\\cos(-\\delta)}{2}$.\n", "\n", "Putting this back into the general solution, we get\n", "\n", "$x(t)=A\\cos(\\omega t-\\delta)-\\frac{A\\cos(-\\delta)}{2}e^{-\\beta t}\\left(e^{i\\omega_1 t}+e^{-i\\omega_1t}\\right )$.\n", "\n", "Since $x(t)$ must be real, we take the real part of the function.\n", "\n", "$\\Re[x(t)]=\\Re\\left [e^{i\\omega_1t}+e^{-i\\omega_1t}\\right ]=\\Re\\left [\\cos(\\omega_1t)+i\\sin(\\omega_1t)+\\cos(-\\omega_1t)+i\\sin(-\\omega_1t)\\right]=\\cos(\\omega_1t)+\\cos(-\\omega_1t)=2\\cos(\\omega_1t)$\n", "\n", "In the last step, we used the fact that $\\cos(x)=\\cos(-x)$. The solution can be simplified further.\n", "\n", "$x(t)=A\\cos(\\omega t-\\delta)-\\frac{A\\cos(-\\delta)}{2}e^{-\\beta t}(2\\cos(\\omega_1t)=A\\cos(\\omega t-\\delta)-A\\cos(-\\delta)e^{-\\beta t}\\cos(\\omega_1 t)$\n", "\n", "b) see the python code below" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.05565811361 0.0208303200362\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from __future__ import division, print_function\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "%matplotlib inline\n", "\n", "x=0\n", "xdot=0\n", "omega=2*pi\n", "omega0=5*omega\n", "beta=omega0/20\n", "f0=1000\n", "A=sqrt(f0**2/((omega0**2-omega**2)**2-4*beta**2*omega**2))\n", "delta=np.arctan(2*beta*omega/(omega0**2-omega**2))\n", "omega1=sqrt(omega0**2-beta**2)\n", "t=0\n", "dt=0.001\n", "\n", "xdata=[]\n", "xexact=[]\n", "tdata=[]\n", "\n", "while t<10:\n", " xddot=f0*cos(omega*t)-2*beta*xdot-omega0**2*x\n", " xdot=xdot+xddot*dt\n", " x=x+xdot*dt\n", " t=t+dt\n", " xdata.append(x)\n", " xexact.append(A*cos(omega*t-delta)-A*cos(-delta)*exp(-beta*t)*cos(omega1*t))\n", " tdata.append(t)\n", "\n", "print(A, delta)\n", "plt.xlabel(\"t (s)\")\n", "plt.ylabel(\"x (m)\")\n", "plt.plot(tdata,xdata,\"b.\", tdata, xexact, \"r-\")\n", "plt.legend([\"numerical\",\"exact\"])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Slideshow", "kernelspec": { "display_name": "VPython", "language": "python", "name": "vpython" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" }, "livereveal": { "scroll": true, "theme": "sky" } }, "nbformat": 4, "nbformat_minor": 2 }