{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Barrowman Method Application\n", "This code is an application of the barrowman method for determining the center of pressure for each respective component of the rocket. This method is meant to provide insight on the drag coefficient vs. Mach number for the LV4 rocket for PSAS.\n", "## References:\n", "- http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20010047838.pdf\n", "- http://rocketmime.com/rockets/Barrowman" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "ename": "NameError", "evalue": "name 'xt' is not defined", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0mMAC\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcr\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0mct\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mcr\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mct\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcr\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0mct\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# eq. 24, mean aero chord (MAC) (m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 41\u001b[0m \u001b[0mMAY\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mS\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcr\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mct\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcr\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0mct\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# eq. 27, MAC loc. from root (m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 42\u001b[0;31m \u001b[0mMAX\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mLT\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mxt\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mMAY\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0mS\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mMAC\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;36m4\u001b[0m \u001b[0;31m# eq. 30, Longitudinal loc. of MAC (m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 43\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 44\u001b[0m \u001b[0;31m# Roll Damping Coeff.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNameError\u001b[0m: name 'xt' is not defined" ] } ], "source": [ "import math as m\n", "import numpy as np\n", "\n", "# Ian B Zabel Barrowman Method Application\n", "# Equations from:\n", "# - ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20010047838.pdf\n", "# - rocketmime.com/rockets/Barrowman\n", "'''\n", "Note for all references of Ar:\n", " Ar is the reference area for the specific equation mentioned.\n", " This means all functions with Ar must be redefined \n", " with the proper reference area values.\n", " Possibly make Cna1 a general function for all possible Ar?\n", "'''\n", "# Defined Parameters\n", "# Assuming:\n", "# - fin is clipped delta, swept\n", "# - fin airfloil is symmetric hex\n", "\n", "Ln = 0.5 # Nosecone length (m)\n", "d = 0.27 # Outer diameter (m)\n", "cr = 0.25 # Fin, root chord (m)\n", "ct = 0.125 # Fin, tip chord (m)\n", "b = 0.3 # Wing span (m)\n", "S = (cr+ct)*b*0.5 # Fin area (m^2)\n", "TR = 0 # Taper ratio\n", "SMC = S/b # Standard mean chord (m)\n", "#MAC = \n", "LT = 5 # distance from nose to fin leading edge intersection with body (m)\n", "O = 10 # Sweep Angle at root tip (deg.)\n", "xr = 1 # Fin, root LE to tip LE (m)\n", "xb = 1 # Rocket nose to fin tip LE (m)\n", "N = 4 # Number of fins\n", "Cnan = 2 # Normal force for nosecone\n", "\n", "# Fin Center of Pressure\n", "# pg. 7-10, ref. 1\n", "# For fin geometry, note: Fig 3-2, pg 7\n", "\n", "MAC = (2/3)*(cr+ct-cr*ct/(cr+ct)) # eq. 24, mean aero chord (MAC) (m)\n", "MAY = (S/3)*(cr+2*ct)/(cr+ct) # eq. 27, MAC loc. from root (m)\n", "MAX = LT + xt*MAY/S + MAC/4 # eq. 30, Longitudinal loc. of MAC (m)\n", "\n", "# Roll Damping Coeff.\n", "# pg. 11, ref. 1\n", "# Note: for supersonic, ref. 1 in appendix A\n", "\n", "Cna1 = 2*m.pi*AR*(Af/Ar)/(2+m.sqrt(4+(Beta*AR/m.cos(O))**2)) # eq. 6 (dimless)\n", "Cld = N*Cna1*MAY/Lr # eq. 35 (dimless)\n", "\n", "# Body Center of Pressure\n", "# pg. 29, ref. 1\n", "\n", "Cpb = 2/(Ar*Lr)*(lo*Alo-V) # eq. 87, body Cp as f(V) (dimless)\n", "Xb = Cpb/Cna1 # eq. 88, Cp loc. from tip (m)\n", "\n", "# Total Normal Coeff.\n", "# pg. 37, ref. 1\n", "\n", "Cn_total = CnaB+CnaTB + CnaBT # eq. 106\n", "X_total = XB*CnaB+XTB*CnaTB+XBT*CnaBT # eq. 107" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "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.6.8" } }, "nbformat": 4, "nbformat_minor": 1 }