Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
compmech-Project03/CompMech03-IVPs_project.ipynb
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
656 lines (656 sloc)
186 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# Initial Value Problems - Project\n", | |
"\n", | |
"![Initial condition of firework with FBD and sum of momentum](../images/firework.png)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We are going to end this module with a __bang__ by looking at the flight path of a firework. Shown above is the initial condition of a firework, the _Freedom Flyer_ in (a), its final height where it detonates in (b), the applied forces in the __Free Body Diagram (FBD)__ in (c), and the __momentum__ of the firework $m\\mathbf{v}$ and the propellent $dm \\mathbf{u}$ in (d). \n", | |
"\n", | |
"The resulting equation of motion is that the acceleration is proportional to the speed of the propellent and the mass rate change $\\frac{dm}{dt}$ as such\n", | |
"\n", | |
"$$\\begin{equation}\n", | |
"m\\frac{dv}{dt} = u\\frac{dm}{dt} -mg - cv^2.~~~~~~~~(1)\n", | |
"\\end{equation}$$\n", | |
"\n", | |
"If we assume that the acceleration and the propellent momentum are much greater than the forces of gravity and drag, then the equation is simplified to the conservation of momentum. A further simplification is that the speed of the propellant is constant, $u=constant$, then the equation can be integrated to obtain an analytical rocket equation solution of [Tsiolkovsky](https://www.math24.net/rocket-motion/) [1,2], \n", | |
"\n", | |
"$$\\begin{equation}\n", | |
"m\\frac{dv}{dt} = u\\frac{dm}{dt}~~~~~(2.a)\n", | |
"\\end{equation}$$\n", | |
"\n", | |
"$$\\begin{equation}\n", | |
"\\frac{m_{f}}{m_{0}}=e^{-\\Delta v / u},~~~~~(2.b) \n", | |
"\\end{equation}$$\n", | |
"\n", | |
"where $m_f$ and $m_0$ are the mass at beginning and end of flight, $u$ is the speed of the propellent, and $\\Delta v=v_{final}-v_{initial}$ is the change in speed of the rocket from beginning to end of flight. Equation 2.b only relates the final velocity to the change in mass and propellent speed. When you integrate Eqn 2.a, you will have to compare the velocity as a function of mass loss. \n", | |
"\n", | |
"Your first objective is to integrate a numerical model that converges to equation (2.b), the Tsiolkovsky equation. Next, you will add drag and gravity and compare the results _between equations (1) and (2)_. Finally, you will vary the mass change rate to achieve the desired detonation height. \n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"1. Create a `simplerocket` function that returns the velocity, $v$, the acceleration, $a$, and the mass rate change $\\frac{dm}{dt}$, as a function of the $state = [position,~velocity,~mass] = [y,~v,~m]$ using eqn (2.a). Where the mass rate change $\\frac{dm}{dt}$ and the propellent speed $u$ are constants. The average velocity of gun powder propellent used in firework rockets is $u=250$ m/s [3,4]. \n", | |
"\n", | |
"$\\frac{d~state}{dt} = f(state)$\n", | |
"\n", | |
"$\\left[\\begin{array}{c} v\\\\a\\\\ \\frac{dm}{dt} \\end{array}\\right] = \\left[\\begin{array}{c} v\\\\ \\frac{u}{m}\\frac{dm}{dt} \\\\ \\frac{dm}{dt} \\end{array}\\right]$\n", | |
"\n", | |
"Use [two integration methods](../notebooks/03_Get_Oscillations.ipynb) to integrate the `simplerocket` function, one explicit method and one implicit method. Demonstrate that the solutions converge to equation (2.b) the Tsiolkovsky equation. Use an initial state of y=0 m, v=0 m/s, and m=0.25 kg. \n", | |
"\n", | |
"Integrate the function until mass, $m_{f}=0.05~kg$, using a mass rate change of $\\frac{dm}{dt}=0.05$ kg/s. \n", | |
"\n", | |
"_Hint: your integrated solution will have a current mass that you can use to create $\\frac{m_{f}}{m_{0}}$ by dividing state[2]/(initial mass), then your plot of velocity(t) vs mass(t)/mass(0) should match Tsiolkovsky's_" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 63, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"import numpy as np\n", | |
"import matplotlib.pyplot as plt\n", | |
"%matplotlib inline\n", | |
"plt.rcParams.update({'font.size': 22})\n", | |
"plt.rcParams['lines.linewidth'] = 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 64, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def simplerocket(state,dmdt=0.05, u=250):\n", | |
" '''Computes the right-hand side of the differential equation\n", | |
" for the acceleration of a rocket, without drag or gravity, in SI units.\n", | |
" \n", | |
" Arguments\n", | |
" ---------- \n", | |
" state : array of three dependent variables [y v m]^T\n", | |
" dmdt : mass rate change of rocket in kilograms/s default set to 0.05 kg/s\n", | |
" u : speed of propellent expelled (default is 250 m/s)\n", | |
" \n", | |
" Returns\n", | |
" -------\n", | |
" dstate: array of three derivatives [v (u/m*dmdt-g-c/mv^2) -dmdt]^T\n", | |
" '''\n", | |
"\n", | |
" dstate = np.array([state[1], ((u/(state[2])*dmdt)), -dmdt])\n", | |
" return dstate" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 65, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def rk2_step(state, rhs, dt):\n", | |
" '''Update a state to the next time increment using modified Euler's method.\n", | |
" \n", | |
" Arguments\n", | |
" ---------\n", | |
" state : array of dependent variables\n", | |
" rhs : function that computes the RHS of the DiffEq\n", | |
" dt : float, time increment\n", | |
" \n", | |
" Returns\n", | |
" -------\n", | |
" next_state : array, updated after one time increment'''\n", | |
" \n", | |
" \n", | |
" mid_state = state + rhs(state) * dt*0.5 \n", | |
" next_state = state + rhs(mid_state)*dt\n", | |
" \n", | |
" return next_state" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 66, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def heun_step(state,rhs,dt,etol=0.000001,maxiters = 100):\n", | |
" '''Update a state to the next time increment using the implicit Heun's method.\n", | |
" \n", | |
" Arguments\n", | |
" ---------\n", | |
" state : array of dependent variables\n", | |
" rhs : function that computes the RHS of the DiffEq\n", | |
" dt : float, time increment\n", | |
" etol : tolerance in error for each time step corrector\n", | |
" maxiters: maximum number of iterations each time step can take\n", | |
" \n", | |
" Returns\n", | |
" -------\n", | |
" next_state : array, updated after one time increment'''\n", | |
" e=1\n", | |
" eps=np.finfo('float64').eps\n", | |
" next_state = state + rhs(state)*dt\n", | |
" \n", | |
" ### New iterative correction\n", | |
" for n in range(0,maxiters):\n", | |
" next_state_old = next_state\n", | |
" next_state = state + (rhs(state)+rhs(next_state))/2*dt\n", | |
" e=np.sum(np.abs(next_state-next_state_old)/np.abs(next_state+eps))\n", | |
" if e<etol:\n", | |
" break\n", | |
" \n", | |
" ### end of iterative correction\n", | |
" return next_state" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 67, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The number of time steps is 10000.\n", | |
"The time increment is 0.1\n" | |
] | |
} | |
], | |
"source": [ | |
"x_0 = 0 \n", | |
"v_0 = 0 \n", | |
"m_0 = 0.25 \n", | |
"m_f= .05\n", | |
"dmdt = 0.05 \n", | |
"d_t = 0.1 \n", | |
"T = 1000\n", | |
"N = round(T/d_t)\n", | |
"\n", | |
"print('The number of time steps is {}.'.format( N ))\n", | |
"print('The time increment is {}'.format( d_t ))\n", | |
"\n", | |
"t=np.linspace(0,((m_0-m_f)/dmdt),N)\n", | |
"d_t=t[1]-t[0]\n", | |
"N =int(((m_0-m_f)/dmdt)/d_t)\n", | |
"mflimit = np.linspace(m_0, m_f, N)\n", | |
"\n", | |
"num_heun = np.zeros([N,3])\n", | |
"num_rk2 = np.zeros([N,3])\n", | |
"\n", | |
"num_heun[0,0] = x_0\n", | |
"num_heun[0,1] = v_0\n", | |
"num_heun[0,2] = m_0\n", | |
"num_rk2[0,0] = x_0\n", | |
"num_rk2[0,1] = v_0\n", | |
"num_rk2[0,2] = m_0\n", | |
"\n", | |
"\n", | |
"m=mflimit/m_0\n", | |
"u=-250*np.log(m)\n", | |
"\n", | |
"for i in range(N-1):\n", | |
" num_heun[i+1] = heun_step(num_heun[i], simplerocket, d_t)\n", | |
" num_rk2[i+1] = rk2_step(num_rk2[i], simplerocket, d_t)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 68, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"Text(0, 0.5, 'Velocity [m/s]')" | |
] | |
}, | |
"execution_count": 68, | |
"metadata": {}, | |
"output_type": "execute_result" | |
}, | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA5wAAANwCAYAAABDNGUoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdeXyU1d3///dJJpN1shMW2VRQ0bsWauqNQgVFEQtqwQWLWhGtC+JSla9Yf3qnapVKbW3diwqiuKAognqLrYJb9da4tNKiYi0UkT37RjKZ8/tjJpMrk5VsM5N5PR+P3DPXdZ1zzZk23I++8znXOcZaKwAAAAAAultcuAcAAAAAAOibCJwAAAAAgB5B4AQAAAAA9AgCJwAAAACgRxA4AQAAAAA9whXuAUS73NxcO3z48HAPAwAAAADC4uOPP95jre3X0jUCZxcNHz5chYWF4R4GAAAAAISFMWZLa9eYUgsAAAAA6BEETgAAAABAjyBwAgAAAAB6BIETAAAAANAjCJwAAAAAgB5B4AQAAAAA9AgCJwAAAACgRxA4AQAAAAA9gsAJAAAAAOgRrnAPAAAAAIgmXq9XRUVFKi0tldfrDfdwgG7jcrmUkZGh7OxsuVzdExUJnAAAAEAH+Xw+bd26VYmJiRo6dKjcbreMMeEeFtBl1lrV1tZq79692rp1q4YNG6a4uK5PiGVKLQAAANBBxcXFcrlcGjhwoBITEwmb6DOMMUpMTNTAgQPlcrlUXFzcLfclcAIAAAAdVFFRoczMTIIm+ixjjDIzM1VZWdkt9yNwAgAAAB1UU1OjlJSUcA8D6FEpKSmqrq7ulnsROAEAAIAO8vl83fJcGxDJ4uLi5PP5uude3XIXAAAAIEYwnRZ9XXf+jhM4AQAAAAA9gsAJAAAAAOgRBE4AAAAAQI8gcAIAAADoFsOHD5cxRuvXrw/3UFq0efNmGWM0fPjwZtcaxr558+YufUZBQYGMMSooKOjSffoKAicAAAAA9LD169fLGKOJEyeGeyi9yhXuAQAAAABAuL3xxhuqq6vTAQcc0KX7zJs3T+ecc45yc3O7aWTRjcAJAAAAIOYdfPDB3XKf3NxcwqYDU2oBAAAA9JjZs2fLGKOlS5fqH//4h8444wz169dPaWlpGj9+vNatWxds+/LLL2vChAnKyMhQenq6TjvtNG3atKnZPZ3TUysrK7VgwQIddNBBSkxM1JAhQ3TllVdq7969+zXOtp7htNZqxYoVOuWUU5SXlye3260DDjhAkyZN0n333dekbUvPcE6cOFHHH3+8JOmtt96SMSb409en2FLhBAAAACLUqk+3adHaL/VdSbUGZSZr/smH6idjujblM1wKCwt1xRVX6KCDDtKkSZO0adMmvffeezr55JP1xhtv6LPPPtM111yjcePG6eSTT9aHH36oNWvW6KOPPtKGDRuUk5PT7J61tbWaNGmSNmzYoBNOOEE/+MEP9NZbb+m+++7T2rVr9c4776h///5dGndtba3OOussrV69WvHx8Ro7dqyGDh2qnTt3asOGDXrzzTc1b968Nu8xZcoUJSUlae3aterfv7+mTJkSvHbYYYd1aXyRjsAJAAAARKBVn27TjS98ruq6eknStpJq3fjC55IUlaHz/vvv1913361rr702eO6GG27QXXfdpYsvvlg7duzQ+vXr9aMf/UiSVFNTo8mTJ+udd97RAw88oJtvvrnZPd9//30dcsgh+vLLL4PPXpaXl2v69Ol64403dOWVV2rFihVdGvf8+fO1evVqHXLIIXrppZeaBMT6+nq98sor7d5jwYIFGjt2rNauXavDDjtMS5cu7dKYogmBEwAAAOgGwxe0Hzy6qrquXtc8+5muefazbr3v5oVTu/V+LTnmmGOahE3JH8TuuusuffXVV7rxxhuDYVOSkpKS9Itf/ELvvPOO1q1b12LglKS77767yUI/Ho9HDz30kA477DCtXLlSW7du1ZAhQzo15l27dunBBx9UXFycXnjhhWbVyPj4eJ122mmdunes4BlOAAAAAD3OOY20QVZWVnCqbEvXR44cKUn67rvvWrxnZmampk2b1uz8iBEjNHbsWPl8Pr399tudHvObb76puro6HXPMMTriiCM6fZ9YRuAEAAAA0OMGDx7c4vm0tLRWrzdcq6mpabHv8OHDW/28hmvffvvtfoyyqS1btkjq+89Z9iSm1AIAAADdoLunpYY+wylJyQnxunPG96LyGc64uLZrXe1d7yxjTI/cFx1D4AQAAAAiUEOo7Cur1PaElrYwCb02aNCgTt9/2LBhkqQvv/yy0/eIdQROAAAAIEL9ZMwBBMw2lJSU6NVXX9WPf/zjJue/+eYbffDBBzLG6Ljjjuv0/U844QQlJCTor3/9qzZu3KhRo0Z1+l5ut1uS5PV6O32PaMQznAAAAACi1nXXXaft27cHjysqKnT55Zervr5e06dP19ChQzt977y8PF122WXy+Xw644wz9NVXXzW5Xl9frzVr1nToXg0r6X799dcxFTojtsJpjLlD0o2Bw/nW2t+20m6WpMslHSkpXtIXkpZIetBa62vj/p3qF9EKMtq4aKSCkl4bCgAAANDTjjnmGNXX1+uQQw7RCSecILfbrbfeeku7d+/WwQcfrPvvv7/Ln7Fo0SL961//0quvvqojjjhCxxxzjAYPHqxdu3bp888/165du2Stbfc+w4YN05gxY/Tpp5/qyCOP1FFHHaXExEQdeuihmj9/fpfHGakissJpjPmhpP8nqc3/5owx90taLilf0juS/izpEEn3SXreGBPfnf2iTV2To/b/EQAAAADRxO12680339Sll16qv//971q9erXcbreuuOIKffDBBxowYECXPyMxMVFr1qzRE088oeOOO04bNmzQ888/ry+++EJHHnnkfoXaF154QWeffbaKior09NNP69FHH9Urr/T8/q3hZDqSxnuTMSZR0ieSMiV9KOknaqHCaYw5Q9LzknZIOs5auylwvr+kdZJGSbrGWvuH7ujXmvz8fFtYWNjJb9vNCjJkJX2W6NYz6R790+3Wqm3bFUzPBaVhHBwAAED06+pzfOge69ev1/HHH68JEyZo/fr14R5On7Q/v+vGmI+ttfktXYvECuetkg6XdJmkthJSw3TbGxpCoyRZa3fKP1VWkhYYY0K/Y2f7RYU6SVf176dX01K12Z2gd5OTGi+2OeUWAAAAALpXRIUqY8x/S7pO0lPW2lafvjXGDJZ0lKRaSc+FXrfWviVpm6QBksZ2tV80cUuaXl4ZPH4m3RO+wQAAAACIaRETOI0xSZIel1Qk6ep2mo8JvP7DWlvdSpuPQtp2pV9UOau8XCYwVfq95CRtdTnWhqLKCQAAAKCXREzglPRrSYdKutJau6edtgcGXre00eY/IW270i+qDPHWa3x1jSTJGqNn09PCPCIAAACg+0ycOFHWWp7fjAIRETiNMcdKukbSKmvtsx3o0pCgKttoUxF4dc4p7Wy/JowxlxhjCo0xhbt3725zoL3KsSjQT8vKg+9fSEtTlTGN7RaN7M1RAQAAAIhRYQ+cxphk+fe/LJM0t6PdAq/7u8RuZ/s1Ya39k7U231qb369fv67cqseMq67RkDr/xig59fX6zjmttnJXmEYFAAAAIJa42m/S4+6Qfw/MOdba7R3s01C+a2uuaMO1cse5zvaLHgWlUkGG4iTNLyqR21odU10T/r8sAAAAAIg5kRA4p0vySbrAGHNByLXDAq+XG2OmSfraWnuxpM2B88PauO+QwOtmx7nO9otKx1e1ti6S/IsHsS8nAAAAgB4UCYFT8k/tndDG9YMCP5mB408Dr0cYY5JbWXH2hyFtu9Ivyhh1cdYwAAAAAHRZ2GdaWmuHW2tNSz/yb5MiSfMD50YH+myV9In8206eFXpPY8wESYMl7ZD0vuOzOtUv6hSUtHrJ26RdZmvNAAAAAKDLwh44u+DOwOtvjDEjGk4aY/IkPRA4XGit9XVTv6hVK2lNWopmDeyvB7Kc+3BSBQUAAADQc6I2cFprn5f0oKQBkj43xqwxxrwgaZOkwyWtknRfd/WLOo7nM99JSdYv++Xq86RErfSkaZ9pox8AAAAAdJOoDZySZK2dK+lc+afJTpB0sqSvJc2TdIa1tr47+0WrCVXVGuD1T6Ytio/X66kpjRcLMlrpBQAAAABdE9GB01o7O/Ds5m/baPOUtXactTbdWptqrT3KWnt/e1NiO9svqgSqnC5JM8sqgqefSveEaUAAAAAAYklEB050nxnlFXL7/M9sbkhM1Odud+NFqpwAAADoBsOHD5cxpt2f9evXh2V8DZ8fauLEid0yrqVLl8oYo9mzZ3fpPn1JpGyLgh6W7fNpSmWlVnvSJElPZXh05+69YR4VAAAA+qKTTz5ZAwYMaPV6W9f6os2bN+vAAw/UsGHDtHnz5nAPp1cROPu6gtJgBXNWWXkwcK5NTdF1e4uV6wvMIC7IaLLQEAAAANBZCxYs0MSJE8M9jA5btmyZqqqqNHTo0C7dZ/r06Ro7dqwyMphB2IDAGUOOqK3TkTX79PekRNUZo5Xpabq0pCzcwwIAAADCqqtBs0FGRgZhMwTPcMYCR+VyVll58P0KT5rqnO0Wjey9MQEAACCmWWt1yimnyBijSy65pNl1n8+nSZMmyRijefPmBc9v3rxZxhgNHz5cXq9XCxcu1KhRo5SUlKT+/fvrggsu0H/+85/9Gkt7z3CuXbtWM2bM0KBBg+R2uzVgwACNGzdOv/nNb1RdXR1s19IznLNnz9aBBx4oSdqyZUuTZ1mHDx++X+OMRlQ4Y8zkyiot8tZrryteu1wuvZGaoimVVf6LlbvCOzgAAAA0WjSy5f99lponzd/U++PpZsYYPfHEExo9erQWL16s448/Xj/96U+D12+99Va9+eabGjNmjO6+++4W7zFz5ky9/PLLmjhxor7//e/rvffe07Jly/Taa6/p7bff1qGHHtqlMVprNXfuXD300EOSpPz8fE2YMEFFRUXauHGjFixYoJkzZ7YZHMePH6+KigqtXLlSqampOvPMM4PXcnNzuzS+aEDgjBWpeVLlLiVImlleriUZ6ZpeXqkj9u0L98gAAADQktaKAX2oSJCbm6tnnnlGEydO1KWXXqr8/HyNHDlS69at02233SaPx6MVK1YoMTGxWd8tW7aourpan376qQ4//HBJUm1trS666CI9+eSTOv/88/Xhhx92aXz33HOPHnroIfXv31+rVq3S2LFjg9estVq/fr2ysrLavMfFF1+sE088UStXrlRubq6WLl3apTFFGwJnrJi/Kbh40Hml5Tq3rFzpgW1SmmDxIAAAgM7pza3muvuzuvl//x1//PGtXsvIyFBJSUnwePz48br11lt100036eyzz9ZLL72kWbNmyefzafHixRoxYkSr97r55puDYVOS3G637rvvPq1Zs0YfffSR3nvvPY0bN65T38Hr9eqOO+6Q5J8q6wybkr9C29b3hB+BMwZ5rJVayJoAAABAd2hrW5SUlJRm52688Ua9/fbbWrt2rY488kiVlpbq0ksv1cyZM9v8nPPOO6/ZuYyMDE2bNk3Lly/X+vXrOx04CwsLtWfPHg0ePFhTpkzp1D1A4Iwtji1S2m5HlRMAAACdt7/bojQ8z3nQQQeptLRUhx9+uO655542+2RmZiozM7PFaw3PVH777bcdHkOoLVu2SFKXnwONdQROaE98nL5KcOvYmppwDwUAACB6dfcf7NsqFPTB4sCqVatUUVEhyR8Ut23bpoMPPrhL9zTGdMfQ0AVsixJrHP/PqdwY3ZSbrclDDtD1ebmqcv6DZIsUAACA8ErN27/zUWzDhg26+uqr5Xa7de6556qsrEwzZ85UbW1tq31KSkpUWtpy8N68ebMkadCgQZ0e07BhwyRJX375ZafvAQJnTEu1Vp8lJarOGJXHx2l1WmrjxT60+hkAAEBUmr8p8EhUyE8f2BLFqbKyUmef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\n", | |
"text/plain": [ | |
"<Figure size 1080x1080 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"plt.figure(figsize=(15,15));\n", | |
"plt.plot(num_heun[:,2]/m_0,num_heun[:,1],'o-',label='Implicit')\n", | |
"plt.plot(num_rk2[:,2]/m_0,num_rk2[:,1],'s-',label='Explicit')\n", | |
"plt.plot(m,u,'--',label='Analytical')\n", | |
"plt.legend();\n", | |
"plt.xlabel('Mt/M0')\n", | |
"plt.ylabel('Velocity [m/s]')" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"2. You should have a converged solution for integrating `simplerocket`. Now, create a more relastic function, `rocket` that incorporates gravity and drag and returns the velocity, $v$, the acceleration, $a$, and the mass rate change $\\frac{dm}{dt}$, as a function of the $state = [position,~velocity,~mass] = [y,~v,~m]$ using eqn (1). Where the mass rate change $\\frac{dm}{dt}$ and the propellent speed $u$ are constants. The average velocity of gun powder propellent used in firework rockets is $u=250$ m/s [3,4]. \n", | |
"\n", | |
"$\\frac{d~state}{dt} = f(state)$\n", | |
"\n", | |
"$\\left[\\begin{array}{c} v\\\\a\\\\ \\frac{dm}{dt} \\end{array}\\right] = \n", | |
"\\left[\\begin{array}{c} v\\\\ \\frac{u}{m}\\frac{dm}{dt}-g-\\frac{c}{m}v^2 \\\\ \\frac{dm}{dt} \\end{array}\\right]$\n", | |
"\n", | |
"Use [two integration methods](../notebooks/03_Get_Oscillations.ipynb) to integrate the `rocket` function, one explicit method and one implicit method. Demonstrate that the solutions converge to equation (2.b) the Tsiolkovsky equation. Use an initial state of y=0 m, v=0 m/s, and m=0.25 kg. \n", | |
"\n", | |
"Integrate the function until mass, $m_{f}=0.05~kg$, using a mass rate change of $\\frac{dm}{dt}=0.05$ kg/s, . \n", | |
"\n", | |
"Compare solutions between the `simplerocket` and `rocket` integration, what is the height reached when the mass reaches $m_{f} = 0.05~kg?$\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 69, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def rocket(state,dmdt=0.05, u=250,c=0.18e-3):\n", | |
" '''Computes the right-hand side of the differential equation\n", | |
" for the acceleration of a rocket, with drag, in SI units.\n", | |
" \n", | |
" Arguments\n", | |
" ---------- \n", | |
" state : array of three dependent variables [y v m]^T\n", | |
" dmdt : mass rate change of rocket in kilograms/s default set to 0.05 kg/s\n", | |
" u : speed of propellent expelled (default is 250 m/s)\n", | |
" c : drag constant for a rocket set to 0.18e-3 kg/m\n", | |
" Returns\n", | |
" -------\n", | |
" dstate: array of three derivatives [v (u/m*dmdt-g-c/mv^2) -dmdt]^T\n", | |
" '''\n", | |
" dstate = np.array([state[1], (u/state[2])*dmdt-9.81-(c/state[2])*state[1]**2, -dmdt])\n", | |
" return dstate" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 70, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"num_heun2 = np.zeros([N,3])\n", | |
"num_rk22 = np.zeros([N,3])\n", | |
"num_heun2[0,0] = x_0\n", | |
"num_heun2[0,1] = v_0\n", | |
"num_heun2[0,2] = m_0\n", | |
"num_rk22[0,0] = x_0\n", | |
"num_rk22[0,1] = v_0\n", | |
"num_rk22[0,2] = m_0\n", | |
"\n", | |
"\n", | |
"m=mflimit/m_0\n", | |
"u=-250*np.log(m)\n", | |
"\n", | |
"for i in range(N-1):\n", | |
" num_heun2[i+1] = heun_step(num_heun2[i], rocket, d_t)\n", | |
" num_rk22[i+1] = rk2_step(num_rk22[i], rocket, d_t)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 71, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"Text(0, 0.5, 'Velocity [m/s]')" | |
] | |
}, | |
"execution_count": 71, | |
"metadata": {}, | |
"output_type": "execute_result" | |
}, | |
{ | |
"data": { | |
"image/png": "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9/bBBx+c9X0yMjJc2Xv37n3W+W+//XYryc6aNavQjAUpyd+6pDhbSF8KcKbmAgAAABXP9E3T9eqPrxZr3wFNB2hS50lnrJv0zSQt3LGwWONHXjxSo9qOOmPdmOVjtHrP6mKNf6zTYxrYbGCx9i2JN998U5J08803KzQ0VJIUFBSkIUOG6JVXXtFbb72lrl27Fjj2H//4h9q3b+9a9vPz01NPPaUZM2ZozZo1ysjIUGBgoGt7YVNgr7vuOg0cOFDvvfeeVq5cqT59+pwz98iRIzV58mTNmjVLTz31lCpVquTa9vbbbyslJUUDBw5UvXr1zv0PoRiefvppZWZmavz48brzzjvP2t6yZcuz1t18881nrQsICNCTTz6pt956S8uWLdPx48cVFhbmlozuQOFEqRxJO6IfD/2onlE9nY4CAAAAD3Hq1Cm9//77kv43jTbPHXfcoVdeeUUffvihXn75ZVWpUuWs8X379j1rXa1atVStWjUlJSXpzz//VJ06dc7YfuTIEX366afasmWLjh49qszMTEnSli1bJEnbt28vVuGsV6+e+vfvr/nz52vevHlnvKfz1Vdz/iPC6NGjz3mc4sjKytJ///tfSdKIESNKNHb79u364osvtHPnTqWkpCg7O1uSlJmZqezsbO3cuVPt2rVzS053oHCiRNKz0vX8hue1aOciZdtsLR2wVDVDazodCwAAAB7g448/VmJiopo2baouXbqcsa1du3Zq27atNm3apPnz52v48OFnjY+MjCzwuBdccIGSkpJ08uTJM9a//vrreuCBB3TixIlCMx07dqzY+e+77z7Nnz9f06dPdxXOlStXKj4+Xq1bt1a3bt2KfayiHDlyRKmpqQoICFBMTEyxxmRmZmrUqFGaOXNmka8pLMn3PR8onCiRQL9AxSfG61TWKUnSO7+8owdiH3A4FQAAgGcY1XbUWdNcS2JS50lnTbMtiak9p5Z6rDvkvWszOTm5wGmzBw8edO1XUOH08yv+M03j4uI0cuRIBQQE6IUXXtB1112nBg0aKDQ0VMYYPfzww3r22WdL9A75Ll26qF27dtqwYYPi4uIUGxvreljQqFGl//fqDv/+9781Y8YM1atXT//617/UuXNn1apVS8HBwZKkzp0769tvvy3R9z0feEotSsQYozsv/N8c8w+2faDkU8kOJgIAAIAn2L17t5YvXy5J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\n", | |
"text/plain": [ | |
"<Figure size 1080x1080 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"plt.figure(figsize=(15,15));\n", | |
"plt.plot(num_heun2[:,2]/m_0,num_heun2[:,1],'o-',label='Implicit')\n", | |
"plt.plot(num_rk22[:,2]/m_0,num_rk22[:,1],'s-',label='Explicit')\n", | |
"plt.plot(m,u,'--',label='Analytical')\n", | |
"plt.legend();\n", | |
"plt.xlabel('Mt/M0')\n", | |
"plt.ylabel('Velocity [m/s]')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 72, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The height of the simple rocket is: 597.4795789904731 The height of the rocket is: 425.35224719755064\n" | |
] | |
} | |
], | |
"source": [ | |
"simple_rocket_height = num_heun[-1,0] \n", | |
"rocket_height = num_heun2[-1,0] \n", | |
"print('The height of the simple rocket is:',simple_rocket_height, 'The height of the rocket is:',rocket_height)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"3. Solve for the mass change rate that results in detonation at a height of 300 meters. Create a function `f_dm` that returns the final height of the firework when it reaches $m_{f}=0.05~kg$. The inputs should be \n", | |
"\n", | |
"$f_{m}= f_{m}(\\frac{dm}{dt},~parameters)$\n", | |
"\n", | |
"where $\\frac{dm}{dt}$ is the variable we are using to find a root and $parameters$ are the known values, `m0=0.25, c=0.18e-3, u=250`. When $f_{m}(\\frac{dm}{dt}) = 0$, we have found the correct root. \n", | |
"\n", | |
"Plot the height as a function of time and use a star to denote detonation at the correct height with a `'*'`-marker\n", | |
"\n", | |
"Approach the solution in two steps, use the incremental search [`incsearch`](../notebooks/04_Getting_to_the_root.ipynb) with 5-10 sub-intervals _we want to limit the number of times we call the function_. Then, use the modified secant method to find the true root of the function.\n", | |
"\n", | |
"a. Use the incremental search to find the two closest mass change rates within the interval $\\frac{dm}{dt}=0.05-0.4~kg/s.$\n", | |
"\n", | |
"b. Use the modified secant method to find the root of the function $f_{m}$.\n", | |
"\n", | |
"c. Plot your solution for the height as a function of time and indicate the detonation with a `*`-marker." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 73, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def heun_step3(state,rhs,dt,etol=0.000001,maxiters = 100):\n", | |
" '''Update a state to the next time increment using the implicit Heun's method.\n", | |
" \n", | |
" Arguments\n", | |
" ---------\n", | |
" state : array of dependent variables\n", | |
" rhs : function that computes the RHS of the DiffEq\n", | |
" dt : float, time increment\n", | |
" etol : tolerance in error for each time step corrector\n", | |
" maxiters: maximum number of iterations each time step can take\n", | |
" \n", | |
" Returns\n", | |
" -------\n", | |
" next_state : array, updated after one time increment'''\n", | |
" e=1\n", | |
" eps=np.finfo('float64').eps\n", | |
" next_state = state + rhs(state)*dt\n", | |
" \n", | |
" ###New iterative correction\n", | |
" for n in range(0,maxiters):\n", | |
" next_state_old = next_state\n", | |
" next_state = state + (rhs(state)+rhs(next_state))/2*dt\n", | |
" e=np.sum(np.abs(next_state-next_state_old)/np.abs(next_state+eps))\n", | |
" if e<etol:\n", | |
" break\n", | |
" \n", | |
" ### end of iterative correction\n", | |
" return next_state" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 74, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def f_m(dmdt,m0=0.25, c=0.18e-3, u=250):\n", | |
" ''' define a function f_m(dmdt) that returns \n", | |
" height_desired-height_predicted[-1]\n", | |
" here, the time span is based upon the value of dmdt\n", | |
" \n", | |
" arguments:\n", | |
" ---------\n", | |
" dmdt: the unknown mass change rate\n", | |
" m0: the known initial mass\n", | |
" c: the known drag in kg/m\n", | |
" u: the known speed of the propellent\n", | |
" \n", | |
" returns:\n", | |
" --------\n", | |
" error: the difference between height_desired and height_predicted[-1]\n", | |
" when f_m(dmdt)= 0, the correct mass change rate was chosen\n", | |
" '''\n", | |
" m_f= 0.05\n", | |
" height_desired=300\n", | |
" y_0 = 0 \n", | |
" v_0 = 0 \n", | |
" T_2=(m_0-m_f)/dmdt\n", | |
" t=np.linspace(0,T_2,1000)\n", | |
" dt=t[1]-t[0]\n", | |
" N =int(T_2/dt)\n", | |
" \n", | |
" num_sol=np.zeros([N,3])\n", | |
" \n", | |
" num_sol[0,0] = y_0\n", | |
" num_sol[0,1] = v_0\n", | |
" num_sol[0,2] = m0\n", | |
" \n", | |
" for i in range(N-1):\n", | |
" num_sol[i+1] = rk2_step(num_sol[i], lambda state: rocket(state, dmdt=dmdt, u=250, c=0.18e-3), dt)\n", | |
" height_predicted=num_sol[:,0]\n", | |
" error = height_desired-height_predicted[-1] \n", | |
" return error" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 75, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"number of brackets: 1\n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"def incsearch(func,xmin,xmax,ns=50):\n", | |
" '''incsearch: incremental search root locator\n", | |
" xb = incsearch(func,xmin,xmax,ns):\n", | |
" finds brackets of x that contain sign changes\n", | |
" of a function on an interval\n", | |
" arguments:\n", | |
" ---------\n", | |
" func = name of function\n", | |
" xmin, xmax = endpoints of interval\n", | |
" ns = number of subintervals (default = 50)\n", | |
" returns:\n", | |
" ---------\n", | |
" xb(k,1) is the lower bound of the kth sign change\n", | |
" xb(k,2) is the upper bound of the kth sign change\n", | |
" If no brackets found, xb = [].'''\n", | |
" x = np.linspace(xmin,xmax,ns)\n", | |
" f = np.zeros(ns)\n", | |
" for i in range(ns):\n", | |
" f[i] = func(x[i])\n", | |
" sign_f = np.sign(f)\n", | |
" delta_sign_f = sign_f[1:]-sign_f[0:-1]\n", | |
" i_zeros = np.nonzero(delta_sign_f!=0)\n", | |
" nb = len(i_zeros[0])\n", | |
" xb = np.block([[ x[i_zeros[0]+1]],[x[i_zeros[0]] ]] )\n", | |
"\n", | |
" \n", | |
" if nb==0:\n", | |
" print('no brackets found\\n')\n", | |
" print('check interval or increase ns\\n')\n", | |
" else:\n", | |
" print('number of brackets: {}\\n'.format(nb))\n", | |
" return xb\n", | |
"\n", | |
"The_change_of_mass = incsearch(f_m, 0.05, 0.4, 5)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 76, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The Root of the function is 0.07890352693388984\n" | |
] | |
} | |
], | |
"source": [ | |
"def mod_secant(func,dx,x0,es=0.0001,maxit=50):\n", | |
" '''mod_secant: Modified secant root location zeroes\n", | |
" root,[fx,ea,iter]=mod_secant(func,dfunc,xr,es,maxit,p1,p2,...):\n", | |
" uses modified secant method to find the root of func\n", | |
" arguments:\n", | |
" ----------\n", | |
" func = name of function\n", | |
" dx = perturbation fraction\n", | |
" xr = initial guess\n", | |
" es = desired relative error (default = 0.0001 )\n", | |
" maxit = maximum allowable iterations (default = 50)\n", | |
" p1,p2,... = additional parameters used by function\n", | |
" returns:\n", | |
" --------\n", | |
" root = real root\n", | |
" fx = func evaluated at root\n", | |
" ea = approximate relative error ( )\n", | |
" iter = number of iterations'''\n", | |
"\n", | |
" iter = 0;\n", | |
" xr=x0\n", | |
" for iter in range(0,maxit):\n", | |
" xrold = xr;\n", | |
" dfunc=(func(xr+dx)-func(xr))/dx;\n", | |
" xr = xr - func(xr)/dfunc;\n", | |
" if xr != 0:\n", | |
" ea = abs((xr - xrold)/xr) * 100;\n", | |
" else:\n", | |
" ea = abs((xr - xrold)/1) * 100;\n", | |
" if ea <= es:\n", | |
" break\n", | |
" return xr,[func(xr),ea,iter]\n", | |
"\n", | |
"The_root = mod_secant(f_m, 0.001,0.1)\n", | |
"print('The Root of the function is',The_root[0])" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 79, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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xx5j7dq1+5zljTfe4L333qN58+bcd999NGnSJLWte/fu3H777QDcfffdFR5Cmpuby4MPPkhubm7qtS5dunDNNdcAMHbs2B32b968OWeeeeYuF/fJycnhrrvuIisri6eeemqf8+/NE088waJFi+jZsye33normZmZqW1DhgzhxhtvBOC2226rcH737t3505/+ROPGjVOvDRo0iIsuugjY9ftJkiSpYbJw1mff/RiGnAdZOaXjrBw46Dz47pRkc+3GtvMRzz///B0K0Dbbykx5L730EgBf/vKXycjY9de5WbNmDB8+nKKiIt577739znLmmWfSpk2bXbafdtppdO7cmby8PN5///1dtg8bNqzCw1q3XcDns88+q/BzP/zwQ2677TauueYaLr30Ui655BKuuuoqGjduzMqVK/erNO/Jtu934YUXVngF20svvZQQAnPmzGHJkiW7bD/++OPJycnZ5fW9fT9JkiQ1LGlzDmcI4dvAMcBBQAegBbAO+A/wMPBY2XJtRXO/ClwJHAxkAjOBh4B7Y4wle/jMSs2rM5p3guzmULwVspqUPma3SNvzOBcvXgxA7969K9xe0YVv5s6dC8C1117Ltddeu8f3X7ly5T5n2VaydpcFoE+fPixdurTCQtajR48K57Ro0QJgl1XRjRs3cuGFF+713McNGzakzkWtir19vyZNmtClSxeWLFnCkiVL6Nq16w7b9/f7SZIkqWFKm8IJXEdp0ZwKvAXkAz2B44ETgHNDCF/auQiGEO4GrgK2AGOBwrL97wJOCCGcF2Ms3vnDKjuvzslfAcMuheGXwuSHYOPypBNVWkUXrykuLv2faOTIkbu9Eus2PXv23OfP2vbfNir6zJ33qUhFq617csMNN/Dcc88xePBgbrnlFoYPH067du1Sq49dunRh6dKle/zM/VHb30+SJEkNUzoVzvOBD2OM+eVfDCEcSGkh/CJwMaUrkNu2fZnS0rgMODbGOLvs9Y7AOOAc4Brgjp3es1Lz6qTzH9v+/Iw/JJdjH2xbRZs/f36F2+fNm7fLa927dwfgvPPO4+qrr662LN26dQO2r6DuKc/Oq3+V8cQTTwDwj3/8gyFDhuywLT8/n2XLllX5M8rb2/fbsmULS5cuBarn+0mSJKlhSptlihjjxJ3LZtnr04C7y4Yn7bT5hrLH67aVxrI5yyk9VBbg+hDCzt+zsvNUg0aOHAnA//3f/6VWLst77LHHdnnttNNOA7YXtn217WI3Fd1Ls3yW559/vsLzJl955RWWLl1Kbm4uw4YN26/Prsi2+2xuK9DlPf7447tdbdzb99idbd/v73//e4VzH3nkEWKM9OvXz8IpSZKkSqsrhWrbv4hTJ4aFELoBw4ACYJe2EWOcACwBOgEjqjpPNe/cc8+lc+fOzJkzhxtvvHGHkjVx4kTuvffeXeacffbZDBs2jAkTJnDFFVekilt5c+fO5e67797htW0lasaMGRVmOeaYYzjssMPIy8vj6quvZuvWraltS5Ys4Xvf+x4A11xzzQ5XsK2sbRfb2Tnn5MmTueGGGyqaAuz9e+zOeeedR/fu3Zk3bx433HADJSXbj1SfPn06v/jFLwD40Y9+tF/vK0mSpBqStwweOg3y6tYpcmlfOEMIvYFt98N4vtymoWWP02KMm3cz/b2d9q3KPNWwpk2b8uijj9KkSRN+/etfM3jwYL761a8yatQoRo4cybe+9a1d5mRkZPDss89y0EEHcf/999OrVy+OOeYYLrjgAk466SQGDBiQus1KeSNGjKBTp0588MEHDB8+nIsvvpjLLruMhx5KHbHN448/Trdu3fj73/9Onz59+MpXvsKZZ57JgAEDmDlzJieccELq9iFV9fOf/xyAn/70pxx66KFccMEFjBw5ksMPP5xTTjllt+efnnPOOUDpRZPOOussLrvsMi677DJmzZq1x89r0qQJ//znP2nVqhW33XYb/fv354ILLuCUU05h6NChLF++nIsuuqjCP3NJkiTVrg8WrmX9K7+BhZNgwm+TjrNf0q5whhAuDSE8HEJ4LIQwAfgE6AbcHGN8ptyu2y6vuWAPb7dwp32rMk+14Pjjj2fSpEmcddZZLFu2jGeffZa1a9dy991384c/VHwOardu3Xj33Xe56667GDp0KNOmTeOpp55i6tSpNG/enB/96Ec8/fTTO8zJzs5m9OjRfOELX2DevHk8+uijPPjgg6nbhQD069ePDz/8kGuvvZbc3Fz+9a9/MX78eA488EDuuusuXn75ZbKzs6vle5977rmMGzeOUaNGsWjRIp5//nk2bNjA7bffzt/+9rfdzjvrrLO45557GDhwIGPGjOHBBx/kwQcfTJ1/uScjRozgo48+4oorrqC4uJinn36ad955hxEjRvDoo4/yyCOP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\n", | |
"text/plain": [ | |
"<Figure size 1080x1080 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"m_f= .05\n", | |
"m_0= .25\n", | |
"y_0 = 0 \n", | |
"v_0 = 0 \n", | |
"dmdt_final=The_root[0]\n", | |
"height_desired=300\n", | |
"T2=(m_0-m_f)/dmdt_final\n", | |
"t=np.linspace(0,T2,1000)\n", | |
"dt=t[1]-t[0]\n", | |
"N =int(T2/dt)\n", | |
" \n", | |
"num_sol=np.zeros([N,3])\n", | |
"num_sol[0,0] = y_0\n", | |
"num_sol[0,1] = v_0\n", | |
"num_sol[0,2] = m_0\n", | |
" \n", | |
"for i in range(N-1):\n", | |
" num_sol[i+1] = rk2_step(num_sol[i], lambda state: rocket(state, dmdt=dmdt_final, u=250, c=0.18e-3), dt)\n", | |
" height_predicted=num_sol[:,0]\n", | |
"\n", | |
"plt.figure(figsize=(15,15));\n", | |
"plt.plot(t[:-1], height_predicted)\n", | |
"plt.plot(t[-1], height_predicted[-1], '*', label = 'detonation')\n", | |
"plt.xlabel('Time (s)')\n", | |
"plt.ylabel('Height (m)')\n", | |
"plt.legend();" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## References\n", | |
"\n", | |
"1. Math 24 _Rocket Motion_. <https://www.math24.net/rocket-motion/\\>\n", | |
"\n", | |
"2. Kasdin and Paley. _Engineering Dynamics_. [ch 6-Linear Momentum of a Multiparticle System pp234-235](https://www.jstor.org/stable/j.ctvcm4ggj.9) Princeton University Press \n", | |
"\n", | |
"3. <https://en.wikipedia.org/wiki/Specific_impulse>\n", | |
"\n", | |
"4. <https://www.apogeerockets.com/Rocket_Motors/Estes_Motors/13mm_Motors/Estes_13mm_1_4A3-3T>" | |
] | |
} | |
], | |
"metadata": { | |
"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.7.3" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 4 | |
} |