From 995d7fc370edf99bf5bda8d0143c0dc8319731dd Mon Sep 17 00:00:00 2001 From: Lucas de Oliveira Prates Date: Tue, 6 Feb 2024 19:47:28 -0300 Subject: [PATCH] ENH: Initial discussions on sensitivity analysis. --- .../dispersion_analysis/regression.ipynb | 423 ++++++++++++++++++ 1 file changed, 423 insertions(+) create mode 100644 docs/notebooks/dispersion_analysis/regression.ipynb diff --git a/docs/notebooks/dispersion_analysis/regression.ipynb b/docs/notebooks/dispersion_analysis/regression.ipynb new file mode 100644 index 000000000..1dfce0f6e --- /dev/null +++ b/docs/notebooks/dispersion_analysis/regression.ipynb @@ -0,0 +1,423 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import ast\n", + "import statsmodels.api as sm\n", + "import plotnine as pn" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "SIMULATION_INPUT_FILE_PATH = \"./dispersion_analysis_outputs/valetudo_rocket_v0.disp_inputs.txt\"\n", + "SIMULATION_OUTPUT_FILE_PATH = \"./dispersion_analysis_outputs/valetudo_rocket_v0.disp_outputs.txt\"" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "data_list = []\n", + "with open(SIMULATION_INPUT_FILE_PATH) as data_file:\n", + " for line in data_file:\n", + " data_list.append(ast.literal_eval(line))\n", + "simulation_inputs_df = pd.DataFrame(data_list)\n", + "\n", + "data_list = []\n", + "with open(SIMULATION_OUTPUT_FILE_PATH) as data_file:\n", + " for line in data_file:\n", + " data_list.append(ast.literal_eval(line))\n", + "simulation_outputs_df = pd.DataFrame(data_list)" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [], + "source": [ + "target_variable = \"impact_x\"\n", + "X = simulation_inputs_df\n", + "X = sm.add_constant(X)\n", + "y = simulation_outputs_df[target_variable]" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "outputs": [], + "source": [ + "sim_model = sm.OLS(y, X).fit()" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
rocket_massrocket_inertia_11rocket_inertia_33motor_dry_massmotor_inertia_11motor_inertia_33motor_dry_mass_positionimpulseburn_timenozzle_radius...fin_root_chordfin_tip_chordfin_distance_to_CMinclinationheadingrail_lengthensemble_membercd_s_droguelag_reclag_se
07.2569573.7089790.0069891.0016763.6393890.0070830.5016991423.9069365.2113480.021371...0.0576480.017533-0.90512584.05078052.9542595.69953220.3275900.3955630.428953
17.2559693.7016740.0070960.9998143.6590630.0070240.5010811355.4493814.7429440.022224...0.0579340.017597-0.90746086.58332555.3998415.70011180.3807280.8452750.818287
27.2554933.6694650.0071160.9997133.6330040.0070660.4990291382.8607854.6443850.022167...0.0585780.018415-0.90618784.98628455.3016425.70037580.4660851.5302480.916685
37.2575253.6955060.0071010.9985703.6942790.0069540.5020661404.2348226.0167410.021933...0.0579860.017971-0.90539385.95930751.5627255.69937340.2409770.3693481.025470
47.2557793.7077580.0070361.0011423.7033940.0069280.5007931451.4417907.6430880.022864...0.0584270.018053-0.90770185.28925354.2562385.70049320.4440360.7480390.772641
\n", + "

5 rows × 34 columns

\n", + "
" + ], + "text/plain": [ + " rocket_mass rocket_inertia_11 rocket_inertia_33 motor_dry_mass \\\n", + "0 7.256957 3.708979 0.006989 1.001676 \n", + "1 7.255969 3.701674 0.007096 0.999814 \n", + "2 7.255493 3.669465 0.007116 0.999713 \n", + "3 7.257525 3.695506 0.007101 0.998570 \n", + "4 7.255779 3.707758 0.007036 1.001142 \n", + "\n", + " motor_inertia_11 motor_inertia_33 motor_dry_mass_position impulse \\\n", + "0 3.639389 0.007083 0.501699 1423.906936 \n", + "1 3.659063 0.007024 0.501081 1355.449381 \n", + "2 3.633004 0.007066 0.499029 1382.860785 \n", + "3 3.694279 0.006954 0.502066 1404.234822 \n", + "4 3.703394 0.006928 0.500793 1451.441790 \n", + "\n", + " burn_time nozzle_radius ... fin_root_chord fin_tip_chord \\\n", + "0 5.211348 0.021371 ... 0.057648 0.017533 \n", + "1 4.742944 0.022224 ... 0.057934 0.017597 \n", + "2 4.644385 0.022167 ... 0.058578 0.018415 \n", + "3 6.016741 0.021933 ... 0.057986 0.017971 \n", + "4 7.643088 0.022864 ... 0.058427 0.018053 \n", + "\n", + " fin_distance_to_CM inclination heading rail_length ensemble_member \\\n", + "0 -0.905125 84.050780 52.954259 5.699532 2 \n", + "1 -0.907460 86.583325 55.399841 5.700111 8 \n", + "2 -0.906187 84.986284 55.301642 5.700375 8 \n", + "3 -0.905393 85.959307 51.562725 5.699373 4 \n", + "4 -0.907701 85.289253 54.256238 5.700493 2 \n", + "\n", + " cd_s_drogue lag_rec lag_se \n", + "0 0.327590 0.395563 0.428953 \n", + "1 0.380728 0.845275 0.818287 \n", + "2 0.466085 1.530248 0.916685 \n", + "3 0.240977 0.369348 1.025470 \n", + "4 0.444036 0.748039 0.772641 \n", + "\n", + "[5 rows x 34 columns]" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "simulation_inputs_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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1tWcOXO0YMGCdA878CTZsmVT06ZNra739/dXu3bt9Nlnn6V4KuPD2rt3r1auXJluncVi0QcffJDuagtHMpvNmj17th577LE065o2baq33nrLTqkyRtGiRbV+/Xp16dJFmTNnfmAsKChIw4cP15w5c5xu30bAXmzd5y1fvnwOa145s2effdamw7qee+45A9Okbt26dVbXWiwWp/8AC56ldevW6TYB/f39NWPGDOXNm9dOqZwDDUAAAFxEUFCQRo4cqaNHj+rixYs6ffq0FixYoIYNG8rLix/p/9WvXz+r/7ncuHFDv//+u8aPH6+KFSvqq6++ypBm3MyZM62uPXz4sNOfRlekSBGtX79ePXr0SLbCr0iRIho7dqymT59u0+pLZxEUFKQvvvhCBw4c0Ny5c/X9999r+fLl2rNnj4YOHWrzidyAO8mfP7/q1KljdX2XLl0MTOO68uTJY9M+oo7a1zciIsLQesBIJpNJo0aN0tdff62nnnrqgTEvLy81atRIq1at0gsvvOCghI7jer+dAQAAWKFSpUqaOHGihgwZosTERKvvi4uL0/vvv6/ExEQNHDjwkTLs37/f5voqVao80nsaLV++fPrkk080atQo7d69W9HR0cqbN68qVarkFo3oHDlyqEGDBo6OATidgQMHasuWLel+OJI1a1YOpErD8OHDtWXLlnQPnmrdurWqV69up1QPypEjh0312bNnNyYI8JBMJpPat2+vdu3aad++fTp79qx8fHz09NNPp/skgztz/d/SAAAAUtGlSxctXbpUtWrVsvneDz/88JE3YLd1DyxX2jMra9asql27tpo0aaJnn33WLZp/AFJXs2ZNffTRR2nW+Pv7a+bMmcqfP7+dUrmeYsWKaenSpWk2Idq1a6fJkyc7bF9fWw5x8vLyUsOGDQ1MAzw8k8mkihUrqlWrVmratKlHN/8kGoAAAMDN1axZU0uWLNHOnTv16aefWn1fQkKCZs2a9UjvXaxYMZvqixcv/kjvBwBGeuWVV7R48eJkj875+PioQ4cOWrduHafRW6Fs2bLavn27vvrqK9WsWVNFixbVE088oc6dO2vjxo365ptvHLrnaIcOHazeV7hhw4YqVKiQwYkAZAQeAQYAAB6haNGi+vnnn226Z+vWrXr77bcf+j27dOmiNWvWWFWbL18+m/bYAqR/G9WbNm3Sb7/9ppiY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xXz58qlRo0aG5rH14AFb6x0pPj5eo0eP1g8//KD4+PgHxiZOnKgOHTro448/NmzPK3i2kydP6ssvv9Ty5ct1584dSf/uF9awYUMNGDAg2cohk8mkTz75RDly5NC3336ru3fvJnvNVq1a6fPPP7f7n9m9e/daXZuYmKj9+/erQIECBiaCkTJlyqSBAweqX79+2rNnj0JDQxUQEKBKlSrJ398/qW7o0KH6+eefk/58p6Zs2bJq0aKF0bEBAAahAQgAwEPImzevBg4cqM8++yzd2lGjRj3y/rjpKViwoE31hQoVMihJxrJYLOrfv7+WLVuW4nhiYqLmz5+vK1euaO7cuYb/c4Zn+fPPP9W5c2fdunXrgeuJiYlau3atNmzYoEmTJqlDhw4PjHt5eWnkyJHq27evFixYoIMHDyohIUHFixdXp06dVLx4cXt+GUlSakamxZoPOOD8vL29VaVKlVTHy5Ytq1mzZqlHjx66fft2ijVlypTR/Pnz5evra1RMAIDBeAQYAICHNGzYMPXt2zfVcS8vL3344Ydq37694VlatGihzJkzW13/34aFs1q9enWqzb/7/fLLL498MjNwvytXrig4ODhZ8+9+CQkJGjRoUKqP1OfJk0cDBgzQ999/r+nTp+vdd991WPNP+vfQESPr4bpq166tP/74Q4MGDVLevHmTrpcrV04TJ07U2rVrFRQU5MCEAIBHRQMQAICH5OXlpbFjx2r9+vVq3769cufOLV9fXwUFBal37976/fff1bt3b7tkyZEjhzp37mxVbdmyZfX8888bnChjTJ8+3eraH374wapTkAFrzJgxQxEREenWJSQk6Ouvv7ZDokfXqVMnq2vLlCnj0gc+wHYFChTQiBEj9Pfff+v8+fO6fPmyNm/erK5du9r0ARMAwDnxCDAAAI+oUqVKhh/yYY333ntPx44d06+//ppqzWOPPaYZM2bY9eTRhxUVFWXViaX3/P3337pw4YLLPN4M52WxWDR37lyr69etW6fr168rT548BqZ6dB07dtQXX3yh69evp1s7YMAAmUwmO6SCM2JPVQBwP87/2z8AALCKn5+f5s+fr7feeitZI8LPz0+dO3fWunXrXOaxvqioKJvviYyMNCAJPE10dLSuXLlidX1iYqLOnj1rYKKMkS1bNs2ZM0fZs2dPs27gwIF66aWX7JQKAADYAysAAQBw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166pRIkSioiI0D333COLxeLo9gAAALJFAAgAAADYYO3atRo1apT+/vvvTO9//fXXatCggb788ktVr17dQd0BAADkjEeAAQAAgFtYuXKlBgwYkCX8S7d371716NFDR48eLeDOAAAAbo0AEAAAAMhFQkKCnnrqKaWmpuZad+nSJb3wwgsF1BUAAIDtCAABAACAXERHRysmJsam2o0bN+qPP/6wc0cAAAB5QwAIAAAA5GL58uV5ql+2bJmdOgEAALg9BIAAAABALmJjY/NUf+XKFTt1AgAAcHsIAAEAAIBcBAUF5ak+MDDQTp0AAADcHgJAAAAAIBedO3fOU33Xrl3t1AkAAMDtIQAEAAAActGrVy8VL17cpto2bdqoRo0adu4IAAAgbwgAAQAAgFz4+Pho4sSJ8vDwyLWuRIkS+vDDDwuoKxQ28fHxmjlzpvr166fWrVurc+fOeuutt3T8+HFHtwYAAAEgAAAAcCsdOnTQzJkzVb58+WyP33333frpp59UtWrVAu4MhcH27dt1zz336Nlnn9X69ev1+++/a/fu3frss8/UuHFjvffeezIMw9FtAgBcWO4/xgQAAAAgSbr33nv1888/a+XKlVq7dq2uXbum4sWLq1evXmrYsKEsFoujW4QDHDhwQP3791d8fHy2xw3D0McffyyLxaIXX3yxgLsDAOAmAkAAAADARh4eHuratSsbfcDq1VdfzTH8y+iTTz7RgAEDVLFixQLoCgCAzHgEGAAAAABuwx9//KEtW7bYVJuWlqapU6fauSMAALJHAAgAAAAAt2HTpk15qt+8ebOdOgEAIHcEgAAAAMAtXLt2TSdOnNDly5cd3QoKkYSEBLvWAwCQXwgAAQAAgGwYhqEVK1bo/vvvV5UqVdSoUSOFhoaqa9eumj17tlJTUx3dIhysVKlSeaovWbKknToBACB3bAICAAAA/INhGHrxxRc1efLkLMd27typnTt3auHChfr222/l7e3tgA5RGHTp0kW+vr42bQIiSf369bNzRwAAZI8ZgAAAAMA/TJgwIdvwL6Nly5Zp7NixBdQRCqOAgABFRkbaVFuqVClFRETYuSMAALJHAAgAAABkcO3aNX322Wc21c6aNUvHjx+3c0cozF577TU1adIk1xo/Pz9NmTJFRYoUKaCuAADIjAAQAAAAyGDBggW6evWqTbWGYWjGjBl27giF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sWIaP358jmv4nThxQq+88oquXLki6eZafTdu3LA+09+jRw899thjd/w5L168eMfXcDbpU29jY2OZyl6IpU9lT01NZSp7IcZ4KvwYS86BseQcGE/OIeN4SklJ0f79+3XkyBG5ubmpbt26zPorBBhLzoF/m5wD48k5FIbxdDuPALvElLPg4GCNHTtW+/fv16FDhxQbG6u4uDh5enqqXLlyqlGjhsLDw9WwYcMcr/H444+rfv36WrJkiY4ePWqd9dekSRP169dPgYGBOZ5bsWJFffbZZ5o7d6527Nihixcvys/PT1WrVlX37t3VrFkze3xsAAAAwDQsFovq169/y3WzAQBAVi4RAHp6eqpVq1Zq1arVHV2nefPmat68+W2dW6xYMT3yyCN65JFH7qgHAAAAAAAAIC9cIgAEgMLq8OHDOnnypLy9vRUWFqZixYo5uiUAAAAAgMkQAAKAAyxcuFCff/65du/ebX2vSJEi6tWrl55//nlVrlzZcc0BAAAAAEyFABAACtj48eM1YcKELO/fuHFDP/zwg5YvX67Zs2ezxlE+u3TpkqKiovTrr7/KMAzVqFFDDzzwgEqXLu3o1gAAAADArggAAaAAzZ07N9vwL6PY2FgNHDhQW7duVUBAQME0ZmKpqakaP368vvnmGyUmJmY69t577+mhhx7S22+/LS8vLwd1CAAAAAD25eboBgDAVRiGof/+97821Z47d05RUVF27sj8DMPQs88+q88++yxL+CdJKSkpmjx5soYPH67U1FQHdAgAAAAA9kcACAAFZP/+/Tp48KDN9TNnzrRjN65h2bJl+vHHH29Zt3TpUpvqAAAAAMAZEQACQAH566+/8lR//Phx+zTiQr777juba7/99lsZhmHHbgAAAADAMQgAAaCAeHjkbdlVT09PO3XiGq5du6b169fbXH/gwAGdPn3ajh0BAAAAgGMQAAJAAalfv74sFovN9Q0aNLBfMy7g6tWreT7n8uXL+d8IAAAAADgYASAAFJDy5curQ4cONtcPHTrUfs24gNvZQblYsWL53wgAAAAAOBgBIAAUoBdffFE+Pj63rGvZsmWewkJk5e/vr/DwcJvr69Wrp7Jly9qxIwAAAABwDAJAAChA9evX17Rp0+Tv759jTfPmzTV16lS5u7sXYGfm9Mgjj9hcO3z48Dw9og0AAAAAzoIAEAAKWNu2bbV161aNGTNGFSpUkMVikbe3t1q2bKlvv/1W8+bNU2BgoKPbNIUuXbrowQcfvGVd165d9cADDxRARwAAAABQ8PK2JSUAIF+ULl1aY8eO1dixY2UYBjPP7MRisWjChAkKCQnRN998o8TExEzHPTw89NBDD+ntt99mxiUAAAAA0yIABAAHI/yzL3d3d73++ut68sknFRUVpYMHD8owDIWGhuqBBx5Q6dKlHd0iAAAAANgVASAAwCUUL15cI0eOdHQbAAAAAFDgWAMQAAAAAAAAMDECQAAAAAAAAMDECAABAAAAAAAAEyMABAAAAAAAAEyMABAAAAAAAAAwMQJAAAAAAAAAwMQIAAEAAAAAAAATIwAEAAAAAAAATIwAEAAAAAAAADAxAkAAAAAAAADAxAgAAQAAAAAAABMjAAQAAAAAAABMjAAQAAAAAAAAMDECQAAAAAAAAMDECAABAAAAAAAAEyMABAAAAAAAAEyMABAAAAAAAAAwMQJAAAAAAAAAwMQIAAEAAAAAAAAT83B0AwCA/JOamqpVq1Zp7dq1io+PV4kSJdS7d2/Vq1fP0a0BAAAAAByEABAATGLNmjV64YUXdPLkyUzvf/bZZ2revLk+//xzVahQwUHdAQAAAAAchUeAAcAEVqxYocjIyCzhX7qtW7eqe/fu+vvvvwu4MwAAAACAoxEAAoCTu379up588kmlpqbmWnfmzBmNHTu2gLoCAAAAABQWBIAA4OTmzZuny5cv21S7cuVKHT9+3L4NAQAAAAAKFQJAAHByixcvtrnWMAwtW7bMjt0AAAAAAAobAkAAcHK2zv673XoAAAAAgHNjF2AAcHKBgYF2rQcAAIB9JCQkKDo6WsuXL1dcXJyCgoLUvXt3de/eXd7e3o5uD4CJEAACgJPr3Lmz1qxZY3N9x44d7dgNAAAAbLFixQo9/fTTiomJyfT+woULVbJkSX311Vdq3bq1g7oDYDY8AgwATu7+++9XQECATbX33nuvqlWrZueOnMu+ffv02Wef6f3339fkyZN1/vx5R7cEAABMbuXKlRo8eHCW8C/d+fPn9eCDD2rLli0F3BkAs2IGIAA4uYCAAE2YMEHDhw+XYRg51oWEhOiDDz4owM4Kt7179+qll17Srl27Mr3/yiuvqHfv3nrnnXd4XBoAAOS7pKQkjRo1SqmpqTbVbd26VW5uzN0BcGf4WwQATOC+++7TlClTFBISku3x+vXra9GiRapcuXLBNlZIbdu2TREREVnCP0lKTk5WVFSU7rvvPl25csUB3QEAADNbsmSJzp07Z1Pt0aNHtW7dOvs2BMAlMAMQAEyiW7du6tChgxYvXqx169bp+vXrCgkJUe/evdW4cWNZLBZHt1go3LhxQ4888oji4+NzrTt48KBeffVVffbZZwXUGQAAcAV5Wbs5vb5du3Z26gaAqyAABAAT8fLyUu/evdW7d29Ht1JoLViwwOZ1/ubNm6d///vfKlGihJ27uik1NVWbNm3S4cOHZbFYFBYWpqZNmxLeAgBgIlevXs1T/bVr1+zUCQBXQgAIAHAp0dHRNtcmJSVp6dKleuihh+zXkCTDMDRjxgxNmDBBx48fz3SsZs2aeumll9SjRw+79gAAAApGXn+wGBwcbKdOALgS1gAEALiUCxcu5Km+IHYFfueddzRq1Kgs4Z8k/fHHHxo2bJi+/fZbu/cBAADs77777stTfUREhJ06AeBKCAABAC7Fz8/PrvV5tWLFCk2YMOGWdS+//LJ2795t114AAID9tWrVSrVr17aptnHjxqpfv76dOwLgCggAAQAuJTw8PE/1bdu2tU8j/9/XX39tU51hGJo4caJdewEAAPZnsVj01VdfKTAwMNe6kJAQff755wXUFQCzIwAEALiUQYMGycvLy6baFi1aqFatWnbr5dy5c9qwYYPN9VFRUUpOTrZbP4VBamqqVq5cqdGjR2vYsGEaNWqUli9frtTUVEe3BgBAvqlTp44WL16sJk2aZHu8devWWrJkiapUqVLAnQEwKzYBAQC4lJIlS+q1117Ta6+9lmudv7+/3nnnHbv2cu7cuTzV37hxQzExMQW2K3FB27Vrl0aOHKljx45len/69OmqWLGiJk6cqObNmzuoOwAA8lfNmjW1ePFiHThwQCtWrFBcXJyKFSumbt26qWbNmo5uD4DJEAACAFzO448/LovForfeektJSUlZjpcrV06TJk1SWFiYXfvw9fUtkHOcwe7du9WnTx/Fx8dne/zEiRO6//77NXv2bEJAAICp1KtXT/Xq1XN0GwBMjgAQAOCSRowYob59+2rmzJnasGGDrl+/rpIlS6p3797q1q2bzY8J34nKlSurTJkyOnPmjE31DRs2VEBAgOkehzUMQ08//XSO4V+6xMREPf3009q+fbvc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nBkBIAAAAAqd6OhoTZ06VZI0dOhQAkAAAIA7wCPAAAAAAAAAgIkRAAIAAAAAAAAmRgAIAAAAAAAAmBgBIAAAQD5at26ddTfdN954Q5J0+PBhPf/88woLC1OxYsUyHUt3+PBhjR49WvXr11dQUJCKFCmi8uXLq2fPnpoyZYpSU1Nt7uHAgQN6/vnn1ahRI4WEhMjT01OBgYG6++67NXLkSC1btkxpaWm39flSUlL08MMPWz9j06ZNdfHixSx1Z8+e1VtvvaVWrVqpdOnS8vLyUokSJdSiRQu9/fbbio2Nzfb6Q4cOlcVisa7/J0lVqlSx3s8eOxVPmTLFet0pU6ZIkvbu3atHHnlEVatWlY+Pj8qXL6/evXtrx44dWc5funSpIiIiVKlSJXl7e6t8+fIaNmyYjh07dst7Hzp0SJ988ol69+6t0NBQ+fv7y8vLSyVLllSbNm309ttvZ/v7m52NGzfq4YcfVu3atRUQECBPT0+VLFlSderUUZcuXTRu3DgdOnQox/MXL16sAQMGqHr16vLz85O3t7fKlCmjevXqKSIiQh999JFOnTplUy8AAKCQMQAAAJBv1q5da0gyJBn//ve/je+//97w8fGxvpfxWLpx48YZHh4eWWoy/i8sLMw4cuRIrveOj483hg0bZlgsllyvJcmIjo7Ocn76sfDw8Gyvf/36daNbt27Wum7duhnXr1/PUvfpp58avr6+ud4/KCjIWLZsWZZzhwwZcsvec+vxdkyePNl63cmTJxuff/654enpme193dzcjGnTphmGYRhJSUnGI488kmOPRYsWNXbs2JHjfadOnWrTZy1atKjx008/5Xid1NRUY8SIETZdq3v37lnOj4+PN3r27GnT+U8++eSd/4YDAIACxy7AAAAAdrJlyxaNHz9eFotFQ4YMUevWreXn56cjR46oYsWKkqTXXntNb7/9tiTJYrGob9++6tSpkwICAvTHH39o8uTJOn78uH799Ve1bNlSu3fvVtmyZbPcKzExUR07dtTmzZslSR4eHurTp4/Cw8MVEhKi+Ph4/f7771q5cqV27dolwzDy9FkuXryo7t27W2fADR06VP/73//k4ZH528lXX31V48ePlyT5+fmpX79+at68uYoXL66YmBitXr1ac+fOVWxsrHr06KE1a9aodevW1vOfeeYZ9erVS//973+1du1aSdLXX3+t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KFDMAAQAAHCAMmXKWF8fPnz4lvWHDh2yvi5btmymYxkfNc6v9fRGjRqlzz77TBaLRVeuXFHHjh21devWHOsz9nDy5Ml86cHMVqxYYX39zjvv5Bj+SdKxY8dsvq6Hh4eaNGmi5557TlFRUTp//rxmz56twMBASdKaNWs0f/78HM/39vZWmzZt9OKLL2rRokW6cOGCvv76a2sIOWXKFO3atcvmfgAAQOFAAAgAAOAADRo0sK4Rt2nTJsXHx+dan3Gn3KZNm2Y61qZNG+vrvKwndytPPfWUvvzyS1ksFsXFxalTp06ZNhzJKDw83Pp66dKld3zvjDPU0h9HNpOzZ89aX1evXj3X2jv5/XR3d1e/fv30xhtvWN/L6WuYnSJFiuixxx7LtAt1Xs4HAACFAwEgAACAA3h5ealHjx6Sbj62+8UXX+RYGxcXpy+//NL66759+2Y6/sADD1h3bP3mm2909OjRfOtzxIgR+vbbb+Xm5qZr166pa9euWrduXZa6Ro0aqW7dupKkxYsXa/PmzXd034yPFNvyiLSzybju45EjR3Ks27p1a74EqlWqVLG+TklJKfDzAQCAYxEAAgAAOMiYMWOsM91ee+21TLP80sXHxysyMtK682+3bt2y7Mhbvnx5jRw5UpKsId0ff/yR431//fVXmx47Tvfwww9r8uTJcnd31/Xr19WtWzetWrUqU43FYtF7770n6eaMvV69emWp+afTp0/rjTfe0P79+7Mcyxg47d692+ZenUXjxo2tr998881sdwrev3+/+vXrl+sMyDNnzuj555/Xn3/+mWNNSkqK/ve//1l/3aBBA+vrPXv26M0338yys3RG169f17Rp07I9HwAAOAc2AQEAAHCQpk2b6uWXX9bbb7+tGzduqGvXrurXr586deqkgIAAHTp0SJMmTdJff/0lSSpVqlSmICej999/Xz///LO2bNmiQ4cOqV69eurdu7fCw8NVsmRJxcfH69ChQ1q9erW2b9+uefPmKTQ01OZeBw8eLE9PTz300ENKSEhQz549FR0drc6dO1trunfvrrfeekuvv/66Ll68qI4dO6p169bq0qWLKleuLE9PT12+fFl//PGHtmzZom3btskwDHXo0CHL/TK+N3bsWJ0/f141a9a0rkUXHByc66YkhV2fPn1UsWJFnThxQjt37lTNmjU1fPhwVa9eXfHx8Vq/fr1++OEHJScna8iQIZo6dWq210lMTNQnn3yiTz75RI0aNVLr1q1Vu3ZtBQUF6dq1azp69KhmzZplDQirVq2qBx980Hr+lStX9MYbb+itt95SixYt1KJFC9WsWVNFixbV5cuX9fvvv2vWrFk6ffq0JKlZs2Zq166d/X+DAABAviIABAAAcKBx48bJy8tLb731llJSUjR79mzNnj07S12dOnW0cOHCLBuApPP29tbKlSs1YsQITZ8+XcnJyYqKilJUVFS29f/cBdYWAwYMkIeHhyIjI3Xjxg1FRERo7ty56t69u7XmtddeU6VKlfTcc88pNjZWGzduzHXNuICAAOsGFRnVq1dPgwYN0vTp03Xu3DmNGTMm0/Hw8PBsH0V2Ft7e3po3b566dOmiixcv6sSJE3r99dcz1bi7u+u9995T06ZNcwwALRaL9fWuXbty3aCjbt26io6OzvR4dfr5aWlp2rRpkzZt2pTj+W3atNGcOXNu688OAABwLP71BgAAcLDXXntNv/76q0aNGqV69eopMDBQXl5eKlu2rLp3767Jkydr3759qlatWq7X8fX11ffff6+dO3fqySefVFhYmAIDA+Xu7q5ixYqpYcOGeuKJJ7R69Wr17Nnztnq9//77FRUVJU9PTyUmJqpPnz5ZNh4ZPHiwjh8/rs8++0w9evRQhQoV5OPjI09PT5UoUUJNmjTR448/rtmzZ+vs2bOqV69etveaOnWq/ve//6ldu3YqWbKkdfafWTRq1Ej79+/X888/r5o1a6pIkSLy9/dXjRo1NGLECO3YsUMvvvhirteoVKmS/vzzT33xxRcaNGiQ7rrrLhUrVkzu7u7y8fFRlSpV1KdPH82YMUN79uzJ8mcoPDxcBw4c0CeffKL7779fderUUdGiReXu7i4/Pz/VqFFDkZGRWrhwodavX6+QkBB7/pYAAAA7sRhm3FYNAAAAAAAAgCRmAAIAAAAAAACmRgAIAAAAAAAAmBgBIAAAAAAAAGBi7AIMAAAAp7Rp0yZdvHjxts/v1KmTfH1987EjAACAwolNQAAAAOCU2rZtq/Xr19/2+ceOHVPlypXzryEAAIBCikeAAQAAAAAAABNjBiAAAAAAAABgYswABAAAAAAAAEyMABAAAAAAAAAwMQJAAAAAAAAAwMQIAAEAAAAAAAATIwAEAAAAAAAATIwAEAAAAAAAADAxAkAAAAAAAADAxAgAAQAAAAAAABMjAAQAAAAAAABMjAAQAAAAAAAAMDECQAAAAAAAAMDECAABAAAAAAAAEyMABAAAAAAAAEyMABAAAAAAAAAwMQJAAAAAAAAAwMQIAAEAAAAAAAATIwAEAAAAAAAATIwAEAAAAAAAADAxAkAAAAAAAADAxAgAAQAAAAAAABMjAAQAAAAAAABMjAAQAAAAAAAAMDECQAAAAAAAAMDECAABAAAAAAAAEyMABAAAAAAAAEzs/wEI+3l5OctHUwAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pn.ggplot(pn.aes(x = simulation_inputs_df[\"rocket_mass\"], y = y)) + \\\n", + " pn.geom_point()" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " OLS Regression Results \n", + "==============================================================================\n", + "Dep. Variable: impact_x R-squared: 0.887\n", + "Model: OLS Adj. R-squared: 0.827\n", + "Method: Least Squares F-statistic: 14.93\n", + "Date: Tue, 06 Feb 2024 Prob (F-statistic): 8.22e-20\n", + "Time: 19:03:07 Log-Likelihood: -424.60\n", + "No. Observations: 100 AIC: 919.2\n", + "Df Residuals: 65 BIC: 1010.\n", + "Df Model: 34 \n", + "Covariance Type: nonrobust \n", + "==================================================================================================\n", + " coef std err t P>|t| [0.025 0.975]\n", + "--------------------------------------------------------------------------------------------------\n", + "const -8.8e+04 3.46e+04 -2.540 0.013 -1.57e+05 -1.88e+04\n", + "rocket_mass 4431.5346 2942.725 1.506 0.137 -1445.493 1.03e+04\n", + "rocket_inertia_11 29.2991 66.874 0.438 0.663 -104.258 162.857\n", + "rocket_inertia_33 5.019e+04 4.15e+04 1.211 0.230 -3.26e+04 1.33e+05\n", + "motor_dry_mass -1579.1338 2597.728 -0.608 0.545 -6767.155 3608.887\n", + "motor_inertia_11 -14.6644 69.680 -0.210 0.834 -153.825 124.496\n", + "motor_inertia_33 2.123e+04 3.7e+04 0.575 0.568 -5.26e+04 9.5e+04\n", + "motor_dry_mass_position -2393.9549 2501.591 -0.957 0.342 -7389.978 2602.068\n", + "impulse 0.6008 0.068 8.867 0.000 0.466 0.736\n", + "burn_time -13.0106 2.873 -4.529 0.000 -18.748 -7.273\n", + "nozzle_radius 9813.4814 4505.706 2.178 0.033 814.964 1.88e+04\n", + "throat_radius 5753.5187 5552.819 1.036 0.304 -5336.228 1.68e+04\n", + "grain_separation 4116.2884 2763.744 1.489 0.141 -1403.289 9635.866\n", + "grain_density 0.0428 0.056 0.766 0.446 -0.069 0.154\n", + "grain_outer_radius -1.749e+04 7347.095 -2.380 0.020 -3.22e+04 -2812.611\n", + "grain_initial_inner_radius -3787.6627 6428.562 -0.589 0.558 -1.66e+04 9051.061\n", + "grain_initial_height -4076.6675 3153.085 -1.293 0.201 -1.04e+04 2220.479\n", + "radius -3368.9020 2818.121 -1.195 0.236 -8997.078 2259.274\n", + "nozzle_position -1375.8112 3234.773 -0.425 0.672 -7836.100 5084.477\n", + "grains_center_of_mass_position 530.6031 2591.683 0.205 0.838 -4645.346 5706.552\n", + "power_off_drag -20.0803 75.868 -0.265 0.792 -171.600 131.439\n", + "power_on_drag 7.8930 85.706 0.092 0.927 -163.275 179.061\n", + "nose_length -3489.5793 2687.150 -1.299 0.199 -8856.189 1877.031\n", + "nose_distance_to_CM 1651.1224 2619.379 0.630 0.531 -3580.139 6882.384\n", + "fin_span 1464.9842 4973.369 0.295 0.769 -8467.520 1.14e+04\n", + "fin_root_chord -3906.4824 4734.571 -0.825 0.412 -1.34e+04 5549.109\n", + "fin_tip_chord -7243.4027 5268.083 -1.375 0.174 -1.78e+04 3277.686\n", + "fin_distance_to_CM -49.3377 3098.870 -0.016 0.987 -6238.208 6139.533\n", + "inclination -31.3090 2.448 -12.789 0.000 -36.198 -26.420\n", + "heading 2.8683 1.324 2.167 0.034 0.225 5.512\n", + "rail_length 1.035e+04 4806.543 2.153 0.035 750.451 1.99e+04\n", + "ensemble_member -4.0625 1.023 -3.972 0.000 -6.105 -2.020\n", + "cd_s_drogue 152.0142 37.921 4.009 0.000 76.280 227.748\n", + "lag_rec -10.6094 4.904 -2.163 0.034 -20.403 -0.816\n", + "lag_se -10.1019 14.240 -0.709 0.481 -38.542 18.338\n", + "==============================================================================\n", + "Omnibus: 0.593 Durbin-Watson: 2.129\n", + "Prob(Omnibus): 0.743 Jarque-Bera (JB): 0.716\n", + "Skew: 0.077 Prob(JB): 0.699\n", + "Kurtosis: 2.615 Cond. No. 4.72e+07\n", + "==============================================================================\n", + "\n", + "Notes:\n", + "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", + "[2] The condition number is large, 4.72e+07. This might indicate that there are\n", + "strong multicollinearity or other numerical problems.\n" + ] + } + ], + "source": [ + "print(sim_model.summary())" + ] + } + ], + "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.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}