{
"cells": [
{
"cell_type": "markdown",
"id": "d407b543-41ed-4dbe-a3d6-f874932811e9",
"metadata": {},
"source": [
"# 2025-11-17 ODE Exercise\n",
"\n",
"We will implement a ODE simulation of a [simple gravity pendulum](https://en.wikipedia.org/wiki/Pendulum_(mechanics)#Simple_gravity_pendulum).\n",
"At various points in this exercise, you will have the ability to modify the code to explore different variations on the project.\n",
"\n",
"## The math\n",
"\n",
"Let us consider a weight at the end of a massless arm attached to a frictionless pivot.\n",
"We will only consider motion in two dimensions for this example.\n",
"\n",
"The differential equation which governs the motion of this pendulum is given by\n",
"\n",
"$$ \\frac{d^2 \\theta}{d t^2} + \\frac{g}{l} \\sin \\left( \\theta \\right) = 0 $$\n",
"\n",
"where $g$ is the [gravitational constant](https://en.wikipedia.org/wiki/Gravity_of_Earth), $l$ is the length of the arm, and $\\theta$ is the angle from vertical for the pendulum.\n",
"\n",
"Note: Wikipedia has a nice pair of derivations for this equation.\n",
"It is a good example of deriving the equation for our simulation from [first principles](https://en.wikipedia.org/wiki/First_principle) (in this case, physical laws around force, torque, or energy).\n",
"\n",
"### Extension\n",
"\n",
"Note that we can change the constants $g$ and $l$ here to modify our simulation.\n",
"We could also change our differential equation to represent more complex behavior.\n",
"\n",
"### A complication\n",
"\n",
"The time steppers for ODEs we saw in class only support first derivatives with respect to time, not second derivatives.\n",
"There is a common trick we can employ though.\n",
"\n",
"Let $v = \\frac{d \\theta}{d t}$ and note that $\\frac{d v}{d t} = \\frac{d^2 \\theta}{d t^2}$.\n",
"Then\n",
"\n",
"$$ \\begin{split}\n",
" \\frac{d \\theta}{d t} &= v\\\\\n",
" \\frac{d v}{d t} &= - \\frac{g}{l} \\sin \\left( \\theta \\right)\n",
"\\end{split} $$\n",
"\n",
"We now have a system of first order equations and can use our techniques from class."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "4bbabc62-0948-4250-96fc-ea06e24a7d0f",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"dFdt (generic function with 1 method)"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Some simulation constants\n",
"# Note that we can change these\n",
"g = 9.81 # m/s^2\n",
"l = 10 # m\n",
"\n",
"# Function to represent our physics\n",
"function dFdt(x)\n",
" θ = x[1]\n",
" v = x[2]\n",
" return [v; (-g/l)*sin(θ)]\n",
"end"
]
},
{
"cell_type": "markdown",
"id": "07c9f497-dfde-4ec7-a287-3bc4578085f6",
"metadata": {},
"source": [
"## Initial conditions\n",
"\n",
"We needed initial conditions for our timesteppers in class.\n",
"Here, we will need initial values for $\\theta$ and $v$, so an initial displacement and initial velocity."
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "2653b672-8aea-483e-880c-d797a517604b",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2-element Vector{Float64}:\n",
" 0.7853981633974483\n",
" -1.0"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Initial conditions\n",
"θ_0 = π/4 # 180°\n",
"v_0 = -1 # rad/s\n",
"x_0 = [θ_0; v_0]"
]
},
{
"attachments": {
"5b265a1e-88e8-49ec-bd17-19e6d38a381b.png": {
"image/png": "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+1he8iVfkjvvvJM/+7M/YxxH/iO853u+J0dHR/zYj/0Ytrnqqquu+l+E4Kqrrrrq36HWyku8xEuws7PD4x//eO69917+I5w6dYq3fdu35ed//ue5++67ueqqq676X4Tgqquuuurf6brrruPRj340+/v7/OVf/iXr9Zr/CG/wBm/AxsYGP/ZjP0ZmctVVV131vwTBVVddddW/U9d1vOzLvixnzpzh7//+73nCE57Af4Tjx4/zHu/xHvz0T/80f/3Xf81VV1111f8SBFddddVV/wGuu+46XvqlX5ppmvjzP/9zLly4wH+EN3zDN+QN3/AN+c7v/E4ODw+56qqrrvpfgOCqq6666j/Iy77sy/LIRz6S22+/nb//+78nM/n36rqOd33Xd+VpT3sav/Ebv8FVV1111f8CBFddddVV/0EWiwUv8zIvw3w+52//9m+5ePEi/xEe9KAH8aZv+qb86I/+KJcuXeKqq6666n84gquuuuqq/0A333wzD3/4w7lw4QJ///d/T2byH+Gt3/qtOTg44Nd//de56qqrrvofjuCqq6666j/QxsYGr/Iqr8KxY8f48z//c570pCfxH+Gmm27iAz/wA/m2b/s2/v7v/56rrrrqqv/BCK666qqr/oPdeOONvMzLvAwHBwf8yZ/8CXt7e/xHePVXf3Ue8YhH8J3f+Z2s12uuuuqqq/6HIrjqqquu+k/wsi/7stx0003cfvvtPPWpT8U2/147Ozu87/u+L3/3d3/HX//1X3PVVVdd9T8UwVVXXXXVf4LNzU1e5mVeBtv81V/9FUdHR/xHeMmXfEle6ZVeiR/4gR9gGAauuuqqq/4HIrjqqquu+k8giYc+9KHcfPPN3H777fzlX/4l/xFKKbz7u787t99+O7/6q7/KVVddddX/QARXXXXVVf9Jjh8/ziu/8iuzubnJX//1X3PXXXfxH+HRj340b/mWb8l3fMd3cM8993DVVVdd9T8MwVVXXXXVf6JHPvKRvNzLvRwXLlzgj/7oj1gul/xHeKM3eiP6vue7v/u7aa1x1VVXXfU/CMFVV1111X+iiOAlXuIlOHnyJE95ylO44447+I9www038AEf8AH89m//Nk972tO46qqrrvofhOCqq6666j/ZiRMneMmXfElWqxV/+Zd/yXK55D/Cq7/6q3PLLbfwgz/4g4zjyFVXXXXV/xAEV1111VX/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q6666qqrrvpXkMRLvuRLcsstt/DUpz6VJz7xidjm32tra4u3e7u34zd/8zf5sz/7M6666n8xgquuuuqqq676Vzp58iSv9EqvxHq95vd+7/e4++67+Y/w6q/+6rzaq70a3/7t3856veaqq/6XIrjqqquuuuqqf4MHPehBPPrRj+bChQv89V//Na01/r3m8zkf9mEfxuHhIT/wAz/AVVf9L0Vw1VVXXXXVVf8GW1tbvOIrviLb29s86UlP4s477+Q/wjXXXMNbvdVb8Yu/+IvceeedXHXV/0IEV1111VVXXfVvdNNNN/Hwhz+c3d1dHve4xzGOI/8RXvd1X5dSCr/yK7+Cba666n8Zgquuuuqqq676N6q18nIv93KcPHmSxz/+8dx+++38R7j22mt593d/d37u536Opz71qVx11f8yBFddddVVV13173DDDTfwiq/4ily6dInf/d3f5eLFi/xHeNM3fVNuuOEGvvqrv5q9vT2uuup/EYKrrrrqqquu+neQxIu92IvxyEc+kmc84xn8/d//Pbb59yql8BEf8RE87WlP47d/+7e56qr/RQiuuuqqq6666t9pe3ubl37pl2Y2m/EP//APnD17lv8Ij3zkI3mjN3ojfuqnfoqLFy9y1VX/SxBcddVVV1111X+Ahz70odxyyy3cd999POlJTyIz+feKCN70Td+U8+fP84d/+IdcddX/EgRXXXXVVVdd9R9gPp/zsi/7ssxmM/7oj/6Iu+++m/8ID3/4w3nP93xPvvEbv5GzZ89y1VX/CxBcddVVV1111X+Qhz/84bzSK70S6/WaP/qjP+Lo6Ih/L0m8xVu8BVtbW3zbt30b6/Waq676H47gqquuuuqqq/6D1Fp5qZd6KW644Qae8IQn8MQnPpH/CLPZjA/5kA/ht3/7t/nLv/xLrrrqfziCq6666qqrrvoPdOLECV78xV8c2/z93/89e3t7/Ed4lVd5FV7+5V+en/iJn2C5XHLVVf+DEVx11VVXXXXVf7BHP/rRXH/99dx22238wz/8A601/r1msxlv+7Zvy9/+7d/yO7/zO1x11f9gBFddddVVV131H2xnZ4dXf/VXxzZ/8id/wsWLF/mP8FIv9VK88Ru/Md/+7d/Ocrnkqqv+hyK46qqrrrrqqv8ED37wg3nxF39xLl26xO/+7u8yjiP/Xl3X8f7v//5cd911/ORP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Ov7sz/6MO+64g/8ID33oQ3nt135tvvmbv5m7776bq676FxBcddVVV1111f8hL/7iL86jH/1o7r33Xv7qr/6KYRj49+q6jvd5n/dhHEd+/dd/nauu+hcQXHXVVVddddX/IaUUXumVXolrr72Wv//7v+epT30q/xGuvfZa3v/935+f/Mmf5IlPfCJXXfVCEFx11VVXXXXV/zHXXXcdL/3SL80wDPzVX/0Vq9WK/whv+IZvyI033sgP/MAPkJlcddULQHDVVVddddVV/8dEBI961KO47rrruPXWW3na057Gf4S+73m3d3s3/uRP/oS//du/5aqrXgCCq6666qqrrvo/6OTJk7z8y788EcGf/dmfceHCBf4jvNRLvRSPecxj+PZv/3b29va46qrng+Cqq6666qqr/g+KCF7iJV6CG2+8kac97Wn8yZ/8CcMw8O+1sbHBB3zAB/C0pz2NP/iDP+Cqq54Pgquuuuqqq676P6rve17plV6J7e1tHve4x3H33XfzH+HFXuzFeN/3fV++6Zu+iTvvvJOrrnouBFddddVVV131f9hDH/pQXuzFXoz9/X3+9m//lmma+I/wBm/wBmxubvKzP/uzXHXVcyG46qqrrrrqqv/Daq28+Iu/OMePH+eJT3wid911F/8Rjh07xju90zvxC7/wCzzjGc/gqqsegOCqq6666qqr/o+77rrreKmXeilWqxV//ud/zuHhIf8RXv/1X5+HPvShfP/3fz/DMHDVVc9EcNVVV1111VX/x3Vdx8u//MtzzTXX8A//8A/89V//Na01/r22trZ413d9V37t136NX//1X+eqq56J4Kqrrrrqqqv+H9je3uY1X/M1qbXyV3/1V1y4cIH/CK/0Sq/E277t2/J93/d97O3tcdVVAMFVV1111VVX/T/x4Ac/mEc84hGcP3+ef/iHfyAz+feSxNu93dtxcHDAr/3ar3HVVQDBVVddddVVV/0/MZ/PeYmXeAnm8zl/93d/x7lz5/iPcMMNN/Bmb/Zm/NRP/RTnzp3jqv/3CK666qqrrrrq/5FbbrmFRz/60Zw7d44//MM/ZJom/r0k8c7v/M50Xcf3f//3c9X/ewRXXXXVVVdd9f/IYrHgVV/1Vbnpppt48pOfzOMf/3hs8+91/Phx3vd935ff+q3f4s///M+56v81gquuuuqqq676f+b06dO8/Mu/PMvl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a41pmnhhWmuM4wiAJO43TROtNV6Y1hrjOBIRPNA4jrTWeEFsM44j4zgiifvZBsA2L0hmMo4jEcED2WYcR2zzgrTWmKYJSTyQbVprvCC2maaJcRx5INtIIjN5QWwzTRPjOFJK4X6ZyTRN2OYFyUymaWIcRyRxv9Ya0zRhmxektcY0TTyQbQ4PD2mtkZnYxjaZiSQigsyktcY0TdgmIogIMhNJtNawjW0eyDa2aa0xTROSuF9mcunSJf7gD/6A2267jb29PVpr/Omf/il7e3tsbGzw8Ic/nJMnTwJgG9vYxja2sY1tbGMb2wDYxja2AbANgG1eFK017r33XpbLJf9LIdvmqqv+B5mmiS/4gi/gsz/7s/n4j/943vd935eI4H62mc/n3HzzzZRSeG62ufPOOzk4OEASD2SbY8eOcf311/P8tNa49dZbGccRSTyQba699lpOnDjB83N0dMQdd9yBbZ5bRHDjjTeysbHB83PhwgXuu+8+JPHc+r7n5ptvptbKc8tM7r33Xi5duoQkntv29jbXX389knhuwzBw9913s1wukcQDSeLUqVOcOnWK5+fo6Ii77rqLaZqQxP1sU2vluuuuY2tri+dmm93dXe677z6em23m8znXX389s9mM55aZ3HfffVy6dInnZpudnR2uvfZaSik8t3Ecufvuuzk6OkISz+306dOcPHkSSTy3o6Mj7r77bsZxRBIPJIkbbriBra0tnp+LFy9y9uxZbPNAtun7nptuuom+73l+7rnnHi5dusRzs83W1hY33HADEcFzy0xuv/12lsslkngg25w+fZrTp0/z/AzDwDOe8Qwyk+fnxhtvZGtri+dnb2+Pu+66C0k8t1IKt9xyC33f89xsc/bsWS5cuIAknttiseCmm24iInhurTXuuusuDg8PkcRzO378ONdeey3Pz3q95s4772QYBiTxQBHBNddcw7Fjx3h+9vf3ufvuu7HNA9mm73uuv/56FosFz802586d48KFCwBI4uzZs3z8x388b/qmb8rLv/zLs7OzQ9/3RASlFEopRASSWC6XTNNERBARRAQRgSQ2NjbY2tpCEpKQxP1aa+zv7zNNEwC22d3d5YlPfCJ///d/z97eHltbW3Rdx9mzZ3mxF3sxXvIlX5InPOEJnD17lltuuYVHP/rRnD59mtYamUlmkplkJplJZpKZZCa2yUxsk5nY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"
}
},
"cell_type": "markdown",
"id": "092d334f-758c-4bf7-bc33-47ee1fe09841",
"metadata": {},
"source": [
"## Visualize\n",
"\n",
"It would be really nice if we can visualize out results.\n",
"We could plot $\\theta$ as a function of $t$, but that wouldn't make a nice graphic of a swinging pendulum.\n",
"To make a graphic of a swinging pendulum, we need the coordinates $\\left( x, y \\right)$ of our pendulum.\n",
"\n",
"We should pick a coordinate system first.\n",
"Then we would indicate where $\\theta$ is relative to our coordinate system and derive the coordinates of the weight from this diagram.\n",
"\n",
"\n",
"\n",
"Given this diagram, we can now say that\n",
"\n",
"$$ x = l \\sin \\left( \\theta \\right), y = - l \\cos \\left( \\theta \\right) $$\n",
"\n",
"With this, we can plot the initial location of our pendulum."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "e5bf8843-16f0-4df9-a9b8-5c0613c337b8",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"image/svg+xml": [
"\n",
"\n"
],
"text/html": [
""
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"using Plots\n",
"\n",
"x = l * sin(θ_0)\n",
"y = -l * cos(θ_0)\n",
"plot([(0, 0), (x, y)],\n",
" xlims=[-l, l], ylims=[-l, l],\n",
" marker=:circle,\n",
" legend=:none, aspect_ratio=:equal)"
]
},
{
"cell_type": "markdown",
"id": "6ed92699-b104-402a-a625-6363168c012f",
"metadata": {},
"source": [
"## Time Stepper\n",
"\n",
"Now we need to pick one of our for advancing our solution forward in time.\n",
"This is the area where we can experiment the most.\n",
"For now, let's use a simple [forward Euler](https://en.wikipedia.org/wiki/Euler_method).\n",
"\n",
"$$ x_{n + 1} = x_n + h \\, dF \\left( t_n, x_n \\right) $$\n",
"\n",
"where $t_n$ is the current time, $x_n$ is the current solution, $h$ is our step size in time, $dF$ is our differential equation, and $x_{n + 1}$ is our new solution.\n",
"\n",
"Let's code up forward Euler and take a single step."
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "2bcf2733-ab78-48cc-953a-e43ca97d0842",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x_1 = euler_forward(x_0, h, dFdt) = [0.6853981633974483, -1.0693671752344003]\n"
]
},
{
"data": {
"image/png": "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",
"image/svg+xml": [
"\n",
"\n"
],
"text/html": [
""
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Forward euler\n",
"function euler_forward(x, h, dF)\n",
" return x + h * dF(x)\n",
"end\n",
"\n",
"# And take a single step\n",
"h = 1e-1\n",
"@show x_1 = euler_forward(x_0, h, dFdt)\n",
"\n",
"# And plot\n",
"x = l * sin(θ_0)\n",
"y = -l * cos(θ_0)\n",
"plot([(0, 0), (x, y)],\n",
" xlims=[-l, l], ylims=[-l, l],\n",
" marker=:circle,\n",
" legend=:none, aspect_ratio=:equal)\n",
"\n",
"θ_1 = x_1[1]\n",
"x = l * sin(θ_1)\n",
"y = -l * cos(θ_1)\n",
"plot!([(0, 0), (x, y)], marker=:circle)"
]
},
{
"cell_type": "markdown",
"id": "5bf4a7cd-24ef-4b1e-ab3f-ed019d7918f6",
"metadata": {},
"source": [
"We can also do this with backward Euler."
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "a017d0f0-3c07-4c95-bcb1-1fc78067af7b",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x_1 = euler_backward(x_0, h, dFdt) = [0.6792355369698221, -1.061626264511185]\n"
]
},
{
"data": {
"image/png": "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",
"image/svg+xml": [
"\n",
"\n"
],
"text/html": [
""
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"using LinearAlgebra\n",
"\n",
"# Backward euler\n",
"function euler_backward(x, h, dF)\n",
" # Fixed point iteration\n",
" x_n1 = x + h * dF(x)\n",
" x_n2 = x + h * dF(x_n1)\n",
" # Note - this is a simple fixed point iteration - could we do this better?\n",
" tol = 1e-10\n",
" while (norm(x_n1 - x_n2) > tol)\n",
" x_n1 = x_n2\n",
" x_n2 = x + h * dF(x_n1)\n",
" end\n",
" return x_n1\n",
"end\n",
"\n",
"# And take a single step\n",
"h = 1e-1\n",
"@show x_1 = euler_backward(x_0, h, dFdt)\n",
"\n",
"# And plot\n",
"x = l * sin(θ_0)\n",
"y = -l * cos(θ_0)\n",
"plot([(0, 0), (x, y)],\n",
" xlims=[-l, l], ylims=[-l, l],\n",
" marker=:circle,\n",
" legend=:none, aspect_ratio=:equal)\n",
"\n",
"θ_1 = x_1[1]\n",
"x = l * sin(θ_1)\n",
"y = -l * cos(θ_1)\n",
"plot!([(0, 0), (x, y)], marker=:circle)"
]
},
{
"cell_type": "markdown",
"id": "b60e5419-4a24-4c29-8be3-8bc7d92d599d",
"metadata": {},
"source": [
"### Exploration\n",
"\n",
"Implement the $\\theta$ method."
]
},
{
"cell_type": "markdown",
"id": "a36c80e4-10c2-4b68-b30c-463a6615d6bb",
"metadata": {
"jp-MarkdownHeadingCollapsed": true
},
"source": [
"## Building it out\n",
"\n",
"Ok, now it seems like we need two things right now.\n",
"\n",
"1) Something to take our time stepper (`euler_forward`) and our function (`dFdt`) and create a series of outputs.\n",
"\n",
"2) Something to automate and animate the plotting process.\n",
"\n",
"Let's start with 1).\n",
"We'll make a basic function `run_simulation` to produce our values $\\theta$ and $v$ via our ODE and time stepper."
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "5272a49b-c608-4742-965b-4d6243cce011",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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F4mSp2f+bQnVGQRZa2JOfI2zCaBVAG1ZR4LVWcyZr3MvN0mddvSzGvb6ooQ4pjR6oIaQQqEEBfXniJKmhp9UUy8jMtB5p1AoFEpCQw0hhUKhUBKaBDKEbW1tn332WaTvgjJHHDx4sKurK9J3QZkj/vnPf4pioB7hlLjA5XLt3LkT75gJZAj37t376quvRvouKHPEiy++ePDgwUjfBWWOePDBBwcGBiJ9F5S5oKOj4z/+4z/wjplAhpBCoVAolKlQQ0ihUCiUhIYaQgqFQqEkNAxCMdyb+OOPP77++usrK4M6gHVoaMjhcBQVFZG+K0o00NbWlpKSkpqaGukbocwFZ86cmT9/vlJJtzrGPx6Pp7m5eeHChUFef+ONN95///3+r4ltQyhJ0u7duzMzM4O52OPxOJ1OqhkThJGREYPBoFKpIn0jlLmgv78/Ozs70ndBmQsQQgMDAyaTKcjr8/LyAspGbBtCCoVCoVBmCV0jpFAoFEpCQw0hhUKhUBIaaggpFAqFktBQQ0ihTMPw8PCPfvSjM2fORPpGKHNBf3//HXfcceHChUjfCGUu2Lt375133jnxlUQxhGNjY88///xTTz3V3t4e6XuhxAA/+9nPjhw50tHREekbocwF999//+HDh3t6eiJ9IxTiWCyWRx999JVXXpn4YkIYwrGxseXLl3/wwQfNzc1Lly49depUpO+IEtW8++67ubm5VVVVkb4Rylzw2muvLVy4sKysLNI3QpkLHnjggV/84hcKhWLiiwlxMO8LL7xQWlr6+uuvA0BycvIjjzzy2muvRfqmKFGKxWL54x//+O677952222RvhcKcYaHh//617++9957N9xwQ6TvhUKcTz75RK/Xr127dtLrCRERfvjhh9u3b5cfb9++/YMPPojs/VCimX/913+95557XC4Xz/N2u10QhEjfEYUg9913309/+lO73S7/3PQspzjG5XI99NBD99133+joKEJodHTU91ZCRIQ9PT05OTny49zcXKvVarfbDQZDZO+KMhM8z9fV1Z05c6aoqOjKK6+c9prBwcGXXnrJYrFcc801q1evDmZYq9V68uTJxsbGtWvXTuzPNDQ09NJLL42NjW3btm3NmjUIoaeeeuqpp56qr69vbm4uLi4OcnxKeDQ2Nu7evbu3t7e8vPzGG2/UarVTr+nv73/55Zftdvv111+/fPnyYIa1WCwnTpxobm6+7LLLJnZhNJvNL7/8ss1mu+6661asWMEwzGOPPQYAp0+f7u/vLygoWLp0Ka4/jTIJSZLeeeeduro6t9s9f/78G264YdreTydOnHjzzTd1Ot13v/tdn+r2T3d397FjxwYGBm666aaJuv3kyZM7d+7U6XS33HILy7J6vf7WW28FAJfL9a1vfevDDz+UL0uIiJBhvmqgQzvpRD8/+clPvvWtbz3yyCPPP//8tBfY7fZVq1bV19cbjcZt27a9++67wQxbW1t79913P/jgg5988onvRYfDsXr16rq6OqPRuH379l27dj377LN79uzZs2fPlVde+dvf/pZaQdKsWbPmzJkzKSkpr7zyyiWXXOJwOCZdMDo6unLlyubmZq1WW1tbO/Hn88O6devuu+++n//8559++qnvxbGxsZUrVzY2Nup0uk2bNu3Zs+ell16Sf+5169b953/+J7WCROF5/s9//rMoikaj8cknn9y0adNUhbx///4NGzao1eqOjo4VK1YMDw8HHLajo6Oqquqxxx674447RkZGfK8fPHjwiiuuUKlUXV1dK1asUCgUe75Ep9P5rCAAAEoANm3a9OSTT8qPv/jii6SkpMjeD8U/giAghH75y1/edNNN017wzDPPrFu3Tn787LPPrl27Vn7c0tLyb//2b5IkyU9dLtfdd98tp0F8w04UBoTQc889t3r1avnxX//611WrVvne+vjjjzs6OjD+XZRpsdvt8gOe53Nycnbt2jXpgscff7y2tlZ+/F//9V++xw0NDf/+7//uu8zhcPz4xz+22WzyU/nnXrdu3V//+lffNU888cSGDRvkx08++aTvMULoww8/7OnpwfdnUQIwOjrKMExra+uk17du3froo4/Kj6+++uo//OEP8uO//e1vb731lu+y8+fP//KXv5Qfe71er9drt9tlo+i7Ztu2bY888oj8ePv27b/73e98b7344osTvzQhIsJNmzb5goZ33nln8+bNkb0fin84LkDGfu/evVu2bJEfb9269fDhw263GwCys7MPHz58++23S5LE8/w3vvENs9nsy5NMO+ykoY4cOeJ0OuWnV155ZWFhIZa/iOIHvV4vP2BZVhCEqanRffv2bd26VX68devW/fv3S5IEAPn5+Xv37v3JT34CAE6nc/v27Q6HQ6fTyVdO+3NPGurAgQNer1d+unnz5tzcXMx/G2Vmjh8/npaWlpWVNen1ffv2+f4lt2zZsm/fPvlxdXX1j370ozfffBMAGhsbN2/ePG/ePPktlmVZdhpbNtNQAPC9731v4pUJsUZ42223Pf3009/+9rezs7NfeOGFjz76KNJ3RJkV/f39vrVDk8mEEOrr6yspKdHpdLt27br66qvvvPPOzs7OjIyMl156aVKd9NSh1q9fLz/OyspiGEZerCL+N1Cm8Nvf/rakpOSKK66Y9HpfX5/vhBmTySQIwuDgoMlk0uv1u3bt2rJlyz333HPmzJmysrJnn312WoU4cSif5jWZTF6v12w2U/s3x1x77bUnTpxwOBxvvvmmzw2SGR0ddbvdE3+j3t5e+XFNTc37779/1VVXdXR0PPbYY3/4wx9uuukmP99itVodDse0Q00lIQxhWlra8ePH//nPf7pcruPHj5eWlkb6jiizQqFQ+Bx5uczPdxCdXq/fsWNHaWmpyWTatWuXfys4aSiv14sQomfaRYSXXnrphRde2L9//9SfTKFQyCEgTPm5k5KS3njjjbKysrKyso8++si/FQS/kkOZM5555hm73f7GG2/ceOONdXV1GRkZvrfkOH7izz3xB1q8ePETTzzxzW9+89577/VvBQMONYmESI0CQFpa2u23337PPfdQKxgH5Obm+py73t5ehULhO5zM4/Hccsst1113XX5+/t13340C1UZNGoplWXqs3dzz97///aGHHtqzZ09JScnUd/Py8ib+RhqNxneqqNPpvPnmm2+66Saj0fjAAw8E/KJJQ6lUqvT0dEx/BCVY8vLyKisrf/7zn6empn788ccT3zIajQaDYeJvNLFq9MKFCz/96U8ffvjh//mf/3n77bf9f4tOp0tOTp5pqEkkiiGkxDqiKB46dEheC9y2bdvbb78te/Q7duzYvHmz7OvJ64LJyckvvvjiu+++e+HCBXm90M+w27Zt27Vrl7xZcMeOHbW1tWq1ek7+IMo4O3bsuP/++z/44IOJmxw8Hs+hQ4fk32Xbtm07d+6UI7kdO3Zs27aNYRgAcDqd1157bUlJyXPPPbdnz55jx47J64V+2LZt25tvvukb6uqrrw4YRFIw4vF4fI8HBwd7enry8/MBwGw2+xp+bdu27Z///CcASJK0c+fOa665Rn69sbFx06ZNv/vd7x588MH333//zjvvlNcL/eAbCiE0cahpmHXtD4WCmbfeequ2trakpCQ7O7u2tvaZZ55BCA0MDABAU1MTQsjj8axZs2b9+vW33nprWlrakSNH5A82Njb++Mc/FkVRfmq322+99dbh4WH56SOPPFJbW5uWllZZWVlbW7tv3z6EEM/z69atW7dunTzUZ599FoE/OIGx2WxKpbK8vLz2S3bu3IkQknsCy2WcTqdz+fLlV1xxxfe+97309PRTp07Jn62vr7/vvvt8RcIWi+X73/++xWKRn/7qV7+qra1NSUmpqqqqra09fPgwQsjlcq1cufLyyy+Xhzpx4kQE/uYEZteuXQsWLPjOd75z8803m0ymW2+9Vf75/vKXvyxcuFC+pq6uLj09/ZZbbtm4cePSpUt9RcUvvPDC3//+d99Qp06d+ulPf+p7un379g0bNgDA+vXra2treZ5HCNXX12dkZHznO9+pra1dvHixr6J4KvSEekrU0d3d3dDQ4HtaWFhYUVEhCMLnn3++cuVKjUYDADzP7969e3R0dOPGjUEWO9TX1/f39/ueLlq0SE6oCoKwe/fu4eHhjRs35uXl4f5rKP4QRXFiLR8AVFZWFhQUeDyeo0ePrlq1St5w7fF4PvjgA5vNtmnTJl8a3D91dXWy8ySzZMkSeS3K4/F8+OGHVqu1traWpsHnGEmSTp8+ffbsWYVCUVNT4+trYTabe3p6li1bJj8dGBjYs2ePwWDYsmWL/P8ekL179/pWfwHgyiuvlGN9eSi9Xr9161Y/Q1FDSKFQKJSEhubHKRQKhZLQUENIoVAolISGGkIKhUKhJDTUEFIoFAoloaGGkEKhUCgJDTWEFAqFQkloqCGkUCgUSkJDDSGFQqFQEhpqCCmUmOf8+fP79+8HAEmS9u/f/8477/hOVaRQKAFJiGOYKJQ4pqur6/Dhw2fOnDl27JhCobj66qvVavWGDRuOHDkS6VujUGIDaggplNhm586dt912W11d3Xvvvbdnzx6WZa1W69GjR51Op++4dgqF4geaGqVQYpvrrrtOr9cfOHDg7rvvlhsNnzp1Kj8/n1pBCiVIqCGkUGKboqKi0dHR+vr6yy67TH7l7bffvvrqqyN7VxRKDEENIYUS8xw4cKC6ulo+tx0h9Prrr994441ms7mtrS3St0ahxADUEFIoMc++ffsuv/xy+fGFCxdsNtull1766quvBnl0H4WS4FBDSKHEPCdOnLjqqqvkxzk5OYsWLXr99derq6vpMiGFEgz0YF4KJeZxOBx6vd73lOd5URSpFaRQgoQaQgqFQqEkNDQ1SqFQKJSEhhpCCoVCoSQ01BBSKBQKJaGhhpBCoVAoCQ01hBQKhUJJaKghpFAoFEpCQw0hhUKhUBIaaggpFAqFktD8f7vvtSNtZ9r8AAAAAElFTkSuQmCC",
"image/svg+xml": [
"\n",
"\n"
],
"text/html": [
""
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"function run_simulation(x_0, h, dF, time_stepper, t_f)\n",
" # Setup\n",
" num_steps = Int(ceil(t_f / h))\n",
" x = zeros((num_steps + 1, maximum(size(x_0))))\n",
" x[1, :] = x_0\n",
"\n",
" # Simulate\n",
" for i in 1:num_steps\n",
" x[i + 1, :] = time_stepper(x[i, :], h, dF)\n",
" end\n",
" x\n",
"end\n",
"\n",
"# And run it\n",
"h = 1e-3\n",
"t_f = 30 # s\n",
"x = run_simulation(x_0, h, dFdt, euler_forward, t_f)\n",
"\n",
"# Plotting the θ and v as a sanity check\n",
"plot([x[:, 1], x[:, 2]], xlabel=\"\\$n\\$\", ylabel=\"\\$\\\\theta\\$\", label=[\"\\$\\\\theta\\$\" \"\\$v\\$\"])"
]
},
{
"cell_type": "markdown",
"id": "757e8cfb-8903-467b-8d77-2bed15c33660",
"metadata": {},
"source": [
"Take a look at our plots of $\\theta$ and $v = d \\theta / d t$.\n",
"\n",
"Is anything concerning to you?\n",
"\n",
"What happens if we use backward Euler instead?\n",
"\n",
"What about a $\\theta$ method instead?"
]
},
{
"cell_type": "markdown",
"id": "e6804ba1-28f3-4f07-949b-b638016a10d8",
"metadata": {},
"source": [
"## Pretty pictures\n",
"\n",
"The plotting isn't too bad once we have the solution array."
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "0ab1d7ab-598e-4a51-8c11-d000cc142853",
"metadata": {},
"outputs": [],
"source": [
"# We wrap the plotting in an annotated loop\n",
"animation = @animate for i in 1:maximum(size(x))\n",
" θ_n = x[i, 1]\n",
" x_n = l * sin(θ_n)\n",
" y_n = -l * cos(θ_n)\n",
" plot([(0, 0), (x_n, y_n)],\n",
" xlims=[-l, l], ylims=[-l, l],\n",
" marker=:circle,\n",
" legend=:none, aspect_ratio=:equal)\n",
"end every 100;"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "02342a68-8eff-4e55-a5c1-bd9a40a162ec",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"\u001b[36m\u001b[1m[ \u001b[22m\u001b[39m\u001b[36m\u001b[1mInfo: \u001b[22m\u001b[39mSaved animation to /home/jeremy/Documents/csci-3656-fall-2025/source/notebooks/pedulum.gif\n"
]
},
{
"data": {
"text/html": [
""
],
"text/plain": [
"Plots.AnimatedGif(\"/home/jeremy/Documents/csci-3656-fall-2025/source/notebooks/pedulum.gif\")"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"gif(animation, \"pedulum.gif\", fps=30)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Julia 1.11.6",
"language": "julia",
"name": "julia-1.11"
},
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
"version": "1.11.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}