{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import sympy as sp\n", "#from IPython.display import display" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Building on Physics Past\n", "## Lecture 18" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To get nice-looking $\\LaTeX$ formatted output run:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "sp.init_printing()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And for interactive use, it is helpful to load all of the components:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from sympy import *" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Differential Equations\n", "\n", "\n", "SymPy is capable of solving (some) Ordinary Differential. To solve\n", "differential equations, use `dsolve`. \n", "\n", "For example, the Bernouilli DE is\n", "\n", "$$x \\frac{d}{dx} y(x) + y(x) - y(x)^2=0$$" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAJEAAAAjCAYAAACU2uhdAAAABHNCSVQICAgIfAhkiAAABK1JREFUeJztmluIVVUYx3+jYk4TGFNBSmnQNCWCY5SZlXK6R9BLOJVBo2JEoV3MCJsekh5KoYhEggpil0VkdsGIYrCHIrW0ke49RDlWpunDRKWT2e3hvw6zz5qz9mXO3uc26webPftb31rrm7O/vda3vrXA4/GMabqAl4CfgD+BPcBGYGY1jRhXzc48mdID9ANHgRuBTiMDuKtWRnkah4uAv4GVjvL2KtriaVB2Ah/U2ghP43IO8B+awuLYAgwCm/M0KKuY6AXgINA2yvrnoR9mWUb2NDOzzb0/ge4TDMdJdc35wL/AvRW28wawHzihYouam6Xogzs1oX6BnEeiLOgDfgVaK2znAvTj9FZsUXMzB/1ONzjKj7eeC9S5E3WiUeiZjNr7BtgLjM+ovWblbRQ+LAHOAjpQjPQeMM/SLVBFJ1qFPHyVo/xslJMIrwrWmjqXO+r0mfLrLXkLEJiytSH5Q0Z2dQq7xyLHAfcDnwOHUfDcDzwMTLJ0C1TRieaiF/iqo7wP5SZmhWSfGJkroO4C/gG+pnR0edz0ZY9gVxj5Y2kM90RSIGcnmhD6ezcwhJzJphu4EliPvB/kOLPRFHTY0f5nKA2/GLgFjT69KAjfBNxu6e8y9wUJbL8HODGBXpFPgTdT6DcDW9GH3Ia2RrqBHXl3+j4aCaaGZG3Aj8AvwOSQvNPo9sW0eRpyzgFghanzLjDRoT8EHEhg64BpK+kVJGjTkwGPMDKGWWdkSyzdeUb+SoJ2H2X4ZW5j5AoizD40RdYDA6Rz1BdrYmWNmWA9bzP3ucDrKDu6Eg2Bz1u6Q+ZuB3LlOBT6exlwJEK3NdR2rfkO7Y4n5ee8DKlnbCfajr6oC83zBhQQLzfyMAfN/aSYPhahQPkASpDdDdzh0B2H4pw9cYZTnZjIter0xPAVCpRvRo7zlEOvBTnSIUc5wLXAX8AXwCkoCD+GRrhyzDB9vpbAzgEaJyZKY2cjXiN42hT8jhwk6ljBZqPbUabsEjRtfQ9MMbKFRt81IhRT+isi+vQ0AD0Me9itMbqLjN5yS96FtkL2A2daZbtMnfll2nsZBdWnpzO5qamL04tpmY9e8k40ZUUxEcU6H4dkHUY2SGliskgxofiRJZ+MAuqxlsuJogd9VM8BFwPT0PvZiGaM0RIAayq0LZItKMs8J6H+A8gpzq2w3ztxj1BjkTxPLwYkd6JutN01PSR7EvgWxbkjKAbTG1IYNAltmr6Voo5NK1oe1/Vuc5XJ8/RiQHInakHbW8+a5/tQ4rkkTJkGrDZKR4EviU4GlmMB2jwd7aG0GeifOmOU9ZuNvE8vBqSbzq5Cq+rVwG/oDFkJtyGDB9F+1lRbwZMJa4hfKheM7k24V702lwLXEe1EvcAfoesYSr2EZXFhxHY0vV5jF8QFzp7sONlcUfyA0iJLUTA9hWT7iAWUFlnoKG+nNIZah7aX1odk+3DvFFyGwpVWNArtTmCTp8bkfXoxIPl0VkzXLEYr53dS9OOpMXmeXgxI5kTT0Qj1oHmehU6y+hV0g5Dn6cWAeCdqR9tUdj5qE/Bhir48DUIBnx7xVMBWtMd5BG2N2FOdx+PxeDwej6cK/A/gYXaRupH1jAAAAABJRU5ErkJggg==\n", "text/latex": [ "$$y{\\left (x \\right )} = - \\frac{C_{1}}{- C_{1} + x}$$" ], "text/plain": [ " -C₁ \n", "y(x) = ───────\n", " -C₁ + x" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y = Function('y')\n", "x = Symbol('x')\n", "dsolve( x*y(x).diff(x) + y(x) - y(x)**2, y(x))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Sometimes, you can help SymPy along by giving it a `hint`" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAI4AAAAiCAYAAACJI+GdAAAABHNCSVQICAgIfAhkiAAABWRJREFUeJztm2tsFFUUx3+tiJSSoChRCRYTa4UorUYRqpZsDFH0i4mhav1ACxgTA0aRxmD9oDE+IGoIhBjxlVVjVKxRIEapEqOxVUET30000RpFEND6QCqg1g//O9m7s/Pc3Xa37fySZnfPnDlzZubce8899xYSEhJGPPOBbcBPwCCwqLTu+FNZagcSsqgGPgVWlNqRhJHLmOhxngH2oRaTD+ejB7WsSP4kjAAuAP4DbivQzivAHmBSwR6NDsq6xykGXcBvQFWBdi5ED6ujYI9GB6M6cOpQb/NYkez1At8DxxTJ3kimrAPHznFWIWdX+eieBRwG3rVkS4EK4EWfc7qMzatd8gogbY6tseQvADXAgnDXE8qFuehFvuRzvAv4B6i3ZB8ZmV9S3AD8C3xFdi/ysLmWu6daYOQPxXF8FDEJONf8DQLt5ntNKZ3yosL6fizwO3CAXEebgc3ABuAWI6s2+r3A7IBrpIFWYIn53gHcZ+y1oKHOYTLKl3ahnCeIW4HjQ3RsPgFejaFfClLA2x7yp4G2YfUkJu+gSJ9myaqBH4Cf0Yt1qDO6XSE2pwMDQB8qbA0CbwDjffQHgL0RfO0ztqL+pSPYTMiT+8nNSdYaWZtLt9HI/fIbmwfIvMBuYGKA7m40/CWUMe4CYLf5nGs+ZwIrgfdRd2kzYD4nRLjOfuv7MuBQgG6VZTuhTBnn+t2DeoV55vdGlNQuN3KbfebzxJBrtKBkdy9wCsqRbvLRrUR5y3dhjlPcHMd9bwl58CXwF3A9eqCP+OhVoODZ73Mc4ErgCPA5MBUl0kdRT+bFLHPNlyP42UeS45QVm9CD/hMFxZQA3U6jW+tx7BI0JH0LnGpki4y+X8tfYo6X6+rwCWiScEapHRkmOomxlLSYTCu9IUS3xegtd8kb0LR6D7kPeZc5p8nD3vMoMT4tqrPDzIPk5noODcBzwI/A32i4fRY4exj8irOP5wlgXUS79cCvZM+mfWkyF99Jdp3Hi/Eod/nQktUaWT/ZxUIHp8j3gUs+GSXF5VprmYgag1fAL0YB/xRwMaqDNaHA2VTANdPA3RH0rgDuRbPhoMCpRO8mFcOHj8ntGDzZiqq9cyIavgM5e14MZ7y4Gf+eaDhoRksqMyzZeuAblJ81o9bnbkwXoaBZ6WM3aKgPI020wLEJCpxG4Bcyk6Kwewa4i8xs2xcnId4Yw9EJaGFyW4xz3FShbrazABuFUoGWUB43v9vJzmfWA296nLeT7PW7YpKmuIGzBu2dcgi7Z4CFaIKTs/uhBlhtTj4MfEFwgc6L+Sgy893INQs9oNPzPL9YXIZmfauBP9BeI4ct5OY3M9GLunaI/ElT3MDpJXfBOeieQenGIB4TghvNgX60fjTNrTDG6EFDz0KXfDu5+cp1+M8qbbai5xvWo3YAB62/o6i127KwodwvcOpQDunVuP3uGeBMY/McWzgOrVAXaz/NSOdSNDuqJFPgdDiApuM2Tvd9MMTuOtSjt4boPYoar8NatASzwZLtDrHhx1XADlSjswm6Z8jkaEH1ujGNU0JoRTO7113H29EwbjMHtcZrfGzaQ36K+DlcmuINVe+RW14Ju2fMOfkG66hnBno4d5rf9Wi7hz0szEazzZNc576GWmob6tZrUc6zA81iHFIMXeCE7eOZioa9k61zotwzKJl+MqbfY4IpKGl05y+bUSu16SG3qn0ccDvwGRoG+lHt4x6yF4BTDF3gpAheZllqfHeIes9VKGGeR0JBXA58TX57olOUrtywBQV3XFbgs98q+U/OeGxHNa7ppXYkJt1oOScuR1BhNqFEvIVmJYfQWlZjsHpCQkJCQkJCQkIp+B8gYWYWEyX0FwAAAABJRU5ErkJggg==\n", "text/latex": [ "$$y{\\left (x \\right )} = \\frac{1}{x \\left(C_{1} + \\frac{1}{x}\\right)}$$" ], "text/plain": [ " 1 \n", "y(x) = ──────────\n", " ⎛ 1⎞\n", " x⋅⎜C₁ + ─⎟\n", " ⎝ x⎠" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsolve( x*y(x).diff(x) + y(x) - y(x)**2, y(x), hint='Bernoulli')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Or, for a differential equation like\n", "\n", "$$ \\frac{dy}{dx} = 2 y$$" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHkAAAAaCAYAAACTmvO9AAAABHNCSVQICAgIfAhkiAAABPVJREFUaIHtmX+IFVUUxz9PV3HbjZUiSqk0NMuoth+aQmpl0g8jCMvAoB9LEZSKoRG6QUn/uFZi1qJsUW1BiGZpSVRb/2S5VBolsi4S5ZaZm9quJWpl+vrje4Y3O859M++92bdbzReGYc4995xz37n3nh8PUqRI0WdYBGwBfgf2AxuBi/vUohSJ40OgDjn2EmA90Amc1lcGvQ7sA6qKnH8lkAXuT8yi/x6qgePArT7aTOBPYISPtgL4FjgjSeXjgBPA/BLlrAf2osX0B5wPLAG+QtflMXt/DDwMnFJme4ahg3C1j5YBtgIv2fejwC/AqKSVtwAHgcoS5VyFFlFfskWlIQM8hU5IFtgMrAIagNXAr0b/tMx2rQG+BgYG6DegDbgQxe9xSSseg07xiwnJawd+4OSFlBOvIie2AbUh45XA48ZXLjyDbrnRjvFW4G/gpihBC9DiFjjGL0C7e5OP1mBzrnfMabHxGQF6Bmi2sQYf/Umj3RhlbC9hvunfAZwawVvszXU78D5wAPgLxc963Bt7GbqCL3KMTwUOo8N2RZTyCWiBbzrGW9BuudRH22o0V8JVi5KFHfRcxDLTFbwBphn92ShjewHDgKPo6uuNUmUguu6zyLGrgOeAnUZ7LWTO8+R3cC0KlfcCG9DmyYtBwBHgx5CxmWbICh+tCjl4e4TcZpt7n33X2/caYECAt8bGvowyFngEWFzAc1uEvKWm+5UYuotBo8lfAlT46INQ3M/S05krUYydCpzle7zEdASwB4UO0OE7AUyOMuQTUzbcR6sCdqMdVeOjjzHelgiZZ6MT0gHMsTkfAIMd/EdRPRiFDpMV92mOkOedqOti6C4UE5ADNjjGHzTddT6aax2LUa3cDjQF5KwFPgsKrwh8bwamABOBt432BHJUHfCbj/d0e3c7DPfwE7qWFgIvoCRhBopHYegCzoyQCTAyBk9cVJPbtF8kKNfDXJSHHEFOCsILDxkfLRPC58fYENqdcYy5BS10qX1fiJzRGqL0MuN9J4ZcL6HJmsx86AIOxTE2QZyHbDtYxNwpqOX4s8m4I4RnH/Fum2lF6I9E8CS3mrKJ9t2IEobZRg8aDrkT7cIslEh1opgyD3jIwTsAGArsijIcxeShMfg8fIP7ujxs70q03uMFyK0CtqGS6q2Q8SGo+7QJuKYAub2KNrTou5BjVzr4MsjR+/PImo5ugu1ooe0oe3Wd5rGmM+zHCqKDZGPyLvKXgx6CyaIfYSe5klzd3W/QhIw6hByYryG+znjDivRJKAZ9j8oT0A+QxX2i6mx8TsFWl455pnsn4ZswA9yMkhsXXNf1NsL7BR4mUeYG0D3kdv8DEbyzjG92gO7Vb3s5uY+6xeaEpfqrUVl2TmEmJ4IM8DKy7RjwHrAceNrs2m1jb+SR4XKy13rMAh+hPsFytGG+I7xs7VVMJlerRmV4g1Gs9Weko43WTc/GiQev4fF5gF6DyifXKS8XpqM/S/agUNOFrtq1qOmQLwdxORlgPLr5OpHDD6Aw1kR0iEgc76LEY3xM/kVocZeXqHcu7hP+b0E+J/cbeMlWYwFzhqA/FTaWoLcSlSDrSpDRH9AvnVwBnIucOwrF4zbgsQJk/AHcjTpFVeTKkUIwEvWxm4uY29eopmfiORL1ELrog1jrgtdS60ZxZ3h+9hQBXEtxJVuKFClSpEiR4n+GfwBaS1+Ce/QAlAAAAABJRU5ErkJggg==\n", "text/latex": [ "$$y{\\left (x \\right )} = C_{1} e^{2 x}$$" ], "text/plain": [ " 2⋅x\n", "y(x) = C₁⋅ℯ " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsolve( y(x).diff(x) - 2*y(x), y(x))" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$y{\\left (x \\right )} = C_{1} + 2 C_{1} x + 2 C_{1} x^{2} + \\frac{4 C_{1} x^{3}}{3} + \\frac{2 C_{1} x^{4}}{3} + \\frac{4 C_{1} x^{5}}{15} + O\\left(x^{6}\\right)$$" ], "text/plain": [ " 3 4 5 \n", " 2 4⋅C₁⋅x 2⋅C₁⋅x 4⋅C₁⋅x ⎛ 6⎞\n", "y(x) = C₁ + 2⋅C₁⋅x + 2⋅C₁⋅x + ─────── + ─────── + ─────── + O⎝x ⎠\n", " 3 3 15 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsolve( y(x).diff(x) - 2*y(x), y(x), hint='1st_power_series')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Or, consider this second-order harmonic oscillator:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$$ \\frac{d^2}{dx^2} y(x) + y(x) = 0$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "with $y(0) = 2$ and $y'(0) = 1$" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$y{\\left (x \\right )} = C_{1} \\sin{\\left (x \\right )} + C_{2} \\cos{\\left (x \\right )}$$" ], "text/plain": [ "y(x) = C₁⋅sin(x) + C₂⋅cos(x)" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsolve(y(x).diff(x,x) + y(x), y(x) )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The solution has two undetermined coefficients, $C_1$ and $C_2$. We can calculate those as well if we supply appropriate boundary and/or initial conditions. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As of right now, SymPy only supports initial conditions in the special case of solving for power series solutions of ODEs. Until that code is developed, do to this automatically, we can still solve for the coefficients ourselves:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAKcAAAAXCAYAAABu3F+ZAAAABHNCSVQICAgIfAhkiAAAA5FJREFUaIHt2k2IHEUUwPHfahATN6AkkRVUvCgiorkKRibxpBAIGLz5gXoQhRBUFJXARAgGRdRE1psfxC9E8SCISsCVKCgSjGhURGENuKBZRSMYYxLWw+thZ7Pz0T3TPT2z6T80NXRXvXr15vWrqtdFRcUIUMNc0/V9qdpUnC6sttDv5hoPzmhR+WNsx3MdBF6Kx7Efh3E8KffiHqzIQ+scWYW78A5+xFH8hU9wp9Z2GBZGzdawGbuxD0eEw73Spu4/wt+24+d2AmuJkHqHTsfwGI4ldT/F89iJ1/F7cn9f2lEMiLuFXjN4VfzZL+DP5P5bYmzDxKjaGg4I3f7Gdzo7ZzNTmiJnMzXdnfPFpM5BXN3i+XI8mtQbJjZgo8URcgKHxJhuGrRSXRhVW8N6EfHHzPtVoc55X/L8W6zs0snyFIoMC4+Ice0uW5EmlpKta3p0zrRrrQuwAydwswjXnTiaUu4wcDwpT5SqxTxL2daZSOucW3E29uCb4tQZOMtwa/L7/TIVaWKp2jozaZ1zU1LuKUqRktiJK/EePihZlwZL1daZSeOc47hMrAU+zyj/YXwh0gmH8a5whjRMW5z/6nSlWdM0swX3i3zuLRnbFkU/tr5O2Hcmab85Zbtpxdq5Z5alqLMmKY+InFQWapgUDtpIjezFFfijS9uf8G+GvmYy1L0Xz4oNx/UpdBkU/dj6HHwldu9vZ2hXpJ1zo6b1bv385P4xnNlnH+M4KdI6ZbFVjOdrMbZhIi9bZ4mcRVNT4G79NxH6z0o66kQ3eSuTOmVFqofwtEgSrxdjGybytPXIk3aAzyTlJC5v8XwMN+CNFHIO4LOU/ebJNrEB2i+m8tkUbV4Sb/LthWm1mLxsPfKkWXPCLlyFO8R0+CF+EDnCi3AtLsRrHWQ8KRbt68TUPkhuE+vdk+Jz35YWdaaFMzbTeHkHmQPNw9Zls8l81mEiKa8xb99ZPJBFYE33z5c3isMTv+A/MT0fxJvCAVa1afcUfhUboTKo674LnWrR7kuxOTlvEEqeQq+2pvw1Z11nW0+3aTelj2/rvbBLuY7ZK+eKSPtE2Yr0QNnO2StTujhnnuc5J0Xk2SDCe+Maz0F20WwUKZaJbhWHhHGsTa45MW2uxcVlKpWCtuc5m4+JXWLhwn9W5zOdaWj5Foize/U+ZVcspIaPWtx/2WA3dFlZgQdPuVcvQY+KioqKioqKiorTkP8BN8kh/EZ24/QAAAAASUVORK5CYII=\n", "text/latex": [ "$$\\left [ C_{2} - 2, \\quad C_{1} - 1\\right ]$$" ], "text/plain": [ "[C₂ - 2, C₁ - 1]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = _.rhs # _ means the last thing calculated, we just want the right hand side\n", "\n", "ics = [ soln.subs(x, 0) - 2,\n", " soln.diff(x).subs(x,0) - 1]\n", "ics" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAJ0AAAAWCAYAAADaUZ7NAAAABHNCSVQICAgIfAhkiAAABD5JREFUaIHt2muIVVUUwPHflFGGlWaYUpZ9KHrnhwiiB6MV9EB6GH3oQ/aCosAkhF6IQw+MShAF65NdSCskqLDAog8DGkkhBmVSBE1RYajhAzLzMX1Ye5yL3nvuOWeOM1fm/uFyLnevtfY66+699tr7HDp0aDPuxwbswkFMH1l3OrQxPdiPrfgIF5UxcikOYQ9W4CVMzpC/EIuwEduSA9vwBZ7AqWWcKMm9WIZ12I1+rBzG/svSLjGciEfxIX7GXpF41uMRnNBApxuvYq2I99dlOn4yKc9tIdeFF7EvyX+JN5MD72FH+n1dGSdK8m3qcw+2aP9B124xfDz19ydWiYmwAjvT7x8kn5uxUSSscUU7XpA6uKWF3NtJbjOuatA+Fi8kueFihsgaXWIGtvuga7cYzsQsR2e0yfhN+Do7Q39VkplatOOepNidIfN0kvkBp7WwN7aoAxXRrb0H3fEQw3qeF/4uy5CpJZlpjRobrc15mYJXcAD3iaUsi71D6GuAmriZByuw1Q4Mdwxrhh6//el6oKyBrEE3Pl2b3eg8nIJ38H1ZB0Y5x1sMx+CB9H1thty/6XpGEeNdBovBZjvWH8WsmVHE8BCZgosVu5lu7bu8DncMy8SvnjeEv5+2kHs2yT2Vx+itWIxvktJbTeTGpfZDim/jb8QasTPqF8cbx5Ju7TnohhLD58R/tFscqazB5ZV6dzRzhb9bcGYL2XPQJ5bi1aKEmNZMeEky3I/vcFkTuQuSzM78Ph/mNryMe4zuQTeUGH6Gh8RAu0Kcp23VejCUZeD4bLPss9p6HsM/BsdTd5bw6bhT1HK/48QGMpOSoX1N2vMymgddVTEksuZBccxRNfMMJqFJOXXuSDrrReI6KW9nK5Nis7T9S2q/qYWdrM3KaB50VBNDolbrx3VVOFXHM8nuJpxVQG9x0ru5UWPWzfyars1S9pJ0XS6K0yPpEkvp+619zM1QC+Esaob/OKaqGC4RT2E2tJArEr8F4onIRjEptufQGWBCuvY1ahyToThwHtNsYC7FlXhYpN7P8VPSm4rrcS7eLeBsKxZhjqhnahlyd6UPgzXItXU62zH/CJ2B+yx9/lSCKmL4utic3SCW2Czyxm+OeCx3UDx6a/QotC/DRulYLpSjAMTtopD9A//hb1FwrhbOT8zQLbq81uTLRj0GC9hGn74GOpvEbnBCg7ZjTdkYLsZf4uWMPNRUE79+9Obo5/ycfh1m4Kzl7qKKBRiOmi4P48Wsfm2kHSnAUsUG3HDysfhvzy6qODspfiJS/VAemdUzTryXNz3Zn5++n1eR/TLMEqfoeY8DRprlIivPFD4PfAq/1VExJ+Ma8RrULiXGzFhRZ9Sn1Cpe4uzWOF3XKrA9Wmi25PWMoE89R/iysJlg1kZiL64Ws+kSMYu2VuBcr+x3sTq0ph3j1ys2DjvwldhNd+jQocMo5X+JX0iIPyHbpQAAAABJRU5ErkJggg==\n", "text/latex": [ "$$\\left \\{ C_{1} : 1, \\quad C_{2} : 2\\right \\}$$" ], "text/plain": [ "{C₁: 1, C₂: 2}" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coeffs = solve(ics)\n", "coeffs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So, we can substitute this back into our solution" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAJsAAAAVCAYAAABR25wkAAAABHNCSVQICAgIfAhkiAAABUxJREFUaIHtmm2IVFUYx3+rZm4Way9GhcWFtsUMsigEo8BKqKQ3SiQ/dcsUUYsSKjQiv6Rl2hYRRllsQaS1YbAUsVCttYHpbAlb+aW2XWGdcsuMqG1zbfrwPJc5e+ece+/MnHGFnT8Me+c8L+fc83/OeZ5zZqGOOk5iBEABaPPo8y3gMDC9Ch9XIeNa5mVEExfVcuGVhwC/wXY18B+w1oOvXUAeON2Dr3JxNvCAjuEHYBj4A+hGJn7SOIypXPjiwhsPpwCzgfOrdaToBI4CjR58zUMWwnoPvsrFSu37EPA2sAl4A3m3AtAONIzDuMqBLy7GkwcnWpCV9KpHnweAAWByBbYhMkkLKrC9AbiN0h3sPOCg+r27Ar8nCr65KOEhPjG3A58gW+AIskp3A6sMnYDSNGq2BcAO4FfgHyAH3OoY0P3Iat/pkHeq37ti7Q3aVwF4JibbAVwELHT4rBU+BToQwkz8DLyizwsctvOQORhE5j2PvPsSi+4S4HMkRQ8DvcA64FSLbhY+IyRx4Z2HFWqUR6J7I7Ad2AvsM/QC3MH2GVJc7gFagTeRgDsOXG/pMweM4i5G56rt94zdqbZqf7ZVuFBlWxw+kxBS+c6WhEfVb6tFthyZgxHgPYrzvh/oiuluVD9DwDbgOeBbbetCSpwIWfmMkMSFdx56kBc+1yI7x3gOcAdbAXgqZnuTtn8Ua5+OvFyvbTAG2tQ+1O/r9ftO7EV3k8r3pvi1IcR/sE1B3rGAzIWJOcAx4AhwmcV2lvE8X30cRFKz6b+D0hopK5+QjYs2PPLQA/wFnJnQISQHWz/2WmkASasmWtSmM6W/WUi66AfWqM3HwNQEm2EkfZWLEP/BtkV9fmiRvaSyRzL4eU11V1hkLcjO02e0ZeUzsk/jwisPaymeplqBO4GZFr0Ad7B94Oi0G5kME9FKddVrJjZR3Dm/BE5L0R9EVmoS+g2fWT5tGcYZx0NqewA4yyLfp/LZGXz1qG6zQz6g8hn6PSufkJ2LqniYYgieR3afVcgkPaxOdyM1Ry7FMcix2YZRSrfaYf07LYPfIeN5GfB3in6j4d+FFygSE+EK4A6k1uyPyfan+ItjNfAiUufciKTKOKL+BzP4a9K/eYc8jxTkTQgP5fCZlYta8MAMYBGydR8HfqOY+wOST6M2dKncxAXa1p0ylqXICS+v+ttS9Cep/o8pejaE+EmjEbG92GumCJXsbBc75PGdzUQSn5CNixPCw+uMvSMK8BNsDcjJdahEu4hFwL8IaTORdHSMZHIu1b7eT9BxIaT6YHtcfXxDaSEeRzk123bcPwM1U1qzuRDnE9K58M7DzYxNqxGik84t+j3AT7CB3Kq76pBrkW26j+KvFYtJrg0B7lOdNQk6LoRUF2xPqn0Oe40Wh3kanWORm6fRa9T3T4ytvSYj81EAnjDas/IZwcVFTXg4ipwc2pET1Fbk2BpNXnSHE+Av2JZq++pY+1wdT57StBGlnuscfb2D1IgXOuRJCKk82O5V21GkIN9g+YQWu+XIrjQCvAs8jVwC55B7SxPPah+/AC8Dmyleq3zB2JNhVj4j2LioGQ8rkR9Q+5BIPoKkgseAMwy9AH/BNhWZkK+MtmZt+x243GITXRbusciakII0acUlIaTyYNtA+om2y2E7H0k3h5F0dQi5Vlhs0b0Hqa3+RC7Mv0N2tHhxn5XPCHEuxpOHmmEdMugrPfh6kOTVVkcyfHFx0vIwDTlJdVTppxHZEdqrHtHEhQ8unDxU8p8RvjEKfI38kJxDCuZKcAlS92zGfd9XRzJ8cFHnoY466phA+B+WEQ5UyGFB4QAAAABJRU5ErkJggg==\n", "text/latex": [ "$$\\sin{\\left (x \\right )} + 2 \\cos{\\left (x \\right )}$$" ], "text/plain": [ "sin(x) + 2⋅cos(x)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = soln.subs(coeffs)\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And finally plot it" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot( soln, (x, 0, 10) ) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Of course, it would be better to do this all in one go. On newer versions of SymPy ( >= 1.3) there is support for solving intial conditions automatically." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$y{\\left (x \\right )} = \\sin{\\left (x \\right )} + 2 \\cos{\\left (x \\right )}$$" ], "text/plain": [ "y(x) = sin(x) + 2⋅cos(x)" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dsolve(y(x).diff(x,x) + y(x), y(x), \n", " ics= { y(0): 2, \n", " y(x).diff(x).subs(x, 0):1 })" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Building on Physics Past\n", "\n", "In this section of the course we will use SymPy and NumPy to solve physics problems taken from first year. We will then be able solve more complicated, generalized versions of the problems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. The bicycle and the truck\n", "A truck is waiting at a red light. A cyclist trying to catch up is 3 m behind the truck just as the light turns green. The bicycle keeps a constant velocity of 20.0 km/h, while the truck accelerates at a constant rate of 3.00 m/s$^2$. When does the bicycle catch up to the truck? When does the truck overtake the bicycle?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Solution" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Convert velocity of bicycle to m/s" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAANMAAAASCAYAAADBs+vIAAAABHNCSVQICAgIfAhkiAAAAbdJREFUaIHtmLtKxFAURZfiAywsbOxU0EJQsLYa8DvED7HRVrCwEv/ARrASCzs/wUoQhpSCCAq+QHwUCSmGJHpPMseNnA3DQGbW3usWYR4QiUSGkgz4qnncDrnLsu3BqHrFWcS8xirgR+Cg4vpTzVhTUrss2x6MqpeFUfWyMKpeQH4XZk1vSEhql2Xbg/HY8GI8NrwYj40kZjSxOBKJ1KTqa94ksAnMAc/AFXAJfBj6U7ss2x6MqlecRdMLqP+x1Qd6TWAHXZZtD0bVK86i6VVmB9gAZoEpYBU4Aj6BF2CtCW7ZZdn2YFS94iyaXj9mn/xuPE0FO+iybHswql4WRtXLwqh6lVkqwPtUsIMuy7YHo+plYVS9LIyqV5npAnxLBTvosmx7MKpeFkbVy8L8mddv/xpfL577CWNddVm2PRhVLwuj6mVhJLxWgJmK6/PADflduD3w2iKwDIy37LJsezCqXhZG1cvCqHqV2SX/yDoHDoE94AR4LaAzYGKAyYrXFlp2WbY9GFWvOIumV5kecAxcAw/AO3AHXABbwEgFk1F9M6V2WbY9GFWvOIumVyQSiUQikUjk/+UbtWAXaN8U8kAAAAAASUVORK5CYII=\n", "text/latex": [ "$$5.555555555555555$$" ], "text/plain": [ "5.555555555555555" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "vb = 20 * 1000 / 60 / 60\n", "vb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Seems like a reasonable number. Position of bicycle as a function of time, given initial position of -3.00 m is," ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAQcAAAASCAYAAABWxxs7AAAABHNCSVQICAgIfAhkiAAABLVJREFUeJztm12IlUUYx38uWpkKZakhmdVmSC6kErEaqSRJFF100U1Y3sRCUJjVRUqwC2WyJn2AyRKhCELQBxVUlstWblhh+JGEtkl2wsjv3NhyzY+2i+c5enx35uzMdM44F/OHl9kzz/N/nv8sZ+bM1wsZGRkZDigBA5bnYJ1jheSOwUlVV25L+Hf1TuA94ADwj5abgHst/k9p3IeGiFsPtANdwH6gH/gD2AG0AlcFxLsWWAv8jrS9BLwKXFl0HG4g/6nORfwVIMQ3VkjuGJxUdYVwUtUVwgnJ8RzwPHAU+AgZGK4GZgDzgE8MnJlabqsSt15YAmwHOoHDwCigGWgDWvTv/Y6xGoGvgfHAh8CPwO3AYuAe4A7gmI1c0qcW8I0VkjsGJ0aOWJwYOWJxQnI8iMwAOoExBvsIC28P0Ac0eOarBS6z1C9H2rLGI9ZnynmiUP+y1ndUVl6MxmZkXAw0IFP0E8jyoM/gc7rwuR3pNFOB0cBZzi9dFtZN6YU4aal/W8spjnFuBBYgA+rrBVsr8DfwMDIzAczLikuRhl+nhF1AN/KP8YVvrJDcMTip6sptcfefDdwAvAscB+4DmpDOtxX4xsDZBqwHFiHT8c4K2+Yq7YiB+7Xc5eh/l5abgH8Ltj5gCzJ4NCN7HINQwrzBsw+Y6ygiNFZI7hicVHXltvj5L1H7aqRDFXmbgXEGXovaWyy6Y+EZZJ/hFeArRNP3mDWb8JJynrbYV6v9MVuAVmSEmQBcjoysHchIcwK41VFISKyQ3DE4qerKbfHzX4F8+c8Ae4H5yFJhGvCp2r406OpQ220GW0wc5MLBbCPSdle8obxHLfbyHsZSX2GrlPi+L7EGsUJyx+CkqiuEk6quEI7Nf6XWn2XwwDES2fEfAGYVbFuBU8gSZiiUsB+vmp4NDjGLmAA8APQgx5Ezq7ufw1CDw4tqf9ZX0E1KtB5z1DFWSO4YnFR1hXBS1RXCsfkv1fq9Ft6bal9cUTccuVuw0zF3F3I86PqsdIxrwmTknsIPjv7eywrThqQJh7UcVdWrPrFCcsfgpKorhJOqrhCOzb9Hy14L77iWIyvqbkGOErc75p7v6FcL/ArsBqYj9zSODuFfbv/NFnv51OOncoXrUWZ5qrXP0b+WsUJyx+CkqiuEk6quEI7NvxvZb5gCXGLgNWlZqqibruUOx9yxMVFLl5PEL7RcwOB+Pwa5ANUPfGsiTwPGGuonI1OxAWBZwdaInAEXL4/4xgrJHYOTqq4QTqq6QjghOUDW+APAC4X6u5GNzF7gior68gnHIkOsGJgKXGOob+D8BuIWg93WL70uQVWiDTnz3YjcumpHzoT7lfgxg0fcktqu/5+xQnLH4KSqK7fFPwfIteHy4NGNbF6+g8woTiM3KCsxR31/Q9bsbQafeuJJ1dWFbCiuQN6L+Fl1HUCWPkWUMPfLRuCQ2j7QeJ/r5x6qvKsxF3gL2SjpVVFHkIsfjwDDPET4xgrJHYOTqq7cFv8cZYxFfil/QU4hjiHvGTRb/B9HOs5J5Lu+vErsWqMJuc24E9lTOIO8T/IdMlCZZk9g75cAk4B1yMByCtm7eK1KrIyMjIyMjIyMjIyMjFD8B95virguFStpAAAAAElFTkSuQmCC\n", "text/latex": [ "$$5.55555555555556 t - 3.0$$" ], "text/plain": [ "5.55555555555556⋅t - 3.0" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t = Symbol('t')\n", "xb = vb * t - 3.00\n", "xb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Position of truck as a function of time (formula from first year kinematics with v$_0$=0, x$_0$=0)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADMAAAAWCAYAAABtwKSvAAAABHNCSVQICAgIfAhkiAAAAg5JREFUWIXt10+ITXEUB/APjYixYcHKn4bSIJKNjXlspSxISWQzKytZUMpsZiHUhPSWlLKwmIVSmiSURIOUwWa8hTL+JMaM/Imx+P1eXXfebe57d8bbvG/9Or/O7/y+v3PuPfec36WFpuA4HmEUH3Ad65rqUQHcxCEhgPXoxwgWNdOp6UI7fmNnVTE7ZbAb53FPeJ0TuNLgYZW4v9YYydhzJK7vy8G/UPD/U1XRljI4gQ0Ywxusye16bXxBXw39WIb9pigHc3D34SkeZBlsw2rMQknxN1Opc88LfDU5Y9I4jbdYlZe45P8Fc0p2Su5P2Z7FO3SmSdJpNt2YG51ZhnE8w13hw01iEJdxEPcxkFi7k5ifw14hg4bqcaRkZgrAMLpq2HfH9e4MvotCUdqOpYnRnseZkmLBnIwHL8F8oT+U8QffhEKTRDmetzmDLysNe/I4U1IsmCycibz9Kf1D/BRSsyFMVTVmAuUotyZ0bUJXH8KPRombEcz7KBckdJ2Yh8dFiJsRzJYohxO6jVE+KUJcNJgO4ZYwJ6Vfq/YFcDkuxHnyW1wc5WgRZ9J9ZlcchLJHeJKX4vwjjibsb0UHV/q3Qe7BMdzGa6Grd2CHkE43hEJQRfX60itUvXE8x7W6I0qgR3YJnDC5o1eifkVK34WreInP+CX8gwzggHBdSuMwXuF75OwtEkgLLbQwNf4C4xWJQq0VrocAAAAASUVORK5CYII=\n", "text/latex": [ "$$1.5 t^{2}$$" ], "text/plain": [ " 2\n", "1.5⋅t " ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a =3.00\n", "xt = 1/2 * a * t**2 \n", "xt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot position of truck and bicycle (guessing how long to plot for)." ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p = plot(xt, xb, (t, 0, 5), legend=True, show=False)\n", "p[0].line_color ='red'\n", "p[1].line_color = 'green'\n", "p.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks like the bicycle overtakes the truck after about 0.6 s and the truck will overtake the bicycle at around 3 s. Let's solve for that time exactly." ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcUAAAAVCAYAAAA3iPUfAAAABHNCSVQICAgIfAhkiAAACplJREFUeJztnX2wVkUdxz/QtYRCySyYyjEkC4QGsyTtjeeiMpnhoGV/NKlU2JuTNr1oao3XXtUcRtLeHHszm/6oRAekkhxuKOn0BpOkJSZPyugtwRACwoDbH7/dec49z+45u7+z9+HOtJ+ZZ86ds7tnd3+/79nds7vnXMhkMplMJtNFCxgu/P5yUEuTyWQymczocCQj+7thGzDeEfnXwFXAjY6wlwPfBZ4A9gJt4HrghcqCvQX4GfCkud6TwF3A2x1x23RXwv6GEuXzImAJsBx4BNgDPAPcC3wAt73GAe8H7gd2AruB9cBFwHM85dHU5RrgbuBxU66nTT5XmnIXWVxxffvb78nnDMQ2W0w+jwI/AU72xC9zbiGPJRXxQrWk8YkmDeh8Cc1t1gti9BNC07agTieL0Ws4NA+Lpi4xPo+1vVa/bUa3XbHE2utdwA3APcAOU55bPXF91PkyNo/dSD93FfD3YsC4wt8tYI2JNOC4yHTgN8BLgDuQJ8m5QD/wV+BNwLaKQpT5LPAFYCuwEumojgRea8pxSSl+G5iMGL/Mv4HrEuTzYeCbJs4a4DFgCnA2cDjSsZ5DYVQB3II47J/ACmAXcCpwnCe+ti7PAn8EHjR5PR84CXg9Is6TEGEDHA8sclwDZIAwH7gTeEcp7BrEHtuA2xGbvRI4E+gDzqNaaEcBDyAdyAuAC4CbHfFitKTxiSYN6HzZ1Ga9IkY/dTRtC0J0otVwTB7ausT6PNb2Wv22Gd12BXT22gDMMWXYAswAfgS811EeFyG+bJLHIDCPkf0h0Jk+HfAk/KUJ/1jp/FJz/lsBmVusQ1cDkxzhhzjOtc0vhth85gML6R6JTUWEOQy8s3B+kTn3KNLRFq+73IQtduTbJr4uh3rOf8nk843A69xn4p9ZOj8VGXkPIYIv0k+nnj7GAb8C/gZ8lerReYyWYn2iTaPxZVOb9ZJU+oFmbUGMTnz4NKzJI7YuGp/H2l6jX+hNu6LxfT9wLOKXFnFPiqG+bJLHIN0DDKC6UzzGhG2m21GTkN55FzLKqGM8IppdwIsD4lvaxDlcm4+PyxEb3FA4d4s5d6Ej/mwT9gdHWJt48fqYQ6fjr8OWaQvd04FvMGF3eNLuQKYUfVwMHADeimjIJ96UWnL5RJtG48umNhsLxOgHmvsvVCc+qjQcm4emLil9Hmt7qNZ8m9FtV1Lcuy3iOiyNXmLzGKRmTdHFfHO8yxSwyE5gHTARedSu443ANGAV8C9kbv5SpPJ1azDPQx6HLzfx+/HfGE3ycfFfc9xXODfVHF1PA/bcCciURpmYulSx0Bz/FBD3Q+b4HbrXYzYhUylzGfmkBCLISciIzcVM4GpgGbC2pgwpteTyiTaNxpdNbDZWiNEPNPNfjE58VGk4Ng9NXVL6PNb2UK/50WxXUt67IaTQSzR9gfFebY4Pe8I3AQuAVyGLtlWcaI7/QOayX1MKX4ssmj7lSDsV+GHp3GbgfcgGoVT5lLHrBAC/KJzfao7THGmOKfw9A9m8USSmLkU+hcyrH47M+78ZEe7VFWkAJiA3ywHcaytPI4OGpcj6wu3I2sB0ZJpqNZ0GqUifqcdjyI1YRyot+XxSRVUajS+1NjuYaPVj0fovVicu6jTcCy028XlT24dofjTblZT9QB0p9NKYFv7p05uofmy188+XBeTzFRN3H2LEUxBnzEIcPYw8zpa5EhmpTEFGI7OR+esDyE6iOYnycXGdiX9n6fx7zPlHgCMK5/uQxXC7W+r0hnUpMlS47jDwc3OdOs438VfWxFuE3PjFPDYhdXXxeWTEXnz6HsCvl1Ra8vlEm0brS4i32cFEqx+L1n+xOnFRp+FealHj86a2r9P8aLcrKe7dFmFTm030EpqHZRDFmmKdMb5swj8TUIBrTdz9dDtpArLTaZjwKU4rlOWjlM9FJt5DjGwsQaafV5nwIcRO1wMbke3ND5uwBQ3r4mIKcBay4+sJZGqvinXm2gsr4lyCDCKWIk9HE8117eL6taX4c0388vkB9A1RiJaqfKJNo/VlrM3GCrH6sWj8p9GJiyoN91KLTX2usb1G85ZU7UqKe7dFfYfVVC8heRQZRNEp2l0/n/Rc9EYT/pGAAlxGZ1Tl4mYTfnHAtUC2Qg/TvQ04RT4Xmjh/prPmVKYPscsGpPHcgTyJvo7OLrnj6yph8NWliqORd4U2VsQ5zlz3cfzrCy0T5zZH2ERkY8N+OlOJfciN8yCyjlFkAL94m2opxCfaNLG+bBFns7FIiH6KxPpPq5MyVRrupRZbpPN5qO01mi+Sql1J0Q+0qO6wUuilLo8ygyg6xSUm7Nuei9oR0ikBBTjbxP2dJ9waPuSpE+AwE/8/ifP5uAl/gO6t1yFMQBrW3bhfMXHhq0sd60268sK/ZRl+31rsaLK81dpymwm3W8EnM3K6pepXfG+qiZY0PmnqR/D7MtZmY5U6/RSJ9Z9WJ2WqNNxLLab2eZ3tU+g3VbuSoh9oUd1hpdBLXR5lBil0iqEbbdaY4wJkmqm482gS8sLmHro3k7hYizwaHws8F9nJVWS2ObYDy2anP8u7BpvkcymywLwBOI3OJowYzkXeAfoBnR1jdfjqUsdLzdG1G+9QU5YDyI49H3ZU5nt9xZ63dtxbcb0TkI8j3IuM+u4rhGm1pPFJCj+C35exNhurVOmnTKz/tDopUqfhXmoxtc+rbJ9Kv6nalZT9gI8UeklGi+qnCc1Lm9OR3XrlJ6VbTZovls6fhhh6OyO3vs/CPY9+NDI9Oox7h1JsPgCfM2l+78mzzGGOcycii/A76Z5G0dRlBu5pk/F0FrfXecpnP4+0whNuebeJNwS8rBR2OmKvPYR9EmyA6mmOWC3F+kSbJtaXGpt936RZHFimFGj147t/U33IY4Cw6bBQDWvyiK1LrM+1to/Vb6/alaa+bxH3FFdkgB5Mn4Y+KQJ8FPm8z9eQx+OHkBdZ+5FNCFc40tyNOGUaI5/IPmHSXoG82/NbE+8sZFRyAdJhWc5BpjnXINuLdyI37BnIKHIV7k8YxeZzPp1dT/cgi9tl2kjDZlmN3AQbTblmId9U3YtM4ZZHZ5q6vA2Z7l2LfNlhG7IgPg9pqIdMXVx80Bxv8oRbfoq8X3Uq4tvl5rozkU9pjTPljlmX8BGjJY1PNGkg3pcam9l3g2PerWyKVj+++1fTFjQhVMMaYusS63ON7TX67VW7ovH9Ijqf7LOd8MmF8m9FXglpwqjk0aJ+3eko4HvIN/meRT6kugz/SKZtrvkKR9gRyOhis7nWNuQrEa4XP+cBP0a+s7cdmcJ6CmnEzsPxzTplPgPUz2MPltJ8GvnSyXak8dyMjJZcddbWZTbwdWQaZSvSoD6DrJcO4Lf/TFPmqg02RQ5B1jDuRzaZ7EO+h7iS8B20EDaiC9WSvVaMTzRpIN6XEG+z9Sae9iP6GrT6aeO/f2PbAhcD1OskVsOaPGLrEuNzje1tmWP028t2JdZedfVpe9L5ruPyZZM8Bik8KRZpUd8pZjIZPZOR0f9YfU0jk/l/ZJCaTtH+8v9TzGTSshDZAajZVp/JZNLh/X+KxTXFNvJvoyzanU6ZTMbNCvz/lSCTyfQO+/8UM5lMJpPJZDKZTCaTqeF/8NU9lP5plecAAAAASUVORK5CYII=\n", "text/latex": [ "$$\\left [ 0.656295378402298, \\quad 3.04740832530141\\right ]$$" ], "text/plain": [ "[0.656295378402298, 3.04740832530141]" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = solve(xb - xt, t)\n", "soln" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADsAAAASCAYAAADlhqZNAAAABHNCSVQICAgIfAhkiAAAAo9JREFUWIXt1l9o1lUYB/BPo5Ix5lLX6KJsNlyBk/DCyMQZZil568ALCQIvuoluRbwQFMOQkTeSXdSFghcralAOJwUNKvAiqAtxCtsrQquWbMNyNV3r4px3/Tj9fnvft/e9sn3hx8M5z5/v85zzO+c5/M/xOD7Aj/gTJbyLVf8x3jZ8jIkYbwLDeDWxK2Gh4PupERwPJk5d+AYdGMRVPIe3sBtbcauaCiMO4yh+xWcxiXZswou4kNjPCAub4rcGciziorCSbybz/XH+vSVIU/RFn0tozdE/lIxL8asFtXIs4qnoOI6mRNcqrO7vaKkiiSaMRftHq7Cn9mJr5sj+xjuiHMZfid1tfI1X8Dy+qBD3BazDR5jCHvTgD1zGtwV+K7Afa2MRP2AE843gyBb7dJTXChK5LhTbrXKxm6P8Gd9hY6IfwV5MJvOP4WwyN47X8VW9HNnftS3KmYICyvOPFOiz6IjyDTRjp3AUeoR7oRcDic+HeEkouCUmfwadGMKzDeBYxPvCmT1QoD8e9QeLAmTwTrSdz0myGTejfksVsU5G20/q5cjubHnn2uRjZWK3FKaiHMP3iW5WWHlCW6uEcgforZcjW+xolN0FpOujLDrTWZRjTRfoy4k2VxHrlyjTLlAXR5fKredODmke2nE3JvJwjn4ocu2rItauaHul0Ry1Piq68Iz85n0u+hxL5l8WWtu0fy67DVidE+NJoQss4FCdHP9Cl3CVL+BTvI0v43gUaxL7UtR15sTqyCQ6Ilw0A7gn7EhfxvaI0B+HcBonhP45G/0/l797tXDk4gmhDUxgDjdwSv7KL1Ws6NMvHI054V09KDxMstiO88JbfDomOik8A1/DA0vkWy3HMpZxP+BvDYDWyyQ2h3MAAAAASUVORK5CYII=\n", "text/latex": [ "$$0.656$$" ], "text/plain": [ "0.656" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAASCAYAAADPNlfiAAAABHNCSVQICAgIfAhkiAAAAjxJREFUSInt1k1oz3EcB/CX5SnDPGUOnrLMspWStCLiMCcHdynlqhwccJnLPNQSB0s7UBxcFA4SmqLmotAOy0j7S802DxGGYXP4fv/tv5/fb/vRTtq7fn36fZ6+7+/D5/P98h/gJNrwCl/xHo/RiIX/kG8pzqMH31HAacxP8S1gOOPrLXWckggcxCN0oh/lqMeGOHB9nFAeVOEBFuM6nmIjtqELm/AuQXpenFQSn9GcNdDMDH2TMOOWnIThVozZn9CfivpzCX0hfhOGdXGgOzn9V0X/bpQlbHOElfsi7GQRBTlJT81JYmeUHTn9t0d5G0MJ2ye0o0E4bm0lthnYjeXCpDpwH7/ykD6I2agQzvPmmOBETtJronyWYX8eSVcnSC/BpYRvN/bi3niD9hpdvTdRmZMwtMa4fRn2Yo0cLtE1CjtUiVmoE879EAaEI5oLldglVHsP1k8Q6WPRfihHruboe7WoSBZJEn3RuUHo0xdzDAIfo6zIsM9N+I2FYpfZUlSMR7qIl0LvrsWiHP5dUVZn2FdHmXXmS9EfZfmYXhnoE7Yp7TZLosr4LW8gJ5EdMVdnmrFGqN4kyowUTnsKuRpMS4n7m8ulFgtScqwQOs0wjqSRPoAfQgtqxXHh3fAiBr3G2kRMIdpWpuSrMrI712K+u/G/y+i3zFF8E7pUi/AGuiK8f4ZxA9PTSNfhLJ7gLX4KhfIwJk1bibFIwzJcECY8KNTGmZRcW3FZeJ98EBbvjXAD7/HnG2kSk8jCbz7dmZ8oUyydAAAAAElFTkSuQmCC\n", "text/latex": [ "$$3.05$$" ], "text/plain": [ "3.05" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t1, t2 = soln\n", "display( t1.evalf(3), t2.evalf(3)) # pay attention to significant figures" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The bicycle overtakes the truck after 0.66 s. The truck overtakes the bicycle after 3.05 s." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. The bicycle and the truck generalized\n", "A truck is waiting at a red light. A cyclist trying to catch up is 3 m behind the truck just as the light turns green. The cyclist travels at a velocity of roughly 20 km/h, but can't keep up the pace. The velocity of the bicylce is given by (4 e$^{-t/3}$ + 2) m/s, with t measured from the moment the light turns green in s, while the truck accelerates at a rate of (2 - 0.1 t) m/s^2. When does the truck overtake the bicycle (answer to 3 sig figs.)?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Velocity of bicycle as a function of t." ] }, { "cell_type": "code", "execution_count": 173, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAF8AAAAWCAYAAACmG0BRAAAABHNCSVQICAgIfAhkiAAAA1hJREFUaIHt11uIlVUUwPGfM2NYvVhZSdENyi400Y2JwmIoKixiIl+SCE8lFUgXCAkCYQxihIzs9lahlQRdqKgIQojRrBcfzKCyC0wSKWEXKwovZQ9rn87nme+c75szZzxm5w+b75y1b2uvvfbaa9Oly3+MFXi3Qd2zeDz9XozN+DWVj3H9lGt3iDOKZTnyHmzHYPo/hOtwBubgEezBeVOv4qHHdOzGvkz5NFN/KX5EX5MxfsJd9cJjsAhv4Gv8iZ34EHeIXT0YuFVt4YsO8Nw9GEhzD2A2jsrUL8cLDfr2YoHYvP76yrvToN9jDUbwPH5J8tcwrR0rmAQnCX1+0xnjw40ifufZ4nPcVCfrx+/Yi59FGBrHlbjBeA+fja1isfNbULaS+g620DfLNKzFN3hUe40/bP9QklcGU9tlWJ8zxhwRLY6skx+G03GxcOgdOHciyj2UFHhqIp0SFe0x/n34G1eoGavI+PPxnljwbnwl1tJb124WziooR6S2b+HJnLmW4J0S61grMqKmF0OWPem7t2T7dnO2iKdPYJ04pc3oxUu4Wdxfr2IX5omM40wszLTfkUoZ+vF2jnwIq0r078GMknPpEzf6PlxbtlOGisl5fh82YgsOT7JhzT3/6VQ/Yn8Hm44Nqe6cFvUZE55/AmYm2bHCQY+va7scl+NUsWkj4vTOKzvZiqRso0dFERWTM/7D+EukcVWGNTb+JWKBbzYY787U97YW9bkF36U5nkmy2/FRTttV+Facuh9EyPnXgYvCzr14AF+IFK+IMZzSoO6DHNlqsTmNGBAx+jHxOizDPeJy/kNsUj3Vy67VzG1NKlmG5G92pdlAzYy/WMTYz3CVeBwUsVLtKFY5Pym3WmxOlk0Fur2IL7G0xNxVrknfBQXttk5gzCI24OV2DXa/2uvtuEmOVdFa2JmpOP2rlpWpz4z0f3SSOh8Q8jz/QXFRbMLVymcB7WYXnmtQdyEuEK/vLWohqRpKZk2talPDUuE5G3F0m8asaE+en2VY4wv3k1RX/9KsMtf4PL8jZD1/oVpmsV5ctvWMKZfLdpIlIjN7XWQXm0VufSIuEunmyR3TLkPW+Kelb6+I+XmMOviN/z4uE+FzrjhxO7FNbMYrHdOsS5cuXbr8b/kHsZXMe2pcXckAAAAASUVORK5CYII=\n", "text/latex": [ "$$2 + 4 e^{- \\frac{t}{3}}$$" ], "text/plain": [ " -t \n", " ───\n", " 3 \n", "2 + 4⋅ℯ " ] }, "execution_count": 173, "metadata": {}, "output_type": "execute_result" } ], "source": [ "vb = 4 * exp(-t/3) + 2\n", "vb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To get the position of bicycle as a function of time, we must integrate the velocity, bearing in mind that position is zero at t=0." ] }, { "cell_type": "code", "execution_count": 174, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAMMAAAArCAYAAADFaDxFAAAABHNCSVQICAgIfAhkiAAACDpJREFUeJztnHeMVUUUhz+WhYBIbIiIwRZFNKKAipEgEhWsBBWJghIXxRKqnWgsi8kGa8SCwRqxxAYiQSQqNsSKCGoEFVGwAbp0AWFZ1z9+c31vZ297791XFuZLXubtzNyZ8+6dcs6ZcxccDkfeuBeYWWwhHI5MKctDm8cBX+ShXYej0dAM2AbUpX2+KapEDkeRKAO6o0nQHWgH7FFUiRyOInIOsAFoUmxBHI5MycRmaAI0jajTFfgK7Q4OR6MizmRoAYwH1gDrgbsJnhRdgAXJiOZwlB7PUt8orgNuDqj7EzCsQHI5HAWlLfAvmgCjgIHm+68B9ZcBDwLtgd0LIJ/DUTD6ktoN9kTq0UzgaWAXn/oXAb+hCTSxMCLudIQdaj4B3G++jwC+Rg6NDcAnwFl5l24HZjCaCFuKLYjjfz4AxvnklwErgd7m7/7AmcChQEegCqgBjsq/iDsmV6LJsKrYgjgiDzVPAFYD5SFtrEHP1OFDlDdpV5P+nWCfzwB/Aq0SbHNnoBboab4fD+wL9Eor74/Up+0+1zYFBqHn+XFa/jFoUl2WkIz7m/ZeTai9kqIS/biFCbV3LLInrrXy90JeqGnAj0gtWw/MRQ8qHzFU2TCE1KpcDK9Z2KHmYuA8K68zWsi2A2uR2mQzDVhBauHLVb464BYr/1qTPziBPjLlLuAd5PTZgnbHBcDtaNzF5l70I+YmJNhbwDqgpZV/lennD+B5dK7xlKlbB0yh+KfaHZA8G0l2MlTS0HVtf3qbuuOAD33a6IgetL3bNgcOQYvQeKAaONKq44XQBLnLM+EO09YZVv5zJv+wBPrIlG3Ap2g83Qk8BMwz8vyOnmssHjUXzUpAqI5oV3jMp+xkoB8Nd4B2wC9GhgFZ9FlB/cGULU2A2cBS4B6SnQxtgE4RH89zNx25rm1uAF6P0dds5HGyWQwsJzrCIIqZ6N7s49P+Roqzw7cIyK9Csj7iZRTSZrgUDaqXfMreBWagyZLOSmCS+d47ARmyZTSasEOBTTGvGYAWkWq0Oi1Bq6894KqB7yI+m03dzshdatMfeC2GTGX4D44Xkb5/aow2yoExRo4taBLdiJ5tN7Taeg6Xu9CA64TGUi2p3e7iGH0lwT8B+S+b9FAvI8zzANDapBtzlQjd6Fq0ZWVCjUn9DMNCcDjaXh8A5qBJEUZTpBZciOyfV4CtSHWoQqrCJVnKUoZco+3RBFkH7I0ManvnvBOt1L+i5zgYLSh+Zw0fmbQP8GZI/83RDtQH2ZEPI717HBpU7dCi5jEfmIx+78fA22llH4T0Uwj6mdRvcfHlXTSL/bbmTGiFBnOm7zeUm2vqgNOy6LeC3NSkcvSi0vek7JxKwtWkh035eOovNs3QoKsDjshSHr9DzUup7yHyeBqt2luR9242wfdwNyPX5xH9P27q3Up9G64XqRW/0rrmCpN/RUTb+eZ6JNv9yO6qQ0Gle8dtwDM0qnIUpKNp560Mr/MM+GxfI60gt8lwB9rNTkjLqyR4MhyPBmqQyuINjKFZyuPHdKSm5MoWpJYG4RnaQSv6IlPez8qfZPKPzVXAHFlJfafELCzbJkpNSspm8FxYazO4ZjRwHdKZh8Sovww4IKDsPZ+8yWiyBNEd6fj3oVCGOIxCK+ZmGq6QkPLkJOkZ+wh4IYF21tDQ8E1nlElvCyhfbdIvrfxuSNWNqxUsI/g5+vE88eyPdibdB+iB1MgFwNkYmQtlM3jhHEGWvc0IpKMvAk5BDyqKCTQMDuyCjMvJ6CanE3Z2Uo6idX9AKkFc+pp0UES9XzJoM4q7E2qnJeFhN33RgJ8TUH4wMpx/T8srR0b/IqSuxWEpwUavH39kUBck4zQ0AX5Ah8C2u9kXz89fkWGHNu2Jf15xNalQg7Y59ltBdmrS7kT7/r3PBHNNC8LViFKmDKl3SwPKvd9mr/oePUz5G1b+USb/qQRkzAcLkHxtIL6alOvOsAL4i+hDl7Fo+1qIPBbVOfabLVuBJwPKuqE3+uYiw9pToTzVp01+RcsLhyH5g3bLWvMJWpy8wEF7snQxaam+8NXepLVRFVuSWv2y8eTYTDFtHRJQfqsp/wKFiydBBckcuqVTSbAB7b3yaodFePQk94OtfDAUyT0ypM5i/A3ksaTGyblW2TUmP1tXcq50ImUrpFNG6tDNcyuH7gyt074ncc4wFfnCT0P+93QuIeW5+RAZzzbLkLuwlLkBeb6mIlfm1+jG74eC4pqhw61Soy+699ND6oxHttdUdEjnhYt3RmcZHWi4M8w3aRXSyzcB36Kzl0JwOooYmINUwNXIgD4J2TgrgcvjNHQwqRmfRAx8c9P5Zz5llUTr5u9n0WcFhd0ZQP9EbQr6rTVI1fsGhbackqAcSbEbMpzjnGCPQa/21iBDdCpSG5cTrNKOROrkPyTjps+EI9F5zEIk33YUADoPPcfYGsjRpAbiQQkJd5Npr2tC7TlyZxR6JicWW5BSpiepyRBlFA4Hfkazfz7BN7YFWkVmBJQ7CktL5JqcUmxBSo3uyDXmRfENQhOhhnCj7wJT53IUx/MgOqQL0o17oVhy93JP8TkcqQsHFleM0sOzETYjNcYLx50Xcd1nKGYlnSXI4HI4Gi0zaGi4nh9SvzkySgZa+RNpnIdPjp0Y+32GISjWYwPymfcnXJ9sg1Qo+x8GrMLfv+twlCz2OcM6snvpos76u4lPnsNR0uT6Gl41Oqyxd4G2uH8v42hk5DoZtiFXah8rvw/+L5w4HDs0F6BJMQy56iYg12omMekOxw7DcBQ7tBXtFL1CazscDofD4XA4HA6Hw9HI+A9fQRt/iE49lQAAAABJRU5ErkJggg==\n", "text/latex": [ "$$\\int_{0}^{t} \\left(2 + 4 e^{- \\frac{t}{3}}\\right)\\, dt - 3$$" ], "text/plain": [ "t \n", "⌠ \n", "⎮ ⎛ -t ⎞ \n", "⎮ ⎜ ───⎟ \n", "⎮ ⎜ 3 ⎟ \n", "⎮ ⎝2 + 4⋅ℯ ⎠ dt - 3\n", "⌡ \n", "0 " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAJkAAAAWCAYAAADTuj63AAAABHNCSVQICAgIfAhkiAAABKxJREFUaIHt2X/MllMYwPFPKcJmfoTGZs0ko1pDYWN7sDEMrfyhaL1iMVl+TGw2W9labDY/YsPM0pINjebXH/lDI8y0UtEQYtZiISIqev1xnaf37nE/P+77fd6SPd/t7NlzrnOuc93nvs51rnNuOnTo0GEf8iBeryN7Gg9hOlbj11Tex2V7xboO/wuWYXZOfX9sQgVX4lIMw8mYg50YtXdM7LC/MhA70J0pazLyc/AjBtTp/xNuzBMchRvwMtbjD/yCd3G98N487khGTCrwEO2kH6biA2zFNqzEDBywj2y6CvPwjthCurGwQfuyc99X9MdYYfdYDMERGfn9WJDT7wBMFA46Mk/xTUnpRjyHuXgGW1L9S+KF1rIwyYcXfpT2sCCN/73IEx7BJxrb3NesSuNvxTrNnazs3Pcl48QCyRt3HcZn/o/Eb/gLP4vtM5cLcLl/r5oh+FY87IQ6A27N6dcqXUl3pUTfcanvVxicqR8ookJ30r+3OV/kKP3EczVzsrJzX5RZ9twC80oltZ0tInEtJ4tIe2im7kCchDPFAtmMEUWNuycZMC9T90ADQ68toLtLeSerRrHpObIRSbaihN52UtHcyRqRN/dZJuBN8WJ34IvUJy9VGIxTmpRDUtsleDRHx0y81sTmt8SugvqJWy070+9fmboVeBZT8B6WZmTLWtTbW4ak369yZNW603G42Hr2R/LmnnCihbha5HEvYjsuESe84eLdZNmcSiuMxKs59VdifpO+/TGoxXEQjrhGrKaLa2TTUv20Igpr6FI+ki1KfW/OkVUjWTfOLmlbO6goH8kazf1jqX6uPYPFQCxPslNLjFllg4hkx4lFCkcLpz820+5+nIehwjHnYpdw9pZ5MBmcdyn3RJKdWURhDV3KO9mk1Hc9jszUD8BiPU5W6IHbTEV5J6s392eJF/lKnX7VxX9diTGrXIPv0jiPp7qpYtfKMh/fiCj6g9gqaxdEQ2YIY9fZ8yVW+VDkAQe1qG+D5olntsxvoq8/3khtN+EpPIy1Ijn9PMkuaqNNRZ2lUrJfo7mvnugXiWS+tryU5FMLjtmMJbiraKdGOdl0cR3wKS4UF2y1fUcm+fYWx3tYT+itMlrs88+KF55lVRN9u3AFbsXkVHaK1TZFbCnDxAqrx5f4s7npu9lYoG1Zms19ddFMbKLn2zbbtRzPt0vZbXpueY+p02ZUavNML8fqUn67bMTBIpptE3nKvqKiWCRrNveDknxvHa56Td7d1t3iw+cqcd9TLwqMTr8r+8CudjBZvJAX9JzQ/uu0MvfVy9HBObL9gnvFKvlIfg6W5fbUtvaYXJQuvYtkh+XUjRFbzFacWFJvu6hoLZIVmfuPU9vxdeTn2nef1P5FNiebgvvwt7jpnZHTfoOeZLx6yTlHXBf8Lj7nvNgHdjZiqdgW1wqnOk181tguXkLeHVpfMy4Veu7yztEzd5txZ6Z90bmfKU6ci8VpbrXYlY7HGSI9OKG3D9EXzNL8ZPV2TZ9b8JlInLuFwxWlS+8i2Uzh8FuEY30trlaGltTXDmZpPI8bCrbPm/sx4hS5SaQDm0Ue96Q4LHTo0KFDhw4dOnTosJt/ANCNfWFbqG2VAAAAAElFTkSuQmCC\n", "text/latex": [ "$$2 t + 9 - 12 e^{- \\frac{t}{3}}$$" ], "text/plain": [ " -t \n", " ───\n", " 3 \n", "2⋅t + 9 - 12⋅ℯ " ] }, "execution_count": 174, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xb = Integral(vb, (t, 0, t)) - 3\n", "display(xb)\n", "\n", "xb = xb.doit()\n", "xb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "Position of truck as a function of time (we must integrate twice)" ] }, { "cell_type": "code", "execution_count": 175, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$- 0.0166666666666667 t^{3} + 1.0 t^{2}$$" ], "text/plain": [ " 3 2\n", "- 0.0166666666666667⋅t + 1.0⋅t " ] }, "execution_count": 175, "metadata": {}, "output_type": "execute_result" } ], "source": [ "at = 2 - 0.1 * t\n", "vt = integrate(at, (t, 0, t))\n", "xt = integrate(vt, (t, 0, t))\n", "xt" ] }, { "cell_type": "code", "execution_count": 176, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p = plot(xt, xb, (t, 0, 5), legend=True, show=False)\n", "p[0].line_color ='red'\n", "p[1].line_color = 'green'\n", "p.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks like truck will overtake the bicycle at around 4 s. Let's solve for that time exactly." ] }, { "cell_type": "code", "execution_count": 177, "metadata": {}, "outputs": [ { "ename": "NotImplementedError", "evalue": "multiple generators [t, exp(t/3)]\nNo algorithms are implemented to solve equation t**3/60 - t**2 + 2*t + 9 - 12*exp(-t/3)", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNotImplementedError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0msolve\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxb\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mxt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mt\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m## NOTE: this will give an (expected) error!\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/miniconda3/lib/python3.6/site-packages/sympy/solvers/solvers.py\u001b[0m in \u001b[0;36msolve\u001b[0;34m(f, *symbols, **flags)\u001b[0m\n\u001b[1;32m 1160\u001b[0m \u001b[0;31m###########################################################################\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1161\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mbare_f\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1162\u001b[0;31m \u001b[0msolution\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_solve\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0msymbols\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mflags\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1163\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1164\u001b[0m \u001b[0msolution\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_solve_system\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msymbols\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mflags\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/miniconda3/lib/python3.6/site-packages/sympy/solvers/solvers.py\u001b[0m in \u001b[0;36m_solve\u001b[0;34m(f, *symbols, **flags)\u001b[0m\n\u001b[1;32m 1733\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1734\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1735\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mNotImplementedError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'\\n'\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mmsg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnot_impl_msg\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1736\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1737\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mflags\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'simplify'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNotImplementedError\u001b[0m: multiple generators [t, exp(t/3)]\nNo algorithms are implemented to solve equation t**3/60 - t**2 + 2*t + 9 - 12*exp(-t/3)" ] } ], "source": [ "solve(xb - xt, t) ## NOTE: this will give an (expected) error!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This time the function solve can't solve the set of equations exactly (analytically). If solve can't do it, We need to use a numerical root finder, but we need to give an initial guess." ] }, { "cell_type": "code", "execution_count": 178, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$3.7163673728562$$" ], "text/plain": [ "3.71636737285620" ] }, "execution_count": 178, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = nsolve(xb - xt, 4)\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Considering significant figures, we can evaluate this to a 3 significant figures." ] }, { "cell_type": "code", "execution_count": 179, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAASCAYAAADPNlfiAAAABHNCSVQICAgIfAhkiAAAAf5JREFUSInt1suLTmEcB/CPMWpkIQZjI7cNmiJZ2EjNhoWRS5Ya5VpKFkopmZSFKEkopfwDsmCy0ETGZEEG45KiJiO3XJqV3BqL5zfN+x7zvue8r53mW6fn9Jzf9/f9/p7z/J5z+A9wHN0YxDd8QR+OoLmGPNswnHP9Lolvxg5cwcvQHsIdbEdDafIJGbEfeIBn+IgpWIkVeBv3gwVML8OGCs9WoQ1dWBdze3Ae73ATr9GCTZiKy9gSxf6FpgpCx4JwroDhPNyNXOtL5trQLrOimC0VMIzNtQotDeKNumyOojXyvMHEgpxDwTkzMpGtrBLaY3xc1F0F7I7xovI9XQ0/Y/yVF3gAnTiFHqnSR5hZk8VyTMZXyeycgpxG9If+mrzg98o7/brUGP+Cjsh1rQbOyeB01SLUgo14IZ0ey2shZ9AbBtrzAgP7Iv45ptcjOBff8aQeMpaEgUHFGnBvxD+VTpC60ReJZtTBPR3czgKx+yO2H7Pq0CrDh0g2rUZek/RlLdKAB0OjT8HFWWTsV9Fg9OPSm3m2MHiTquTdGtyrOfqHI+6+nD3cWHK/FidwG6/wWWrE1VggnSg7M/xuab/Px0AFjV0xXqjiowNHpbfRIzVhFgO4lJ1sxVk8xCfpMB/CPWkvjlX9gLQ68yqYWaxYA3bK/8G6VYU/jnGM4A8bHIYNo0fy2AAAAABJRU5ErkJggg==\n", "text/latex": [ "$$3.72$$" ], "text/plain": [ "3.72" ] }, "execution_count": 179, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N(_,3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The truck overtakes the bicycle after 3.72 s." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "Getting xt a different way... as an ODE" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$C_{1} + C_{2} t - 0.0166666666666667 t^{3} + 1.0 t^{2}$$" ], "text/plain": [ " 3 2\n", "C₁ + C₂⋅t - 0.0166666666666667⋅t + 1.0⋅t " ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xt = Function('xt')\n", "ode = diff(xt(t), t, t) - at\n", "soln = dsolve( ode ).rhs\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We need to add appropriate initial conditions to solve for the unknown coefficients." ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAJ0AAAAWCAYAAADaUZ7NAAAABHNCSVQICAgIfAhkiAAABE5JREFUaIHt2luI1GUYx/HPdqBW17Kig9BhyY4WJBERRbJYQQekosNFBHXRVWekiyzCpRDD2o5gB0iHNom8ybCgJEKo6IRYdCDrQqPsgBislqarTRfvO7kO85/5n3Zm2+YLw7s7z/O+zzO/efbd9/CnS5cJxk34GCPYi9mdTafLBGYQo/gVq3BankFm4W9sxzI8guOa+J+KxViHLTGBLXgXt2NKniQKcLyQ98/YhU14Cke0OY8s/Jc1HMCjeBtVfJon4B2x890t/HrwcEyqig/xXEzgVWyN77+fJ4mczMRvMe6qmMt78fdvcVQbc0nDZNNwnTBh9WUN+lAMcFkLv+XR72uc08DeiwejX7t4J+Z0V937T8T3n29jLmmYbBquiD4nZA06GDsONPGZH32+wbQW4/VmTSAnJws5bcQBdbZp+AN/Ymqb8mnFZNSwEvv3NzLWD5iFGViEPbhRWPs1Y2eBWDUqwoe5tYnP3NiuEab4sWwX/nVNwQUl5FOUdmtY0Vo/xlnDZkU3PbZJH/ReHIphfJUn+Dhxemy/S7B/H9tcu6uSmawa/hXbwxsZk4quBxcLfxU/JPhcE9vhBPt4sABn4vUmPrUPOpJgr70/PcHeTtqtYRr9KK7hptgONDLWF93lGBK2u+fiReHcpZ4+ocqr+CQhcBJzsFrYhldxfYa+vwg7pyQx0tAT22qBMcqgiIYL8Bm2CUcqq3F2in5l6EdrDYeFyepxrBSWEP01Y6Oim4/zhOn+2YRBj47tNuzImPBUfIE7M/ZLS03QhlM7Dqvz6xRFNBzAUlworL/2CGd5R5aUW1ENNwvnjaO4AQ9I2FSMHfBqYS33Ew5s4HOMUOW7EuxpyTrTpeG2OO4LCfbaUcAlJcfNSlkaEmbNvZhXNKlIUQ2vivYPcBYOThv4ldgxadre2CJwjWablfEouplab/d3mBhHJmVoSNgFV3FRGUkpruFQ7H9p1sCLYsc5CfZ7on0Dzmhg78EVwv/0JLIW3YwYK2nar5HnYLMi3XFCmZShIbyG9VrPmGn1o9jh8LLoc0qKOPsxqPnhcA9eij6jeAtPYolwdfNjtK1oEiNr0VWkK4z6K5zF9l3hbND4CuflaL85Qz5FKUPDx4QNQpovuCL9H1YeDevj9KeIsx8Ltb6RgCuFLfhm7MbvwnXOStzSIrnxKjrCFcxy4QvZLeymnpa82F4vLOo78UBAXg2HhMKYlTJORbbZPKuG9XFOShnnX+6PHa/N2jED47Gmy8N0YSG+pNOJZOAZ2QqunbwhfLfHZu14Xez4plDxRa7MxtInPJc3O45/X/z5xJLGz8M84RS92aNbE4mlwqw8V8i59sr8VEfJHILzhaOUETlqphdfCoVRe5XxEOdA3Zi1V6WEsf8vNNKvKqzDO8VgXS4LkxwPajLITuGQeK5wddKn8e1EVtbad6LdJR8TUb+1wiH1VnyEzzuaTZcuXbp0lH8AFndrBPt3b3YAAAAASUVORK5CYII=\n", "text/latex": [ "$$\\left \\{ C_{1} : 0, \\quad C_{2} : 0\\right \\}$$" ], "text/plain": [ "{C₁: 0, C₂: 0}" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coeffs = solve( [ soln.subs(t, 0) - 0, # xt(0) = 0\n", " diff( soln, t).subs(t, 0) - 0, # vt(0) = 0\n", " ])\n", "coeffs\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now substitute these back into our solution." ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$- 0.0166666666666667 t^{3} + 1.0 t^{2}$$" ], "text/plain": [ " 3 2\n", "- 0.0166666666666667⋅t + 1.0⋅t " ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xt_soln = soln.subs(coeffs)\n", "xt_soln" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p = plot(xt_soln, xb, ('t', 0, 5), legend=True, show=False)\n", "p[0].line_color ='red'\n", "p[1].line_color = 'green'\n", "p.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you are using SymPy 1.3 or newer, then we could also write" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\operatorname{xt}{\\left (t \\right )} = - 0.0166666666666667 t^{3} + 1.0 t^{2}$$" ], "text/plain": [ " 3 2\n", "xt(t) = - 0.0166666666666667⋅t + 1.0⋅t " ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ode = diff(xt(t), t, t) - at\n", "\n", "ics = {xt(0):0,\n", " diff(xt(t), t).subs(t, 0):0 }\n", "dsolve( ode, func=xt(t), ics=ics)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. Another ODE: Simple Harmonic Oscillator" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Consider a block of mass $m$ attached to a spring on a horizontally frictionless table. Experiments have shown that the force exerted by a spring is linearly proportional to the distance\n", "\n", "$$ x $$\n", "\n", "the spring is displaced from its equilibrium position. Mathematically, this is\n", "\n", "$$ F = -k x $$\n", "\n", "where $k$ is the spring constant. Its value depend on the particular spring used. Newton's Second Law then gives\n", "\n", "$$ m a = -k x \\quad \\mathrm{(1)}$$\n", "\n", "Since $ a = d^2x / dt^2, this yields the ordinary differential equation\n", "\n", "$$ m \\frac{d^2 x}{d t^2} = - k x \\quad \\mathrm{(2)}$$\n", "\n", "with the initial conditions\n", "\n", "$$ x(0) = x_i, \\quad v(0) = v_i $$\n", "\n", "where $v$ is the velocity. In the previous example, acceleration (force) was given an explicit time dependence. Instead, the force here depends on position. A general solution to (2) was found analytically back in PHYS1050 in terms of sines and cosines, and we can recover it here." ] }, { "cell_type": "code", "execution_count": 115, "metadata": {}, "outputs": [], "source": [ "# define our variables\n", "x = symbols('x', cls=Function)\n", "t = symbols('t')\n", "k, m = symbols('k, m', positive=True)\n", "xi, vi = symbols('x_i, v_i')" ] }, { "cell_type": "code", "execution_count": 116, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$C_{1} \\sin{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )} + C_{2} \\cos{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )}$$" ], "text/plain": [ " ⎛√k⋅t⎞ ⎛√k⋅t⎞\n", "C₁⋅sin⎜────⎟ + C₂⋅cos⎜────⎟\n", " ⎝ √m ⎠ ⎝ √m ⎠" ] }, "execution_count": 116, "metadata": {}, "output_type": "execute_result" } ], "source": [ "general_soln = dsolve( m*diff(x(t), t, t) + k * x(t), x(t)).rhs\n", "general_soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Use the initial conditions to solve for the unknown coefficients" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ \\left \\{ C_{1} : \\frac{\\sqrt{m} v_{i}}{\\sqrt{k}}, \\quad C_{2} : x_{i}\\right \\}\\right ]$$" ], "text/plain": [ "⎡⎧ √m⋅vᵢ ⎫⎤\n", "⎢⎨C₁: ─────, C₂: xᵢ⎬⎥\n", "⎣⎩ √k ⎭⎦" ] }, "execution_count": 102, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coeffs = solve ([ general_soln.subs(t,0) - xi, \n", " diff(general_soln, t).subs(t, 0) - vi]\n", " )\n", "coeffs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Substitute those coefficients back into the solution to the ODE" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$x_{i} \\cos{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )} + \\frac{\\sqrt{m} v_{i} \\sin{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )}}{\\sqrt{k}}$$" ], "text/plain": [ " ⎛√k⋅t⎞\n", " √m⋅vᵢ⋅sin⎜────⎟\n", " ⎛√k⋅t⎞ ⎝ √m ⎠\n", "xᵢ⋅cos⎜────⎟ + ───────────────\n", " ⎝ √m ⎠ √k " ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = general_soln.subs(coeffs[0])\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Or, with SymPy >= 1.3, directly as" ] }, { "cell_type": "code", "execution_count": 118, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$x_{i} \\cos{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )} + \\frac{\\sqrt{m} v_{i} \\sin{\\left (\\frac{\\sqrt{k} t}{\\sqrt{m}} \\right )}}{\\sqrt{k}}$$" ], "text/plain": [ " ⎛√k⋅t⎞\n", " √m⋅vᵢ⋅sin⎜────⎟\n", " ⎛√k⋅t⎞ ⎝ √m ⎠\n", "xᵢ⋅cos⎜────⎟ + ───────────────\n", " ⎝ √m ⎠ √k " ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = dsolve( m*diff(x(t), t, t) + k * x(t), x(t),\n", " ics = {x(0):xi, \n", " diff(x(t), t).subs(t, 0):vi}).rhs\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We often rewrite the natural frequency as $ \\omega_0 = \\sqrt(k)/\\sqrt(m)$." ] }, { "cell_type": "code", "execution_count": 119, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{v_{i} \\sin{\\left (t ω_{0} \\right )}}{ω_{0}} + x_{i} \\cos{\\left (t ω_{0} \\right )}$$" ], "text/plain": [ "vᵢ⋅sin(t⋅ω₀) \n", "──────────── + xᵢ⋅cos(t⋅ω₀)\n", " ω₀ " ] }, "execution_count": 119, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ω0 = Symbol('ω_0')\n", "x = soln.subs(sqrt(k), ω0*sqrt(m))\n", "x" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since there is no dissipation, i.e. no friction, the total mechanical energy of this system should be conserved. Let's check this. The total mechanical energy is the sum of the potential energy $U$ and kinetic energy $K$. The potential energy is given by $( k = \\omega_0^2 m)$\n", " \n", "$$ U = 1/2 k x^2 = 1/2 \\omega_0^2 m x^2 $$\n", " \n", "and the kinetic energy is\n", "\n", "$$ K = 1/2 m v^2 $$" ] }, { "cell_type": "code", "execution_count": 120, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{m ω_{0}^{2} \\left(\\frac{v_{i} \\sin{\\left (t ω_{0} \\right )}}{ω_{0}} + x_{i} \\cos{\\left (t ω_{0} \\right )}\\right)^{2}}{2}$$" ], "text/plain": [ " 2\n", " 2 ⎛vᵢ⋅sin(t⋅ω₀) ⎞ \n", "m⋅ω₀ ⋅⎜──────────── + xᵢ⋅cos(t⋅ω₀)⎟ \n", " ⎝ ω₀ ⎠ \n", "────────────────────────────────────\n", " 2 " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAATYAAAAaCAYAAAA9pXBQAAAABHNCSVQICAgIfAhkiAAAChNJREFUeJztnH+wVVUVxz9PfoMFJWU1GtdkCLSk0DAyGbEGHcea1IRoSizFCI0pnH5gmq8/tEJR0iEqDa3RjMBBM7NwUjQrIQgVAcMiUOQBLxDUAgp5/fFde+555+59zrnv3B+PN+c7c+dy9lpv7bXXXmfttdfeFyhQoECBAgUKFChQNWYDfwFeAdqBB4D3NFWjAgUKFMiJ3wGfQ8HsvcBSYDvw5mYqlQc/A3YCg5qtSJ3Rncd5MtABXNJsRXoQSsimd9ZQ5uHsQ9X62JHA68DH8qvWeJwCHAJmNVuROiNtnLPQpH+6YRpVYinQhhyqQH6UqG1g6wk+VI2PvR2N57QA/WgU+G6x56OAS62PvwP7gL3AEyiYHpGhz5phGbAHGNDITpuAtHHehSbx3Q3TqBJjTYermqhDT0IfYCR6QWuBnuBD1fjYImAN0CtAv8xkTbDn6fa8Dbgb+A6wENmsA1gCtGToNzdGoBXox43orInIMs4NwKs0eFUJ6LGFsDMVaA56kg9l8bEbUGY3PIHnIeBfETlnom1rfPxvA15Awe2CkLAJxnAjMAa4D9iNUr6lJgTgBODnqB6wF/g18M6YrO+arI94+plttC8F9HgXcABYSXIUHosi/0vG34ZWvkke3knA46bvPmCt6dHPw/tx4Pcm7wBaJR4DZnh4k8b5PaP5Pp8xni/Y89yEcQJsMr6jU/iScK3JOCuHjK5imfV9fqy9BW3nOpAtk9AIW2Wd+xKVW9FoWwn4BXo59wOrgHMDfeb1IWicH6X5UBp9LrADxZAQBiPb35FRp6usz1tDDFcaw6+A/wD3oui61tp/g6Lma8ZzAzrC7QCWx2StAg7iL4SeY3/zo4Aei0nefwNMM/kHjP964HbgKY8u15u8dmCB6f1sRO8+EV6XArehFdTJXYnGGkfSOCdRfmn/CLRGPsci59pDtrrEL03OeSl8Sfgo5YWr0RiNaibr6byazzWd0jL7RtiqmrkvEQ5sj6JF/0ngZuCnKLi9TnlrFUUeH4LG+lGaDyXRbyE9qIHqiB1kP1j4qvHfHGK42xi2AydF2t8AvIyM3waMi9D6olTwENDf2gYZ79pAP8dYP094aKcZbVHCQE4A/oeyyRMD8h3GmbwXKGecAL3RXZp4TWA1CpZv9cgdGntOGyeUX5bLPLT5JGeuUcwx3tkZeEMYbDJW5pCRB3da/xfbs1tpF5G+xWqEraqZ+xLhwNaBMpcozqKcHESR14egsX6U5kMh+g/QHbYz0XvoPr5AvBglT/09tDh6U068gjuRDcZwtoe2hsr01+Fhox1lzyPseVmCQrtQsIyiBViBVrdSwt/eavK/ksDjcBthpxiBVtFNkbbVwL+BN2WQnWWcPzSeU2LtQ9E495LteN+l+HMy8CZhH1q4moFjrP/NwBVoPL9Fi2MSGmWraua+RDiwbcZfY9qCtqZR5PEhaI4fpfmQjx7aTrfG+PqjWuLijLrcaHIejDZGV8lByMj/RM4WxzCUIfkyqWGmzC57dgEuHriieAYYQufsagqqm81DzhHFfHTyAfBB+34oQb7DGPt+xEPbCGwFjjNdQFnrQGAdSm0/AbwlIDvLOMeg7DK+Ik9C9b370cvkMBbVZj4U4x9o3wcS+sqC3VRmH3FsJuyIvs9dGfveiuZ2GFqc/oRqbv/18Ebnu1G2qmbuk/AUWjDjeJHKoJnHh6A5fpTmQz56S+DTGuObiLK4pRn0mInKZ88Bn40SooFttD0/7BFQQhOyHBk4iiOB49FkOuyz76RU8mn7dlvJ/qimsdO+47ia8hbGBaGXEuQ7DLbvtgC9LcZ3EzAVbV1nIgPvQHWT+IqZNs7e6Jb1eiod6Qz7fizWfi4w2cPvTpCej7XPQIvRfpRxnB7QxWFARO8Q/gH8rYrPthR5UbRH/n0JquX6EJ3vM+y73raqZu6TsCfQfpDKLXceH4La2KbWPpTFx0I4Dy10D6bwXQ58H9llAgqmXritwTQP7QLC+/LTjTYv0vYOwjU0h88bz5X2/A2S6whRuAOLkRl4Vxvv8QH6FqMP8dCGoIOO29AKvIvO9Ze0cZ5k9IUe2tP4D0hWWHs0UzgCvWAdKNtxmIwWmmnAKFScfY3KE+qonEMocDUDU6z/NjSWBRn/rhm2Spv7Esmnoj4sN3oUeXwI8tum1j6Ux8d6oa162k7sy2gMa/HXQzthoTGP8dDcqeJED22m0S6KtLWgzKvdw+/gfoJxhym31xT11SbcYYO7nFhNje124/X91GM4lTW2EH5icqJ3ZdLGeRHhou5mo42OtI2kvL17Y6R9orU9GZOxAr14UTyPLi/6MMrk3Bug1xPnoJV4LXrZNqAXyrc4xed7M423VRS+uS9Rm8CWx4cgv21q7UN5fMxdN0tKbr5uPGtI2A5H0+IxyPGe9fCdbN9/9dDGeGgd6M7YUMKX8NahoHIi8G00AbPw1ybeh7YsLn1egNL6a/AfHUfrdm6lu5rOq1cvVHg8Ajmuw9ko/Y/DrQzRrVPaOF395BUPzTmyO31uQddQnB3dSz2QcqE36mx90bzEi87LqKyrOLja5KMBer3wYVQv24pernY0d73x312Lz3ejbFXN3NcKeXwI8tmmHj6Ux8fOR9ne/QH6NchfVqM7f/GDmAr0Q0FtVYDeTmUx3+EZNOHxTGsKmrTLE/pdj/b1B9El3xC+Cfw51jYNBcED6G7Odej0aBWVRnWXHHegovQcykfEf6DzqdwedKKzBAW+uejousNkR++8pY1zvNG2ImdrBS40mrvqsMv6eAQ576moPrHe9H7O+OJ3/twWZnys/Vuo7uXDPcjWxwbo9cBoynes4uUAV1KI13Ti890oW1Uz9yVqk7FB130I8tmmHj6Ux8deRO+jD1ORrgfRwU6r53Nx/I/cttB3YXYY4dSyH9pOxNN+ULDYjlLdEO4x2aEticNi/PWYcabXThSYt6ET3U96eD+F6hivomC6Dr1A8aLtdFQ03oQC9m6U9n4N3eeLI22cVyAn2Y/Gep2190ETtBOdZj1OebWbimp/+9HC8UUqf4HhnDIeFK5FThzHYOTo9wX0rAeGI9u8TOd7kQ7uMmfcf+Lz3ShbVTP3JWoX2LrqQ5DPNrX2oTw+9gHTJfSfALSSfjq/vAv9dgnup1PvzylnI/rJSHdFrcZZDfqi1evCWPt8Kk/IQDUanxN3R9R6vqu1VTPQE3woj4+5Ov5xXfjbhqM/WjEeyCFjENpynloTjeqDWoyzK1hB5U+RNlJZ+B2AstkldH/Ua76z2qpZONx9KK+PbaDzlbFuj/Eote3qf543Djn6wDTGJiPvOLuCyWgLfik6jZqHjuqHxfhGoVS+1EDduop6zXdWWzUTh7MPHU4+1i0wHUXzAn7MQAc7B9BpUbwQfLihnvPd02xVKxR2KVCgQIECBQoUKFCgQIECBQoUKFCgQCf8Hzqu+Mj9sATrAAAAAElFTkSuQmCC\n", "text/latex": [ "$$\\frac{m \\left(v_{i} \\cos{\\left (t ω_{0} \\right )} - x_{i} ω_{0} \\sin{\\left (t ω_{0} \\right )}\\right)^{2}}{2}$$" ], "text/plain": [ " 2\n", "m⋅(vᵢ⋅cos(t⋅ω₀) - xᵢ⋅ω₀⋅sin(t⋅ω₀)) \n", "───────────────────────────────────\n", " 2 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "U = Rational(1,2) * ω0**2 * m * x**2\n", "display(U)\n", "K = Rational(1,2) * m * diff(x, t)**2\n", "display(K)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Adding these contributions, we should get a constant." ] }, { "cell_type": "code", "execution_count": 121, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{m ω_{0}^{2} \\left(\\frac{v_{i} \\sin{\\left (t ω_{0} \\right )}}{ω_{0}} + x_{i} \\cos{\\left (t ω_{0} \\right )}\\right)^{2}}{2} + \\frac{m \\left(v_{i} \\cos{\\left (t ω_{0} \\right )} - x_{i} ω_{0} \\sin{\\left (t ω_{0} \\right )}\\right)^{2}}{2}$$" ], "text/plain": [ " 2 \n", " 2 ⎛vᵢ⋅sin(t⋅ω₀) ⎞ \n", "m⋅ω₀ ⋅⎜──────────── + xᵢ⋅cos(t⋅ω₀)⎟ 2\n", " ⎝ ω₀ ⎠ m⋅(vᵢ⋅cos(t⋅ω₀) - xᵢ⋅ω₀⋅sin(t⋅ω₀)) \n", "──────────────────────────────────── + ───────────────────────────────────\n", " 2 2 " ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [ "EnergyE = U + K\n", "EnergyE" ] }, { "cell_type": "code", "execution_count": 122, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{m \\left(v_{i}^{2} + x_{i}^{2} ω_{0}^{2}\\right)}{2}$$" ], "text/plain": [ " ⎛ 2 2 2⎞\n", "m⋅⎝vᵢ + xᵢ ⋅ω₀ ⎠\n", "─────────────────\n", " 2 " ] }, "execution_count": 122, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simplify(EnergyE)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "as expected." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. Block on an inclined plane" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A 1.5 kg block rests on a horizontal board hinged at one end. The coefficient of static friction is μ=0.1. The free end of the board is lifted very slowly. At what angle will the block begin to slide down the board?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Solution" ] }, { "cell_type": "code", "execution_count": 123, "metadata": {}, "outputs": [], "source": [ "m, g, θ, μ = symbols('m, g, θ, μ')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting along the board (r=0 is at the hinge, r increases up the board):" ] }, { "cell_type": "code", "execution_count": 124, "metadata": {}, "outputs": [], "source": [ "Fg_radial = - m * g * sin(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting prependicular to the board:" ] }, { "cell_type": "code", "execution_count": 125, "metadata": {}, "outputs": [], "source": [ "Fg_normal = - m *g * cos(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Normal force:" ] }, { "cell_type": "code", "execution_count": 126, "metadata": {}, "outputs": [], "source": [ "Fnormal = - Fg_normal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Maximum upword force (in direction of increasing r) provided by static friction:" ] }, { "cell_type": "code", "execution_count": 127, "metadata": {}, "outputs": [], "source": [ "Fstatic = μ * Fnormal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Find θ at which Fg_radial + Fstatic = 0" ] }, { "cell_type": "code", "execution_count": 128, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGoAAAAXCAYAAADjndqIAAAABHNCSVQICAgIfAhkiAAABPVJREFUaIHtmG1ollUYx3+5NjeeSZa9KFLeUGwmUW2r0F4+DFeJvfqhD4URGUUoVkhJCVmfikH28qEPCYmppYGVoRkpokZB2qZiL8ZCc5oznM6tcptr7enD/7rZvfOcsxd3KzmeP9yc57n+5+U65zrnuq5zII88/seIgCywPMU+VwDHgEyALwEWA78AncBh4DWgMFGnyvR6IkW9zmtEpGuom4AeYEGAnwD8CHQBHwO1wE+mw3tO3c+Ao0BpSrqd1ygEJqMFTAObgFZ0alwUAXXA38BtCXkp0Aj8C4xPyG9BBlyUkm55GMrQaVoa4BehhZ/n4d427iFHvg8ZsSAWjBq2mrkoBl4Efka+uNGULQD+AvY69atN2TeASmAd0AK0ITcQ77YpwEcoDrQBG4CrnL7uB7Yg13EaaAK2A3OdehG5ri8pi4A1wHGbQx1wb2C+c4ALkEtzUQK8YPr4DHnCyvGOfA2aW00sSNtQGWAr8DrQDrxj/xejBSgFdjttKq0sA75BruB94BDwILAMuA/Yae0/ABqAe1AAj/EU8Dky6HpgCbARLdbjQ5jDJBsrAlYiA1xnfVd76teYzt95uFnAWLTB/vHwxVZ2OfJvrbxzCHoPCavQrnwZ7bIY002eBZ512nxo8j+A6xPyMcBJoBvtyGkJrggZsofeydajU3S5R69Lnf8R4ROVBV5x6t9t8o2OPGP6/eAZE3rnthp41fPtMH6m0+4ik+8M9DssTLXO1wX4RuPvcOT7TD7D02a3cbM93Gbjxtn/euAUcPEgdI0IG+ogidiQQCNyhUmUWZtNgXHiOQ/0RZ62HWjzenFwkB3H36pE25UmuznQ9y50AsYkZBnkNg4E2rQgP17o4RqAPxP/F9j4TcBbyG1eFug3Imyo0EaL3XIS06yNLz5ljAudtlLk8g4H+CPotAJwoUPuR8FzsGhK/L4LLWpdoO4E4FeUUMS4AcXJzZ76ETodn5Lr30uBq+n15QBvoh0/F3gGeA4t1HYU0EN6uWgNyLvJjekdVhaTi4lWNnk4kDstBL4I8CWJ/nMMNT3QaCAUo9iwBy2Oi8kos9nmyONEwreIVf1wFWjRdjnyFfaNBW5FwXwO8BVwLcoY00Tc3zgPV2Tl6UDbOMFZ5uFGoTn8lhSkgW77QvFhoZXuwsaGqve0qeqHqwj0F6MVBf4nkXu7hNzYmAaOAs1AuYeL44ubeoPi+UzgS/wJQzlKxvbEgjQN1YBSW/dUzqN39/gM1YWeV1zEhvIZo9LDzSDXQ0BvFtju4YaLLPA1yiqvcbjjKFGqom82Owndk9rIvd/FmGrl1tQ0TWA2UrwT3XVqUQw5hhTuoe+JG42MFIodzSi58WEvWvhkdtaKdvFadHlegnZr1sZIJiQR/V94fdiG360/TPjl4RHjmlGCs9T0PIlccwir0ea/sp86w8J8lJB0oXvOu2gHnSD3ZMQvxe6jJNYmC3zi4Uaj5MK9YD6NXjIOICO2oPR+IX0zTUjXUEVog+wItHsMPcB2Ar8jY00M1AXdoToIZ59nDY+iCT5/rgc+h3gJzbFioIqDwHz8981UUID/RaAGvRofYmQ/2xejy+36YfZTgtL5tS7hC75nginA9ygN3o/iwY3A7SioPoAMNlLRiTxHNbronjrDfiLkGpenopUH5ehiegQp3Y78ci1wxdkaNI888sgjjxGN/wCXtFtF9vD45wAAAABJRU5ErkJggg==\n", "text/latex": [ "$$- g m \\sin{\\left (θ \\right )}$$" ], "text/plain": [ "-g⋅m⋅sin(θ)" ] }, "execution_count": 128, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fg_radial" ] }, { "cell_type": "code", "execution_count": 129, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$g m μ \\cos{\\left (θ \\right )}$$" ], "text/plain": [ "g⋅m⋅μ⋅cos(θ)" ] }, "execution_count": 129, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fstatic" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like m and g will cancel out." ] }, { "cell_type": "code", "execution_count": 130, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$g m μ \\cos{\\left (θ \\right )} - g m \\sin{\\left (θ \\right )}$$" ], "text/plain": [ "g⋅m⋅μ⋅cos(θ) - g⋅m⋅sin(θ)" ] }, "execution_count": 130, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fg_radial+Fstatic" ] }, { "cell_type": "code", "execution_count": 131, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ 2 \\operatorname{atan}{\\left (\\frac{\\sqrt{μ^{2} + 1} - 1}{μ} \\right )}, \\quad - 2 \\operatorname{atan}{\\left (\\frac{\\sqrt{μ^{2} + 1} + 1}{μ} \\right )}\\right ]$$" ], "text/plain": [ "⎡ ⎛ ________ ⎞ ⎛ ________ ⎞⎤\n", "⎢ ⎜ ╱ 2 ⎟ ⎜ ╱ 2 ⎟⎥\n", "⎢ ⎜╲╱ μ + 1 - 1⎟ ⎜╲╱ μ + 1 + 1⎟⎥\n", "⎢2⋅atan⎜───────────────⎟, -2⋅atan⎜───────────────⎟⎥\n", "⎣ ⎝ μ ⎠ ⎝ μ ⎠⎦" ] }, "execution_count": 131, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol = solve(Fg_radial + Fstatic, θ)\n", "sol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "SymPy seems to doing something interesting with a tangent half-angle formula, but but it does give a valid solution.\n", "\n", "Picking out the physically meaningful root..." ] }, { "cell_type": "code", "execution_count": 132, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$2 \\operatorname{atan}{\\left (\\frac{\\sqrt{μ^{2} + 1} - 1}{μ} \\right )}$$" ], "text/plain": [ " ⎛ ________ ⎞\n", " ⎜ ╱ 2 ⎟\n", " ⎜╲╱ μ + 1 - 1⎟\n", "2⋅atan⎜───────────────⎟\n", " ⎝ μ ⎠" ] }, "execution_count": 132, "metadata": {}, "output_type": "execute_result" } ], "source": [ "θc = sol[0]\n", "θc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Indeed, m and g have cancelled out, but we need to specify μ to get a number" ] }, { "cell_type": "code", "execution_count": 133, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{17.9403574484089}{\\pi}$$" ], "text/plain": [ "17.9403574484089\n", "────────────────\n", " π " ] }, "execution_count": 133, "metadata": {}, "output_type": "execute_result" } ], "source": [ "θc.subs(μ, 0.1) / pi * 180\n" ] }, { "cell_type": "code", "execution_count": 134, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAASCAYAAADPNlfiAAAABHNCSVQICAgIfAhkiAAAAaZJREFUSInt1rlrVUEUBvBfXFBJo1Y2asQIUSNptZD3jGVQLBIrDVb6D1hYWJjeQtBGQUwhWFoZC5FAgqQVK6v4IAaCCy4xVXApZoTHeO9985Y0kg8OM3fmnG++Wc7M5T9AA79LbKUNnisVPH/tZxIzjruYx/fo87iIfFtB2zfcKWj/0Ybo15gq6TuNUTxP2m9iJI7zHkO5gzWibSQWhFU8n7SfwRH0oa7Nld5IDOMklvEs6ZvNJSkSvQOXcABreIM5/57BTnAtlg97xIfyRFxErUvuXfgiiN3fwreu4nhsSb4f4Sz2oR8ncB8DQuKMdCgYLmJ35Fnqgicbt4WZP+2C41XkOJfhW1ex0rkYjCSfO4w/FuOXsDXDv66N41GGD7Hsz/RP0dMEzBV9KpaLHYyxE5fxSxDdNZpFH8feAp+DuBfr6XYdFl6u7RVjTGAPZvQoAZvv6QncEC75d1iNosaE1ZoRErIZL4VJHVL+kl6N5YMWWi5EI9xehB2ejvVPuJ4G1fAEb/EV6/iIF5gUntcUDSFhBkqEHJWfgLdU/2A1WsRvYhPwB3oJbs89dLh3AAAAAElFTkSuQmCC\n", "text/latex": [ "$$5.71$$" ], "text/plain": [ "5.71" ] }, "execution_count": 134, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N(_,3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So the block will begin to slide down the board at an angle of 5.71 degrees." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. Block on an rotating inclined plane" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A 1.5 kg block rests on a horizontal board hinged at one end. The block rests 0.3 m away from the hinge (hinge is at r=0). The coefficient of static friction is μ=0.1. The free end of the board is lifted so that angle between the board and the horizontal increases at a steady rate of ω=0.4 rad/s. At what angle will the block begin to slide down the board?\n", "\n", "The twist here is that since the board is rotating with a non-negligible speed, the block feels a centrifugal force pushing it away from the hinge (up the board). Thus, the angle at which it begins to slide should be larger. The centrifugal force is \n", "\n", "$$Fc = m r ω^2.$$ \n", "\n", "(Alternatively, the force of static friction provides the centripetal acceleration required to keep the block moving in constant circular motion while it as rest with respect to the board.) Use $g$=9.80." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Solution**" ] }, { "cell_type": "code", "execution_count": 135, "metadata": {}, "outputs": [], "source": [ "m, g, θ, μ, ω, r = symbols('m, g, θ, μ, ω, r')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting along the board (r=0 is at the hinge, r increases up the board):" ] }, { "cell_type": "code", "execution_count": 136, "metadata": {}, "outputs": [], "source": [ "Fg_radial = -m *g *sin(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Centrifugal force:" ] }, { "cell_type": "code", "execution_count": 137, "metadata": {}, "outputs": [], "source": [ "Fc = m*r* ω**2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting prependicular to the board:" ] }, { "cell_type": "code", "execution_count": 138, "metadata": {}, "outputs": [], "source": [ "Fg_normal = -m*g*cos(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Normal force:" ] }, { "cell_type": "code", "execution_count": 139, "metadata": {}, "outputs": [], "source": [ "Fnormal = -Fg_normal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Maximum upword force (in direction of increasing r) provided by static friction:" ] }, { "cell_type": "code", "execution_count": 140, "metadata": {}, "outputs": [], "source": [ "Fstatic = μ * Fnormal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Find θ at which Fgradial + Fstat + Fc = 0" ] }, { "cell_type": "code", "execution_count": 141, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGoAAAAXCAYAAADjndqIAAAABHNCSVQICAgIfAhkiAAABPVJREFUaIHtmG1ollUYx3+5NjeeSZa9KFLeUGwmUW2r0F4+DFeJvfqhD4URGUUoVkhJCVmfikH28qEPCYmppYGVoRkpokZB2qZiL8ZCc5oznM6tcptr7enD/7rZvfOcsxd3KzmeP9yc57n+5+U65zrnuq5zII88/seIgCywPMU+VwDHgEyALwEWA78AncBh4DWgMFGnyvR6IkW9zmtEpGuom4AeYEGAnwD8CHQBHwO1wE+mw3tO3c+Ao0BpSrqd1ygEJqMFTAObgFZ0alwUAXXA38BtCXkp0Aj8C4xPyG9BBlyUkm55GMrQaVoa4BehhZ/n4d427iFHvg8ZsSAWjBq2mrkoBl4Efka+uNGULQD+AvY69atN2TeASmAd0AK0ITcQ77YpwEcoDrQBG4CrnL7uB7Yg13EaaAK2A3OdehG5ri8pi4A1wHGbQx1wb2C+c4ALkEtzUQK8YPr4DHnCyvGOfA2aW00sSNtQGWAr8DrQDrxj/xejBSgFdjttKq0sA75BruB94BDwILAMuA/Yae0/ABqAe1AAj/EU8Dky6HpgCbARLdbjQ5jDJBsrAlYiA1xnfVd76teYzt95uFnAWLTB/vHwxVZ2OfJvrbxzCHoPCavQrnwZ7bIY002eBZ512nxo8j+A6xPyMcBJoBvtyGkJrggZsofeydajU3S5R69Lnf8R4ROVBV5x6t9t8o2OPGP6/eAZE3rnthp41fPtMH6m0+4ik+8M9DssTLXO1wX4RuPvcOT7TD7D02a3cbM93Gbjxtn/euAUcPEgdI0IG+ogidiQQCNyhUmUWZtNgXHiOQ/0RZ62HWjzenFwkB3H36pE25UmuznQ9y50AsYkZBnkNg4E2rQgP17o4RqAPxP/F9j4TcBbyG1eFug3Imyo0EaL3XIS06yNLz5ljAudtlLk8g4H+CPotAJwoUPuR8FzsGhK/L4LLWpdoO4E4FeUUMS4AcXJzZ76ETodn5Lr30uBq+n15QBvoh0/F3gGeA4t1HYU0EN6uWgNyLvJjekdVhaTi4lWNnk4kDstBL4I8CWJ/nMMNT3QaCAUo9iwBy2Oi8kos9nmyONEwreIVf1wFWjRdjnyFfaNBW5FwXwO8BVwLcoY00Tc3zgPV2Tl6UDbOMFZ5uFGoTn8lhSkgW77QvFhoZXuwsaGqve0qeqHqwj0F6MVBf4nkXu7hNzYmAaOAs1AuYeL44ubeoPi+UzgS/wJQzlKxvbEgjQN1YBSW/dUzqN39/gM1YWeV1zEhvIZo9LDzSDXQ0BvFtju4YaLLPA1yiqvcbjjKFGqom82Owndk9rIvd/FmGrl1tQ0TWA2UrwT3XVqUQw5hhTuoe+JG42MFIodzSi58WEvWvhkdtaKdvFadHlegnZr1sZIJiQR/V94fdiG360/TPjl4RHjmlGCs9T0PIlccwir0ea/sp86w8J8lJB0oXvOu2gHnSD3ZMQvxe6jJNYmC3zi4Uaj5MK9YD6NXjIOICO2oPR+IX0zTUjXUEVog+wItHsMPcB2Ar8jY00M1AXdoToIZ59nDY+iCT5/rgc+h3gJzbFioIqDwHz8981UUID/RaAGvRofYmQ/2xejy+36YfZTgtL5tS7hC75nginA9ygN3o/iwY3A7SioPoAMNlLRiTxHNbronjrDfiLkGpenopUH5ehiegQp3Y78ci1wxdkaNI888sgjjxGN/wCXtFtF9vD45wAAAABJRU5ErkJggg==\n", "text/latex": [ "$$- g m \\sin{\\left (θ \\right )}$$" ], "text/plain": [ "-g⋅m⋅sin(θ)" ] }, "execution_count": 141, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fg_radial" ] }, { "cell_type": "code", "execution_count": 142, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADcAAAAWCAYAAABkKwTVAAAABHNCSVQICAgIfAhkiAAAApVJREFUWIXt1k+IlWUUBvBfycyIjkg5ZCsLCgw1xRmaUlyYBLVIwlWbInITCa1a6UbBhTijCIKBOwkMCwZNrRgGolwVOs2gUIPBUG5SB7V0yinN6+I9g9fP97v3Lma4s7gPXN77nefwvM853/vno4U5i+04i5uYwCmsaqqjGcQg3pcKehHHcRlPNtPUbKET/2MzPN5cLzOORVJN15ttZDbwOUYwr9lGZhr9+APPlyW8igr2oRsnpFf8l7RZn468FfgMV4M7jWUlWv3oxZehVcHKyPkgnvfXMT4eeUtL+P24Er5K8XGInMQ/GAhzFyL+tbRZJyOnXzqKK/iuROsb/Cs1Zw+OSstmKf6Uut1Zp7gvQmtLhjvYSGFi4op0nK6uii/CDdwNM+uquHZcwj3Mz2jdwiuZuQ4F/1E9U+iL3O2F+CfSHbdJWlXTv2yzfgmRNzLcSHDvZLih4JZktLZm8rswJS3phTkjBewMrb5CvFLy21UUWCjdEeMlE1zHNbRluItSB4taV+Svm21h4tNCvBfHsL4Q3xv5u0u8ZVE98Zp4HsrkPYsnpH11p8B14jmMZrS+kpZrERtj/L4QfxNvS3u0GtMn4K8ZrVJUF9cd47lMXk8Nbm3o/JTR+rFk3uUxjhXir8d4qeBxQ/wvNqMmcsUNZ/J6anBrY8wVl2sGLI5xsir2grQsefjNvYanpEb9XqJXF6Mh2p7hBqU135XhjgRX/TVeS4sH18e78fyY9EU/HPGXIr4gtCp4q7EyHkUH/lPe6Qn8VsKdl+7E6U+eelqwQzJ8TbqAv5UOpJdxGz9Lh8hY5B1urIw8emqIPBPcQIbrkA6YHxrUmkYbDkhfOH/jjAd34XvS8puSGveh9GZbaKGFOY77fmWsRuZfKCcAAAAASUVORK5CYII=\n", "text/latex": [ "$$m r ω^{2}$$" ], "text/plain": [ " 2\n", "m⋅r⋅ω " ] }, "execution_count": 142, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fc" ] }, { "cell_type": "code", "execution_count": 143, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$g m μ \\cos{\\left (θ \\right )}$$" ], "text/plain": [ "g⋅m⋅μ⋅cos(θ)" ] }, "execution_count": 143, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fstatic" ] }, { "cell_type": "code", "execution_count": 144, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$g m μ \\cos{\\left (θ \\right )} - g m \\sin{\\left (θ \\right )} + m r ω^{2}$$" ], "text/plain": [ " 2\n", "g⋅m⋅μ⋅cos(θ) - g⋅m⋅sin(θ) + m⋅r⋅ω " ] }, "execution_count": 144, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fg_radial+Fstatic+Fc" ] }, { "cell_type": "code", "execution_count": 145, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ - 2 \\operatorname{atan}{\\left (\\frac{g - \\sqrt{g^{2} μ^{2} + g^{2} - r^{2} ω^{4}}}{g μ - r ω^{2}} \\right )}, \\quad - 2 \\operatorname{atan}{\\left (\\frac{g + \\sqrt{g^{2} μ^{2} + g^{2} - r^{2} ω^{4}}}{g μ - r ω^{2}} \\right )}\\right ]$$" ], "text/plain": [ "⎡ ⎛ ____________________⎞ ⎛ ____________________⎞⎤\n", "⎢ ⎜ ╱ 2 2 2 2 4 ⎟ ⎜ ╱ 2 2 2 2 4 ⎟⎥\n", "⎢ ⎜g - ╲╱ g ⋅μ + g - r ⋅ω ⎟ ⎜g + ╲╱ g ⋅μ + g - r ⋅ω ⎟⎥\n", "⎢-2⋅atan⎜───────────────────────────⎟, -2⋅atan⎜───────────────────────────⎟⎥\n", "⎢ ⎜ 2 ⎟ ⎜ 2 ⎟⎥\n", "⎣ ⎝ g⋅μ - r⋅ω ⎠ ⎝ g⋅μ - r⋅ω ⎠⎦" ] }, "execution_count": 145, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol = solve( Fg_radial + Fstatic + Fc, θ)\n", "sol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Again, picking out the physically meaningful root (small positive angle)" ] }, { "cell_type": "code", "execution_count": 147, "metadata": {}, "outputs": [], "source": [ "θc = sol[0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll need to specify g, r, ω and μ" ] }, { "cell_type": "code", "execution_count": 148, "metadata": {}, "outputs": [], "source": [ "params = { μ:0.1, ω:0.4, r:0.3, g:9.8}" ] }, { "cell_type": "code", "execution_count": 149, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAANMAAAASCAYAAADBs+vIAAAABHNCSVQICAgIfAhkiAAABYVJREFUaIHt2nuMXVUVx/EPOAQsVER8THiER0FLbEJAgjYYOkUlEMAQQf8gUkPUIBKVBCK1hHQgMZRnQMAoUSABwh8Q0ESeFlQQbQJJiRZrrdLxAZRHScurUlqGP9Y+zOX0nHvn7HPv/EHuL7k57dlr7e+ee9c+e+21D0MNNdTAtA9uxLN4ExO4Gns07OdUXItH8QomceuA2acnziS+VWMz0WFT/qzvA2PPdP9u/BObsQl/xDexY02/l+Ih/Df5vIyVWJr67AenKWOmxlXoBDyI/yW/p3EH5vfJnrwYy+GYg+dFoPwKy/Bw+v/f1X/hVXoy+b2K1XpPprbsfbEx8XpNpo0Yr/ic1wfGd1Lbs7gNl4gfb2O6fyd2qPDbghXJdpl4ED2efJ5J7LacpoyZGhcxaSfxEn6RWHcm/tv4ekt78mIshwMeSI7fK92/Kt3/WZ1jhRbiYPHFjek9mdqwd8By/AuX6z2ZJroNvCXjGJxk+yfwKP6T/E6p8Nulhvvj5PPTPnCaMmZqXKPYJjKDj5faFiafp1vYF2oaY7kcB6bGdbb/ImbjNbyOXauce2hM98nUlv0D8ZQ4Wqwwg5hMTRh1WpL8rm3gc2jy+e0AOTmMfo7rs+n+r2v8XhHZQK49eTHWiNPZ6THp+qAImk69iscwC5+r6biN2rAPEUvvNXhkmrydxfK8REyShfhAF/scRpXeStetDXxOSte/DJCTw+jnuNaKtOlIfLTUdrQI9uUt7MmLsUackY7GT6XrP1RrLY7FJ8WGtJ/KZY/gFpE+LGnAG01+nVqHM/CH0v1cRlkjWJT+fX8Xu/OwG3bHEfi8CNhlfeTkMAY5rpdxvki3/ib2MxvEHufLYvU7s4U9eTGWwwE36J66FDnyj2rau2lM9zQvl32xyGk7qyrjPfpaKp5SnxBPonkiV34bb4j0pS2jSlckn3t62K333grjfWms/eTkMGZiXCeLAO7krMVpfbBvE9/T4nQrU5ZVVGAmG/j0S1XsI8VKcSX+3KCvi0QF53kxeVaJCtRV+KCYKG0ZZX0f54qK0ek9bEfF3zuKr4hcfyUO7yMnhzHocf1QVMluFk/+XfEZscG/DZe1tO+luvjO4hQVqnNrYNel9rMaDpLeK1NT9gjWiKV355LtuLziwEHJb0OfGWcn26dEIDbVfuI8ZNUAOdNlDGpcY8nmroq2WeJ8Z5uYwDn25MV3DgcRGJP4eQ2sKCt+oaa9m4pB1U2mpuwPqz94LX+unuYYP5Ts/99Hxjmp/a+2L6020crUT3kT3E9OL8Ygx1WkgOWSdaG7vLek3tSevPhuxOksQPwuXY8V6V9nxWM2jhKnvytqOm6jpuw38cuavg7HYeLEfY3pp2fFnqg4N2jLOF9szp/El8ShX672StdtA+R0Ywx6XMXK/7Ga9uL+lkx78uI7h/Oumh5qzcFc7FQDKzRmsIe2nRpXn4J9Gh+puL+f2FBOml7FrhsDLkztT9TwypqrOgXa0dTG+LGWnBzGTIwLvpbs12PvUtvxIvA3m3pDoal9oaYx1ogzUjL4Lv6En4jlbrU4uFooSooXlOwfEoF4gO0PQk9OH6Z+kPliI0c8qTpf32nKztFXsVg8pdaJ84U54t2rXXCvWNrb6BumKoCPis13WROmvgc4TuT0j4g3LDaIStkCkY+vx7dbcnIYMzEuYoO/HF8Uv/vdqe9DcKIoDiw2tZ9tal+oaYzlct7VvrgJz4nl69/isLLqCTMhZu7+FW3juu8zJlqy61Rwq1aNBbhdVJU2ikPEF8V5wSLV74w1ZRRt3T6/L/nMw/UiJXpJHGpuEu/Ajav++5tychgzMa5CO4k91grxZsFWvIDfiNSsrX2hpjGWyxlqqKGGGmqooYYa6v2hdwBhdSU0sIrSOAAAAABJRU5ErkJggg==\n", "text/latex": [ "$$0.104542323328808$$" ], "text/plain": [ "0.104542323328808" ] }, "execution_count": 149, "metadata": {}, "output_type": "execute_result" } ], "source": [ "θc.subs(params)" ] }, { "cell_type": "code", "execution_count": 150, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC4AAAASCAYAAAAkAezhAAAABHNCSVQICAgIfAhkiAAAAdRJREFUSInt1s2Lj1EUB/CP8ZOXxSQps8IMCzWKyMKGkhQ2UrOREbbKRko2/gELdrIzFqI0u0lJYsNGpFkIzfyW8tYwDJq8LM4d85vf76rnZVaab93u0znf8/Lc85xzH/4TNPH7H+tNSV+LcBKPMYkpPMVpLK7Lb2QcfMKljPxLycSvYRBvcRNfsReXsQsD4kCq8uegmVZdHEpBxrC6Rb4Ew0l3vAa/A03zk/hQCnYqo9ucdE9q8LOfylIcxVpRrud4iJ8lEu9J+1hGNyPbhpWYqMDPJt6D622ycZzAgyJZ433aezO6vpbnTaIZy/I7cAF7sAYrRJmu4Jfo8i0FEz8iyvsaq1rkDdw2O6n2V+QXxsVkOFyQ34URs2P0qphUo/iGl0m3ryK/MDYmww8lbBo4g2cp+GfcwXY8Sv621uAXQncy/F7WMIPlKbEpMe4q8bsKBtuZ9lzXl8UgluEWpueD329uY8xgHV6JEz/fptsgOj13ct0Z2Q58FFd6X5uuFL91HA7gHO6L8TeZEjso3nhENGkr7okX69V5cd0VJR5NvvpxAD9wWGf1yvL/Yjdu4IUY8tN4lxweEz9B7WiKSqzP6M6K224iBR8XozXHrcJfwAKK4A/hSKkmvQnZtgAAAABJRU5ErkJggg==\n", "text/latex": [ "$$5.99$$" ], "text/plain": [ "5.99" ] }, "execution_count": 150, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N(_ / pi * 180, 3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So the block will begin to slide down the board at an angle of 5.99 degrees." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 6. Moving block on rotating inclined plane" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The 1.5 kg block from the last example is now on the move. The coefficient of kinetic friction is μ=0.09. Plot the position of the block along the board up to t=1s according to the solution of Newton's equation. When does the block hit the bottom of the board?\n", "\n", "The twist here is that since the board is rotating with a non-negligible speed, in addition to the centrifugal force, the block feels a Coriolis force pushing it into the board. The Coriolis force is\n", "\n", "$$ F_{cor} = 2 m \\frac{dr}{dt} \\omega$$\n", " \n", "which pushes into the board increasing the normal force." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Solution***" ] }, { "cell_type": "code", "execution_count": 154, "metadata": {}, "outputs": [], "source": [ "m, g, θ, μ, ω = symbols('m, g, θ, μ, ω')\n", "r = Function('r')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting along the board (r=0 is at the hinge, r increases up the board):" ] }, { "cell_type": "code", "execution_count": 155, "metadata": {}, "outputs": [], "source": [ "Fg_radial = -m * g * sin(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(negative since down the board)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Centrifugal force:" ] }, { "cell_type": "code", "execution_count": 156, "metadata": {}, "outputs": [], "source": [ "Fcen = m * r(t) * ω**2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(positive since up the board)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Coriolis force:" ] }, { "cell_type": "code", "execution_count": 157, "metadata": {}, "outputs": [], "source": [ "Fcor = -2 * m * diff(r(t), t) * ω" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(negative since into the board)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The component of gravity acting prependicular to the board:" ] }, { "cell_type": "code", "execution_count": 158, "metadata": {}, "outputs": [], "source": [ "Fg_normal = -m * g * cos(θ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Normal force:" ] }, { "cell_type": "code", "execution_count": 159, "metadata": {}, "outputs": [], "source": [ "Fnormal = - Fg_normal - Fcor" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Force of kinetic friction (should be positive because it tries to keep the block from sliding down)" ] }, { "cell_type": "code", "execution_count": 160, "metadata": {}, "outputs": [], "source": [ "Fkin = μ * Fnormal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "At t=0, angle is what we found in the last example" ] }, { "cell_type": "code", "execution_count": 161, "metadata": {}, "outputs": [], "source": [ "θ = ω*t + θc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Net force in the r direction" ] }, { "cell_type": "code", "execution_count": 162, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAAhCAYAAAABF3gwAAAABHNCSVQICAgIfAhkiAAADl1JREFUeJztnXu0FVUdxz+AvASCxAdo5l1LBUTNkCLRMlRMLTVclflqedMsQy1TszBN7GGBkpaJiisXPpGWpmZqYqH4yERQ8gGkqVeMh6A8RHmF3P747r3O3Dl7zzlnztw7c3R/1jpr7t17Hr+Z3++3n789A4FAIBAIBAKBQKDd6ZW3AIFAhpwJLMhbiAS8/ta5I6UIBFIyDngaeAdYAdwL7JWrRI1Lb+DSvIUIBDJkH2Be3kIksB1woSsjVMCBRmAUMBnYHzgY2Az8DdgmR5kalWuAG/MWIhDIkKJXwC1AF+DYnOUIBDKhN/A+cFTegjQYJwBX5i1EIFAHg4GZwAbgeWAEsA44LE+hqqAbGsUbkLcgRaAJaAWmZnjOm4Dl+Mf7ewI/BRYi43kDDQV2jewz3Mh1aoZyfRAZiJ7TASmPr6QrF42um17AYmD3vAVpEJJspBpfhsa3maIxCFgD/BbYDfgS8Dp6xjtkdI32LBvOJYw+AdlXwJ8CtgDnePIHAi8Am4DpwATgRSPDdbF97wKWol5ewM104Fk0rFMrlXR1DtLLCY68RtbN2cDjeQvRICTZSC2+DPnaTH/gW0aG/wDrUQX2OKosGm0K8iFgWiztBvR8s6C9y4YdUINt1zpk/EDQFRiCnCkLZgCrUcs4TjdgDvAubXtsvVHr7X3aDkuMQEq+ICPZPmhchgx9t5THJ+kK4Bb0/Ac78hpZN6+gaNFAZXw2UqsvQ742c7q59hLgVuBXqMJabdLvADrlIFcadkYyfzqWPgV4IKNrdETZMAO4Iq2AgXIGoVbTFE/+BUgxZzjyrjR5X4ulL0AOnaaHB9Bszjsq5fFFZRLwJjA05fGVdAV69mvx9w4aUTf7mWuO6MBrNipJNpLGl6E+m2kmvb0cjOIk4rY8AFhkzvuVFOfNg6NR8GW3WPpc1LCol44qG34BLLP7tMcQRA/gx8B81N1+HRluFyT8c7H9D0KGcDmwL3A3sBINldxFqUU5FLgNjc+vAf4CfDx2rqOBv6Me0kbU8psFjI3t10T5EHQ0rQm4HXjL3MMc4EjP/Z6CWpHTHXk9gR8aeVyKfdts463m29G9jfZcsz3JUh+W75hzTqpw7Vfxz+f8DjjJyDe/guyXocrmHiN7K7AnybqaYPYbQinIq9X8Torsl6duvmfkOcWR1xcVIDMdeUeg+3m+wvnz9F2QzqajueqNyG9m4I4ePRZ41Jxvvbm3cUB3x77Vlgvgt5G0vgz52cxMtGRvSyx9GXCt+XuU47is9ZqF/7ciO4zq9/NGvmoioItSNsxD9zcMsq+AewEPoxbJOjRZ/jAKWJiKhH82dsy+ZjsIzU28D/wBtdDGoCGTo4DZ5vgbgZfQBPxNkfN8Gz3UocjoJgH3I8f5Zg33sIu5VhNwM1LIXubcBzn2H21k/qcj7xigHzLS/znye5jtplj6E2Z7aA1yZ0VW+rDsgAx4GXBxhWvPMdv9Y+mTUU/geOQ0A8wvPt9iZd8LeAwVPNeh57+QZF3NpRQg8Q/gkshvVmS/Iuhmrievkydvf6Sj9QnnztN3AU5Dz32M2U4C7gO2p7yivBT55R5It783934p8CBtg6FqLRd8NpLWlyFfm/Fh72GzIy9LvWbh/yC73ogaBbvGrlVNBVyUssHK+tkqZK4ZO0Z+EW3nFg6h1GL4fuyYW036MuATkfQ+wCpkIEuBkZG8bsgYtlAyfKug7R1ybRv7vwl/D7iVckM5zKTfH0vvZeTz9SzsvU0Dxjt+T5n8L8aO62vSZ3vOW4lm0g9bZaUPy9XmfGdVce2JZt9xsfRWz2+8R/a1aNg1SiVdgQrrVrP1kadunkOV6FaOvPPMeY935C3G3TOOkqfvDkUVwkrUG4nzscjfI801F9G2t7kVqmDj83C1lAtJNpLWl6E+m2km+ymLrdA9tuJevpNlGZCF/1tONNdYBTwC/Ax4j+o6kkUpG3qbfa5N2CcVdp7pbk++DRf/XCx9gUk/3HHMs5R38y0Pmbz+5v+5SBkfrULWJvwVcAvuMfzX0ZB0lEHmmBme69h7rvRrchy7HjlAGppJ77RZ6QNUwG1Aw1PVhPVfbM4xsQZ5o1jZXUO0lXQFcopWFA2ZRB666YEqqac8+dPMeQfF0rujQtHnl5C/715l/v9BgoyW6/EXhINQL+bVSFot5UKSjdTjy5DeZprJvgK+3JzzPk9+VnrtaP9Pokhlw2Y0UlNGC9UZmf3dEjn2ZpMWj1KzPIMKgj6RtF6UO0yUlWhuJb6+DjTk8U7kfxsivgRFmY1BrwBz0YS/AvYVQnYoJoptjbvmDXqZPF+rqjcarnrDk78Y9/BQnBZq09nUhHNlqQ/Q0GEr5cNSI9B8SXyoyc61/DxBRh9W9jdxt4iTdGWZjXTimkeMkodubJTlZE/+y+j5x6Nat8Otgyh5++7T5vpDEmS0zDX7+qLgbUXZz/xfS7ngs5F6fRmqs5kWsrMXHzaOYAHuN8llqdeO9P8kilY2rAKehPKhrFdQi6ValkT+/gJSzBzPvgNRIbE2krYPeiAPOfZvQq3WP1E+59IbzQM8EUn7DeqhjkVGdjZ6qLNQ8IRPrjirPembKVeenVOLD7sC7GS2Sxx5oKGfrvhboT1JnrOzXEmpsLF8EvgymrdoieUlzZdkqQ8otdpnxdKPBL6OAiKi2EL15QQZfVjZ76M86ASSdQXyhb1RANLGCtfKQzdJ87990fN/DNl8FHu/7yWcO2/ftc9ocYKMlr5m61v7uRQFwvRFvlxLueCzkXp9GaqzmSztxcUZaG5/PppaWOnYJ0u9jjLbjvD/JIpWNrxr9iurgA+pcKCPHmiOZR7lBQCoZTsAjdtHsYWKy/GHJ+QNQw/0mVj6TebXD7WujkFDDg+igI3lCfeQBnu+/o48Gy7vU5gNALnBkdcZ3cNrVcjgerVgM3LaqZQ/8ySy1oddL7cwlm7nnRZF0jpTCkyIO2w1WNl9Q7RJugLNQ/ag/B7i5K0bVwV8AOr5umS39re157xF8F3b6N2JcluJs8ZsB6AOQ5yBsf2g+nLBZyP1+DJUbzNZ2kucs9EIwAuonPeVhVnqtV7/d9ljLdjRoKKVDb0wjbmsoqA3m59vnuV8s43fQFKhMjwhb5jnfJbVKGDqNGS421A+f5UFS9HXeVwLs+08gGtZwn4oWOMB3BP2g5HxdPQLxrPWh+2tvBtJG0JpPWq0QBuNKoKn0DBirSQVHJCsK1BPA8ojfePkrRtXL/E4s3XpxvZa+zjyoBi+ayNPj/DIEMXqZ5QjbzcUsPUa7pGsSuWCz0bq8WXIz2YsP0KV7zy0kiOpI5KlXuv1/051/uL3VJSyoQ9mqD7LCvgltIQn3os+g1IL0eXEm1CrLI5VtquS3deRdzju6FAb/bjOkVcvrWgt4raUz0m9heZZhtM2knAXNP+xBvc6RChF6T2cmaTVkaU+QEYNpfvvhIad7H7W4LemFHiRdlG9ld03T5ekKyi1fuPz2HHy0E1XSp9fjC9fOJZSQIzr3tcjPXzEc+4i+O41Ro6LcL9kJRoFbXuZF9J2LrcLCi7qjJbMWGopF3w2Uo8vQ37+DHqmv0aV5iGUB5LGyVKv7en/tXwDuEhlw9bIHlsqnKtmTkI3sgHNV0xA8wHL0YPaQttWdnf0UHytkhUJQj6HHCcarbwatVTvQI44CbVIW801okEDTfiDsKJpUR7BPSRyvEl3vR3nBJO3ArVApxg5V+Fe62aZhgqknRP2SaKZ2iMns9YHlN4c9DbSx0xkxJ9BFcN8ZCcLzX6ud+lmIbslSVcHmrz/okJiPO63GuWhm2HmmGXIv25DkcOPoh7uMpN/J+VLLEBzw/9KOH/evgvqlb6PekV/BH6JIk/nUF6g2WCdN9Eyl4mUltU8Rtu3JdVSLoDfRtL6MtRnM82kj4I+2Ry7Gck83vFrjuyftV7b0/+vp+17oS/HPQdftLJhF3Ou8yrIk4qz0LzMJjS+f7W54NuUt5rsFyRcD90KeacjrzsKAIgvmD4dvaXlVWQIK9GQwfmUD781kV0F3A05uG9+4WT0svYNSIFTKAV1uOiLjDNp2UglmqndabPWB6hwuwIV5O+hCsNWECejoaYNyHm/S/r30ibJHqWSrs4E/m1kakWVQJS8dHOqOWYsKmjeQs9zJloWca75fw6wo+P4icgn46/xi5Kn71pGmuOWGzmWAH8FvurY9zi0MmEt0teLwE8oD6SppVyAZBup1ZehfptpJn0FPJ7KkdSPRPbPWq/t6f+z0dC6ZRZ6MUacopUNR5vjR1bYLzO+QTvW+AVhHLrHYZV2rIKzzLnaY846UJ+u8tKNfZlB2nc5H0q6e/4w+K6L4M/FIukbwF1RYy3aqKj0ylUfHVE2XIwaga5lXKnpgvtNM6PRBPwiGvMTbtXSA7Xm7q3zPD1Rq/+OuiUK+Eirqzx18yQa2vJ9paUSXVDr/jRP3ofZd10Efy4Olb4B3JnSGvkRKFCumpeuuOiIsuHPpJ9q87I3ap3cg9bdXUVpTeIKsmlJFp0DUeumlg85x9kDDRs1ZSBPwE8aXeWlmy5o+M4VFFML43G/fSf4rpvgz8Wgmm8Aj8H9Epo0tGfZ0A/13PdJI1gSg9Hi7MXImdehuZIJuL9sEQgEqmNPVBneUmnHCmyD5nPjc5bBdwNFpdpvAF+CGo1F53TqH1UJBAINypmUf8AiECgq1X4D+B70udIi0wlNJe0eTWyP7wEHAoFiMhmtidw1b0ECgSpopbpvAO9N+beqi8ZYtGY869dsBgKBBmI79P3cQKDo7IimRa6j9A1gG4AVfWtVC+oB70j5u7SLwAAUWxEIBAJhbjfQMFTzDeAT0brsLWjJXtHoj/sTt4FAIBAIBAKBQCAQCAQCgUAgEAgEAoFAIBAIBAKBQCAQqIf/A/Fg4yCNkdtDAAAAAElFTkSuQmCC\n", "text/latex": [ "$$- g m \\sin{\\left (θ \\right )} + m ω^{2} r{\\left (t \\right )} + μ \\left(g m \\cos{\\left (θ \\right )} + 2 m ω \\frac{d}{d t} r{\\left (t \\right )}\\right)$$" ], "text/plain": [ " 2 ⎛ d ⎞\n", "-g⋅m⋅sin(θ) + m⋅ω ⋅r(t) + μ⋅⎜g⋅m⋅cos(θ) + 2⋅m⋅ω⋅──(r(t))⎟\n", " ⎝ dt ⎠" ] }, "execution_count": 162, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fnet = Fg_radial + Fkin + Fcen\n", "Fnet" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(Friction is increased because of the coriolis force.)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Solving Newton's equation" ] }, { "cell_type": "code", "execution_count": 163, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$r{\\left (t \\right )} = C_{1} e^{t ω \\left(μ - \\sqrt{μ^{2} + 1}\\right)} + C_{2} e^{t ω \\left(μ + \\sqrt{μ^{2} + 1}\\right)} - \\frac{g μ^{2} \\sin{\\left (t ω - 2 \\operatorname{atan}{\\left (\\frac{g - \\sqrt{g^{2} μ^{2} + g^{2} - r^{2} ω^{4}}}{g μ - r ω^{2}} \\right )} \\right )}}{2 ω^{2} \\left(μ^{2} + 1\\right)} - \\frac{g μ \\cos{\\left (t ω - 2 \\operatorname{atan}{\\left (\\frac{g - \\sqrt{g^{2} μ^{2} + g^{2} - r^{2} ω^{4}}}{g μ - r ω^{2}} \\right )} \\right )}}{ω^{2} \\left(μ^{2} + 1\\right)} + \\frac{g \\sin{\\left (t ω - 2 \\operatorname{atan}{\\left (\\frac{g - \\sqrt{g^{2} μ^{2} + g^{2} - r^{2} ω^{4}}}{g μ - r ω^{2}} \\right )} \\right )}}{2 ω^{2} \\left(μ^{2} + 1\\right)}$$" ], "text/plain": [ " ⎛ \n", " ⎜ \n", " 2 ⎜ \n", " ⎛ ________⎞ ⎛ ________⎞ g⋅μ ⋅sin⎜t⋅ω - \n", " ⎜ ╱ 2 ⎟ ⎜ ╱ 2 ⎟ ⎜ \n", " t⋅ω⋅⎝μ - ╲╱ μ + 1 ⎠ t⋅ω⋅⎝μ + ╲╱ μ + 1 ⎠ ⎝ \n", "r(t) = C₁⋅ℯ + C₂⋅ℯ - ───────────────\n", " \n", " \n", "\n", " ⎛ ____________________⎞⎞ ⎛ ⎛ ___________\n", " ⎜ ╱ 2 2 2 2 4 ⎟⎟ ⎜ ⎜ ╱ 2 2 2\n", " ⎜g - ╲╱ g ⋅μ + g - r ⋅ω ⎟⎟ ⎜ ⎜g - ╲╱ g ⋅μ + g \n", "2⋅atan⎜───────────────────────────⎟⎟ g⋅μ⋅cos⎜t⋅ω - 2⋅atan⎜──────────────────\n", " ⎜ 2 ⎟⎟ ⎜ ⎜ \n", " ⎝ g⋅μ - r⋅ω ⎠⎠ ⎝ ⎝ g⋅μ - r⋅ω\n", "──────────────────────────────────── - ───────────────────────────────────────\n", " 2 ⎛ 2 ⎞ 2 ⎛ 2 ⎞ \n", " 2⋅ω ⋅⎝μ + 1⎠ ω ⋅⎝μ + 1⎠ \n", "\n", "_________⎞⎞ ⎛ ⎛ ____________________⎞⎞\n", " 2 4 ⎟⎟ ⎜ ⎜ ╱ 2 2 2 2 4 ⎟⎟\n", " - r ⋅ω ⎟⎟ ⎜ ⎜g - ╲╱ g ⋅μ + g - r ⋅ω ⎟⎟\n", "─────────⎟⎟ g⋅sin⎜t⋅ω - 2⋅atan⎜───────────────────────────⎟⎟\n", "2 ⎟⎟ ⎜ ⎜ 2 ⎟⎟\n", " ⎠⎠ ⎝ ⎝ g⋅μ - r⋅ω ⎠⎠\n", "─────────── + ────────────────────────────────────────────────\n", " 2 ⎛ 2 ⎞ \n", " 2⋅ω ⋅⎝μ + 1⎠ " ] }, "execution_count": 163, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = dsolve( Fnet.subs(Symbol('θ'), θ) - m * diff(r(t), t, t), r(t))\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Fill in the physical parameters:" ] }, { "cell_type": "code", "execution_count": 164, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$C_{1} e^{- 0.365616732719144 t} + C_{2} e^{0.437616732719144 t} + 30.1328613232814 \\sin{\\left (0.4 t + 0.104542323328808 \\right )} - 5.46820751909533 \\cos{\\left (0.4 t + 0.104542323328808 \\right )}$$" ], "text/plain": [ " -0.365616732719144⋅t 0.437616732719144⋅t \n", "C₁⋅ℯ + C₂⋅ℯ + 30.1328613232814⋅sin(0.4⋅\n", "\n", " \n", "t + 0.104542323328808) - 5.46820751909533⋅cos(0.4⋅t + 0.104542323328808)" ] }, "execution_count": 164, "metadata": {}, "output_type": "execute_result" } ], "source": [ "params = { g:9.8, ω:0.4, θc:0.104542323328808, μ:0.09}\n", "r_soln = soln.subs(params).rhs\n", "r_soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Apply initial conditions r(0) = 0.3 m and r'(0) = 0.0 m/s" ] }, { "cell_type": "code", "execution_count": 165, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left \\{ C_{1} : 16.6212367696275, \\quad C_{2} : -14.0273077317372\\right \\}$$" ], "text/plain": [ "{C₁: 16.6212367696275, C₂: -14.0273077317372}" ] }, "execution_count": 165, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coeffs = solve ([ r_soln.subs(t, 0) - 0.3, \n", " diff(r_soln, t).subs(t, 0) - 0])\n", "coeffs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Substitute those coefficients back in" ] }, { "cell_type": "code", "execution_count": 166, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$- 14.0273077317372 e^{0.437616732719144 t} + 30.1328613232814 \\sin{\\left (0.4 t + 0.104542323328808 \\right )} - 5.46820751909533 \\cos{\\left (0.4 t + 0.104542323328808 \\right )} + 16.6212367696275 e^{- 0.365616732719144 t}$$" ], "text/plain": [ " 0.437616732719144⋅t \n", "- 14.0273077317372⋅ℯ + 30.1328613232814⋅sin(0.4⋅t + 0.10454\n", "\n", " \n", "2323328808) - 5.46820751909533⋅cos(0.4⋅t + 0.104542323328808) + 16.62123676962\n", "\n", " -0.365616732719144⋅t\n", "75⋅ℯ " ] }, "execution_count": 166, "metadata": {}, "output_type": "execute_result" } ], "source": [ "path = r_soln.subs(coeffs)\n", "path" ] }, { "cell_type": "code", "execution_count": 167, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "execution_count": 167, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot(path, (t, 0, 1))" ] }, { "cell_type": "code", "execution_count": 168, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$0.743020076490511$$" ], "text/plain": [ "0.743020076490511" ] }, "execution_count": 168, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t_end = nsolve( path, t, 0)\n", "t_end" ] }, { "cell_type": "code", "execution_count": 171, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC4AAAASCAYAAAAkAezhAAAABHNCSVQICAgIfAhkiAAAAgJJREFUSInt1j1sTmEUB/BfqURRLcJE0ngTVCwMjfgaarEwmkgMDZN0l5DXRCKaNhYSH4PJRgTxEYPP1ahFlAoxGAQREmp4nhvX7f1631H6T25O7nP+59z/Pfc8z7n8R1iJi3iPH5jEKJa0kOMApiuuXxU59qe4Q1lnZ+a+gSdYgWt4jgEMYxe24lMN4c9wvMC3HYO4VRK/CmfwFYtqPM9t4Q0PZ9ZH4vrZOkkq8DTm2lPg78A9vMIpBRVPY3UkvcacjK9bePtvWNi2ZDbEZ7zD3ALOMH5jB5oKhKcFDkZ7Jwam8QWPsQCb2xQNh6K9IL/H+3ESY3hQligtfG20EwXcF9GuqadxBrqwTyjK+Rx/Jy7jLY5UJUtvzp5oPxdwk/XeWjJnYm+MvYGpHP8xbMQ2fK9Klu3lMnREO91CTBoHoz2X4xsQqnxa2LyVSAtPKtqTR8TiDK8VrMcWYVPezPiSFpnA0TZyGxKqmVcR/h6VO9vIPRZjmzm+XtXDKrlGk6COVIIGXgqTsuHfk6UbH4QvtFw4FutivjCFe9BnZn93CcMmD5uEvn+EcdzFlTxiqwOogXWYVyI8Gd3XSzhFaKoxgBIhHyP5Kk7gfrwfx7IMfzL6+kpyPoyc3S1JDmiqKZzwn3BJaI2feCP06NIc7qRy4f3RP6V4UpahqQXhs5hFDv4Am6iEj9qkqC0AAAAASUVORK5CYII=\n", "text/latex": [ "$$0.74$$" ], "text/plain": [ "0.74" ] }, "execution_count": 171, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N(_, 2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So the block slides down to the bottom in 0.74 s." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 7. Collision on a track" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Two carts are on a collision course on a frictionless track. The first cart of mass m1=1.1 kg is moving to the right with v1=0.23 m/s while the second cart of mass m2=0.87 kg is moving to the left at v2=1.3 m/s. Assuming the collision is elastic, find the velocities of the carts after the collision." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Solution***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Conservation of momentum\n", "\n", "$$ m_1 v_1 + m_2 v_2 = m_1 v_{1f}, + m_2 v_{2f} $$" ] }, { "cell_type": "code", "execution_count": 180, "metadata": {}, "outputs": [], "source": [ "m1, m2, v1i, v1f, v2i, v2f = symbols('m_1, m_2, v_1i, v_1f, v_2i, v_2f')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In Python the = means assignment and the == means equivalent; in SymPy to define a equation, we have to use the `Eq` function to denote equality of two expressions" ] }, { "cell_type": "code", "execution_count": 181, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAASgAAAAUCAYAAAA+yKB7AAAABHNCSVQICAgIfAhkiAAABNxJREFUeJztm1+IVUUcxz+bti64QlGIwpJL/6hcdNUgQpErEQUhLdhTVJyHoF4CA1+kF+lBFA1Eyp6sVVAQ+wcFIQYFGZH927Uo2kKuFZVFV5MIyz/bw28OHmdnzp0zd845u3fnA5e7d35zfnPOd79n7pyZuRCJRCKRaU8CTAKNek8jMstIiL6zco32eR0i1k5gJfAW0AL+At4EFql6dwEHgd9V7B3gpoJtb1ZtPWOJ3wz8CxwHegrmrpoqdYOoXdTuCl19z+od1Er1fjtwDLgE7AV+BEaAV4D16gT6gX3ABPAQsL9g2+PqfcgS3w70As8iokxnqtQNonZRuyvMqnv2gEr8G7AsU74AOANcBH4F7s3EehExLgN9BdoaUG0dM8RWq9ihAvk6JcF/qF2lblCfdhuBLQVeIw45Z4t2NhI6e8SbVffst6qRBw2xL1XsMUPsqIrdULC9PxERs/QAnwDngcGC+QBeAl7zOC7B3yhV6wb1aNdEztf1NerQZrdoB/AkcBLpFF52PCahsw6qG+5ZcNBuPjI8PGlJ0FInd60hNgGcy3xeC7wN/IKI8Igl5/sqPpApe1SVbdPquua8HhnK5tEk3I0WUjeQ5/xPVfkfyDWbhtRFtHPN6aJdSOrwHJTjuzuQm2sDsBi5Np0mYTv4kPrV6TurdnMzlZYjc1JHDQkGEfO+AVzQYv3ALcBHmbL5yPPqq8Drhnwp48g3x1LgZ2S4uRWZyNuq1XXNqffuJnYB12llw8DDyDN6U4uN5eQKqRuIHnuQf2wP8DzwHjLJ2crUK6Kda04X7UJSh+egHN+tV/Xy6oT0HYTVr0F9vrNql+2g0sm2z6ZcKqzKia1ARPoiU/auerXjhHofAo4gcxxLgKeYOrJwyTkA/IT0yN/l1NtlKEsQo4wCH7RpJ0tI3QAe0D4/jqy6rEa+gVKKaOeS00W7jUy9wfIYQ1aVbNThOQjvuwngNvX3JNIpbDDUC+k7CKtfXb7L1c7UQX1uuKBVObEV6l2/0VzIrgosRIaEXyOrED4MA/8A33se70PZui1AzNTSyjvRzpTTRbvUjK7sw62DqtJzEN53a4APkVWxvYiOVVCmflX5zlm7MWQPQ68hdgTp3W40xEZVzLb0mPfc3oc8ex5HJsYmgfttJ+iQ8zngY4fjTST4TVaWpVvKIWSyc45W7qudLWcn2vlSh+cgvO/6kMeohkMOnQT/SfIyvVeV75y0mwf8h3k4CDLB1bTETiC9nn4hKe3M8g0y+38R2Tzmgi3nYdxXT3QSihulTN0AdiBLxLda4j7a2XJ2op0PdXoOwvrubhUr8vibkuDXQZWpX5W+y9Uu3ag5hMz0m4aDS5Be2BSbB9yJXPAlxxPVGVd5JoFNnjlSltN+YjEkZer2AvAEcB/wg6VOUe3ycnaTdi6E9N0wcAo422GeIpSlX9W+q0O7q3D5NguRM11yvSdwW3WwGziNrHZUkbObtINyPJeX90Xy59pmClX7DtpoN9cW6JB+rh7KDSI9ZQvZwVpGznQX7Vee+acLe5CNdSPItaW/pfpbvcrI2Q3aleE517zDyPL5TKYO30FN2jXw31nsm/NpZFftTMe2aW9LiTm7QbsG4T3nkrcHWV53+VnPdKYO33WLdpFIJBKJRCKRSCQSiUQikRnM/2f92lx9bxo3AAAAAElFTkSuQmCC\n", "text/latex": [ "$$m_{1} v_{1i} + m_{2} v_{2i} = m_{1} v_{1f} + m_{2} v_{2f}$$" ], "text/plain": [ "m₁⋅v₁ᵢ + m₂⋅v₂ᵢ = m₁⋅v_1f + m₂⋅v_2f" ] }, "execution_count": 181, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqp = Eq(m1 * v1i + m2 * v2i, m1*v1f + m2*v2f)\n", "eqp" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Conservation of energy" ] }, { "cell_type": "code", "execution_count": 182, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{m_{1} v_{1i}^{2}}{2} + \\frac{m_{2} v_{2i}^{2}}{2} = \\frac{m_{1} v_{1f}^{2}}{2} + \\frac{m_{2} v_{2f}^{2}}{2}$$" ], "text/plain": [ " 2 2 2 2\n", "m₁⋅v₁ᵢ m₂⋅v₂ᵢ m₁⋅v_1f m₂⋅v_2f \n", "─────── + ─────── = ──────── + ────────\n", " 2 2 2 2 " ] }, "execution_count": 182, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqe = Eq( m1 * v1i**2/2 + m2 * v2i**2/ 2, m1 * v1f**2/2 + m2 * v2f**2/ 2 )\n", "eqe" ] }, { "cell_type": "code", "execution_count": 183, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ \\left \\{ v_{1f} : v_{1i}, \\quad v_{2f} : v_{2i}\\right \\}, \\quad \\left \\{ v_{1f} : \\frac{m_{1} v_{1i} + m_{2} v_{2i} - \\frac{m_{2} \\left(2 m_{1} v_{1i} - m_{1} v_{2i} + m_{2} v_{2i}\\right)}{m_{1} + m_{2}}}{m_{1}}, \\quad v_{2f} : \\frac{2 m_{1} v_{1i} - m_{1} v_{2i} + m_{2} v_{2i}}{m_{1} + m_{2}}\\right \\}\\right ]$$" ], "text/plain": [ "⎡ ⎧ m₂⋅(2⋅m₁⋅v₁ᵢ - m₁⋅v₂ᵢ + m₂⋅v\n", "⎢ ⎪ m₁⋅v₁ᵢ + m₂⋅v₂ᵢ - ────────────────────────────\n", "⎢ ⎨ m₁ + m₂ \n", "⎢{v_1f: v₁ᵢ, v_2f: v₂ᵢ}, ⎪v_1f: ──────────────────────────────────────────────\n", "⎣ ⎩ m₁ \n", "\n", "₂ᵢ) ⎫⎤\n", "─── ⎪⎥\n", " 2⋅m₁⋅v₁ᵢ - m₁⋅v₂ᵢ + m₂⋅v₂ᵢ⎬⎥\n", "───, v_2f: ──────────────────────────⎪⎥\n", " m₁ + m₂ ⎭⎦" ] }, "execution_count": 183, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol = solve( [eqp, eqe], [v1f, v2f], dict=True ) \n", "sol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are two solutions: the first the carts miss each other entirely. The second solution is the collision." ] }, { "cell_type": "code", "execution_count": 184, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$-1.12137055837563$$" ], "text/plain": [ "-1.12137055837563" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$$0.408629441624366$$" ], "text/plain": [ "0.408629441624366" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "params = { m1:1.1, m2:0.87, v1i:0.23, v2i: -1.3} \n", "v1f_soln = sol[1][v1f].subs(params)\n", "v2f_soln = sol[1][v2f].subs(params)\n", "\n", "display(v1f_soln, v2f_soln)" ] }, { "cell_type": "code", "execution_count": 185, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADEAAAASCAYAAADypDaEAAAABHNCSVQICAgIfAhkiAAAAMZJREFUSInt1jFOQkEQxvEfBu5gJ4SQeAyIBa2FR/EA3oEreA8LLkBnBdnKykobOil41YLAe7txidl/Mskmk/m+mWImS+WAJyywxBd+8HoFWq1YNWbfeE80zqnVihkm6GGaaHyxVr+jwW+8ldC6yWhajDrEtRAPEewX6NL4k2txjnix19i2qP/I2Etn4iEeinSRyL/ciRKMcY9BV4Fevl7AYxNwizk29v8f+MRzVBNwh1HzTtHKwovT1ywcqQlNbphBq1JJZQd220WaZGvfYQAAAABJRU5ErkJggg==\n", "text/latex": [ "$$-1.1$$" ], "text/plain": [ "-1.1" ] }, "execution_count": 185, "metadata": {}, "output_type": "execute_result" } ], "source": [ "v1f_soln.evalf(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first cart ends up moving to the left at -1.1 m/s." ] }, { "cell_type": "code", "execution_count": 186, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAASCAYAAADPNlfiAAAABHNCSVQICAgIfAhkiAAAAdBJREFUSInt1r2PDVEYx/HPymqw1kuzhY2XzWJLCi8hskjUCq1OJRGNiuCWEiGLRiKWhD9AS7wk3ksdrohLQSQKXMIqXMU8E2NyZ3bm7lb4JSfPPef8zjPfe/JknuEv0TJM4i2m0MIEFs8w7150Yuzrsr8H53APn8N3tUriEbyPA9dwArdj/gxLewQexke0S6CfxF4bT+tAXw/zgdz66Vg/3wNwH27iJU6WQG/HaPjHq0KvCuMrzMntDeALvmJ+TeiD+IltaJRAZzWuBDoLtyPijXhIVm08wDxsqgE8JimxM7hb41ypstBrIjYLvC8irq6Yux9X8AaH66OVJ041GPFTgTddX1Qx9zGsw1Z8q49WrHztlqkvYqeCd4Pkdk/hUV2o6ZSFTm9ysJsRC3O+IqVl0cTR3tGKlYV+HrGoZkcjFtV8qgWRYwzf/W4oHRwPz4WYT9TkxZ81fSfiLsmfyb5BBrBFUpuPp8k5hYsFe+sldX5fckmzUjp1m8sI1mJuxfwNs/Ce7s/N9+MhzmKnpJ1ulHSrJo7k/LewHCsl3ygz0e4YMBRxMy7H7w84VHR4GJfwDj/wWtIclnTxtiQ3sqIiWEPxTad7RaNV8Rn/9W/rFz+Fdb17gEerAAAAAElFTkSuQmCC\n", "text/latex": [ "$$0.41$$" ], "text/plain": [ "0.41" ] }, "execution_count": 186, "metadata": {}, "output_type": "execute_result" } ], "source": [ "v2f_soln.evalf(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The second cart ends up moving to the right at 0.41 m/s." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 8. Simulating the 1D collision" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Suppose the colliding carts in example 7 are equipped with magnets so arranged that the carts feel a repulsive force of magnitude $0.1/d^4$ in newtons, where $d$ is the distance between the carts in metres. \n", "\n", "Let's say the carts start 5 m apart (initially $x_1$=0 and $x_2$=5 metres). Everything else is as given in example 7. Use `odeint` from SciPy to solve Newton's equation and then plot $x_1(t)$, $x_2(t)$, $v_1(t)$ and $v_2(t)$. Long after the collision, do the final velocities match those given by the answer to example 7?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Solution***" ] }, { "cell_type": "code", "execution_count": 194, "metadata": {}, "outputs": [], "source": [ "m1, m2, t, v1i, x1i, v2i, x2i = symbols('m1, m2, t, v1i, x1i, v2i, x2i')\n", "x1, x2 = symbols('x1, x2', cls=Function)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Force on cart1 depends on x1 and x2, and it always points to the left (negative)" ] }, { "cell_type": "code", "execution_count": 195, "metadata": {}, "outputs": [], "source": [ "F1 = - 0.1 / (x1(t) - x2(t) )**4" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Equation of motion for cart1" ] }, { "cell_type": "code", "execution_count": 196, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$m_{1} \\frac{d^{2}}{d t^{2}} \\operatorname{x_{1}}{\\left (t \\right )} = - \\frac{0.1}{\\left(\\operatorname{x_{1}}{\\left (t \\right )} - \\operatorname{x_{2}}{\\left (t \\right )}\\right)^{4}}$$" ], "text/plain": [ " 2 \n", " d -0.1 \n", "m₁⋅───(x₁(t)) = ────────────────\n", " 2 4\n", " dt (x₁(t) - x₂(t)) " ] }, "execution_count": 196, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq1 = Eq(m1 * diff(x1(t), t, t), F1)\n", "eq1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Information for cart1" ] }, { "cell_type": "code", "execution_count": 197, "metadata": {}, "outputs": [], "source": [ "cart1 = { m1:1.1, v1i:0.23, x1i:0}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Equation of motion for cart2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Force on cart2 depends on x1 and x2, and it always points to the right (positive). It's also equal and opposite the force on cart1." ] }, { "cell_type": "code", "execution_count": 198, "metadata": {}, "outputs": [], "source": [ "F2 = -F1" ] }, { "cell_type": "code", "execution_count": 199, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAN8AAAAoCAYAAAB+bi+NAAAABHNCSVQICAgIfAhkiAAACNRJREFUeJztnHuMXUUdxz9bSrelbUqpVm2sbWLTQgPdXbY2FnG5NsUSCAkhFIJIQEswwhIqNhEwkdWoaApqiaJgNNvybFMCVhBsgRRCiVQKBbS8Yl3xUWyxFSIPsbD+8Z2TO/fszHnc3nNfO5/k5N4zM/d3fnPOzJzf/OY3FwKBQCCFmcBWYBfwDHBmQ7UJBEYRHwG6zPfpwF+BIxqnTiDQ3vQDz3vyngU+VkddAoGaMqbRCqTQBex0pC8EDkdvv0D7cAnwZ+AdYAfw6Qy/6QN+DfwDGAbOKky7GtOKnW8asA5YgW52oD04B1gDfBfoAbYB95Nu3UxEPoD+QrVrc+YBD6NR7zlgEfAWsMwq0wk8Cpxfd+0CRfME8PNY2svAtTlktNSbr1mYC7yORr45wGnAX9DN/JAp0wHcAQw0QD8f64C9aPTNSi+q14pCNGpNxgEHgeWx9J8Aj+SQEzpfFWxBHcvml8Ae6/xE4H1khkbHcXXRzs1Co88VnvwrUGP4nCPvblS3ScWo1nLMQPeqL5b+DeDFHHJC58vJTHTTPhFLvxnZ/M3KZuDfwARP/q2oXvMceYtM3tXFqNZyRJ0v7mC5Bnghh5yW6nzN4HDpAd5Dk2abXtyezmZgLrAU2AC87SnTC/wHzVvibEeN6kvAYUUo2GK8htrAh2Pp04F/1l+d+hDvfJ9Bo8d1wPHAPcB+NB+7m/LNmQ/cjuY7rwP3Uv2a2zBqgJ1W2knm+rXofJvNNeIRMR3AoMn7Xk6ZXzS/X+/I+76ReTQyK98z58PA561yd6J7tjTntduRd9HSwsmx9JOBx+uvTmP4Kmokm5Cn8S5gNfI+DgO/AU5HI/omk/d7k7e1ymvOQB7Om4CPU+lscZlseelCHWAXlW+Z6801bq5C5pPIQeBytJxNuVNvQw6i6JhplVtKeaALaKnhXeAi4BjgR6idzbLK9DPSDJ0EdJtjGFhlvrdcAMZtqAKvAgus9MnAAdTg9gCLrbxxwCvI+TC+yuueZ2QcQJ34W8Cb1M4sHkT1utCcX23O11dxjYnoPjyXUOZiI//ihDJTTJntKddbSWUHTjvOSJHXzFwCDAH/RW/CuANmgJFruyXKloV9DBamZUE8jxQ/xZH3NCNNp4gtJm9acaodEh9Fc7MhNHoOAw+ggSMvc83vNyeU+ZkpszBF1ttooEtiCHfj8h2DKfICTchEZJ7t9uTvB/6FwrrivAS8YZ1fhczRN4B9KPzn2JppWh3XUm6g23AHZWfRezHlt6aP7ciE6kwoA/B39BYNjEJsk6vLnG9xlJsNTEUm4f9ieZPQXM12jpSAG4ETgCWogT0IHHXoKlfNPuv7CjSnjVMiXe/Iu+kzscei9cddyHxKYgJ+b2mgzRlrfT/efD7pKNebkNeDOu1TVtqyWJnzkVf0U+htUm/ORY6NV5HH9nLgy45yWfTeaz59JvZ81DGf8uRHjAGORIHESaw05bKyE3mpA02Oq/PtcJTrTcjrMZ9JjW0yamz7zXnRAdEd1vdTgbXAH9Hb7FHkUVtD+gJuXG+Qw2kffk9st/l8OkX2PKNn2nLKSio9fmmsxd/5QiB6k7ITmUkuJ8Rv0YP7gCNv0OQlzenWo8ZYqwXlrLvaT0Tm5W60GRcUATFMtreDT++NRsYcx2++YvIuSJH9BVMuROO3N2OQH2Gjr0AnchC4zErQSD/kyXsWNXBfx1qN3hauhlotWXa1d6Hwrz1oTmoTrU0m7RdL0vtc8/tLHXl9Ju9vRsYAIwOGQbGsB6lc+wu0H5eigApv54si7W9y5M0yeXc58jqRA+Z3HrnXo/Cg+TmUTdq97iO+q30Omt8doHK9MiJa4K5W73FG/hOe/H4UEPyOuc53YvlTkKOlUXOzqah+8UGpaJkb8QeiN5qs98RVB1+9pgMPoemOt/MVwQ3k73igPV32DofrgPsSyi9EnbUjoUwesup9FepYPSnlXFxG+pu3SFajuWHRMuPPbgGaP0+p8bVrQRb9wV0HX73WIs95iTp2vhvRWtkS5F2MjixbaLYDX7POHwG+6Sk7Dc37Tqha00ry6D0ehcHl9d5OQH95UNeR0OIIZI7XsuP7ZLqe3Q7c5nojyaM/uOsQT+ujHPBQoo7P2xd9MRArl7R7/XA0D7V/b4d0FbGrPaveEX1o20uezbTHGHmzq9TxUFmORum4pbAcOdxsz+oatCvjgzllJj27a1CQQ62pl/7grkM87UoURDGEpihvAr/IVJM6kLZ7fQzlfW+L0BtoqvltM+5qbxXW4A6k6EAOt+ivHFaRfV4Yl5n07E5BDdu3D7Ja6qU/uOuQVK8SjbN0nGTZvX4GMgPjo3Sz7WpvJX6Ff773WeRAuxLd97TY1CSZvme3ADXqWjp7IuqhP7jrkFSvEo7O16jNtDORx/EHsfSDVC4696B1vPji8GNI927rSNplECgzHpn5LjajZZhvo61R9tLTJuQ9do3gLpm+ZxeF0/nefAOkB4+Xcuqfti6cR39fHZLqtRXHDvuxI8vVhaTd6/ZugW7SI0UC+XiNShPKZgnlGN+9sbwfIpPOFTzgkul7dlGc7D5HHsCP0bpYEq940n36H0Qhhc8g9/8OtKsliu/Noz+465BWr6bhdDSiTLbSTjJp51hpu1EoWKB2rAL+4EiPghIuQOuPrv/PKeF+87lk+p7dRcgRUWuy6B8RXxfOoz+461BUvWpO1t3rQ2jdbQb5gosDfo5DVocdKjgLNZyvm/MFaE4dd72XcHc+l8wh3M9uHbX3+mXVH9zrwnn0B3cdiqhXYWTZvX4eCtN6H/2HY6A2PE45pvQo1Bjj0U0b0NzapoTfa2fLBPezm4CcGJ+sRmkPefRPWhfOoj+461BEvQJtyjK0ATpvoHsJf+fLIrOf5H8AKJK0deGs98RVh6rqFf62bnTyJ2R27UFrrVmZjda9NlQpsxv4KfpHhHrSAdyCvJ83eMpkvSeuOjSqXoFRwoPIk/cWMscWJxdvKsK6cCAQCAQCgUAgEAgEAoHAaOD/mQWhgycoXIQAAAAASUVORK5CYII=\n", "text/latex": [ "$$m_{2} \\frac{d^{2}}{d t^{2}} \\operatorname{x_{2}}{\\left (t \\right )} = \\frac{0.1}{\\left(\\operatorname{x_{1}}{\\left (t \\right )} - \\operatorname{x_{2}}{\\left (t \\right )}\\right)^{4}}$$" ], "text/plain": [ " 2 \n", " d 0.1 \n", "m₂⋅───(x₂(t)) = ────────────────\n", " 2 4\n", " dt (x₁(t) - x₂(t)) " ] }, "execution_count": 199, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq2 = Eq( m2 * diff(x2(t), t, t), F2)\n", "eq2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Information for cart2" ] }, { "cell_type": "code", "execution_count": 200, "metadata": {}, "outputs": [], "source": [ "cart2 = { m2:0.87, v2i:-1.3, x2i:5}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Solving Newton's equation" ] }, { "cell_type": "code", "execution_count": 201, "metadata": {}, "outputs": [ { "ename": "NotImplementedError", "evalue": "", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNotImplementedError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdsolve\u001b[0m\u001b[0;34m(\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0meq1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0meq2\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/miniconda3/lib/python3.6/site-packages/sympy/solvers/ode.py\u001b[0m in \u001b[0;36mdsolve\u001b[0;34m(eq, func, hint, simplify, ics, xi, eta, x0, n, **kwargs)\u001b[0m\n\u001b[1;32m 607\u001b[0m \"number of functions being equal to number of equations\")\n\u001b[1;32m 608\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mmatch\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'type_of_equation'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 609\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mNotImplementedError\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 610\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 611\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mmatch\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'is_linear'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNotImplementedError\u001b[0m: " ] } ], "source": [ "dsolve( [eq1, eq2] ) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks like SymPy can't do this analytically. Let's try a numerical solver. " ] }, { "cell_type": "code", "execution_count": 202, "metadata": {}, "outputs": [], "source": [ "# define initial values\n", "m1 = 1.1; v1i = 0.23; x1i = 0\n", "m2 = 0.87; v2i = -1.3; x2i = 5\n", " \n", "q0 = [x1i, v1i, x2i, v2i]\n", "\n", "def RHS(q, t):\n", " x1, v1, x2, v2 = q\n", " return [v1,\n", " -0.1 / (x1 - x2)**4 / m1,\n", " v2,\n", " +0.1 / (x1 - x2)**4 / m2]\n", "\n", "tf = 10\n", "t = np.arange(0, tf, 0.1)\n", "\n", "from scipy.integrate import odeint\n", "soln = odeint(RHS, q0, t)\n", "x1, v1, x2, v2 = soln.T" ] }, { "cell_type": "code", "execution_count": 203, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 203, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, x1)\n", "plt.plot(t, x2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks like they \"collide\" at around 3 s. Let's plot the velocities." ] }, { "cell_type": "code", "execution_count": 204, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 204, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAD8CAYAAABzTgP2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3XuYXHWd5/H3t6q6q+/d6aRzIRcSMEAQJGgbvIyjC2FFXQkqKuyqGUeHeXaGWa+z4sw+444z+qDjijOuzsoCisqKirhGxEUIOOOoXDoSSEiAxCRASJN07p2+V9d3/zinkqpOVV9St9Ppz+t5znPO+dXvVH0r6fQn53du5u6IiIhkxKpdgIiIRIuCQUREcigYREQkh4JBRERyKBhERCSHgkFERHIoGEREJIeCQUREcigYREQkR6LaBZyKOXPm+NKlS6tdhojItLJhw4b97t4xUb9pGQxLly6lq6ur2mWIiEwrZvbcZPppKElERHIoGEREJIeCQUREcigYREQkh4JBRERyKBhERCSHgkFERHJMy+sYRIriDqlBGBkI5qkhGB0O5yOQHoF0KmsaPTH3NPgopNPh8pgJD94/Z9lPLB+fM/nl7LpPrEyiveAfwPh/NhOa4uOAy/b44Gn6WOJi/zwuugZmn12aWgpQMMjpwR0OPwcHtsOR3cHU2w39B4Np4BAM9QbT8DGm7S8VOU3YqW+6+BIFg0he6TTs+R08fQ+88Ci8tBmGjpx43eLQNBca5kDDLJh7HiSbIdkCtY1QUw81DZBIQqIO4rXBcrwWYolgitcEc4tDLJwsdmLdYlmTBXNs/GUI51NdPv7Fshan2J7NxvvFNIlfWuNuX4L+UlUKBpleBg7Dv30ZnvxBsEdgcVj4Srjwaph/IXScC62LoXkBxPXjLXIq9C9HpofRFGz4Jjz0+WBY6Ny3wvlXwjlvhvpZ1a5O5LSiYJDoGzwC374qGDpa+gZ48+dhwSuqXZXIaUvBINGWGoI7/xO89CS861a44F0arxYpMwWDRFc6Df/3z2DXr+Ad3wiOI4hI2ekCN4mu9X8Lm++Cyz4TnLstIhWhYJBoOrgTfv0VeOUH4A8+Vu1qRGYUBYNE04ZvBaeivunTOqYgUmEKBome1BA8/l049y3Qcka1qxGZcRQMEj1bfwr9+6Hzg9WuRGRGUjBI9Gz4FrSdCWddWu1KRGYkBYNES8+zwempr/ojiOnHU6Qa9C9PomXDNyFWAxe/r9qViMxYJQkGM7vCzJ4xs+1mdkOe1z9uZlvM7EkzW29mZ2a9NmpmG8NpXSnqkWlqdAQ2/h9Y8fbgzqgiUhVFX/lsZnHga8DlwG7gMTNb5+5bsro9DnS6e7+Z/Wfgi8B7w9cG3H1lsXXIaWD/Nhg8HJyNJCJVU4o9hlXAdnff4e7DwJ3AmuwO7v6Qu/eHqw8Di0rwuXK66dkazOeuqG4dIjNcKYJhIfBC1vrusK2QDwE/z1qvM7MuM3vYzK4qQT0yXe3bGjzUZvbyalciMqOV4iZ6+S5LzfvcRDN7H9AJvDGreYm77zGzs4AHzWyTu/8+z7bXAdcBLFmypPiqJXr2bYX2s6GmrtqViMxopQiG3cDirPVFwJ6xncxsNfDXwBvdfSjT7u57wvkOM/slcDFwUjC4+83AzQCdnZ2n9MDe//ngNn76RPeYuibezrI65etulvs+ltXr+NMcs1ZsbHv4GQbEzIKnQIbLmfcOlo1YuBwzjq8nYjFiMSNuEI/FSMSMeNyoiRmJeIxE3EjGY9Qmgqm+Jk5dTZyG2gSNyTjNdTW01CVoa6hlVkMNiXiVTlbreVrDSCIRUIpgeAxYbmbLgBeBa4D/mN3BzC4GvgFc4e77stpnAf3uPmRmc4DXExyYLovZTUmWzWk8vu5ZOzZeIGqym/P38Zz23P5+vC3Tx7Pas9/Xw/dJu4frkEqnjy8fb3dnNFweTTtpd9LhcvaUSqcZGXVSo8F8eDQ9/h9OyAzaG2qZ11LH0jkNLGlv5Nz5TbxqSTuL2+tzQrKkRgbh4A54+TvL8/4iMmlFB4O7p8zseuA+IA7c5u5PmdlngS53Xwf8A9AE/DD8xfK8u18JrAC+YWZpguMdN445m6mkrl21hGtXzcxhKHdnZNQZSo0yOJJmcGSU/uFRjg2l6B0coXcwxaH+YfYfG2b/sSH2HB7g6e5e7t+yl5HRIMg6mpO84WVzuPaSJXSeOau0IXFgG3ga5p5XuvcUkVNSkgf1uPu9wL1j2v4ma3l1ge1+A1xYihpkfGZGbcKoTcRonsIQ/mjaeXZvLxueO0TXroPcv2Uvdz/+IufNb+bDbziLd71yYWkCYt/TwbxDQ0ki1aYnuMm44jFjxYIWVixo4X2vOZP+4RTrNu7hOw8/xyd/+AS/2b6fz7/zQupq4sV90L4tEEvA7JeVpnAROWW6JYZMSUNtgmtWLeGn1/8BH1t9Dnc//iJX/6/f8OLhgeLeuOfpIBQStaUpVEROmYJBTkksZnxk9XJuXdvJc/v7ueprv+ZI/8ipv+G+rdCh4wsiUaBgkKJctmIed/zJJRw4NsRX1j97am8y3A+HdulUVZGIUDBI0V6xqI1rVi3h2799jm17e6f+BvufBVx7DCIRoWCQkvjE5efQUBvns/dsOek6jQnt0z2SRKJEwSAlMbspyUdXn8Ovtu3nwaf3TbxBtp6tEK+F9rPKU5yITImCQUrmA689k7M7Gvm7e7aQmuSV1kBwDcPs5RCvKV9xIjJpCgYpmZp4jL+4dDm7DvTz1J6jk9+wZ6uueBaJEAWDlNTrzp4NwCM7D0xug6FjcPh5XfEsEiEKBimpuS11LJvTyKM7D05ugyO7g3n7svIVJSJTomCQklu1tJ1Hdx4knZ7E2UkDYYA0tJe3KBGZNAWDlNwlZ7VzdDDFM5O5pqE/Ewyzy1uUiEyagkFKbtWy4H//j+yYxHGG/rBPvfYYRKJCwSAlt2hWAwvb6nl01ySOM2goSSRyFAxSFpcsC44zTHgVdP9BSNRBTUNlChORCSkYpCxWLWtn/7Fhft/TN37HgYPBMFK5HhkqIlOmYJCyyBxnmPC01f6DGkYSiRgFg5TFsjmNdDQneXSiC936D0L9rMoUJSKTomCQsjAzVi1r55GJjjMMHNSpqiIRU7JgMLMrzOwZM9tuZjfkeT1pZt8PX3/EzJZmvfbpsP0ZM3tzqWqS6lq1tJ3uI4N0Hxks3Kn/gIaSRCKmJMFgZnHga8BbgPOBa83s/DHdPgQccveXATcBXwi3PR+4Bng5cAXw9fD9ZJo7q6MRgN2HCjwPOp2GgUO6hkEkYkq1x7AK2O7uO9x9GLgTWDOmzxrg9nD5LuAyM7Ow/U53H3L3ncD28P1kmpvfUgfAS0cL7DEMHQFPayhJJGJKFQwLgRey1neHbXn7uHsKOALMnuS2Mg3Naw2CYW+hoaR+XdwmEkWlCoZ8J6GPPeJYqM9ktsXMrjOzLjPr6unpOYUSpdKakwkaauOF9xgywaChJJFIKVUw7AYWZ60vAvYU6mNmCaAVODjJbXH3m9290907Ozo6SlS2lJOZMb+lrnAwDOgGeiJRVKpgeAxYbmbLzKyW4GDyujF91gFrw+WrgQc9OI9xHXBNeNbSMmA58GiJ6pIqm9dSN4mhJF3HIBIliVK8ibunzOx64D4gDtzm7k+Z2WeBLndfB9wKfMfMthPsKVwTbvuUmf0A2AKkgD9399FS1CXVN7+1jscK3UxPd1YViaSSBAOAu98L3Dum7W+ylgeBdxfY9nPA50pVi0THvJY69h0dwt2xsfdDGjgIFoe61uoUJyJ56cpnKav5LUmGR9Mc7Bs++cXMfZJ0Az2RSFEwSFnNbx3nWob+AxpGEokgBYOU1bzwIre9+YJh4JCuYRCJIAWDlNXxPYYjQye/2K8b6IlEkYJByqqjKYnZeENJOlVVJGoUDFJWiXiMOU3Jk69lcA9vua2hJJGoUTBI2eW9+nm4D0aHNZQkEkEKBim7eS11Jx98HtB9kkSiSsEgZTe/NXnyw3oyVz1rKEkkchQMUnbzW+o4MjDC4EjWnU50Z1WRyFIwSNllrmV4KXuvYeBQMNcxBpHIUTBI2eW9+llDSSKRpWCQspuf7+rnzFBSXVsVKhKR8SgYpOzmteYbSjoYhEK8ZDf4FZESUTBI2eV9xGf/AQ0jiUSUgkHKLvOIz5OGknRGkkgkKRikIua11J08lKQzkkQiScEgFTG/tY69R7PusNqvW26LRJWCQSoic1uMdNqDBj2kRySyFAxSEfNbkqTSzoG+YUgNwUgfNOiW2yJRVFQwmFm7md1vZtvC+Un/0s1spZn91syeMrMnzey9Wa99y8x2mtnGcFpZTD0SXZmL3PYeHTxxDYOOMYhEUrF7DDcA6919ObA+XB+rH/iAu78cuAL4ipllX9X0l+6+Mpw2FlmPRNTspiQAB/uGT1z1rKEkkUgqNhjWALeHy7cDV43t4O7Puvu2cHkPsA/oKPJzZZppq68B4MjACAwdDRrrddWzSBQVGwzz3L0bIJzPHa+zma0CaoHfZzV/LhxiusnMkuNse52ZdZlZV09PT5FlS6W1hsFweGAEhnqDxmRzFSsSkUImDAYze8DMNueZ1kzlg8xsAfAd4IPung6bPw2cB7waaAc+VWh7d7/Z3TvdvbOjQzsc001LZo+hfzgrGFqqWJGIFDLhjWrcfXWh18xsr5ktcPfu8Bf/vgL9WoCfAf/N3R/Oeu/ucHHIzL4JfHJK1cu0UVcTp74mnjuUpD0GkUgqdihpHbA2XF4L/GRsBzOrBX4MfNvdfzjmtQXh3AiOT2wush6JsLaGGg73ayhJJOqKDYYbgcvNbBtwebiOmXWa2S1hn/cAfwj8UZ7TUu8ws03AJmAO8PdF1iMR1lpfc+IYg8WgpqHaJYlIHkXd89jdDwCX5WnvAj4cLn8X+G6B7S8t5vNlemmtr+FIZo8h2Qxm1S5JRPLQlc9SMW0NNeExhl4deBaJMAWDVEwwlDQcHHzW8QWRyFIwSMW0NdSeOPisYBCJLAWDVExrfQ1DqTTpQe0xiESZgkEqpq0huMgtPag9BpEoUzBIxWRui+HaYxCJNAWDVExbfS0AseFjOitJJMIUDFIxbQ01xEgTT/Vpj0EkwhQMUjGt9TU0MhisKBhEIkvBIBXT2lBDEwPBioJBJLIUDFIxzckErXEFg0jUKRikYsyM+cmRYEXBIBJZCgapqLm1w8GCzkoSiSwFg1TUnOPBoD0GkahSMEhFzUkMBQsKBpHIUjBIRc1SMIhEnoJBKqotFl7HUNtU3UJEpCAFg1RUc2yAY17HqH70RCJL/zqlopoZ4Bj19A6OVLsUESlAwSAV1cgAx7w+eGCPiERS0cFgZu1mdr+ZbQvnswr0GzWzjeG0Lqt9mZk9Em7/fTOrLbYmia66dB/HqOfwgIJBJKpKscdwA7De3ZcD68P1fAbcfWU4XZnV/gXgpnD7Q8CHSlCTRFRdup9er+eIgkEkskoRDGuA28Pl24GrJruhmRlwKXDXqWwv009NKtxj6B+udikiUkApgmGeu3cDhPO5BfrVmVmXmT1sZplf/rOBw+6eCtd3AwvzbWxm14Xbd/X09JSgbKmGxEgvx7THIBJpicl0MrMHgPl5XvrrKXzWEnffY2ZnAQ+a2SbgaJ5+nm9jd78ZuBmgs7Mzbx+Jvthwb3BWkg4+i0TWpILB3VcXes3M9prZAnfvNrMFwL4C77EnnO8ws18CFwM/AtrMLBHuNSwC9kzxO8h04Y4N9TIUb9Qeg0iElWIoaR2wNlxeC/xkbAczm2VmyXB5DvB6YIu7O/AQcPV428tpYrgPcEZrmnS6qkiElSIYbgQuN7NtwOXhOmbWaWa3hH1WAF1m9gRBENzo7lvC1z4FfNzMthMcc7i1BDVJFA31AjBa28yRAR18FomqSQ0ljcfdDwCX5WnvAj4cLv8GuLDA9juAVcXWIdNAGAxW26yhJJEI05XPUjlhMMTqWzSUJBJhCgapnKHgJLR4fYuufBaJMAWDVE64x1DT0MqR/hGCcw9EJGoUDFI5YTAkG9sYHk0zOJKuckEiko+CQSonDIb65jYADuvMJJFIUjBI5YTB0NDcCqAD0CIRpWCQyhk6Cok6WhsbAQWDSFQpGKRyhnoh2UxbQ/DIjUO6w6pIJCkYpHLCYOhoTgLQ0ztU5YJEJB8Fg1ROGAztjbXEY6ZgEIkoBYNUzlAvJFuIx4zZjbXs6x2sdkUikoeCQSon3GMAmNuS1B6DSEQpGKRyho4eD4aOpiQ9xxQMIlGkYJDKydpj6GhOsu+ogkEkihQMUhnuuUNJzXUc6BtmNK37JYlEjYJBKiM1BOmRnD2G0bRzsE/XMohEjYJBKiO8HQbJFgDm6loGkchSMEhlhM9iyN5jAHTKqkgEKRikMo7vMeQGg/YYRKJHwSCVUSgYdMqqSOQUFQxm1m5m95vZtnA+K0+ff2dmG7OmQTO7KnztW2a2M+u1lcXUIxE2cCiY1wXPYmioTdCUTOiUVZEIKnaP4QZgvbsvB9aH6znc/SF3X+nuK4FLgX7gF1ld/jLzurtvLLIeiaq+nmDe2HG8aW6zLnITiaJig2ENcHu4fDtw1QT9rwZ+7u79RX6uTDf9B4J5w+zjTXOak/Roj0EkcooNhnnu3g0QzudO0P8a4Htj2j5nZk+a2U1mliy0oZldZ2ZdZtbV09NTXNVSeX37IdkKidrjTR3aYxCJpAmDwcweMLPNeaY1U/kgM1sAXAjcl9X8aeA84NVAO/CpQtu7+83u3ununR0dHYW6SVT19UDjnJymuc26kZ5IFCUm6uDuqwu9ZmZ7zWyBu3eHv/j3jfNW7wF+7O7Hn+eY2dsAhszsm8AnJ1m3TDf9+08Kho7mJMeGUvQPp2ionfBHUUQqpNihpHXA2nB5LfCTcfpey5hhpDBMMDMjOD6xuch6JKr6DkDD2D2GOkDXMohETbHBcCNwuZltAy4P1zGzTjO7JdPJzJYCi4F/GbP9HWa2CdgEzAH+vsh6JKryDCWduPpZwSASJUXtv7v7AeCyPO1dwIez1ncBC/P0u7SYz5dpIp0OzkoaGwxNuvpZJIp05bOU3+Bh8NGTh5Jawj2Go7pfkkiUKBik/Pr2B/PG3LPJ2htqicdMp6yKRIyCQcqvPxMMs3OaYzFjTlOthpJEIkbBIOWX2WMYM5QE4SM+FQwikaJgkPLLc5+kjI4mXeQmEjUKBim/PPdJypjbXKc9BpGIUTBI+eW5T1JGR3OSA8eGGE17FQoTkXwUDFJ+eS5uy5jbkiTtcLBvuMJFiUghCgYpvzz3ScrIXOSmZz+LRIeCQcovz32SMvTsZ5HoUTBI+Y0zlDSvJbiR3ouHBypZkYiMQ8Eg5VXgPkkZi2bV01pfw6bdRypcmIgUomCQ8ipwn6QMM+OixW1sfOFwhQsTkUIUDFJeBe6TlG3l4jae3dtL31CqQkWJyHgUDFJeBe6TlO3ixW2kHTa9qOEkkShQMEh5jXOfpIxXLGoF4AkNJ4lEgoJBymuc+yRlzG5KsqS9QccZRCJCwSDlNc59krLpALRIdCgYpLz6egreJynbysVtdB8ZZK+e5iZSdQoGKa++wrfDyLZycRuA9hpEIqDoYDCzd5vZU2aWNrPOcfpdYWbPmNl2M7shq32ZmT1iZtvM7PtmNv5/LWV6Gec+SdlefkYLiZjpALRIBJRij2Ez8E7gXwt1MLM48DXgLcD5wLVmdn748heAm9x9OXAI+FAJapKo6Ns/7hlJGXU1cVYsaNEeg0gEFB0M7r7V3Z+ZoNsqYLu773D3YeBOYI2ZGXApcFfY73bgqmJrkgiZ5FASwEWLW3ly9xE9m0Gkyip1jGEh8ELW+u6wbTZw2N1TY9pPYmbXmVmXmXX19PSUtVgpkQnukzTWysWzODaUYkfPsTIXJiLjmVQwmNkDZrY5z7Rmkp9jedp8nPaTG91vdvdOd+/s6Ch8TrxEyAT3SRorcwD6sV2HylmViEwgMZlO7r66yM/ZDSzOWl8E7AH2A21mlgj3GjLtcjqYxH2Ssp01p5Hlc5u47dc7ee+rFxOP5ft/g4iUW6WGkh4DlodnINUC1wDr3N2Bh4Crw35rgZ9UqCYpt0ncJylbLGZ87PJz2L7vGD99Qv8/EKmWUpyu+g4z2w28FviZmd0Xtp9hZvcChHsD1wP3AVuBH7j7U+FbfAr4uJltJzjmcGuxNUlEZG6HMcmhJIArXj6fFQta+Mf120iNpstUmIiMpxRnJf3Y3Re5e9Ld57n7m8P2Pe7+1qx+97r7Oe5+trt/Lqt9h7uvcveXufu73V3PeDxd9DwbzGctnfQmsZjx8cvPYef+Pu5+/MXy1CUi49KVz1I+Lz0B7WdBXcuUNlu9Yi6vWNTKP63fxnBKew0ilaZgkPLpfhIWXDTlzcyCYw27Dw3w9V9uL0NhIjIeBYOUx8AhOPwczH/FKW3+pnM6uPKiM/jKA9v4u3u2kNZFbyIVM6nTVUWm7KVNwXzBqQWDmXHTe1fS3ljLrf+2k5eODvLl91xEMhEvYZEiko+CQcqj+8lgPn/qQ0kZ8ZjxmbefzxltdXz+3qd54oXD/PHrl/GeVy+mKakfXZFy0b8uKY/uJ6D5DGgq7ip1M+O6Pzybc+e38NX12/jsPVu46YFneduFC3jt2bO5ZNls5rfWlahoEQEFg5TLS0+e8jBSPm88p4M3ntPB488f4rZf7+Jnm7q587Hg9lvzW+pYNqeRZR2NLJ7VQEdzko7mJLMba2mpq6G5LkFzXYJEXIfURCZDwSClN9wP+5+FFVeW/K0vXjKLry6ZxWja2dp9lId3HGBL91F27u/j3k3dHO4fKbhtbTxGXU2MhtoEtYkYyUSM2kSMRDxGbdxIxGIk4kYiZsRjMeIxSMRixGJGzCBuhlmwHDMjFgv2aIxg3Sy4+Vdw02DC9RPtx9vCbYKGoE/mtazm4+tZvU/qk1dWp0J9bJJ3G7HCnzLl95r4s6KtVN+zWG+/6AzOnN1Y1s9QMEjp7X0KPH1Kp6pOVjxmXLCwlQsWtua09w2l2H9siJ7eIQ70DdM7mOLowAi9gykGRkYZGA7mw6k0w6NphkbSjKSdkVSaVDrNYMoZTTsjo0467Yx6sJ72cEqDu5N2GHXHPbPuOBxfdwAnbAvOqDr+enifSPesO0ZmnXTlBO87pvn4+4xtJ6fPKf1xyjRywcJWBYNMQy89EcxLOJQ0WY3JBI3JRNn/4UxnPsn0mEy3UuXQZGuqlihVF6/ArouCQUqv+0moa4PWxRP3lYqzSf5iqezQSUTGaQTQBW5SDpkDz1EZlBWRKVEwSGmNjgTHGMp4fEFEykvBIKXV8wyMDhd1YZuIVJeCQUrrxQ3BvAoHnkWkNBQMUjru0HUbtJ8Ns5dXuxoROUUKBimdXb+C7o3wuushph8tkelK/3qldH79T8FjPC+6ttqViEgRFAxSGnu3wPb74ZI/hZr6alcjIkUoKhjM7N1m9pSZpc2ss0CfxWb2kJltDft+JOu1/25mL5rZxnB6a773kGngN1+FmgZ49YerXYmIFKnYK583A+8EvjFOnxTwCXf/nZk1AxvM7H533xK+fpO7f6nIOqSaju6BTT+Ezj+GhvZqVyMiRSoqGNx9K4x/ib27dwPd4XKvmW0FFgJbCm4k00dqCH76keCmea/9s2pXIyIlUNFjDGa2FLgYeCSr+Xoze9LMbjOzWZWsR4qUGoYfrIVtv4C3fQlmLa12RSJSAhMGg5k9YGab80xrpvJBZtYE/Aj4qLsfDZv/GTgbWEmwV/E/xtn+OjPrMrOunp6eqXy0lMPoCNz1QXj25/DWLwXDSCJyWphwKMndVxf7IWZWQxAKd7j73VnvvTerz/8G7hmnjpuBmwE6OzujdBfcmcUdtj8A6z8b3CzvLf8Aq/6k2lWJSAmV/bbbFhyAuBXY6u5fHvPagvAYBMA7CA5mSxQNHoXfPwgPfx1eeATalsDVt8EF76p2ZSJSYkUFg5m9A/gq0AH8zMw2uvubzewM4BZ3fyvweuD9wCYz2xhu+lfufi/wRTNbSfAcjF3AnxZTj5RIehQO7YJ9W4LrE3b9Cp7/LaRT0LwA3vZluPj9kKitdqUiUgYW9Scn5dPZ2eldXV3VLqO63IMzgdKjwS/s7Gl0BNIjwTw1BKNDMDIIqYFgPtwHw70wdAwGD0P/QRg4CL17g1NPe7vBR8MPMph7Piy/HJb/e1i8CuI1Vf3qInJqzGyDu+e95izbzHqC2798ETbdldVQIBRzwtLHb3cv0GfMA30z/bL7Z7d5Os8ywXLONHpiuRRiCahvh/pZ0DwPlr0BWhYGZxjNOx86zoNaPSZTZCaZWcHQNA/mrshtK3gNhhXok6/d8vcxO3nZxvYPly1WYDkezjPLsWCKxYP1WAxiNcF6LBFM8ZqgLV4bDPfEk5BIBlcm19RBbVM4NQaTnrQmIllmVjC8am0wiYhIQbqJnoiI5FAwiIhIDgWDiIjkUDCIiEgOBYOIiORQMIiISA4Fg4iI5FAwiIhIjml5ryQz6wGeO8XN5wD7S1jOdDETv/dM/M4wM7/3TPzOMPXvfaa7d0zUaVoGQzHMrGsyN5E63czE7z0TvzPMzO89E78zlO97ayhJRERyKBhERCTHTAyGm6tdQJXMxO89E78zzMzvPRO/M5Tpe8+4YwwiIjK+mbjHICIi45hRwWBmV5jZM2a23cxuqHY95WZmi83sITPbamZPmdlHql1TpZhZ3MweN7N7ql1LpZhZm5ndZWZPh3/nr612TZVgZh8Lf743m9n3zKyu2jWVmpndZmb7zGxzVlu7md1vZtvC+axSfd6MCQYziwNfA94CnA9ca2bnV7eqsksBn3D3FcBrgD+fAd854yPA1moXUWH/CPw/dz8PuIgZ8P3NbCHwX4BOd78AiAPXVLeqsvgWcMWYthuA9e6+HFgfrpfEjAkGYBWw3d13uPswcCewpso1lZW7d7v778LlXoJfFAurW1X5mdki4G3ALdWupVLMrAX4Q+BWAHcfdvfD1a2qYhJAvZklgAZgT5XrKTl3/1fg4JjmNcDt4fLtwFWl+ryZFAwLgRey1nczA35JZpjZUuBi4JHhi5YiAAABzElEQVTqVlIRXwH+K5CudiEVdBbQA3wzHEK7xcwaq11Uubn7i8CXgOeBbuCIu/+iulVVzDx374bgP4HA3FK98UwKhnxPvJ8Rp2SZWRPwI+Cj7n602vWUk5n9B2Cfu2+odi0VlgBeCfyzu18M9FHCoYWoCsfV1wDLgDOARjN7X3Wrmv5mUjDsBhZnrS/iNNzlHMvMaghC4Q53v7va9VTA64ErzWwXwXDhpWb23eqWVBG7gd3untkjvIsgKE53q4Gd7t7j7iPA3cDrqlxTpew1swUA4Xxfqd54JgXDY8ByM1tmZrUEB6jWVbmmsjIzIxhz3uruX652PZXg7p9290XuvpTg7/hBdz/t/wfp7i8BL5jZuWHTZcCWKpZUKc8DrzGzhvDn/TJmwEH30Dpgbbi8FvhJqd44Uao3ijp3T5nZ9cB9BGcu3ObuT1W5rHJ7PfB+YJOZbQzb/srd761iTVI+fwHcEf7HZwfwwSrXU3bu/oiZ3QX8juAsvMc5Da+CNrPvAW8C5pjZbuAzwI3AD8zsQwQB+e6SfZ6ufBYRkWwzaShJREQmQcEgIiI5FAwiIpJDwSAiIjkUDCIikkPBICIiORQMIiKSQ8EgIiI5/j8X3i/j5OgyGgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, v1)\n", "plt.plot(t, v2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What are the \"final\" velocities?" ] }, { "cell_type": "code", "execution_count": 205, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-1.12151120135 0.408807266073\n" ] } ], "source": [ "print(v1[-1], v2[-1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These compare well with -1.12137 and 0.408629" ] }, { "cell_type": "code", "execution_count": 206, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.0125918607509 0.0436254091911\n" ] } ], "source": [ "rel_err1 = abs( (v1[-1] - (-1.12137))/ (-1.12137)) * 100\n", " \n", "rel_err2 = abs( (v2[-1] - (0.408629)) / (0.408629)) * 100\n", "\n", "print (rel_err1, rel_err2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "with only small percentage differences." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 8. Collision in 2D" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A block of ice of mass 4.5 kg rests on an ice rink. Consider the ice rink as the xy-plane with the block at the origin. A physicist slides another block of ice of mass 8.2 kg with a velocity of 0.3 m/s in the $x$ direction. After colliding elastically and losing no energy to friction, the y component of the velocity of the physicist's block is 0.05 m/s. The physicist also notes that the $x$ component of his block doesn't change all that much. What is the resulting velocity of the smaller block of ice?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Solution" ] }, { "cell_type": "code", "execution_count": 207, "metadata": {}, "outputs": [], "source": [ "m1, m2, v1xi, v2xi, v1yi, v2yi, v1xf, v2xf, v1yf, v2yf = symbols('m_1, m_2,'\n", " 'v_1xi, v_2xi, v_1yi, v_2yi,'\n", " 'v_1xf, v_2xf, v_1yf, v_2yf,')\n", "# there are also more compact ways of declaring many variables at once if need. See the docs." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Conservation of momentum" ] }, { "cell_type": "code", "execution_count": 208, "metadata": {}, "outputs": [], "source": [ "eqpx = Eq(m1*v1xi + m2*v2xi, m1*v1xf + m2*v2xf)\n", "\n", "eqpy = Eq(m1*v1yi + m2*v2yi, m1*v1yf + m2*v2yf)" ] }, { "cell_type": "code", "execution_count": 209, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAUkAAAAUCAYAAAAA7c81AAAABHNCSVQICAgIfAhkiAAABPJJREFUeJztm1uIHEUUhr/xslnMKt4SDAQ3qHiJIbusAZGgrBGDoIuB6IuINqLig4YEfUjIy+LDoqgQRSMiJlFQiHdQEIngS1SMilkFxVXCKF4TslFBUZPN+nCq2U6nuqu6p3qmd+d8MAxdp/qvmp8zfTnVDYqiKIoSgAiYBoY7Ow1FKUyE5m5pTkhtX42Y+SgwBLwJTAJ/AG8A55h+S4GXgP0m9jZwbsGxN5mx7suInwf8C+wBGgW160Y7fQX1Vr0NR9f7mz5IDpnvC4HdwBTwHPADsAbYBoyYCfYBzwMTwPXACwXHHjffyzLiDwM9wAbEtNlMO30F9Va9DYf6m+JFM/CvwPJE+6nAIeAI8AtwRSLWgxh2FOgtMNZiM9ZuS2ylie0soFc1EeVvWdrpK9Tb2/XAaIHPGoeeeusmQnM3GF+bSVxniX1uYrdaYrtM7KyC4x1EjE7SAD4G/gGWFNTz4Sng1RL7RZRPtHb7CvX1ton8Jt/PDodet3gLcCewDzkwPV1gvwjNXR+c/s5HLqX3ZQhMIpM/2RKbAP5MbF8FvAX8jBh1U4bm+ya+ONF2i2l7KNXXV9PFGchtQR5Nwv2RQ/oKUrP5xLQfQDyx3ZoU8dZX04WPtyEJ7W2d8/Zi5M+7FliE/HYbTTR3y+Rupr8nJToNIDXKXRaBJcgf4HXgcCrWB5wPfJBom4/UFrYDr+VMbBw5u10K/Ihcmo8hxd+xVF9fTRfpM5SNLcDpqbZB4Eak5tJMxfbmaIX0FcSvrUhiNIAHgfeQwvlkol8Rb301Xfh4G5LQ3tY5b0eMjktDc7dc7nr5ey9ypL7LEltrYpsssStNbEuGbt7Z8w4Tv99sbzTbd+dNNEfzZmTlqz/R9jjwLbCAmXrHRQ59GxHlblmq8jWmDznbj6Tay3qbpRnK25A1ySq9rVPeTnDs1V/Rg22E5m4Qf7eZDkOW2JiJrbbE1pnYbRm6ecl2mYlvBxYijw58CZyYNUmHZgP4FHjWbD8A/Iac1QBuAP7i+FV9HyLKJVpVvsYsMv1WptrLepulGcrbJuFuB6v0tk55uxD4BtiMPHJzmmOcNBGau0H83YscbXsssXfNwGdbYjtMLKsOkJdsvUgdYA9SKJ0Grs2aoKfmauTyfyNSp1iRiG0GPvLQtxFRLtGq8jVmJ1JATydQWW/zNKvytixVelunvO01sWGPMWxEaO627O884D/kaGvjAMfXMmK+AP62TCrGVaz+ClmxOoI8gOqDS/NDo5dekXuFYquCSSKKJ1qVvgI8gjx+cUFGvIy3Ls0qvC1D1d7WKW9XmH3TtUZfIjR3oaS/8a3RMmSF6jNLn37kbGGLzQMuQUyZyp57LuNGZxq5DG6VVcwUnPenYgPkF6pDU6WvjyG3M9cA32X0KeqtS7NbvPWhnXk7CHwP/B5gHF+6KXc74e8xuM6eITUHkB96O/L61DuJWPw4w+WB59IJnkBqKkvbqNkt3sbUJW8BnjTtc4G65S50yN8+5Og8yMyZYJBy73L6avYDPyG1MZC3A44iK20gbwRMAae0MIc6sBWpqaxCiszxp5XnE12a3eJtHfMW5O2T0RbmUBfqmLvQIX+HKb5S2YrmmcibAc+k9nmZmdeb7jF9ZjtZq8CjFWl2k7fD1C9vG8hBwPV65mygjrk7l/xVFEVRFEVRFEVRFEVRFGUO8D9oW0rKjnAA+wAAAABJRU5ErkJggg==\n", "text/latex": [ "$$m_{1} v_{1xi} + m_{2} v_{2xi} = m_{1} v_{1xf} + m_{2} v_{2xf}$$" ], "text/plain": [ "m₁⋅v₁ₓᵢ + m₂⋅v₂ₓᵢ = m₁⋅v_1xf + m₂⋅v_2xf" ] }, "execution_count": 209, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqpx" ] }, { "cell_type": "code", "execution_count": 210, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAUkAAAAXCAYAAACGeb2bAAAABHNCSVQICAgIfAhkiAAABShJREFUeJztm1uIHEUUQM9G3V3MBoyKDwgmqKgkomuiSHwxCopgFgPrlwg2Eh8fCjH6YfRn8SMoKgk+IiLRRFAJPkF/wgp+GDHGVyKSyKphkeAruKIfoiYaP241dsqu7uqarpmenXtgmEzd3ts1J3e6Z251g6IoiqLUQAIcBlrdnYaiVCZBazeYOdbrKxGZjwJLgTeBGeBX4A3gFLPdYuAl4CcTexs4reK+15p93eWInw78CewEBirmbhqd9ArqVt3WR9/7tQ+SS83zWcB24G9gE/AtsBJ4DhgzExwBtgBTwHXACxX3vds8n+uIPwwMAncj0nqZTnoFdatu60P9WrxodvwDcF5mfB7wC3AI+B5YnokNIsL+AYYr7GuB2df2nNilJra1Qr7YJIT/ZOmkV2i229XARIXHypJ86racBK3d2thrJnFtTuwzE7spJzZpYidU3N/PiOgsA8CHwB/Aoor5fHgKeDXg7xLCC63TXqG5bqeR9+T72FySr1/cAqwC9iEHpqcr/F2C1q4PpX7nIl+l9zkSzCCTPyYnNgX8lnl9BfAW8B0i6gZHzndNfEFm7EYz9pC1rW/OMuYjPwuKmKa+D3KdXkF6Nh+Z8QOIk7yfJlXc+uYsw8dtndTttsl1ew7y4R0HTkXeex7TaO2G1K7T79GZjc5HepSTOQkWIR+A14GDVmwEOAN4PzM2F+ktPA+8VjCx3cjZbQmwH/lqvg5p/q6ztvXNWYZ9hspjA3CcNTYKXI/0XKat2K6CXHV6BfG1ESmMAeBB4B2kcT6T2a6KW9+cZfi4rZO63Ta5bsdMnrIcWrthtevl907kSH1rTmzcxNbmxC43sQ2OvEVnz1tM/B7z+j7z+raiiRbk3A+sscZGkdWwxfzX7zi7JH8eCWE/WWJ5TRlBzvZj1nioW1fOutzW2ZOM6bZJdTvFkd/+qh5sE7R2g/1mv0mmq1if5Ox4WUHsAvP8afHcc8muZJ2ECP8CWT0L4QPgImtsPfAssAdYAfwOfBWYP4TYXuchZ3v7rNmO27ycdbldDSz0mEPKFuSykzy6UbPQ+bq9DHgPWS3ehHjuBP1Su95+dyFH1sGc2DbkCHtiTmyzibn6AEVn5GGkD7ATaZQeBq52TdAj5xrg68zrcURW2jx+ABEWQkLY2TiW15StSAP9KGs81K0rZ0y3ocR026S6HUZ+0rY89pFHgtZu236HgL+Ajx3xA/y/l5HyOXLktd9oSlmzeg+yYnUIuQDVB1fOS0zseOQ9fYN8c0l5hWqrglkSqhdaTK8AjyCXX5zpiIe4deWM6TaE2G6bVLcXmrjda/QlQWu3bb/LzEbP5MQW4u6DDCFH4B0FucuK7WWzzUFkhckHV84h5Mx3DdLH+JIjV96mgNs992GTUL3QYnp9DPgR6am4qOq2KGdMtyHEdAvNqttVuA9IPiRo7cb02zbtXPYQknMH8ARyScCKzHh6OcPFNc+lGzxOeZHFyNkPblOaUrcAT+Luy/YaTatd6JLfEWT1aBQpjHvNv0Pu5ayacz1ypf82a3w58kE+to05NIGNyH/0Vch9s+mjnesTfXPOdrdNrFuQu08m2phDU2hi7UKX/LaofuFqXTlvRvoYS6zxO5C7B3od10XBEx3IOdvdtmhe3Q4gB4Gy2zN7gSbW7mzy680kcnucUj/qNh7qNi5973cOcDJwP7K6Nb+705lVqNt4qNu4qN8MLaTfsBdZ7lfqo4W6jUULdRuTFupXURRFURRFURRFURRFUZQe41+Z6U09WfvXNQAAAABJRU5ErkJggg==\n", "text/latex": [ "$$m_{1} v_{1yi} + m_{2} v_{2yi} = m_{1} v_{1yf} + m_{2} v_{2yf}$$" ], "text/plain": [ "m₁⋅v_1yi + m₂⋅v_2yi = m₁⋅v_1yf + m₂⋅v_2yf" ] }, "execution_count": 210, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqpy" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Conservation of energy" ] }, { "cell_type": "code", "execution_count": 211, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{m_{1} \\left(v_{1xi}^{2} + v_{1yi}^{2}\\right)}{2} + \\frac{m_{2} \\left(v_{2xi}^{2} + v_{2yi}^{2}\\right)}{2} = \\frac{m_{1} \\left(v_{1xf}^{2} + v_{1yf}^{2}\\right)}{2} + \\frac{m_{2} \\left(v_{2xf}^{2} + v_{2yf}^{2}\\right)}{2}$$" ], "text/plain": [ " ⎛ 2 2⎞ ⎛ 2 2⎞ ⎛ 2 2⎞ ⎛ 2 \n", "m₁⋅⎝v₁ₓᵢ + v_1yi ⎠ m₂⋅⎝v₂ₓᵢ + v_2yi ⎠ m₁⋅⎝v_1xf + v_1yf ⎠ m₂⋅⎝v_2xf \n", "─────────────────── + ─────────────────── = ──────────────────── + ───────────\n", " 2 2 2 2 \n", "\n", " 2⎞\n", "+ v_2yf ⎠\n", "─────────\n", " " ] }, "execution_count": 211, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqe = Eq( m1*(v1xi**2+v1yi**2)/2 + m2*(v2xi**2+v2yi**2)/2, \n", " m1*(v1xf**2+v1yf**2)/2 + m2*(v2xf**2+v2yf**2)/2 )\n", "\n", "eqe" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's label with \"1\" quantities associated with the smaller, originally stationary block.\n", "Let's label with \"2\" quantities associated with the larger, originally moving block (the physicist's block)." ] }, { "cell_type": "code", "execution_count": 212, "metadata": {}, "outputs": [], "source": [ "block1 = { m1:4.5, v1xi:0, v1yi:0 }" ] }, { "cell_type": "code", "execution_count": 213, "metadata": {}, "outputs": [], "source": [ "block2 = { m2:8.2, v2xi:0.3, v2yi:0, v2yf:0.05 }" ] }, { "cell_type": "code", "execution_count": 214, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ \\left \\{ v_{1xf} : \\frac{m_{1}^{2} v_{1xi} + m_{1} m_{2} v_{2xi} - m_{2} \\sqrt{m_{1}^{2} v_{1xi}^{2} - 2 m_{1}^{2} v_{1xi} v_{2xi} + 2 m_{1}^{2} v_{1yi} v_{2yf} - 2 m_{1}^{2} v_{1yi} v_{2yi} + m_{1}^{2} v_{2xi}^{2} - m_{1}^{2} v_{2yf}^{2} + m_{1}^{2} v_{2yi}^{2} + 2 m_{1} m_{2} v_{1yi} v_{2yf} - 2 m_{1} m_{2} v_{1yi} v_{2yi} - 2 m_{1} m_{2} v_{2yf}^{2} + 2 m_{1} m_{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yf}^{2} + 2 m_{2}^{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yi}^{2}}}{m_{1} \\left(m_{1} + m_{2}\\right)}, \\quad v_{1yf} : \\frac{m_{1} v_{1yi} - m_{2} v_{2yf} + m_{2} v_{2yi}}{m_{1}}, \\quad v_{2xf} : \\frac{m_{1} v_{1xi} + m_{2} v_{2xi}}{m_{1} + m_{2}} + \\frac{\\sqrt{m_{1}^{2} v_{1xi}^{2} - 2 m_{1}^{2} v_{1xi} v_{2xi} + 2 m_{1}^{2} v_{1yi} v_{2yf} - 2 m_{1}^{2} v_{1yi} v_{2yi} + m_{1}^{2} v_{2xi}^{2} - m_{1}^{2} v_{2yf}^{2} + m_{1}^{2} v_{2yi}^{2} + 2 m_{1} m_{2} v_{1yi} v_{2yf} - 2 m_{1} m_{2} v_{1yi} v_{2yi} - 2 m_{1} m_{2} v_{2yf}^{2} + 2 m_{1} m_{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yf}^{2} + 2 m_{2}^{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yi}^{2}}}{m_{1} + m_{2}}\\right \\}, \\quad \\left \\{ v_{1xf} : \\frac{m_{1}^{2} v_{1xi} + m_{1} m_{2} v_{2xi} + m_{2} \\sqrt{m_{1}^{2} v_{1xi}^{2} - 2 m_{1}^{2} v_{1xi} v_{2xi} + 2 m_{1}^{2} v_{1yi} v_{2yf} - 2 m_{1}^{2} v_{1yi} v_{2yi} + m_{1}^{2} v_{2xi}^{2} - m_{1}^{2} v_{2yf}^{2} + m_{1}^{2} v_{2yi}^{2} + 2 m_{1} m_{2} v_{1yi} v_{2yf} - 2 m_{1} m_{2} v_{1yi} v_{2yi} - 2 m_{1} m_{2} v_{2yf}^{2} + 2 m_{1} m_{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yf}^{2} + 2 m_{2}^{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yi}^{2}}}{m_{1} \\left(m_{1} + m_{2}\\right)}, \\quad v_{1yf} : \\frac{m_{1} v_{1yi} - m_{2} v_{2yf} + m_{2} v_{2yi}}{m_{1}}, \\quad v_{2xf} : \\frac{m_{1} v_{1xi} + m_{2} v_{2xi}}{m_{1} + m_{2}} - \\frac{\\sqrt{m_{1}^{2} v_{1xi}^{2} - 2 m_{1}^{2} v_{1xi} v_{2xi} + 2 m_{1}^{2} v_{1yi} v_{2yf} - 2 m_{1}^{2} v_{1yi} v_{2yi} + m_{1}^{2} v_{2xi}^{2} - m_{1}^{2} v_{2yf}^{2} + m_{1}^{2} v_{2yi}^{2} + 2 m_{1} m_{2} v_{1yi} v_{2yf} - 2 m_{1} m_{2} v_{1yi} v_{2yi} - 2 m_{1} m_{2} v_{2yf}^{2} + 2 m_{1} m_{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yf}^{2} + 2 m_{2}^{2} v_{2yf} v_{2yi} - m_{2}^{2} v_{2yi}^{2}}}{m_{1} + m_{2}}\\right \\}\\right ]$$" ], "text/plain": [ "⎡⎧ _______________________________________\n", "⎢⎪ 2 ╱ 2 2 2 2 \n", "⎢⎨ m₁ ⋅v₁ₓᵢ + m₁⋅m₂⋅v₂ₓᵢ - m₂⋅╲╱ m₁ ⋅v₁ₓᵢ - 2⋅m₁ ⋅v₁ₓᵢ⋅v₂ₓᵢ + 2⋅m₁ ⋅v_\n", "⎢⎪v_1xf: ─────────────────────────────────────────────────────────────────────\n", "⎣⎩ \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 2 2 2 \n", "1yi⋅v_2yf - 2⋅m₁ ⋅v_1yi⋅v_2yi + m₁ ⋅v₂ₓᵢ - m₁ ⋅v_2yf + m₁ ⋅v_2yi + 2⋅m₁⋅m₂⋅\n", "──────────────────────────────────────────────────────────────────────────────\n", " m₁⋅(m₁ + m₂) \n", "\n", "______________________________________________________________________________\n", " 2 2\n", "v_1yi⋅v_2yf - 2⋅m₁⋅m₂⋅v_1yi⋅v_2yi - 2⋅m₁⋅m₂⋅v_2yf + 2⋅m₁⋅m₂⋅v_2yf⋅v_2yi - m₂ \n", "──────────────────────────────────────────────────────────────────────────────\n", " \n", "\n", "_________________________________________ \n", " 2 2 2 2 \n", "⋅v_2yf + 2⋅m₂ ⋅v_2yf⋅v_2yi - m₂ ⋅v_2yi m₁⋅v_1yi - m₂⋅v_2yf + m₂⋅v_2\n", "─────────────────────────────────────────, v_1yf: ────────────────────────────\n", " m₁ \n", "\n", " ____________________________________________\n", " ╱ 2 2 2 2 \n", "yi m₁⋅v₁ₓᵢ + m₂⋅v₂ₓᵢ ╲╱ m₁ ⋅v₁ₓᵢ - 2⋅m₁ ⋅v₁ₓᵢ⋅v₂ₓᵢ + 2⋅m₁ ⋅v_1yi⋅v\n", "──, v_2xf: ───────────────── + ───────────────────────────────────────────────\n", " m₁ + m₂ \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 2 2 2 \n", "_2yf - 2⋅m₁ ⋅v_1yi⋅v_2yi + m₁ ⋅v₂ₓᵢ - m₁ ⋅v_2yf + m₁ ⋅v_2yi + 2⋅m₁⋅m₂⋅v_1yi\n", "──────────────────────────────────────────────────────────────────────────────\n", " m₁ + m₂ \n", "\n", "______________________________________________________________________________\n", " 2 2 \n", "⋅v_2yf - 2⋅m₁⋅m₂⋅v_1yi⋅v_2yi - 2⋅m₁⋅m₂⋅v_2yf + 2⋅m₁⋅m₂⋅v_2yf⋅v_2yi - m₂ ⋅v_2y\n", "──────────────────────────────────────────────────────────────────────────────\n", " \n", "\n", "____________________________________⎫ ⎧ _\n", " 2 2 2 2 ⎪ ⎪ 2 ╱ \n", "f + 2⋅m₂ ⋅v_2yf⋅v_2yi - m₂ ⋅v_2yi ⎬ ⎨ m₁ ⋅v₁ₓᵢ + m₁⋅m₂⋅v₂ₓᵢ + m₂⋅╲╱ \n", "────────────────────────────────────⎪, ⎪v_1xf: ───────────────────────────────\n", " ⎭ ⎩ \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 2 2 \n", "m₁ ⋅v₁ₓᵢ - 2⋅m₁ ⋅v₁ₓᵢ⋅v₂ₓᵢ + 2⋅m₁ ⋅v_1yi⋅v_2yf - 2⋅m₁ ⋅v_1yi⋅v_2yi + m₁ ⋅v₂ₓᵢ\n", "──────────────────────────────────────────────────────────────────────────────\n", " \n", "\n", "______________________________________________________________________________\n", "2 2 2 2 2 \n", " - m₁ ⋅v_2yf + m₁ ⋅v_2yi + 2⋅m₁⋅m₂⋅v_1yi⋅v_2yf - 2⋅m₁⋅m₂⋅v_1yi⋅v_2yi - 2⋅m₁\n", "──────────────────────────────────────────────────────────────────────────────\n", " m₁⋅(m₁ + m₂) \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 2 2\n", "⋅m₂⋅v_2yf + 2⋅m₁⋅m₂⋅v_2yf⋅v_2yi - m₂ ⋅v_2yf + 2⋅m₂ ⋅v_2yf⋅v_2yi - m₂ ⋅v_2yi \n", "──────────────────────────────────────────────────────────────────────────────\n", " \n", "\n", "_ ______\n", " ╱ 2 \n", " m₁⋅v_1yi - m₂⋅v_2yf + m₂⋅v_2yi m₁⋅v₁ₓᵢ + m₂⋅v₂ₓᵢ ╲╱ m₁ ⋅v\n", "─, v_1yf: ──────────────────────────────, v_2xf: ───────────────── - ─────────\n", " m₁ m₁ + m₂ \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 2 2 \n", "₁ₓᵢ - 2⋅m₁ ⋅v₁ₓᵢ⋅v₂ₓᵢ + 2⋅m₁ ⋅v_1yi⋅v_2yf - 2⋅m₁ ⋅v_1yi⋅v_2yi + m₁ ⋅v₂ₓᵢ - m\n", "──────────────────────────────────────────────────────────────────────────────\n", " \n", "\n", "______________________________________________________________________________\n", " 2 2 2 2 \n", "₁ ⋅v_2yf + m₁ ⋅v_2yi + 2⋅m₁⋅m₂⋅v_1yi⋅v_2yf - 2⋅m₁⋅m₂⋅v_1yi⋅v_2yi - 2⋅m₁⋅m₂⋅v\n", "──────────────────────────────────────────────────────────────────────────────\n", " m₁ + m₂ \n", "\n", "__________________________________________________________________________⎫⎤\n", " 2 2 2 2 2 2 ⎪⎥\n", "_2yf + 2⋅m₁⋅m₂⋅v_2yf⋅v_2yi - m₂ ⋅v_2yf + 2⋅m₂ ⋅v_2yf⋅v_2yi - m₂ ⋅v_2yi ⎬⎥\n", "──────────────────────────────────────────────────────────────────────────⎪⎥\n", " ⎭⎦" ] }, "execution_count": 214, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol = solve( [eqpx,eqpy,eqe], [v1xf,v1yf,v2xf], dict=True )\n", "sol" ] }, { "cell_type": "code", "execution_count": 215, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAA0AAAASCAYAAACAa1QyAAAABHNCSVQICAgIfAhkiAAAAMJJREFUKJHF0j9LQlEYB+DH6BNYhJ/HxcmpD9CgQxCImxAIbi5u7eLSJji5NzQGDRItDtHQ3J0aSnS4LxJytBMN/eBw4XCe+77nD3/MCdqYYYkPFLhHC0cpdIk13nCLIcZ4j/kpKruojmbijzW8Bjz/TevXgW7s6zORz/h+5VY5xiIqNXLRKMA8F3QCPKOaA64CPClP8Md0AyxwlgN6AR5xmgP6AR4c2MP3Z3GBCVbKSywS619izTaDqHJo3OW0+8/ZALBUMPfsVQVVAAAAAElFTkSuQmCC\n", "text/latex": [ "$$2$$" ], "text/plain": [ "2" ] }, "execution_count": 215, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(sol)" ] }, { "cell_type": "code", "execution_count": 216, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left ( 0.287506558007893, \\quad \\left \\{ m_{2} : 8.2, \\quad v_{2xi} : 0.3, \\quad v_{2yf} : 0.05, \\quad v_{2yi} : 0\\right \\}\\right )$$" ], "text/plain": [ "(0.287506558007893, {m₂: 8.2, v₂ₓᵢ: 0.3, v_2yf: 0.05, v_2yi: 0})" ] }, "execution_count": 216, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol[0][v2xf].subs(block1).subs(block2), block2" ] }, { "cell_type": "code", "execution_count": 217, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left ( 0.0998950167952566, \\quad \\left \\{ m_{2} : 8.2, \\quad v_{2xi} : 0.3, \\quad v_{2yf} : 0.05, \\quad v_{2yi} : 0\\right \\}\\right )$$" ], "text/plain": [ "(0.0998950167952566, {m₂: 8.2, v₂ₓᵢ: 0.3, v_2yf: 0.05, v_2yi: 0})" ] }, "execution_count": 217, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol[1][v2xf].subs(block1).subs(block2), block2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first solution is the one we want as v2xf ~ v2xi ." ] }, { "cell_type": "code", "execution_count": 218, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADoAAAASCAYAAAAKRM1zAAAABHNCSVQICAgIfAhkiAAAAmZJREFUWIXt1luIjVEUB/AfjZLbuGXmweRycilTSoqkhJo3Lzy7FA9KpEwpJV5kpEQueULKm8KLXCIJKWokucsZwsglk1uu42HvL6fj+86c4xwP4l+n9X1rr/Vfe+3z7bUW/zBGYh+e4hPy2I4hf5BrGJbhCO7jI7pwAUvRO4N/C87gcfR5jXZsiJyZyOE5unEUbTgb32/35FwF1/Kof4pD2Cwc0JuoP4xeKTE+43K0bcNOXIk+T9CUtbmT0WhlkX5b1O8tN8sKueZgnl//uUY8ivYLUmL0zYi9KfrsSVscGxcfpgQciHd4j/4Z5H+Ka13k2lmGbYLJ0ed0oijcxJwoT+F7keNbXEQ/TC8jUC25vkT5tQzbBPOivJ4o6goWJ0R5N8P5HlowXigApVArrjosis8nSti1YgDqMRUzhSTbCokS1EfZlUGW6AeXCFhrrjY047hw57PQioaC9xNYgheJIqtspyGpet0V+FTDtQprhAq9sAe+xsjZiPlCjWjHlMSgMNHklOulY1CRXSlUy7UCO3ATs4X+WA6eC724RWhfB5OFwkTvRDk+g2RclFn3rhDVcK3GLtwQkuwsI14xOoRDmoThxYs5PbeED8prCb/LtTb6tadtsEIkw0rqRFfpwJDDRPSpAdf6qL+KoaUyiJgo3Mli9PZzYLiYKIvHqhwuYQSO4RamCZ/QXczAqwL7PEZhTHz+Xa7FOIBvwmCQdnfz0SbBamzFeTyIXA2YJRSjTswVPuFUNGE/ngmzZIdQGNJOOS+c3OgquTZGnlK/c0U+zdiNa3gpDBRdwqy7MWO///Effxt+AODuxPodKPUZAAAAAElFTkSuQmCC\n", "text/latex": [ "$$0.023$$" ], "text/plain": [ "0.023" ] }, "execution_count": 218, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol[0][v1xf].subs(block1).subs(block2).evalf(2)" ] }, { "cell_type": "code", "execution_count": 219, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEsAAAASCAYAAAATzyPVAAAABHNCSVQICAgIfAhkiAAAAlpJREFUWIXt101sTUEUB/Af2gWipUQsCNoUCQuRCLF6WEgspBFbIRY2gkTYs7MhhIWIIGJhIUEiERY2DWEhuvBZ0T6bSqUEpdRHazHz4uW676Ov77UW/SeTc+ecmf+Ze2bunHOZwLhiPs6jB4PI4gRmjQHXJOzCA/RjAI+xD1MKzNmGU2jHZwzjcgVrHTFa0BsdXsdR3I39F5hdY65L0d6LcziJp1F3VQhmEh3R3o/nxjBYt6OzvQn98ag/U0Outqjvwpw8fT2uRdvOFD/r0SoEMmOMgtUcHXVjcsI2A1/wFdNrxJU7VXtS+FZE26MSfjOKBCu5kNFgQ5R3MJSw9eMepmFtjbjmRdmVwpfTrcLMMvynoprBWhplZwH7qyiX1IirL8rFKeOb856XleE/FdUMVmOUnwrYc/pydrYSrptRHkBTnr4OR/L6lWRl/BusrPDNlttGchHmMtFwpYstwXUFt4Qs+gxnhTKjA5v9PY2/K3Val+i/xvcRzO/Je87tdmPaQDQkxhVDJVxD2IL92B7bT9zHDpwWst67MvynIhmsjZUS4WWUhe6k1igL3UPV4PqFY7HlYypW4ptQd407WpRO9wPKKx2qyQW7I9/FEuMy/vOitEXIUPVV4GpI0a3GB6HkaE6x5yOjSLDSyv/RoEW4I+bihvD7sEaokjuxDu8Tc7JYKKT87Ci5Hgqf2hMhOMuFy30QW4UNSKItNkKttkmoy9qjrg8HS714pViAC3iLH3gj/KM1FRifFXZzURW4DglV+kchQN3CCUzjzuGw4hk/W2TuBCYwgbHFHxAZyv6q1xBuAAAAAElFTkSuQmCC\n", "text/latex": [ "$$-0.091$$" ], "text/plain": [ "-0.091" ] }, "execution_count": 219, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sol[0][v1yf].subs(block1).subs(block2).evalf(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Therefore, the velocity of the originally stationary block is 0.023 m/s in the x direction and 0.091 in the negative y direction." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 10. Falling rope" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A long coiled rope rests at the edge of a platform. One free end is gently placed 10 cm below the edge of the platform and released. The rope begins to fall, unwinding as it goes over the edge. The rope has uniform mass per unit length of 2 kg/m, and $g$ = 9.8 m/s$^2$. If the height of the platform is 4 m, find how long it takes for the end of the rope to reach the ground. Ignore friction." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Solution**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we must use the more general form of Newton's 2nd Law\n", "\n", "$$ F = \\frac {dp} {dt} = m(t) y''(t) + m'(t) y'(t) $$" ] }, { "cell_type": "code", "execution_count": 229, "metadata": {}, "outputs": [], "source": [ "t, r, g, H = symbols('t, r, g, H')\n", "m, y, v = symbols('m, y, v', cls=Function)" ] }, { "cell_type": "code", "execution_count": 230, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$m{\\left (t \\right )} \\frac{d^{2}}{d t^{2}} y{\\left (t \\right )} + \\frac{d}{d t} m{\\left (t \\right )} \\frac{d}{d t} y{\\left (t \\right )}$$" ], "text/plain": [ " 2 \n", " d d d \n", "m(t)⋅───(y(t)) + ──(m(t))⋅──(y(t))\n", " 2 dt dt \n", " dt " ] }, "execution_count": 230, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dpdt = m(t) * diff(y(t), t, t) + diff(m(t), t) * diff(y(t), t)\n", "dpdt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Newton's 2nd Law" ] }, { "cell_type": "code", "execution_count": 231, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$m{\\left (t \\right )} \\frac{d^{2}}{d t^{2}} y{\\left (t \\right )} + \\frac{d}{d t} m{\\left (t \\right )} \\frac{d}{d t} y{\\left (t \\right )} = - g m{\\left (t \\right )}$$" ], "text/plain": [ " 2 \n", " d d d \n", "m(t)⋅───(y(t)) + ──(m(t))⋅──(y(t)) = -g⋅m(t)\n", " 2 dt dt \n", " dt " ] }, "execution_count": 231, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqN = Eq(dpdt, -g*m(t))\n", "eqN" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If the length of the rope's end is $y=y(t)$, then the length of rope dangling over the edge is $h-y(t)$, and the mass of the rope is" ] }, { "cell_type": "code", "execution_count": 232, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$r \\left(H - y{\\left (t \\right )}\\right) \\frac{d^{2}}{d t^{2}} y{\\left (t \\right )} + \\frac{\\partial}{\\partial t} r \\left(H - y{\\left (t \\right )}\\right) \\frac{d}{d t} y{\\left (t \\right )} = - g r \\left(H - y{\\left (t \\right )}\\right)$$" ], "text/plain": [ " 2 \n", " d ∂ d \n", "r⋅(H - y(t))⋅───(y(t)) + ──(r⋅(H - y(t)))⋅──(y(t)) = -g⋅r⋅(H - y(t))\n", " 2 ∂t dt \n", " dt " ] }, "execution_count": 232, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq = eqN.subs( m(t), r*(H - y(t)))\n", "eq" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "SymPy has done the substitution but not evaluated the derivatives." ] }, { "cell_type": "code", "execution_count": 233, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$r \\left(H - y{\\left (t \\right )}\\right) \\frac{d^{2}}{d t^{2}} y{\\left (t \\right )} - r \\left(\\frac{d}{d t} y{\\left (t \\right )}\\right)^{2} = - g r \\left(H - y{\\left (t \\right )}\\right)$$" ], "text/plain": [ " 2 2 \n", " d ⎛d ⎞ \n", "r⋅(H - y(t))⋅───(y(t)) - r⋅⎜──(y(t))⎟ = -g⋅r⋅(H - y(t))\n", " 2 ⎝dt ⎠ \n", " dt " ] }, "execution_count": 233, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq2 = eq.doit()\n", "eq2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let’s try to see if SymPy can find a general solution to the problem" ] }, { "cell_type": "code", "execution_count": 234, "metadata": {}, "outputs": [ { "ename": "NotImplementedError", "evalue": "solve: Cannot solve g*r*(H - y(t)) + r*(H - y(t))*Derivative(y(t), (t, 2)) - r*Derivative(y(t), t)**2", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNotImplementedError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdsolve\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0meq2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mt\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m~/miniconda3/lib/python3.6/site-packages/sympy/solvers/ode.py\u001b[0m in \u001b[0;36mdsolve\u001b[0;34m(eq, func, hint, simplify, ics, xi, eta, x0, n, **kwargs)\u001b[0m\n\u001b[1;32m 628\u001b[0m hints = _desolve(eq, func=func,\n\u001b[1;32m 629\u001b[0m \u001b[0mhint\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mhint\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msimplify\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxi\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mxi\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0meta\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0meta\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtype\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'ode'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mics\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mics\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 630\u001b[0;31m x0=x0, n=n, **kwargs)\n\u001b[0m\u001b[1;32m 631\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 632\u001b[0m \u001b[0meq\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mhints\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'eq'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0meq\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/miniconda3/lib/python3.6/site-packages/sympy/solvers/deutils.py\u001b[0m in \u001b[0;36m_desolve\u001b[0;34m(eq, func, hint, ics, simplify, **kwargs)\u001b[0m\n\u001b[1;32m 233\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstring\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0meq\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m\" does not match hint \"\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mhint\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 234\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 235\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mNotImplementedError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdummy\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m\"solve\"\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m\": Cannot solve \"\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0meq\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 236\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mhint\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'default'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 237\u001b[0m return _desolve(eq, func, ics=ics, hint=hints['default'], simplify=simplify,\n", "\u001b[0;31mNotImplementedError\u001b[0m: solve: Cannot solve g*r*(H - y(t)) + r*(H - y(t))*Derivative(y(t), (t, 2)) - r*Derivative(y(t), t)**2" ] } ], "source": [ "dsolve(eq2, y(t))" ] }, { "cell_type": "code", "execution_count": 235, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$H r \\frac{d}{d t} v{\\left (t \\right )} - r v^{2}{\\left (t \\right )} - r y{\\left (t \\right )} \\frac{d}{d t} v{\\left (t \\right )} = - H g r + g r y{\\left (t \\right )}$$" ], "text/plain": [ " d 2 d \n", "H⋅r⋅──(v(t)) - r⋅v (t) - r⋅y(t)⋅──(v(t)) = -H⋅g⋅r + g⋅r⋅y(t)\n", " dt dt " ] }, "execution_count": 235, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# replace derivative of y(t) with v(t)\n", "eq3 = eq2.subs( diff(y(t), t), v(t) )\n", "expand(eq3)" ] }, { "cell_type": "code", "execution_count": 236, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ \\frac{- H g + g y{\\left (t \\right )} + v^{2}{\\left (t \\right )}}{H - y{\\left (t \\right )}}\\right ]$$" ], "text/plain": [ "⎡ 2 ⎤\n", "⎢-H⋅g + g⋅y(t) + v (t)⎥\n", "⎢─────────────────────⎥\n", "⎣ H - y(t) ⎦" ] }, "execution_count": 236, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soln = solve(eq3, diff(v(t),t) )\n", "soln" ] }, { "cell_type": "code", "execution_count": 237, "metadata": {}, "outputs": [], "source": [ "dvdt = soln[0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So we worked out the derivative of v(t). Let's turn that in to a function" ] }, { "cell_type": "code", "execution_count": 238, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADIAAAASCAYAAAAZk42HAAAABHNCSVQICAgIfAhkiAAAAhdJREFUSInt1l1ojmEYB/Cf2WSFJOTQppUyKTWhHAmhJHGiFnGoOFIOHIoaidqBpJR25CNxIB8n2oGvhRQnPuYthfnaStswzMF1v/X2erY9296d7V9319P1f67rue7rvu///TCJTEzBHjzAd/ThKfZj6hhzrsEVfMDPZG9j03iLHQ4XMIgunMNpvEi+y2Kio8HhFPsZ53EUZ9GBlsqU/D+2po92Ym6JvwZXE7d7FPl2pJg7mJnB14ypyhworsa+DK4xcY9z5qoSDenFvDwB1TkT58GCZDszuKJvOWajZ4Rcq1EntmM3Notm/MAj3C8PqOREviRbl8HVlzwvFmIwHJqS7cITLC3j27FdnJ2KY6fYPq8xp8RfLVRnMI2NOXIdS+/+xiusxQwswc3E3R0uQaHkg3lGW0lsFW4k/0ehLqfwHP14mbj1OSbSkt79g2VlXC3eJX5V0Vm+td6IfZgX70ue/2ILDqA5jQHcwy60ogGfcuTtTrYTz8q4ftzCXqyQcV4mErWpgD75ZHOb6HjHEPzxxB8qOqrGWWBeNGM6LopVGgnt4nw0YFoG35hsoRLFZWFWhq8J38QvS30Gv0goWflKtYmuHynzrxPbuEdI+YTgoVCTVqE810Vne7FhiJiCKHhhmX++UKxBsUIncCnlGxA3/4ThoLi9e8QP3lucySiyFAXZEyFk/GTK8wtfcQ0rK1TvJCYxEv4B746Nf4KyDbEAAAAASUVORK5CYII=\n", "text/latex": [ "$$-9.6$$" ], "text/plain": [ "-9.6" ] }, "execution_count": 238, "metadata": {}, "output_type": "execute_result" } ], "source": [ "F = lambdify([y(t), v(t), H, g], dvdt)\n", "F(0, 1, 5, 9.8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can numerically solve our problem:" ] }, { "cell_type": "code", "execution_count": 239, "metadata": {}, "outputs": [], "source": [ "# define initial values\n", "r = 2\n", "H = 4 # m\n", "g = 9.8\n", "yi = H - 0.1 # m\n", "vi = 0.0 # m/s\n", "\n", "# Solve the system of ODEs\n", "q0 = [yi, vi]\n", "\n", "def RHS(q, t):\n", " y, v = q\n", " return [v,\n", " F(y, v, H, g)]\n", "\n", "tf = 2\n", "t = np.arange(0, tf, 0.1)\n", "\n", "soln = odeint(RHS, q0, t)\n", "y, v = soln.T" ] }, { "cell_type": "code", "execution_count": 240, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 240, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, y, label='rope')\n", "plt.plot(t, yi - 0.5*g*t**2, label='freefall')\n", "plt.xlabel('t (s)')\n", "plt.ylabel('y (m)')\n", "plt.ylim(ymin = 0)\n", "plt.legend()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Also plotted in the graph is the height of an object falling freely initially alongside the rope end. The rope falls more slowly." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 11. Atwood's machine" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Atwood's machine, a familiar construct to budding physicists, consists of two masses hanging by a non-elastic rope of negligible mass running over a small, massless and frictionless pulley. Find the height of mass 1 as a function of time in terms of relevant parameters of the system." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Solution***" ] }, { "cell_type": "code", "execution_count": 241, "metadata": {}, "outputs": [], "source": [ "a1, a2, m1, m2, t, C = symbols('a1, a2, m1, m2, t, C')\n", "g, T = symbols('g, T')\n", "y1, y2 = symbols('y1, y2', cls=Function)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because of the geometrical setup of the system, the accelerations of the masses are equal in magnitude and opposite in direction. Let's write the length of the string in terms of y1 and y2 (which we take to be negative)." ] }, { "cell_type": "code", "execution_count": 242, "metadata": {}, "outputs": [], "source": [ "L = -y1(t) - y2(t) + C" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To get the relationship between the accelerations of mass 1 and 2, we use the constraint that L does not change in time. Indeed, its second derivative wrt t is also 0" ] }, { "cell_type": "code", "execution_count": 243, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAMQAAAAmCAYAAACbKjTiAAAABHNCSVQICAgIfAhkiAAABkFJREFUeJztnHuIVFUcxz+7uT5aw0TpsbRLULglqbu6rRG5LSX0R/SgMkgrlgr/yf5IgzKiLIgIDTTK0kAtBHsXSQSbZBsrlRVphkt/CJvF2gs3jTLLnP74nWHu3Ln3nHOfM+OeDwwzc8655/x+3zP33PMccDgcdUEr8DGwH9gL3FRVa8YOTvca5Vxgjvp8FvADcHr1zBkzON1riGXAUEjcN0BbjraMJZzuisZqG+BjDrAnILwLaEJaK0f6ON1rlN3Ag76waUh/9vL8zRkzON1rgHbgI+BvYB/QDfwFXONJMwH4BLgjd+tOXZzuVeAV4BegOSR+BnAEWAdcCFwLfA8UgLNVmgZgG7AqS0MjYvLLzzzEp7szsyga9ah7VM3BrHuu9dIFnASWa9J8iIjuZRNwyPP9CpXPHs9rVnpmRsbk13JE5MW+8HcQvyZnZ5o19aZ7XM3BrHtu9dIP/A5MColvRZy41Be+EfggQ7uSYvJrK+JXuy+8W4U/nJ1pVtSj7nE1B7PuudTLDOSO3qhJcz1wAhjvC/8KeCoju5Ji49cQ8AfBM3dDSNfktJjl9yGV1xvzeqg/3ZNqXozX6V4Rn/a0611IH/Q1TZqCMmCCJ+xKYC7BU3+2rFB5rwiJbweOI4PFqOj8elqVexHy+P1PfS8At6s0ryJz+QtjlJ0W9aZ7Us3BrHvm9fIl0grpBkAtyAzHBuACygd2QY8+W+arPN4Iie9Xts2OkbfOr1uBLarsXchgtPhqVWkWqvg1McqGdJ4Q9aZ7Us3BrHvSetHSjDiwzyLtEuAgMIrsm3kC+JNkT6wmZPrwYEDcIsTxdTHytfFrqcp/aUj8FBW/O0b5kM4NAfWjexqag1n3pPWiZYbKvD+LzC0ZUDa0eMKakZXWnxEBomLj14sqTZcmzTHgpxjlQ3o3RFakrXtamoNZ97J4f8swTKkvZvPa6rl2mnofNRiYJbvU+2WesEeB85CV2COe8B5gOzCC+HJLSJ42fs0F/kXfoh0GpmviiwxTqfNmFbczIG6LRZ5ZE0X3lcAXwFHgV6QOLvHll5bmYNa9LH6cL/IA0s+0ZcTz+Zh6nxjh+rQpVsx84G1k0HU/8Cnwsi9tM7K9eTPwliZPk1/jkHn6/cjgMYxJnrx0rAXO9IV1ADcgPgz74pIMiNMiiu69wHrkpmhAum07gJnIjxPS0xzMutvWS2RakBZrMIvMLZmKTNUNqO87kBmITsN1uieEya/ZKn6TJv9GZdcBgx1h9FHbXaa4ukNplug6T1gamoNZ94p4/xMiCYeQR2DQjEUhxXKCaFDvo8jccheyenk18ALwdYK8dX6BtN4YymhXNubdmteD7mcgP8zDnrA0NAez7hXxaa5DFJC55unIPhkvDQlebUjLM4Tszb85II2XQeRAywbgN+CRDP2CUn/3qCaPYt96Z0JbolIPuq9FfpCfecLS0BzMumdeL7chztybYp5RT3DdSWnAeY9lGbouE+j96lFxPwKrkbnwRb4025BpxFbi0Uf+XaY8dF+NPA2CfvRJNQez7knrxch4ZArr8wjX6E5rBWE6wbWA0tyyvxULw3RDmPxaBnyHTEgUgCc9cVOQQdu7lrYE0Uf6N0S1dX8GmZKdGRKfRHMw655GvVixEjHQZkAF8BLlOzDXAO+HpO1CKlEn+HvIIM2/iU2H6YaA6H4VuU9dtyDidVlTTd2fRX8zFImrOZh1z61eJiJbArZbpvef1hoAHg9IZ3OCazHi5HMW5U5GBmcd6poH1OewVjCqXyBTeiPAmxGuyYtq6b4e6ftfBZzjeQVtw46jOZh1z71eeoDHqNyHojut1QT8Q/miU3HRRXeCqw14CGnxjgPfYvcvEb2+smwWusL8CuNipH97vmX6rKgl3cMWeVeFpI+qOZh1r4l6MZ3WaqS0R70baTWmYj7BVdzTMgq8Tvn2AYfTvWaxOa11I/I49fZVa+kEVz3idI9AmgtzOlqRrbbdvvATlC+adCLbKbwLSoPU3t/l1AtO94jk5XAnMgOx1xc+j/KK6SDZqrKjHKd7RPK6IWxPa81C5rsd6eB0r1FsT2sNI3PULVTu+HREx+lew9ic1lqCLMefBJ7P2b5TFae7w+FwOBwOh8PhcDgcDofDkSv/A7RDdeGngJHkAAAAAElFTkSuQmCC\n", "text/latex": [ "$$- (\\frac{d^{2}}{d t^{2}} \\operatorname{y_{1}}{\\left (t \\right )} + \\frac{d^{2}}{d t^{2}} \\operatorname{y_{2}}{\\left (t \\right )})$$" ], "text/plain": [ " ⎛ 2 2 ⎞\n", " ⎜ d d ⎟\n", "-⎜───(y₁(t)) + ───(y₂(t))⎟\n", " ⎜ 2 2 ⎟\n", " ⎝dt dt ⎠" ] }, "execution_count": 243, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(L, t, t) " ] }, { "cell_type": "code", "execution_count": 244, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$- \\frac{d^{2}}{d t^{2}} \\operatorname{y_{1}}{\\left (t \\right )} - \\frac{d^{2}}{d t^{2}} \\operatorname{y_{2}}{\\left (t \\right )}$$" ], "text/plain": [ " 2 2 \n", " d d \n", "- ───(y₁(t)) - ───(y₂(t))\n", " 2 2 \n", " dt dt " ] }, "execution_count": 244, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(diff(L, t), t)" ] }, { "cell_type": "code", "execution_count": 246, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$- \\frac{d^{2}}{d t^{2}} \\operatorname{y_{1}}{\\left (t \\right )} - \\frac{d^{2}}{d t^{2}} \\operatorname{y_{2}}{\\left (t \\right )} = 0$$" ], "text/plain": [ " 2 2 \n", " d d \n", "- ───(y₁(t)) - ───(y₂(t)) = 0\n", " 2 2 \n", " dt dt " ] }, "execution_count": 246, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqc = Eq( diff(diff(L, t), t), 0)\n", "eqc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Forces on mass 1" ] }, { "cell_type": "code", "execution_count": 247, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$m_{1} \\frac{d^{2}}{d t^{2}} \\operatorname{y_{1}}{\\left (t \\right )} = T - g m_{1}$$" ], "text/plain": [ " 2 \n", " d \n", "m₁⋅───(y₁(t)) = T - g⋅m₁\n", " 2 \n", " dt " ] }, "execution_count": 247, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq1 = Eq( m1 * diff(y1(t), t, t) , - m1 * g + T)\n", "eq1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Forces on mass 2" ] }, { "cell_type": "code", "execution_count": 248, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$m_{2} \\frac{d^{2}}{d t^{2}} \\operatorname{y_{2}}{\\left (t \\right )} = T - g m_{2}$$" ], "text/plain": [ " 2 \n", " d \n", "m₂⋅───(y₂(t)) = T - g⋅m₂\n", " 2 \n", " dt " ] }, "execution_count": 248, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq2 = Eq( m2 * diff(y2(t), t, t) , - m2 * g + T)\n", "eq2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's solve for $y_1''(t)$, eliminating $T$ and $y_2''(t)$ from the equations" ] }, { "cell_type": "code", "execution_count": 249, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAVCAYAAABPPm7SAAAABHNCSVQICAgIfAhkiAAAAF5JREFUOI1jYKAicGBgYPiPhG8gyYmgyf2HSbBgMeggAwPDAQYGhjdIYt8YGBgaoewEBgYGeXwuaCDg0gPILmAioJggGDVg1IBRAzCBAwOF5cEDBkSeZ2DAXR4MMgAAUJocEs/sZrAAAAAASUVORK5CYII=\n", "text/latex": [ "$$\\left [ \\right ]$$" ], "text/plain": [ "[]" ] }, "execution_count": 249, "metadata": {}, "output_type": "execute_result" } ], "source": [ "solve([eq1, eq2, eqc], diff(y1(t),t,t)) ## WHY DOESN'T THIS WORK???" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Write our equation in terms of accelerations." ] }, { "cell_type": "code", "execution_count": 250, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\left [ \\left \\{ T : \\frac{2 g m_{1} m_{2}}{m_{1} + m_{2}}, \\quad a_{1} : - \\frac{g \\left(m_{1} - m_{2}\\right)}{m_{1} + m_{2}}, \\quad a_{2} : \\frac{g \\left(m_{1} - m_{2}\\right)}{m_{1} + m_{2}}\\right \\}\\right ]$$" ], "text/plain": [ "⎡⎧ 2⋅g⋅m₁⋅m₂ -g⋅(m₁ - m₂) g⋅(m₁ - m₂)⎫⎤\n", "⎢⎨T: ─────────, a₁: ─────────────, a₂: ───────────⎬⎥\n", "⎣⎩ m₁ + m₂ m₁ + m₂ m₁ + m₂ ⎭⎦" ] }, "execution_count": 250, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq1 = Eq(m1 * a1, -m1 * g + T)\n", "eq2 = Eq(m2 * a2, -m2 * g + T)\n", "eqc = Eq(a1, -a2)\n", "\n", "soln = solve([eq1, eq2, eqc])\n", "soln" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Construct a differential equation for $y_1(t)$" ] }, { "cell_type": "code", "execution_count": 251, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\frac{d^{2}}{d t^{2}} \\operatorname{y_{1}}{\\left (t \\right )} = - \\frac{g \\left(m_{1} - m_{2}\\right)}{m_{1} + m_{2}}$$" ], "text/plain": [ " 2 \n", " d -g⋅(m₁ - m₂) \n", "───(y₁(t)) = ─────────────\n", " 2 m₁ + m₂ \n", "dt " ] }, "execution_count": 251, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eqD = Eq( diff(y1(t), t, t), soln[0][a1])\n", "eqD" ] }, { "cell_type": "code", "execution_count": 252, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$$\\operatorname{y_{1}}{\\left (t \\right )} = C_{1} + C_{2} t + \\frac{g t^{2} \\left(- m_{1} + m_{2}\\right)}{2 \\left(m_{1} + m_{2}\\right)}$$" ], "text/plain": [ " 2 \n", " g⋅t ⋅(-m₁ + m₂)\n", "y₁(t) = C₁ + C₂⋅t + ───────────────\n", " 2⋅(m₁ + m₂) " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sol = dsolve( eqD )\n", "display(sol)\n", "\n", "y1_sol = sol.rhs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Solve for the coefficients" ] }, { "cell_type": "code", "execution_count": 253, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGkAAAApCAYAAAA22gdWAAAABHNCSVQICAgIfAhkiAAABQxJREFUeJzt2nmIVlUYx/GPVrRYVCZpm6UFrTpOmFJaGREVFUR7RFEUgbRB+E/1RxZEiEUrEQQxFS1EJiVBli22UUSUGUUbkqa2UbaXrX885zZ33rnvO3fmnXnfyblfONx7zz33nufec85zlt+hYkSwB17E+1iBU9pqTUUhu6Ajne+MNdimfeZUlOFdTMxd74gvsXd7zPnf8BiuHIwX3YSnGtyfjg8wKhe3EPcNRuabOFPxLbZv9kXLcV2dezuJfumwXNw22IDDm824hXRhfpvyfguX9JVoCl7Gb1gpfvgfOBIb8U8urMw9tyVewrk17ztd1I5RmmP3lOcZeB6/iEHKvpiJV1Pc6yltM3QpV0hDYdO16bm6HICfsAD740SsToaMxYx0PgMTRF9DFMDDdT7sNjxb0sBGnJjyflFUmCn4EK/hOVGZOpO9NzWZV5dyhTQUNh0nGsPW9RIsw6KauPuwKp2fjB/0bhWz8TfeyYUp6d4TBqc/ugbfY3wu7g58JSpQxgN4MJ0/ie9Eh9wfupQrpIHY1Nd0Zaoo+B6DrNHpOBFH4/qahzaKn07UihXpJXleSe+ZlguZK9xKuM5a5uvpOovCnFz6aVgiRokZe+Jx4U4zJuquVLfgvIK8a7laeJAsnFMQV9SnDsSmP3GF8FrHCE+Tn678mo49WtLm6diZXvBujSEHYmnOqLeLvrIB3+h2i3nuxCN9PLs6d96B22vud4ofok66F/Qs6HrcjUdz1wuwtia/tQXPDcSm9SkQLe47jNP9rVkL/Dr/gqyQ/sJmolR/TnEzcGgymnBhSwqMbcTbOL8g/psUyjBGNP98BRknOuN83CQxfO1vRfpWz5r/Y7r+ZIhtmo4txOQ/YwrW6dk6/3N3bwnXtjBlfrzwpXS7u9HCZ+6KHRp8QJ6lYhAyrmT6Iqam44pc3MH4Xfj2jGmij1hl6GnWpp1wPy7Us/s4Ak/XZpYV0npcgBOEy5uLe/EFPktprhEd3ee4oeTHrMQbOKtk+iI68LHoGzI68Z6YHuTTvaN3nzkUNGPTlliMG8VIMGNrMTi7p6wRo/CM3j53IByLj4Q7bTVz9H90N5Q0mq5cKv55XWbjVEzGIXhItK4Jg2Tc5WLk00qWiQ74F9H6D21x/kU0mq5cLCbCdTkNn4rh8moxt9ltqCytqKioqKio+H+SLZa2Ym5RMUwZydL5oMnhzXAV3hTyxddiXe+gmjQjWTofNDm8GZaKpaSDxIRssVhGylZyh4N03qV9Ujgl5fBWsq1YTT8pXdeTzkeKFE4JObzV7CI+dFa6riedjxQpnBJyeBk27ztJaW4Va1Gvp+u9hDZSS4fox87UrZs8k673063tLBcF3wqGyqZ1QjPaVSy7DYjRfScpxUKhhZwuXB71pfOByM6U27PQSim8zPbqQjm8HdwsPu6AmvgH9ZSlMz4Sy/J51uit4G4QK/MZR4n+rlEhjcU+ubBIyC35uKIfNhCbymyvninc6Hht5HbFBQTzhAiWZ4xoabNycePEh3Tk4ialuMk1z8/RP32oS999UrM2ZdRur4aLFO+P6BfNuLu7RE07W7iECSlsm+4XSeebohRO8X4F6sjh/aWZQpqL7cToZ30uzEv3i6TzTU0Kp/5+hX7L4e1isKXzOYaXHF5vezUl5PCyDNborh5LxR67Zielw5FRos97XvfOqjwbcVkrDRoODLc9C432K1RUVFRUVFRUtId/ASw9orWps6YDAAAAAElFTkSuQmCC\n", "text/latex": [ "$$\\frac{g t^{2} \\left(- m_{1} + m_{2}\\right)}{2 \\left(m_{1} + m_{2}\\right)}$$" ], "text/plain": [ " 2 \n", "g⋅t ⋅(-m₁ + m₂)\n", "───────────────\n", " 2⋅(m₁ + m₂) " ] }, "execution_count": 253, "metadata": {}, "output_type": "execute_result" } ], "source": [ "coeffs = solve ( [ Eq(y1_sol.subs(t,0), 0), # y1(0) =0\n", " Eq(diff(y1_sol, t).subs(t,0), 0) # y1'(0) = 0\n", " ] )\n", "y1_sol.subs(coeffs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Before we could plot this function, we would have to provide numbers for the various parameters." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This problem has an analytical solution. If it did not, then we would need to solve it with the numerical solver NDSolve, which requires a time interval over which to solve for the function. We also have to make sure that all parameters have numerical values." ] }, { "cell_type": "code", "execution_count": 254, "metadata": {}, "outputs": [], "source": [ "q0 = [0, 0] # initial condition\n", "params = {m1:3.2, m2:3, g:9.8}\n", "F = lambdify( [t], soln[0][a1].subs(params) )\n", " \n", "def RHS(q, t):\n", " y, v = q\n", " return [v, F(t)]\n", "t_num = np.arange(0, 2, 0.1)\n", "sol = odeint(RHS, q0, t_num)\n", "y1_soln_num, v1_soln_num = sol.T" ] }, { "cell_type": "code", "execution_count": 255, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0,0.5,'y')" ] }, "execution_count": 255, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t_num, y1_soln_num)\n", "plt.plot(t_num, lambdify( [t], y1_sol.subs(coeffs).subs(params) )(t_num) )\n", "plt.xlabel('t')\n", "plt.ylabel('y')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 12. Atwood's machine swinging" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now consider the case where one of the masses, m1=1 kg, of an Atwood Machine is free to swing. The system is constructed in such a way that the swinging mass won't collide with the other mass or the string. Consider this as a 2D problem with the pulley at the origin. $m_2$ = 1 kg. Initially $x_1$=-0.5 m, $y_1$=-4 and $y_2$=-8. Show an animation of the motion of the two masses for the first 20 s.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 13. Atwood's machine over a table" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Block 1 of mass $m_1$=5 kg lies on a frictionless table, and is connected by a non-elastic string running parallel to the table through a pulley to a second block of mass $m_2$= 1 kg hanging vertically. Solve.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 14. Atwood's machine over a table with an angle" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Block 1 of mass m1=5kg lies on a frictionless table, and is connected by a non-elastic string running through a pulley to a second block of mass m2=1kg hanging vertically. The pulley is a height h above the origin (technically at y=-h). Thus the string forms an angle θ with the horizontal. θ changes as the blocks move, resulting in a non-constant tension. Furthermore, the accelerations of the blocks are not equal in magnitude in general. We can assume that block 1 stays on the table and doesn't lift off. For initial conditions x(0) = 4 and x'(0)=0, and h = 4, plot the position of block 1 for the first 4 seconds along with the corresponding solution from 2.12.\n" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.6.4" } }, "nbformat": 4, "nbformat_minor": 2 }