Skip to content
Permalink
master
Switch branches/tags

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?
Go to file
 
 
Cannot retrieve contributors at this time
executable file 613 lines (613 sloc) 135 KB
{
"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": 2,
"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": 3,
"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",
" derivs: array of three derivatives [v (u/m*dmdt-g-c/mv^2) -dmdt]^T\n",
" '''\n",
" a = (u/state[2])*dmdt\n",
" dstate = np.array([state[1], a, -dmdt])\n",
" return dstate"
]
},
{
"cell_type": "code",
"execution_count": 4,
"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",
" mid_state = state + rhs(state) * dt \n",
" next_state = state + rhs(mid_state) * dt\n",
" \n",
" return next_state"
]
},
{
"cell_type": "code",
"execution_count": 5,
"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",
" ################### 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",
" ############### end of iterative correction #########################\n",
" return next_state"
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"40\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f58db6d37f0>"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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5XUplgrDZrPx5vBF3DyrK/sCUkk3hldPfE7DDS1p3W6Ip8NTxdDw4a88HUKx7f3f9W493uTJk1m/fj1t2rQBrHJdY8eOZerUqTzxxBP88MMPmX1FhMGDB/Pnn39y9913M3HixMz6lImJiYwZM4aZM2dy//3353vVVRwffvght99+O5MnTyYgIACAbdu20b59exYvXszq1avp1KmT286nstMrsXKgckg4E3t8QmXn47AzdhtPbHqaowf/8GxgSpXQ008/nZnAwPql7bnnngNg5cqVpKamZm779ttvWbt2LR06dOCNN97IVmA5ODiYd999l6ioKGbNmuXWq7F69erx5ptvZiYwgGbNmjFixAgAlixZ4rZzqdw0iZUTzes15T8tnsXfYQ302Bdg55EvbyIl/qSHI1Oq+Hr37p2rLSoqisjISJKTkzl58vy/76+//hqAAQMG5FlcuVKlSrRt25a0tDQ2bNjgthi7d+9OcHDulZuaNm0KwOHDh912LpWb3k4sR/q178euo5v5+NQcADYEw9Mzrue/d6wCu/5V+wp335LzZfXr18+zPTw8nNjY2GwDJ3bv3g3Agw8+yIMPPljgcY8fd98CswXFCOjgjlKmP9nKmQf6PM7e6dtZIdatxC+C46k1/UbuvvVz0AoIyse4slxNerpVl7tLly40bNiwwL4NGhS0eHt2hS0hokvqeJYmsXLo9Zumc/OHV7M14AQAH5jd1F30H/r1f9XDkSlVeurVqwfAoEGDGD9+fJH3y3iWldfwe4B9+/aVPDhVavRXiHLIz25n8vDPqZti/edMM4YXY79j/copHo5MqdLTs2dPAObOnevSfnXq1AFg+/btubYlJiayfPnyEsemSo8msXKqaqVwXuw5O3PE4jm7jSf/eo1925d6NjClSkm/fv1o06YNK1asYOzYsZw6dSpXn927dzN5cvaC2TExMQDMmDGDv/76K7M9MTGRu+66i/3795du4KpENImVYy3qNmZC65cJdI5YPOjvxyMrxnPm6A4PR6aU+9lsNhYtWkSLFi147733aNiwIVdddRXDhg3jmmuuoUmTJlx44YU8++yz2fa78sor6d27N2fPnqV169b06NGD3r1706hRI77//ntGjRrloa9IFYUmsXKuT6vruKXO2MzFNDcH+fH4ggGkx+f+LVUpX1e3bl3Wr1/PpEmTaNWqFVu3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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"y0 = 0 # initial position\n",
"v0 = 0 # initial velocity\n",
"m0 = 0.25\n",
"dt = 0.1\n",
"N = int(4/dt)\n",
"#initialize solution array\n",
"num_heun = np.zeros([N,3])\n",
"num_rk2 = np.zeros([N,3])\n",
"\n",
"#Set intial conditions\n",
"num_heun[0,0] = y0\n",
"num_heun[0,1] = v0\n",
"num_heun[0,2] = m0\n",
"num_rk2[0,0] = y0\n",
"num_rk2[0,1] = v0\n",
"num_rk2[0,2] = m0\n",
"\n",
"for i in range(N-1):\n",
" num_heun[i+1] = heun_step(num_heun[i], simplerocket, dt)\n",
" num_rk2[i+1] = rk2_step(num_rk2[i], simplerocket, dt)\n",
"\n",
"u = 250\n",
"m_f = np.linspace(0.25,0.05, 50)\n",
"v = u*np.log(m0/m_f)\n",
"\n",
"plt.plot(num_heun[:,1], num_heun[:,2]/m0, label = 'heun')\n",
"plt.plot(num_rk2[:,1], num_rk2[:,2]/m0, label = 'rk2')\n",
"plt.plot(v, m_f/m0, label = 'numerical')\n",
"plt.xlabel('Velocity')\n",
"plt.ylabel('Mass Ratio')\n",
"plt.legend(loc = 'best')"
]
},
{
"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": 14,
"metadata": {},
"outputs": [],
"source": [
"def rocket(state,dmdt=0.05, u=250,c=0.18e-3, g = 9.81):\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",
" derivs: array of three derivatives [v (u/m*dmdt-g-c/mv^2) -dmdt]^T\n",
" '''\n",
" a = (u/state[2])*dmdt - g - (c/state[2])*(state[1]**2)\n",
" dstate = np.array([state[1], a, -dmdt])\n",
" return dstate"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"RK2 method rocket altitude 438.96527261825895\n",
"Heun method rocket altitude 425.4395272842931\n",
"RK2 method simplerocket altitude 626.6966560187369\n",
"Heun method simplerocket altitude 597.9407289097076\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 720x576 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"y0 = 0 # initial position\n",
"v0 = 0 # initial velocity\n",
"m0 = 0.25\n",
"dt = 0.1\n",
"N=41\n",
"mf = 0.05\n",
"dmdt = -0.05\n",
"tf = abs((m0-mf)/dmdt)\n",
"t = np.linspace(0, tf, N)\n",
"\n",
"#initialize solution array\n",
"num_heun_r = np.zeros([N,3])\n",
"num_rk2_r = np.zeros([N,3])\n",
"num_heun_s = np.zeros([N,3])\n",
"num_rk2_s = np.zeros([N,3])\n",
"\n",
"#Set intial conditions\n",
"num_heun_r[0,0] = y0\n",
"num_heun_r[0,1] = v0\n",
"num_heun_r[0,2] = m0\n",
"num_rk2_r[0,0] = y0\n",
"num_rk2_r[0,1] = v0\n",
"num_rk2_r[0,2] = m0\n",
"num_heun_s[0,0] = y0\n",
"num_heun_s[0,1] = v0\n",
"num_heun_s[0,2] = m0\n",
"num_rk2_s[0,0] = y0\n",
"num_rk2_s[0,1] = v0\n",
"num_rk2_s[0,2] = m0\n",
"\n",
"for i in range(N-1):\n",
" num_heun_r[i+1] = heun_step(num_heun_r[i], rocket, dt)\n",
" num_rk2_r[i+1] = rk2_step(num_rk2_r[i], rocket, dt)\n",
" num_heun_s[i+1] = heun_step(num_heun_s[i], simplerocket, dt)\n",
" num_rk2_s[i+1] = rk2_step(num_rk2_s[i], simplerocket, dt)\n",
"\n",
"u = 250\n",
"m_f = np.linspace(0.25,0.05, 100)\n",
"v = u*np.log(m0/m_f)\n",
"\n",
"plt.figure(figsize=(10,8))\n",
"plt.plot(t, num_heun_r[:,0], label = 'heun_r')\n",
"plt.plot(t, num_rk2_r[:,0], label = 'rk2_r')\n",
"plt.plot(t, num_heun_s[:,0], label = 'heun_s')\n",
"plt.plot(t, num_rk2_s[:,0], label = 'rk2_s')\n",
"plt.xlabel('Time')\n",
"plt.ylabel('Altitude')\n",
"plt.legend(loc = 'best')\n",
"print('RK2 method rocket altitude',num_rk2_r[-1,0])\n",
"print('Heun method rocket altitude',num_heun_r[-1,0])\n",
"print('RK2 method simplerocket altitude',num_rk2_s[-1,0])\n",
"print('Heun method simplerocket altitude',num_heun_s[-1,0])"
]
},
{
"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": 186,
"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",
" mf = 0.05\n",
" tf = (m0-mf)/dmdt\n",
" t = np.linspace(0,tf,1000)\n",
" dt = t[1] - t[0]\n",
" N = int(tf/dt)\n",
" \n",
" y0 = 0\n",
" v0 = 0\n",
" \n",
" num_rk2_r = np.zeros([N,3])\n",
" num_rk2_r[0,0] = y0\n",
" num_rk2_r[0,1] = v0\n",
" num_rk2_r[0,2] = m0\n",
" \n",
" for i in range(N-1):\n",
" num_rk2_r[i+1] = rk2_step(num_rk2_r[i], lambda state: rocket(state,dmdt = dmdt, u = 250), dt)\n",
" \n",
" error = 300 - num_rk2_r[-1,0]\n",
" return error"
]
},
{
"cell_type": "code",
"execution_count": 195,
"metadata": {},
"outputs": [],
"source": [
"def incsearch(func,xmin,xmax,ns=5):\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.empty(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"
]
},
{
"cell_type": "code",
"execution_count": 196,
"metadata": {},
"outputs": [],
"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"
]
},
{
"cell_type": "code",
"execution_count": 205,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of brackets: 1\n",
"\n",
"The two closest mass change rates within that interval are [0.1375] and [0.05]\n",
"(0.07904359930486034, [-5.930062457082386e-06, 1.1736896502137753e-05, 5])\n"
]
}
],
"source": [
"dmdt_inc = incsearch(f_m, 0.05, 0.4)\n",
"print('The two closest mass change rates within that interval are',dmdt_inc[0],'and',dmdt_inc[1])\n",
"dmdt_sec = mod_secant(f_m, 0.001, 0.09375)\n",
"print(dmdt_sec)"
]
},
{
"cell_type": "code",
"execution_count": 224,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f58dae3be80>"
]
},
"execution_count": 224,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAoUAAAH0CAYAAABLv1ctAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdd3hUVf7H8fdJT0hCryZSBATpEMAfKKC4CiyiKCiC1MWGuiq6KoqCdUHFirp2kKIiKhYUd1VAsSC9VyH0mtBCSJ3z+2OSIYQkpN+Z5PN6nnmGc+89N9/RBD65595zjLUWERERESnf/JwuQEREREScp1AoIiIiIgqFIiIiIqJQKCIiIiIoFIqIiIgICoUiIiIiAgQ4XYCvq1atmq1Xr57TZYiIiIic07Jlyw5ba6vntE+hsIjq1avH0qVLnS5DRERE5JyMMTty26fhYxERERFRKBQRERERhUIRERERQaFQRERERFAoFBEREREUCkVEREQEhUIRERERQaFQRERERFAoFBERERG0okmpc7lcHDlyhISEBJKSknC5XE6XJOIoPz8/QkJCCA8Pp3Llyvj56XdVEREnKBSWorS0NHbt2kVAQABVqlQhLCwMPz8/jDFOlybiCGstLpeLxMREjh49yvHjx4mOjiYgQH81iYiUNv1KXori4+MJDg4mKiqKiIgI/P39FQilXDPG4O/vT0REBFFRUQQHBxMfH+90WSIi5ZJCYSk6duwYVatWVRAUyYExhqpVq3Ls2DGnSxERKZcUCktRWloaQUFBTpch4rWCgoJIS0tzugwRkXJJobCU6SqhSO708yEi4hyFQhERERGHbTlwwukSFApFREREnLRq11GufPlnRs1Yxv5jSY7VoVAoIiIi4pC0dBePfLEGa+HbNft54ut1jtWiUCg+p169ehhjiI2NzdfxiYmJfP3114waNYqYmBiqV69OcHAw9erVY8iQIaxYsaJkCxYREcnFh7/vYN3e4wAEB/gxpmdTx2pRKJQyb+bMmfTp04c333yTw4cP07lzZ66++moCAwOZNm0a7du355133nG6TBERKWf2H0ti0n83edr/7N6I86uGOVaPQqGUeYGBgYwYMYLly5cTGxvLnDlzmD17Nps3b2bSpEmkp6dz5513snnzZqdLFRGRcuSJr9dxMiUdgIY1wrnl0gaO1qNQKGXe0KFDee+992jTps0Z240xjB49mu7du5Oamsonn3ziUIUiIlLe/LTxAN+t3e9pP3Ntc4ICnI1lCoXiVYwxnrnq3nvvPTp27EhkZCTGGI4ePZpnX2st//rXvzDGcOGFF7J9+/Z8fc3MsLh79+5C171gwQKMMXTr1o3ExETGjh1LkyZNCA0NpXXr1oU+r4iIlD2nUtJ5/MvTD5T0axdFxwZVHazITavOi1e6++67eeONN+jcuTO9e/dm8+bNeU5snJyczJAhQ5g1axadO3fmyy+/pGrV/P2AbdmyBYDatWsXue6kpCS6devGhg0b6NKlC61atSIlJaXI5xURkbLj1Z+2sPvIKQAqhQXySC/nHi7JSqFQvNK0adP4/fff6dChwzmPjY+P55prrmHRokVcf/31TJ8+nZCQkHx9nTVr1jB37lyMMfTt27eoZbN48WJat27N1q1bqVmzZpHPJyIiZcvmAyd45+dtnvYjPZtSpYJ3LIGrUOhF6j081+kSCi12wt+L9XwPPvhgvgJhbGwsPXv2ZOPGjdx7771MmjQJP7/83RWRkJDAwIEDSUtLY8SIEbRq1aqoZQPw+uuvKxCKiMhZXC7Lo1+sIc1lAWhfrzL92kU5XNVpuqdQvNJ11113zmOWLVvGxRdfzObNm3nxxRd56aWX8h0IU1NT6d+/P2vXrqV169a8+uqrRS0ZgJo1a9KpU6diOZeIiJQts5ftZknsEQAC/AzP9G2Bn5/3rPmuK4XilerWrXvOYwYMGEBaWhoTJ07kvvvuy/e509LSGDBgAPPmzaNp06Z8//33VKhQoSjleuSnbhERKX/iEpJ59rsNnvYtXRrQuGaEgxWdTaHQixT3EKwvCw0NPecxQ4YM4f3332fSpEn06NGDli1bnrNPeno6gwYN4vPPP6dhw4b88MMP1KhRozhKBvJXt4iIlD///m4jRxNTAYiqHMo/L2/kcEVn0/Cx+KzHHnuMiRMncvDgQS677DKWLl2a5/Hp6ekMHjyYWbNmUb9+fX766Sfq1KlTStWKiEh59ce2OGYvOz3t2VPXNCc0yN/BinKmUCg+7cEHH2Ty5MkcOXKE7t278+uvv+Z4nMvlYsiQIXz00UfUrVuX+fPnEx0dXcrViohIeZOS5mLsnLWeds/mtbisSfGNUBUnhULxeXfeeSfvvvsuCQkJXHXVVcyfP/+M/S6Xi+HDhzNz5kzOP/985s+fr3v/RESkVLzzyza2HkwAoEKQP49ffZHDFeVO9xRKmTBixAjCwsIYPHgwvXr14vPPP6dnz54ATJ48mQ8//BCABg0a8MQTT+R4jksuuYSRI0eWWs0iIlK27Yg7yas/bvG077/yQmpX9N57zxUKpcwYMGAAISEh3HjjjVx77bV8/PHH9O3bl/j4eM8xCxYsyPMcCoUiIlIcrLU8/uU6ktNcADSrE8mQ//PuUSpjrXW6Bp8WExNjz/WAQ6YNGzbQtKl3LGUj4q30cyIiZcHc1fu4c+ZyAIyBOaM60yq6ksNVgTFmmbU2Jqd9uqdQREREpBgdT0rlia/XedqDL67rFYHwXBQKRURERIrRi//dzMETyQBUjwjmgasudLii/NE9hSLZLFq0iHfffTffx0+ZMqXkihEREZ+yevdRPvw91tN+vPdFRIYEOlZPQSgUimSzdetWpk6dmu/jFQpFRAQgNd3FQ5+twZXxuMaljarRu2VtZ4sqAA0fi2QzbNgwrLX5fomIiAC8t2g7G/YdByAk0I9nrm2BMcbhqvJPoVBERESkiHbEneTlHzZ72vde0Zjzq4Y5WFHBKRSKiIiIFIG1lrFz1pKU6p6TsGntSP5xSX2Hqyo4hUIRERGRIpizcg+/bDkMgJ+BCde1INDf9yKW71UsIiIi4iXiT6bw1DcbPO1hner7xJyEOVEoFBERESmkp+euJ/5kCgDnVQrl/isbO1xR4XltKDTGPGuMsRmvB/I4bqAx5hdjzDFjTIIxZqkx5k5jTJ6frbD9RERERAAWbTnM58v3eNpPXduMCsG+O9ufVwYgY0x74EEgz/k+jDGvAzOAGOAX4H9AY2AyMNsY41+c/UREREQATqWk88gXazzt3i1rc3mTmg5WVHReFwqNMcHAFOAA8GUex10PjAL2Ay2ttb2ttX2BRsAGoC9wV3H1ExEREcn0yo9b2BmfCEBkSACPX32RwxUVndeFQuBJ4CLgduBYHseNyXh/yFq7JXOjtfYAcEdG8+EchoML209ERESE9XuP884v2zztR3o1pUZEiIMVFQ+vCj7GmI7A/cBMa+3XeRwXBbQDUoBPs++31i4E9gC1gIuL2k9EREQEIN1lGfP5atIz1rLrWL8KN7aPdriq4uE1odAYEwJMBeKBe85xeJuM93XW2lO5HLMk27FF6SelpF69ehhjPC8/Pz8iIyOJjo7miiuuYMyYMaxevdrpMn3SggULMMbQrVs3p0sREfFZH/4ey6rd7oHMIH8/nr3Ot5ayy4vXhELgGeBC4G5r7eFzHJs5TfiOPI7Zme3YovSTUnbVVVcxdOhQhgwZQo8ePWjYsCFLly5lwoQJtGrVij59+rB///5i+Vrjx4/HGMP48eOL5XxOyQzUsbGxTpciIlIm7Tl6iue/3+Rp33V5Qy6oHu5gRcXLK56bNsZ0Au4F5lhrP8lHl8z/AyfzOCYh4z2iGPpJKXv44YfPuqLlcrn4+uuvGT16NF9//TVdu3blt99+o2rVqs4U6WM6dOjAhg0bCAvzrbU4RUS8gbWWx+asJTElHYBGNcK5vesFDldVvBy/UmiMCQU+AI7jfio4X90y3vOcsqYY+515EmNuzZjXcOmhQ4eKciopAD8/P6655hqWLl1Kw4YN2bx5M/fff7/TZfmMsLAwmjRpwvnnn+90KSIiPufbNfv5aeNBT3vC9S0ICnA8RhUrb/g0z+KeI3C0tXZfPvucyHjP65pt5r4TWbYVtt8ZrLVvW2tjrLUx1atXz7NQKX6VK1fm5ZdfBmD69OlnDSPHxcUxduxYWrRoQXh4OBUqVKBt27a89NJLpKamnnGsMYYnnngCgCeeeOKM+xmzDyfv2LGDUaNG0aBBA4KDg6lcuTKXXXYZM2fOzLHOrMPSBw4c4LbbbiMqKorg4GDq16/Pww8/TFJS0ln9Tpw4wdtvv821115Lw4YNCQsLIzw8nDZt2vDMM89w6tSZt8NOmTIFYww7drjviqhfv/4ZnyNzOPlc9xSuW7eOIUOGEB0dTXBwMNWqVaNXr1589913OR4/bNgwjDFMmTKFrVu3MnDgQGrWrElwcDBNmjRh4sSJuFyuHPuKiPiSY4mpjPtqnad988Xn065uFQcrKhneMHzcF3ABQ40xQ7Pta5Lxfocxpjew1Vo7EojN2F43j/NmPgoUm2VbYfv5thP7YfZw6DcFInx7Ys1MvXr1okqVKsTHxzN//nxuuukmANasWUOPHj3Yu3cvUVFRdOvWDZfLxeLFixk9ejRz587l22+/JSgoCIChQ4eycuVKVq1aRatWrWjdurXna2T98+LFi+nRowdHjx6lfv369O3bl7i4OBYuXMiCBQuYN28eU6dOzfFm4127dtGuXTustXTq1Injx4+zaNEiJk6cyPr16/nqq6/OOH7VqlXcdttt1KhRgwsvvJCYmBji4uJYvHgxY8eO5auvvmLhwoWEhLinP2jYsCFDhw5l9uzZnDx5kuuvv57w8NO/92T9c26++uorbrjhBpKTk2nWrBmXXnopu3fv5vvvv+e7775j7NixPPXUUzn2XblyJffccw/VqlXjsssu48CBAyxatIiHH36Y3bt389prr53z64uIeLMJ8zZwOCEZgJqRwTzYo8k5evgoa62jL9zhy+bztTKjT3RGOxkIzeW8uzKO6ZxlW6H65fVq166dza/169fn+9hi9fV91o6v5H73cnXr1rWAnT9//jmP7d69uwXso48+aq21NjEx0davX98C9tlnn7WpqameY+Pi4uwVV1xhATtu3LgzzjNu3Lgct2c6deqUjY6OtoC99957bVpammffmjVrbI0aNSxg//Of/+R4XsCOHDnSJicne/atX7/ehoeHW8AuWrTojH67du2yP/74o01PTz9j+5EjR2yPHj0sYCdMmHBWnZn/7bZv357j55g/f74FbNeuXc/Yvm/fPhsZGWkBO2nSpLP6hIWFWcDOmzfvjH1Dhw71fL5x48adUe/ChQutn5+f9fPzszt37syxntw49nMiIpKDP/46bOs+9I3n9d2afU6XVCTAUptLpnF8+NhaW89aa3J64Z6iBuBfGdtaZ/TZBSwHgoD+2c9pjOkKROFeteT3LF+rUP181tM1YHxFWPoeWJf7fXxF9/YyIHPoPi4uDnAPo27fvp0bbriBMWPGEBBw+kJ4lSpVmDp1KoGBgbz++uuZvwDky6effsquXbuoW7cuzz33HP7+p1dBbN68uWeY+YUXXsixf3R0NK+++qrn6iRA06ZNGTx4MAA//vjjGcdHRUVx+eWX4+d35o9npUqVePXVVwGYPXt2vus/l3feeYfjx4/TqVMnRo8efca+bt26cddd7gV+cvt87du3Z9y4cWfU26VLF6666ipcLhfz588vtlpFREpTUmo6Y7IsZXflRTXp0byWgxWVLMdDYRH8O+N9ojGmYeZGY0wN4I2M5gRrbfabmgrbz/fcsxqa94eAUHc7IBRa9Id71uTdz0dk3q+WGUa+/fZbAPr3PyvvA1CnTh0aNWrE4cOH2bJlS47H5GThwoUADBo0iMDAwLP2Dx8+HGMMW7duZc+ePWftv/zy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\n",
"text/plain": [
"<Figure size 720x576 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"y0 = 0 # initial position\n",
"v0 = 0 # initial velocity\n",
"m0 = 0.25\n",
"dt = 0.1\n",
"N=41\n",
"mf = 0.05\n",
"dmdt = 0.07904359930486034\n",
"tf = abs((m0-mf)/dmdt)\n",
"t = np.linspace(0, tf, N)\n",
"num_rk2_r = np.zeros([N,3])\n",
"\n",
"num_rk2_r[0,0] = y0\n",
"num_rk2_r[0,1] = v0\n",
"num_rk2_r[0,2] = m0\n",
"\n",
"\n",
"for i in range(N-1):\n",
" num_rk2_r[i+1] = rk2_step(num_rk2_r[i], rocket, dt)\n",
"\n",
"u = 250\n",
"m_f = np.linspace(0.25,0.05, 100)\n",
"v = u*np.log(m0/m_f)\n",
"\n",
"plt.figure(figsize=(10,8))\n",
"plt.plot(t, num_rk2_r[:,0], label = 'rk2_r')\n",
"plt.plot(2.1, 300, '*', label ='Detonation')\n",
"plt.xlabel('Time')\n",
"plt.ylabel('Altitude')\n",
"plt.legend(loc = 'best')"
]
},
{
"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
}