{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 10 - b - Neptune - Feasibility Charts - Drag" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from AMAT.planet import Planet\n", "from AMAT.vehicle import Vehicle\n", "\n", "import numpy as np\n", "from scipy import interpolate\n", "\n", "import matplotlib.pyplot as plt\n", "from matplotlib import rcParams\n", "from matplotlib.patches import Polygon\n", "import os" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Create a planet object for Titan\n", "planet=Planet(\"NEPTUNE\")\n", "planet.h_skip = 1000e3\n", "planet.h_trap = 50e3\n", "\n", "# Load an nominal atmospheric profile with height, temp, pressure, density data\n", "planet.loadAtmosphereModel('../atmdata/Neptune/neptune-gram-avg.dat', 0 , 7 , 6, 5, heightInKmFlag=True)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "beta1 = 20.0\n", "\n", "runID = 'neptune-drag-'" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "vinf_kms_array = np.linspace( 0.0, 30.0, 11)\n", "betaRatio_array = np.linspace( 1.0, 41.0 , 11)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "v0_kms_array = np.zeros(len(vinf_kms_array))\n", "v0_kms_array[:] = np.sqrt(1.0*(vinf_kms_array[:]*1E3)**2.0 + 2*np.ones(len(vinf_kms_array))*\\\n", " planet.GM/(planet.RP+1000.0*1.0E3))/1.0E3\n", "\n", "overShootLimit_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "underShootLimit_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "exitflag_os_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "exitflag_us_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "TCW_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "VINF: 0.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 5.0 TCW: 0.6375848139286973 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 9.0 TCW: 0.8520057675777934 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 13.0 TCW: 0.9789272253401577 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 17.0 TCW: 1.0667038679821417 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 21.0 TCW: 1.1342695139464922 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 25.0 TCW: 1.1892026141867973 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 29.0 TCW: 1.2345585543080233 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 33.0 TCW: 1.2715580430813134 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 37.0 TCW: 1.3034544690744951 deg.\n", "VINF: 0.0 km/s, BETA RATIO: 41.0 TCW: 1.3314950732165016 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 5.0 TCW: 0.6390480915433727 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 9.0 TCW: 0.8538084520841949 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 13.0 TCW: 0.9805327534559183 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 17.0 TCW: 1.068393432884477 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 21.0 TCW: 1.1360414182418026 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 25.0 TCW: 1.191082521690987 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 29.0 TCW: 1.2360145408310927 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 33.0 TCW: 1.2729238573811017 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 37.0 TCW: 1.3047426943085156 deg.\n", "VINF: 3.0 km/s, BETA RATIO: 41.0 TCW: 1.3328057203325443 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 5.0 TCW: 0.6430133717367426 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 9.0 TCW: 0.8588578948401846 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 13.0 TCW: 0.9848885684041306 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 17.0 TCW: 1.0730263691511936 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 21.0 TCW: 1.1409201623755507 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 25.0 TCW: 1.1960456015076488 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 29.0 TCW: 1.2397645485471003 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 33.0 TCW: 1.2765348782995716 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 37.0 TCW: 1.308246121450793 deg.\n", "VINF: 6.0 km/s, BETA RATIO: 41.0 TCW: 1.33629093633499 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 5.0 TCW: 0.6481621066923253 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 9.0 TCW: 0.8649483202607371 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 13.0 TCW: 0.990505404653959 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 17.0 TCW: 1.0791003896738403 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 21.0 TCW: 1.1475800550542772 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 25.0 TCW: 1.201097839686554 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 29.0 TCW: 1.244129801983945 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 33.0 TCW: 1.2806589678511955 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 37.0 TCW: 1.3122983945067972 deg.\n", "VINF: 9.0 km/s, BETA RATIO: 41.0 TCW: 1.3402841428178363 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 5.0 TCW: 0.6535135280573741 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 9.0 TCW: 0.8703192648245022 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 13.0 TCW: 0.9961540620424785 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 17.0 TCW: 1.0851889830082655 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 21.0 TCW: 1.153116102446802 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 25.0 TCW: 1.2049986543715931 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 29.0 TCW: 1.2477177278487943 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 33.0 TCW: 1.2840427142800763 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 37.0 TCW: 1.3156785692553967 deg.\n", "VINF: 12.0 km/s, BETA RATIO: 41.0 TCW: 1.343776410794817 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 5.0 TCW: 0.6583897554082796 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 9.0 TCW: 0.8746284047956578 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 13.0 TCW: 1.0008890533354133 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 17.0 TCW: 1.090546931605786 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 21.0 TCW: 1.1558287351508625 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 25.0 TCW: 1.2071400129352696 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 29.0 TCW: 1.249661518551875 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 33.0 TCW: 1.285915323998779 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 37.0 TCW: 1.317741370294243 deg.\n", "VINF: 15.0 km/s, BETA RATIO: 41.0 TCW: 1.3462270107702352 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 5.0 TCW: 0.6623215390718542 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 9.0 TCW: 0.8774400072870776 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 13.0 TCW: 1.0041766694630496 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 17.0 TCW: 1.0923478612094186 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 21.0 TCW: 1.1562853277428076 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 25.0 TCW: 1.2072475993190892 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 29.0 TCW: 1.249606179422699 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 33.0 TCW: 1.286075644835364 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 37.0 TCW: 1.3182956944219768 deg.\n", "VINF: 18.0 km/s, BETA RATIO: 41.0 TCW: 1.3472154243499972 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 5.0 TCW: 0.6653561519924551 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 9.0 TCW: 0.8788535002968274 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 13.0 TCW: 1.0061556307482533 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 17.0 TCW: 1.0913771499181166 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 21.0 TCW: 1.1546839770162478 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 25.0 TCW: 1.2054080093512312 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 29.0 TCW: 1.2478727445122786 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 33.0 TCW: 1.2847831092658453 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 37.0 TCW: 1.317405759880785 deg.\n", "VINF: 21.0 km/s, BETA RATIO: 41.0 TCW: 1.3465530135435984 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 5.0 TCW: 0.6663401488913223 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 9.0 TCW: 0.8791100586531684 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 13.0 TCW: 1.005341351905372 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 17.0 TCW: 1.0886956052854657 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 21.0 TCW: 1.151609547669068 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 25.0 TCW: 1.2022204327513464 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 29.0 TCW: 1.2450603127363138 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 33.0 TCW: 1.2823460045037791 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 37.0 TCW: 1.3152180758188479 deg.\n", "VINF: 24.0 km/s, BETA RATIO: 41.0 TCW: 1.3445671580848284 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 5.0 TCW: 0.6657166357617825 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 9.0 TCW: 0.8781609628931619 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 13.0 TCW: 1.0021717826020904 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 17.0 TCW: 1.0846570065477863 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 21.0 TCW: 1.1471899877651595 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 25.0 TCW: 1.1980153587646782 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 29.0 TCW: 1.2412443747743964 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 33.0 TCW: 1.2787534632370807 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 37.0 TCW: 1.3117533933836967 deg.\n", "VINF: 27.0 km/s, BETA RATIO: 41.0 TCW: 1.3413693814072758 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 1.0 TCW: 0.0 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 5.0 TCW: 0.6647003521793522 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 9.0 TCW: 0.877015758829657 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 13.0 TCW: 0.998286928399466 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 17.0 TCW: 1.0800643479451537 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 21.0 TCW: 1.1424313343595713 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 25.0 TCW: 1.1936049461946823 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 29.0 TCW: 1.2370840602670796 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 33.0 TCW: 1.2747062221751548 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 37.0 TCW: 1.3079548389650881 deg.\n", "VINF: 30.0 km/s, BETA RATIO: 41.0 TCW: 1.3376443205634132 deg.\n" ] } ], "source": [ "for i in range(0,len(v0_kms_array)):\n", " for j in range(0,len(betaRatio_array)):\n", " vehicle=Vehicle('DMVehicle', 300.0, beta1, 0.0, 3.1416, 0.0, 0.10, planet)\n", " vehicle.setInitialState(1000.0,0.0,0.0,v0_kms_array[i],0.0,-4.5,0.0,0.0)\n", " vehicle.setSolverParams(1E-6)\n", " vehicle.setDragModulationVehicleParams(beta1,betaRatio_array[j])\n", "\n", " underShootLimit_array[i,j], exitflag_us_array[i,j] = vehicle.findUnderShootLimitD(2400.0, 1.0, -20.0,-4.0,1E-10,4000)\n", " overShootLimit_array[i,j] , exitflag_os_array[i,j] = vehicle.findOverShootLimitD (2400.0, 1.0, -20.0,-4.0,1E-10,4000)\n", "\n", " TCW_array[i,j] = overShootLimit_array[i,j] - underShootLimit_array[i,j]\n", "\n", " print('VINF: '+str(vinf_kms_array[i])+' km/s, BETA RATIO: '+str(betaRatio_array[j])+' TCW: '+str(TCW_array[i,j])+' deg.')\n", "\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'vinf_kms_array.txt',vinf_kms_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'v0_kms_array.txt',v0_kms_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'betaRatio_array.txt',betaRatio_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'overShootLimit_array.txt',overShootLimit_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'exitflag_os_array.txt',exitflag_os_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'underShootLimit_array.txt',underShootLimit_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'exitflag_us_array.txt',exitflag_us_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'TCW_array.txt',TCW_array)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "V_infty: 0.0 km/s, BR: 1.0 G_MAX: 3.945877323449913 QDOT_MAX: 568.0827394979598 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 5.0 G_MAX: 3.945877323449913 QDOT_MAX: 745.9223822130251 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 9.0 G_MAX: 3.945877323449913 QDOT_MAX: 790.9853234927449 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 13.0 G_MAX: 3.945877323449913 QDOT_MAX: 815.3462223957772 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 17.0 G_MAX: 3.945877323449913 QDOT_MAX: 831.8046712532644 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 21.0 G_MAX: 3.945877323449913 QDOT_MAX: 843.9128963456635 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 25.0 G_MAX: 3.945877323449913 QDOT_MAX: 853.3939101813759 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 29.0 G_MAX: 3.945877323449913 QDOT_MAX: 861.0329847937968 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 33.0 G_MAX: 3.945877323449913 QDOT_MAX: 867.0466776750925 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 37.0 G_MAX: 3.945877323449913 QDOT_MAX: 872.1356987547548 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 0.0 km/s, BR: 41.0 G_MAX: 3.945877323449913 QDOT_MAX: 876.5472823444674 J_MAX: 139918.89106855224 STAG. PRES: 0.007656906120344463\n", "V_infty: 3.0 km/s, BR: 1.0 G_MAX: 4.0987798911359645 QDOT_MAX: 584.9177486982629 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 5.0 G_MAX: 4.0987798911359645 QDOT_MAX: 765.6929511200557 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 9.0 G_MAX: 4.0987798911359645 QDOT_MAX: 811.4982505025773 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 13.0 G_MAX: 4.0987798911359645 QDOT_MAX: 836.2890502662805 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 17.0 G_MAX: 4.0987798911359645 QDOT_MAX: 853.065275191417 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 21.0 G_MAX: 4.0987798911359645 QDOT_MAX: 865.422354651391 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 25.0 G_MAX: 4.0987798911359645 QDOT_MAX: 874.973883130524 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 29.0 G_MAX: 4.0987798911359645 QDOT_MAX: 882.6395942599461 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 33.0 G_MAX: 4.0987798911359645 QDOT_MAX: 888.8183144928672 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 37.0 G_MAX: 4.0987798911359645 QDOT_MAX: 893.9819232622069 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 3.0 km/s, BR: 41.0 G_MAX: 4.0987798911359645 QDOT_MAX: 898.5598983645666 J_MAX: 142222.06622714002 STAG. PRES: 0.007953405925762488\n", "V_infty: 6.0 km/s, BR: 1.0 G_MAX: 4.5690732099631255 QDOT_MAX: 635.9367284840146 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 5.0 G_MAX: 4.5690732099631255 QDOT_MAX: 825.6869098011862 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 9.0 G_MAX: 4.5690732099631255 QDOT_MAX: 873.7247664854045 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 13.0 G_MAX: 4.5690732099631255 QDOT_MAX: 899.9652753014393 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 17.0 G_MAX: 4.5690732099631255 QDOT_MAX: 917.5954668266777 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 21.0 G_MAX: 4.5690732099631255 QDOT_MAX: 930.4308112930647 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 25.0 G_MAX: 4.5690732099631255 QDOT_MAX: 940.5313539291762 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 29.0 G_MAX: 4.5690732099631255 QDOT_MAX: 948.3976371038387 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 33.0 G_MAX: 4.5690732099631255 QDOT_MAX: 954.7904602239671 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 37.0 G_MAX: 4.5690732099631255 QDOT_MAX: 960.2903845379175 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 6.0 km/s, BR: 41.0 G_MAX: 4.5690732099631255 QDOT_MAX: 965.047952094096 J_MAX: 148991.6325654108 STAG. PRES: 0.008865195635716711\n", "V_infty: 9.0 km/s, BR: 1.0 G_MAX: 5.35701056286058 QDOT_MAX: 722.8942442262013 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 5.0 G_MAX: 5.35701056286058 QDOT_MAX: 927.912223314843 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 9.0 G_MAX: 5.35701056286058 QDOT_MAX: 979.7952934326344 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 13.0 G_MAX: 5.35701056286058 QDOT_MAX: 1008.4126844064808 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 17.0 G_MAX: 5.35701056286058 QDOT_MAX: 1027.4674802015606 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 21.0 G_MAX: 5.35701056286058 QDOT_MAX: 1041.4330461064753 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 25.0 G_MAX: 5.35701056286058 QDOT_MAX: 1052.0270092017963 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 29.0 G_MAX: 5.35701056286058 QDOT_MAX: 1060.3150144342867 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 33.0 G_MAX: 5.35701056286058 QDOT_MAX: 1067.3079337495835 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 37.0 G_MAX: 5.35701056286058 QDOT_MAX: 1073.2291370550083 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 9.0 km/s, BR: 41.0 G_MAX: 5.35701056286058 QDOT_MAX: 1078.3854181958286 J_MAX: 159891.6959449069 STAG. PRES: 0.010392577734529165\n", "V_infty: 12.0 km/s, BR: 1.0 G_MAX: 6.478683685333229 QDOT_MAX: 850.3361491267822 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 5.0 G_MAX: 6.478683685333229 QDOT_MAX: 1075.790450241139 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 9.0 G_MAX: 6.478683685333229 QDOT_MAX: 1133.527298719978 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 13.0 G_MAX: 6.478683685333229 QDOT_MAX: 1165.283702249116 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 17.0 G_MAX: 6.478683685333229 QDOT_MAX: 1186.2113578495398 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 21.0 G_MAX: 6.478683685333229 QDOT_MAX: 1201.6321086346259 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 25.0 G_MAX: 6.478683685333229 QDOT_MAX: 1213.047841696979 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 29.0 G_MAX: 6.478683685333229 QDOT_MAX: 1222.2402381536863 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 33.0 G_MAX: 6.478683685333229 QDOT_MAX: 1229.956680855297 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 37.0 G_MAX: 6.478683685333229 QDOT_MAX: 1236.5380631930034 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 12.0 km/s, BR: 41.0 G_MAX: 6.478683685333229 QDOT_MAX: 1242.314308330653 J_MAX: 174518.42356161517 STAG. PRES: 0.012566735278104707\n", "V_infty: 15.0 km/s, BR: 1.0 G_MAX: 7.965097699637164 QDOT_MAX: 1022.0881800765426 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 5.0 G_MAX: 7.965097699637164 QDOT_MAX: 1274.6657694335938 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 9.0 G_MAX: 7.965097699637164 QDOT_MAX: 1340.1914041298212 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 13.0 G_MAX: 7.965097699637164 QDOT_MAX: 1375.990553623435 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "V_infty: 15.0 km/s, BR: 17.0 G_MAX: 7.965097699637164 QDOT_MAX: 1399.6687339051841 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 21.0 G_MAX: 7.965097699637164 QDOT_MAX: 1416.3687195178636 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 25.0 G_MAX: 7.965097699637164 QDOT_MAX: 1429.1209240936487 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 29.0 G_MAX: 7.965097699637164 QDOT_MAX: 1439.625274104397 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 33.0 G_MAX: 7.965097699637164 QDOT_MAX: 1448.1447951775287 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 37.0 G_MAX: 7.965097699637164 QDOT_MAX: 1455.8581113525802 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 15.0 km/s, BR: 41.0 G_MAX: 7.965097699637164 QDOT_MAX: 1462.5963624964331 J_MAX: 192654.4345678489 STAG. PRES: 0.015447195076072406\n", "V_infty: 18.0 km/s, BR: 1.0 G_MAX: 9.835192837988128 QDOT_MAX: 1245.8388067102183 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 5.0 G_MAX: 9.835192837988128 QDOT_MAX: 1533.05435309262 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 9.0 G_MAX: 9.835192837988128 QDOT_MAX: 1608.121976965627 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 13.0 G_MAX: 9.835192837988128 QDOT_MAX: 1649.042295850994 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 17.0 G_MAX: 9.835192837988128 QDOT_MAX: 1675.6396555622398 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 21.0 G_MAX: 9.835192837988128 QDOT_MAX: 1694.3951824840158 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 25.0 G_MAX: 9.835192837988128 QDOT_MAX: 1709.0814692417127 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 29.0 G_MAX: 9.835192837988128 QDOT_MAX: 1721.0546541307895 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 33.0 G_MAX: 9.835192837988128 QDOT_MAX: 1731.1338267341855 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 37.0 G_MAX: 9.835192837988128 QDOT_MAX: 1740.1257898149506 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 18.0 km/s, BR: 41.0 G_MAX: 9.835192837988128 QDOT_MAX: 1748.0476954400613 J_MAX: 214507.38703820095 STAG. PRES: 0.01907069087891247\n", "V_infty: 21.0 km/s, BR: 1.0 G_MAX: 12.108058919261142 QDOT_MAX: 1539.5680868511465 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 5.0 G_MAX: 12.108058919261142 QDOT_MAX: 1866.8541130596632 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 9.0 G_MAX: 12.108058919261142 QDOT_MAX: 1952.3079061132428 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 13.0 G_MAX: 12.108058919261142 QDOT_MAX: 1999.9459910371534 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 17.0 G_MAX: 12.108058919261142 QDOT_MAX: 2029.9100794968406 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 21.0 G_MAX: 12.108058919261142 QDOT_MAX: 2051.652033814984 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 25.0 G_MAX: 12.108058919261142 QDOT_MAX: 2068.554880235714 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 29.0 G_MAX: 12.108058919261142 QDOT_MAX: 2082.2869637244385 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 33.0 G_MAX: 12.108058919261142 QDOT_MAX: 2094.5051159324344 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 37.0 G_MAX: 12.108058919261142 QDOT_MAX: 2104.959559425219 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 21.0 km/s, BR: 41.0 G_MAX: 12.108058919261142 QDOT_MAX: 2114.011305650152 J_MAX: 241185.87349073094 STAG. PRES: 0.023473916094379033\n", "V_infty: 24.0 km/s, BR: 1.0 G_MAX: 14.796854707666292 QDOT_MAX: 1944.3513767375637 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 5.0 G_MAX: 14.796854707666292 QDOT_MAX: 2315.939735649085 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 9.0 G_MAX: 14.796854707666292 QDOT_MAX: 2411.811895769572 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 13.0 G_MAX: 14.796854707666292 QDOT_MAX: 2466.9572313848407 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 17.0 G_MAX: 14.796854707666292 QDOT_MAX: 2502.198862339169 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 21.0 G_MAX: 14.796854707666292 QDOT_MAX: 2527.3259642482553 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 25.0 G_MAX: 14.796854707666292 QDOT_MAX: 2547.2438409474953 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 29.0 G_MAX: 14.796854707666292 QDOT_MAX: 2563.9028032593974 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 33.0 G_MAX: 14.796854707666292 QDOT_MAX: 2577.7530138374336 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 37.0 G_MAX: 14.796854707666292 QDOT_MAX: 2590.148851647192 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 24.0 km/s, BR: 41.0 G_MAX: 14.796854707666292 QDOT_MAX: 2600.8689641002397 J_MAX: 275804.310432894 STAG. PRES: 0.028682076481098873\n", "V_infty: 27.0 km/s, BR: 1.0 G_MAX: 17.92213068759534 QDOT_MAX: 2587.879621216833 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 5.0 G_MAX: 17.92213068759534 QDOT_MAX: 3011.076232524579 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 9.0 G_MAX: 17.92213068759534 QDOT_MAX: 3123.4964616335133 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 13.0 G_MAX: 17.92213068759534 QDOT_MAX: 3185.081670217812 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 17.0 G_MAX: 17.92213068759534 QDOT_MAX: 3224.5116846651144 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 21.0 G_MAX: 17.92213068759534 QDOT_MAX: 3253.696227727686 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 25.0 G_MAX: 17.92213068759534 QDOT_MAX: 3276.8716986697123 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 29.0 G_MAX: 17.92213068759534 QDOT_MAX: 3295.662505791439 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 33.0 G_MAX: 17.92213068759534 QDOT_MAX: 3312.9115579996314 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 37.0 G_MAX: 17.92213068759534 QDOT_MAX: 3326.7858838882876 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 27.0 km/s, BR: 41.0 G_MAX: 17.92213068759534 QDOT_MAX: 3340.2766944246796 J_MAX: 326210.12253879843 STAG. PRES: 0.0347352599444486\n", "V_infty: 30.0 km/s, BR: 1.0 G_MAX: 21.470600312806333 QDOT_MAX: 3841.9675670446923 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 5.0 G_MAX: 21.470600312806333 QDOT_MAX: 4389.588915524267 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 9.0 G_MAX: 21.470600312806333 QDOT_MAX: 4534.968231149871 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 13.0 G_MAX: 21.470600312806333 QDOT_MAX: 4614.096936597533 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 17.0 G_MAX: 21.470600312806333 QDOT_MAX: 4665.19298368098 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 21.0 G_MAX: 21.470600312806333 QDOT_MAX: 4704.434514270391 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 25.0 G_MAX: 21.470600312806333 QDOT_MAX: 4735.139416284438 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 29.0 G_MAX: 21.470600312806333 QDOT_MAX: 4761.4316238573565 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "V_infty: 30.0 km/s, BR: 33.0 G_MAX: 21.470600312806333 QDOT_MAX: 4782.762804675618 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 37.0 G_MAX: 21.470600312806333 QDOT_MAX: 4802.594539692552 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n", "V_infty: 30.0 km/s, BR: 41.0 G_MAX: 21.470600312806333 QDOT_MAX: 4818.587126316493 J_MAX: 410506.2115667537 STAG. PRES: 0.041607216559350305\n" ] } ], "source": [ "acc_net_g_max_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "stag_pres_atm_max_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "q_stag_total_max_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "heatload_max_array = np.zeros((len(v0_kms_array),len(betaRatio_array)))\n", "\n", "\n", "for i in range(0,len(v0_kms_array)):\n", " for j in range(0,len(betaRatio_array)):\n", " vehicle=Vehicle('DMVehicle', 300, beta1, 0.0, 3.1416, 0.0, 0.10, planet)\n", " vehicle.setInitialState(1000.0,0.0,0.0,v0_kms_array[i],0.0,overShootLimit_array[i,j],0.0,0.0)\n", " vehicle.setSolverParams(1E-6)\n", "\n", " vehicle.propogateEntry (2400.0, 1.0, 0.0)\n", "\n", " # Extract and save variables to plot\n", " t_min_os = vehicle.t_minc\n", " h_km_os = vehicle.h_kmc\n", " acc_net_g_os = vehicle.acc_net_g\n", " q_stag_con_os = vehicle.q_stag_con\n", " q_stag_rad_os = vehicle.q_stag_rad\n", " rc_os = vehicle.rc\n", " vc_os = vehicle.vc\n", " stag_pres_atm_os = vehicle.computeStagPres(rc_os,vc_os)/(1.01325E5)\n", " heatload_os = vehicle.heatload\n", "\n", "\n", " vehicle=Vehicle('DMVehicle', 300.0, beta1, 0.0, 3.1416, 0.0, 0.10, planet)\n", " vehicle.setInitialState(1000.0,0.0,0.0,v0_kms_array[i],0.0,underShootLimit_array[i,j],0.0,0.0)\n", " vehicle.setSolverParams( 1E-6)\n", "\n", " vehicle.propogateEntry (2400.0, 1.0, 0.0)\n", "\n", " # Extract and save variable to plot\n", " t_min_us = vehicle.t_minc\n", " h_km_us = vehicle.h_kmc\n", " acc_net_g_us = vehicle.acc_net_g\n", " q_stag_con_us = vehicle.q_stag_con\n", " q_stag_rad_us = vehicle.q_stag_rad\n", " rc_us = vehicle.rc\n", " vc_us = vehicle.vc\n", " stag_pres_atm_us = vehicle.computeStagPres(rc_us,vc_us)/(1.01325E5)\n", " heatload_us = vehicle.heatload\n", "\n", " q_stag_total_os = q_stag_con_os + q_stag_rad_os\n", " q_stag_total_us = q_stag_con_us + q_stag_rad_us\n", "\n", " acc_net_g_max_array[i,j] = max(max(acc_net_g_os),max(acc_net_g_os))\n", " stag_pres_atm_max_array[i,j] = max(max(stag_pres_atm_os),max(stag_pres_atm_os))\n", " q_stag_total_max_array[i,j] = max(max(q_stag_total_os),max(q_stag_total_us))\n", " heatload_max_array[i,j] = max(max(heatload_os),max(heatload_os))\n", "\n", " print(\"V_infty: \"+str(vinf_kms_array[i])+\" km/s\"+\", BR: \"+str(betaRatio_array[j])+\" G_MAX: \"+str(acc_net_g_max_array[i,j])+\" QDOT_MAX: \"+str(q_stag_total_max_array[i,j])+\" J_MAX: \"+str(heatload_max_array[i,j])+\" STAG. PRES: \"+str(stag_pres_atm_max_array[i,j]))\n", "\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'acc_net_g_max_array.txt',acc_net_g_max_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'stag_pres_atm_max_array.txt',stag_pres_atm_max_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'q_stag_total_max_array.txt',q_stag_total_max_array)\n", "np.savetxt('../data/jsr-paper/neptune/'+runID+'heatload_max_array.txt',heatload_max_array)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\AthulGirija\\anaconda3\\envs\\env1\\lib\\site-packages\\scipy\\interpolate\\interpolate.py:630: RuntimeWarning: divide by zero encountered in true_divide\n", " slope = (y_hi - y_lo) / (x_hi - x_lo)[:, None]\n", "The PostScript backend does not support transparency; partially transparent artists will be rendered opaque.\n", "The PostScript backend does not support transparency; partially transparent artists will be rendered opaque.\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAOwAAADcCAYAAABzqU25AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAA5XUlEQVR4nO2deXwURfbAv29yX5zhDCCnICAgBhQUyKLIKceKgiKCrqKw6rKKCirq6rrqosL+dEVQV1xZT0QUuUQuDxQIIocgCghyEyIh5J7M1O+P6plMkkkyk8yRIf31U5/urq6uV415U9VVr94TpRQmJiahgSXYDTAxMfEcU2FNTEIIU2FNTEIIU2FNTEIIU2FNTEKI8GA3wBMkXpSlQ3B+W1SaQhpItZLb9CjExyQSV6+5T2Xu3QtWq5XOnSNK3Tv5214AGiU2h9OnoUkTiChdrrKkpaXRoEEDn9UXCrK3bt2apZRK8OYZCYVlHYkTFZ8dHxTZOck5xKbGViu5Wy/KxT5oAB1mr/CpzJQU2Lp1K+fOXVrq3vOTUwCYNvg+uPVW+Oor6NjRZ7KTk5NJTU31WX2hIFtEcpRScd48E/AeVkTCgFTgqFJqmIi0At4D6gNbgfFKqYJAtyuUuHJPPZ7lejoEQ/jw4ZCeHgzJJgTnG/YvwB6X6+eA2UqptsAZ4E9BaFNIYcdOPvnBboZJEAhoDysizYChwNPAfSIiQH/gJqPIW8ATwFzX5yyJwZsbi5jku+80X8m9+7lsLopaBVMn+1xu06ZNyi+wbx/MmgVTp8JFF5Vb1Gq1cuTIEfLy8iqU+8orr7Bnz54Ky/mDQMiOjo6mWbNmRBT/7k/ztp5AD4nnAA8Cjg/t+kCGUqrQuD4CJLl7MCc5x3keMSkiYIpUHRX28q+sNIz/1ecyb7gBoGn5hc6cgU8/hZtuqlBhjxw5QkJCAi1btkT/NtdMlFKkp6dz5MgRVq9ezfz58ytdV8AUVkSGAaeUUltFJMWrZxsIMakxfmlXKHL9ZzFMZThP+bjeKVM8KNSjBxw/7lF9eXl5NV5ZAUSE+vXrk5aWxqRJk5g0aZIj/7S3dQWyh70CGC4iQ4BooBbwL6COiIQbvWwz4GgA2xSyZJPt8zpzjEFMrA8nxWu6sjrw1b9DwD4OlVIzlFLNlFItgbHAWqXUOGAdMNooNgH4JFBtCmX8obBDhuhkUn2pDoYTDwHvicjfgW3AG0FuT0iQQ07pzMJCyM+HOK+W9jyiy5XDKi5ks+k2REX5XL6JJijTr0qp9UqpYcb5AaVUT6VUW6XU9Uopc72iAhZel0suuaVv7Nypu0i73ecyrxk3jWvGTdMXo0e7L7RtGwwbBgE2xjl79iwpKSmkpKRQu3ZtUlJSuPXWW1mzZg0pKSn07duXUaNGkZ6ezoQJE9i9ezcAU6ZM4bHHHgNg7dq13H///eXKWbBgAQsWLPD365RLdehhTbwkeZOdL789BhGpkJ0NeXmQm6vT5s362pcfoiX59ltITYXwcC2zoECn7GzYuFH38tHR/pNfgtq1a7N+/XoArrzyStavX09aWhqjR4/ms88+IyEhgZ9//pmCggJ69OjBli1b6NixI5mZmeQYH+5btmyhZ8+eAWtzZTEVNgSJylfcc/sOqHUPWCwQGalTdDSMGaPzfIzTNHHueq2kEyboHwWLBcLCtPJGR8PQoVANJpqWL1/O+PHjSUjQK4gXXnghAD179uStt97ixhtvJDIyksJCvaK4ZcsWbtDrWsUoKCjg+uuvJz8/n9jYWIYPH45SiilTprB3715iYmJYuHAhsbGxXH/99RQUFFCnTh0GDRrExIkTff5epsKGIGkNLdz7XWdWJ3zr03rL+/vqPdTlZmIibNniVS+ekpJS2WYBOHtQTzl+/DgXX3xxqfxu3bpx3333sX37drp27UpaWhoHDx7k4MGDtGrVqlT5JUuW0LNnTx555BHncsxnn31GixYtmDt3LitWrODVV1+ldevW9O7dm+nTpzN5su8NWhyYChuCvDg9gkKr8Q1rs+mjxQK//67tfFu31j2el5SrsMNcbv7972C1wrlzehicn6/b0bixf4fiXtCkSROOHTtWKj8yMhKAjRs3kpycTFpaGsuXL6dRo0Zu6zlw4ACXXHIJAJdeqjdF7Nmzh/fee49Vq1ZRWFhIr169EBG6dOkC6B8Ff2EqbAhy+1wrmw8eh79mQbzLLqbTp+HRR7XpYMuWXtd72ljGT0wsfe9chr6ZUCdRm0QtXAiLFsHu3frHoW1bvd1nzBhIKm2s5m0PWVWGDBnC6NGjGTt2LAkJCezbt4+4uDiaNGlC165dWbBgAXfccQfp6enMnDmT6667DoDCwkLS09OdCtyqVSu2b9/OkCFD2LZtG5dffjnt27fnlltucU5SWa1WFi9ezM6dOxkyZAg7duygR48efnkvcwN7CPJ7feH6eb/Dk0/Cb78V3WjfXmvdqVOVqnf06LIngOfNGM28GcbNqVP1pNOjj8K99+qZ4aeegqNH4ZFHijQ/iDRo0ICZM2cybNgw+vbty7Rp05y9a8+ePbHZbMTGxtK8eXNOnTrlnHA6ePAgjz76qLOekSNHsnHjRgYOHEhGRgYAw4cP5+DBg/Tv35/+/fuzYsUKRo4cyTfffMPAgQM5ceJESZthn2H2sCGIKJi4rAErP4yEv/wFHnoILr5YT/qEhRUNk/3F9u3w8svQqRMkJ8OAATB2LLzwAlx2GRw86L6bDgBff/218/zqq6/m6quvLlVmwoQJTJgwwXl98uRJ5/n27du58cYbnddRUVEsXbq0VB0vvfRSqbzFixcTHh7O5MmTad26daXfoTxMhQ1BcmOg3vF8/S350ktaYfv3h8xMaNMGmjXzbwMSE2HTJj30/eknbahh9F4EyWuEr3AMjSvD0KFDycrKom3btvTq1cuHrSrCVNgQZHOvME4mGr3oPffA9dfD//6ne9cHHtCTP/5k9mz405/g6af19f/9H3TurA0mbrhBu4+pgaxatcrvMkyFDUFevi8SQaGsBUjmOT1DfOedxSeg/EmzZrBqlZ4dDgvTRhOnT0O9enDLLYFpQw3FVNgQpcUhhW3Zq4T/uFcrTlQUNG+uZ2p79NCK5CVeLR/++it89pmeJS4ogIQEPenVrx906OAX4w0TU2FDkiu+tDFzphV7++9h6Cj9DVlQAKtXw2OPwfTp+pvWS8aM8bDgihV6Vrh7dxg4UE925ebqje2ffgrPPAN+XIusyZgKG4IMXlrIlwMiafvoczTCZcF/yBCYMUMrbiUU9vBhfWxekffUd9+F226D228vnj9qlDZZ/PprU2H9RCA9TkQDXwJRhtxFSqnHRWQB0A84axSdqJT6IVDtCkVONxDa/6LIO30E7KKtjvLy4ORJOHasUsoKMH68PlZo45CYCPv361npwsKibX2nT+ue1o3hhIlvCGQPmw/0V0pliUgE8LWIOBzrPqCUWhTAtoQ0r0+O4LEnofEVo+HSXnqyKS9PK9GQITBunM9lFrMlfvhhePBBuPxyuOQSbY6YkwN79mjZw4f7XL6JJmAKq7TH8izjMsJI1d+LeTUkK0H4+6xaXPbPRXTfmAdnz0KtWnDllX6TWcyWODER/vMfbUe8ZQtkZUHdunDFFX6Tb6IJ6FSeiISJyA/AKWC1UmqTcetpEdkhIrNFpJS7ApWmyEnOcSbrfGsgm10tCbcqvWH98GE4ckT3bu+9pzeR+4FzGaed9sSAHgbv36+H4SdPaveny5drK6dqxvr164uZG3qDrzetz58/n+TkZJKTkwG8NgcL6KSTUsoGdBOROsDHItIZmAGcACKB+WiXMU+6Pmd6TSxOQqZixpOZtP/0Ueg3WFsXFRZqpS0s1OaKgwb5VKbDjnja3PX6W3X6dPjmG+jTR/eueXn6xyIxUdsYd+/uU/nnC6HkNdGJUipDRNYBg5RSzxvZ+SLyJjAtGG0KJXp/ZaPzNjtrf57LtVxb/OayZfCPf1RKYcvzkDLgJpeb776rJ5ncOd+eNUubS775ptfyq0J+fr5HG8gLCwsZP348R48eJSkpibfffptTp04xbtw4rFYrXbp0Yc6cOaU2rVcXAjYkFpEGRs+KiMQAA4CfRKSJkSfASGBXoNoUquTE6snhXHL192t2tnbwffy4DkHXrl2l6r32Wp3c0bXPtXTtY9yMji7yKpGVpWeGz56FjAx9dGMamZJSOr3yivE+Oe7vO0ainmz+WbJkCb1792blypXUrVu3zHIff/wxHTt25Msvv6RTp0589NFHJCYmsnr1ar7++msyMzOZPXs2PXv2ZOXKlSQGaRNDWQSyh20CvGUEw7IAHyilPhORtSLSABDgB+CuALYpJNnVNYyfOwrDez0Mow5qw3urVSvrmTPw+OOVqnevjihJ+/al7504pG82vqA9XHMNbNgAV12lNTw8XMvfvFk7gHvyydIV+Jlff/211AbyWbNmsWzZsmI97f79++luDNeTk5PZunUr6enpTJ48mYyMDA4ePEi7du2c+1kdm9arC4GcJd4BXOImv3KLhjWYM/WEGXNiqL1jDNevCdNKGh2tDReGDq10ve4U1cHCZ+8EjG/YFi3gjTfg++9h7VrdRcbEaGOKAQPcPl/e2m5sbPn3PenkWrVqVWoD+QMPPMADDzzA+vXr2bdvHwBt2rRh69atDB06lNTUVNq2bcs777zDyJEjmThxIuPGjaNDhw6lNq1XF0xLpxBl1WVnqdPwY1i2u/RNpfzrCO3f/9a7hE6dAj9tI/OWkSNHcv311zNw4EDi4+PL3EA+cuRIFi1aRN++fWnSpAkPPfQQu3bt4pZbbmHJkiUA1KlTx7lpvbzhdTAwFTZEeX1yOANiOtMaivsBFqmSsm7erJ1YXH011KmjDadK0auX3lrncGXqkB9Eb4lRUVFlbiB3+CwGiIiI4P333y/27CWXXMLOnTuL5Q0cONDvba4MpsKGKG/fFkEtWjMKfKYof/ubdtN0+eUwdy6MGKGdSISFQefGo+nb1TBGu/RSnRxUA7emEJgN5MHGVNgQJdyqyMtLKwrc6QMcdhfR0doB4wUX6N42Lg5aNB5apLA2m54Zjo6ulHdGfxGIDeTBxty0GKK8cls+D3f9wKd1RkQUhcWpXVtPBiUk6EloEZfwHytW6Bt+sqoyKZvq8/No4hUf3hTOmb5t8SSkq6ecOqW9u8yaBYsX69WbUaO04japd6CoYKdOupC5KyfgmAoboqweHM45En2qsBdeqG0vNm3SbqJuugm++EJPPB2r/VxRwVatYJppkBYMTIUNUSLzFZFnM6CB75ZwLBbdab78clGew0vo898WFmXabNqiKTY2oEGvTMxv2JDl7tlWljVK1Ub3AWDATfcX2RP/9BPUr6/dwZgEFLOHDVHWXBOGpVZDHg+QszOnHTFA06YwZ47pBiYImAobomzvHsbh7tE8ju+inbuJtuikmC1x3bp6C59JwDEVNkSJzFfUT8uFhgVFXveryJRyZrCK2RLb7XpKOTZWe7qoRqxcuRKAQT7eD+wJn3/+OVu3buXYsWNuQ3n4AvMbNkS56nMb3zdPgx07fFZnTo5O7hg1+R+MmvwPfZGXp9d/5s71mWxfMWjQoHKVdcKECezere2vp0yZwmOPPQbA2rVrndHojh49ytSpU72Wfc011zBjxgysVv95RAnkfthoEdksIttF5EcR+ZuR30pENonIPhF5X0R8012c5+zsauGe+VHYW/gujs6QITq5o02X3rTp0ltfREfrzazXXOMz2YGiR48ebNmyBYDMzEx+M6L/bdmyxRnBbvXq1QwoY9dRRcyZM6dYoC1fE8ge1uE1sSvQDRgkIpcDzwGzlVJtgTPAnwLYppDlSAsLC++IIa9hYIak+3dsZP+OjfrCYtFhAi4ptVsyaBQUFDBixAgGDRrEH//4xzL9MPXs2ZPNmzdTUFBAZGQkdru24HJV2A0bNtCnTx9uv/12+vXrx+DBgwHtG2rIkCEMHz6cXr16sWDBAq666iqGDh2KUopXXnmFzZs3s2nTJpTyj3/BgCms0rjzmtgfcLg4fQvtdcKkAsIKFa1/FXLOHg+IvI/nPszHcx8uyjh6FNLSPK/A1YWE1aqvFy7U1w6XE45dNGfP6uvFi/W1By4nlixZ4pGXiG7durF9+3a2b99O165dadGiBQcPHuTgwYO0atUKpRTZ2dmsWbOGhg0bsmHDBpYtW+Z8PiIigk8//ZRrr72Wbdu2sWbNGpKSkti2bRtTpkzhnXfeYerUqYifNkQE1WsisB/IUEo5VuWPAKXs3UyviaVJOqLY2voMfPxxcBqQnKyDN1cTDhw4wCVGj1+elwhHUOeNGzc6vRcuX77cGXHdocg///wzvXvrTwCLy9JZ586dAWjatGmx8zNnznjUzpD2mgh08OQ502tiadIaClPfrM2fr+zk/f91XzBnjgcxPVxwdSkREVH8uqTLidq1i1974HKiVatWpbxEFBYWkp6e7lRGB127dmXBggXccccdpKenM3PmTGdcWMf367Fjx/juu+8YNmwYdrvdqbSuPafruadD4Kp6TQzKLLFSKgNYB/QC6oiI44ejGXA0GG0KNXJjhQ8nxvF723o+q3PiRJ08YswYMHqg6sDIkSOdXiIyMjIAOHjwoFt/xD179sRmsxEbG0vz5s05deqU8/s1NTWV5ORkhg8fzvHjx+nbty/Dhg0L5KuUi/jr47iUIO1ozWq4OI0BPkdPOE0APlJKvScirwI7lFKvuD4bnhyuzB62NF1/ieXZuJe4smk5Fg8+4vnJKYCxDgvaebnNpjfNlsGePXu46KKL/N62kjgmnBISEqhbty79vYg19MEHH3BDeRYkVaDkv4eIbFVKJXtTR3XwmrgbeE9E/g5sA94IYJtCmuXJaaTd+jbM8c0fmGNuxyPPnjfdpF1RrFvnE9n+wDHM9QZ/KauvqA5eEw8APQPVjvOJ+/5Tm+ta96KNj+obrZ37Vxy9DnQc2moatNmdA/HzBdM0MYT55LpwLqNBcIQ79t2ZBJTq+RNp4hHN9ucTsfdAxQX9wdGj8OOPwZFdgzF72BDmpduyaSbvwfpn/C7LaUfs4PHHtW+no+akfiAxFTaEefLpKIZJT+4NgCynHbGDyZOhEpM6JlXDVNgQ5tsrw2hOvM/qmzy57HsOO2Kn4lazmDM1BVNhQ5hmv9lpdOxX8FHolzFjyr7nsCN2rsOePKmDN/foUW1ni89HTIUNYf48x8ptr30J53xT3+HD+ujO4vDm6fOKZ7z9NjzwAGRmah/FJgHBVNgQZsEdEewdegG+8m0wfrw+uluHbXxBidB2o0Zp/8RRvnNRE+qYHidMymXvRRbWXxUWEFnbv1rK9q+WFmW0aQODB/vMPY0vWLVqFX369CElJYX77rsPm83mttz69etL2Ri75pkeJ0z8QuIpO13XnC7br4sPWf3OC6x+54WijDNn4Msv4ZyPxuNV5PTp0zz99NOsXLmS9evX06BBA+bNm1fxg24wPU6Y+IWUNTYWXn0CDh0KvPBvv4V+/WC3m/i0QWDZsmWMHz+euLg4AP761786472WRWZmJsOHD+fHEgYgGzZsoF+/ftjt9mJeJ2qUxwkT37OhfxhDN8TriOiBpmdPWL0aOni0pdnvHD9+nKZNmzqvo6OjKSgoKLN8ZmYmN998M8888wydOnVy5js8TsTHx/PJJ5+U8joRbI8T5qRTCJPWyEJ6IwsFROCLL0nDaaBnJCZ6ZU/s2J5XHl2uHMY146Y5y/ceOpHewyZyLuM0CXXK30LUpEkTjrlEn87LyyMsrOzv+0WLFnHHHXcUU1Yo8jgBuPU64eplokGDBs5zTz1OVJVAek1sLiLrRGS34TXxL0b+EyJyVER+MFIZfvtMShKbrbhmlSL76M8+qe/aa3XyiNxcWLOm2pgmDh48mP/+979kZ2cDMHv2bEaNGkVhYSEnT54sVf7WW2/l8OHDpYbNrt+v7du357vvvgNwOmurqseJqhLIHrYQuF8p9b2IJABbRWS1cW+2Uur5ALblvKDBKcWHg86RtmAVTOhc5fr2auf+tG9ffjlAO2C7+mp4/XX4U8WOLp0GFx7iWr6i3hWgYcOGzJgxg0GDBpGRkUHHjh155513+PXXX3nuued47bXXipUXEebPn8/YsWOpW7cuSinCwsJITU11+icePnw4S5cupW/fvsTHx/Pggw969Q7+IGAeJ0oJFvkEeBm4AsgqT2FNjxPuicxX9P4+mufaLaZjYt8q15eSoo/u1mFLeZwoKIDvvtPaXcJnkoNgeZw4dOgQN9xwA0uXLuWrr77yyOvE22+/TVZWFvXr1zc9TpRERFqiN7NvQivs3SJyC5CK7oWLfRA4vCY6iJgUQcSkiMA1uJpSECV83yuKMwRmLbYYkZHQt+o/Ev7gggsuYNOmTYBnXifef/995s+fz0cffUTDhg392rb58+czf/58x6XX/vMCPkssIvHAR8BUpVQmMBdog3Yufhx4odQzDYTY1FhnMpW1iJSVebBtW3CEf/75ebEndsyYMXz11Vd+V1bQXhNTU1NJTU0FqN5eE0UkAq2s/1NKLQZQSp1UStmUUnbgNUx3MV4xe2IGjecu8bucm6fPK21PfMMNUNRbmASAgA2JRU+pvQHsUUq96JLfRCnlcF8/CtgVqDadD1z/eS3uTBzkM79OZVHKlhjgiy/K/H418Q9VVlgReUgp9ZwHRa8AxgM7De//AA8DN4pIN3TYjoPAnVVtU01iexfFsYqLeYQbF75Fcgw74mKBnZO9mi8x8QFeK6yIfOB6if72rFBhlVJfG+VLstzbNpgU0eObAhpmbIGhVa+rPDsIhx1xMYX96isdK7ZfvzKfU0r5zeonlPDVakxlethMpdTtjgsRqX5BQmsQf55dQM89q32isD/8oI/dupW+d+czi0pnzpwJSsGGDW7ri46OJj09nfr169dopVVKkZ6eTnR0dJXr8nodVkRaKaV+dbmup5T6vcotKQdzHbZsmv1mpx/9eLVF1Qcq5a3DuuWXX3ScnJYt3d62Wq0cOXKEvLy8Krct1ImOjqZZs2ZERBStcARkHdZVWY1rvyqrSfkcaWFhH2UbufuKjZ8tAKD3sIlFme3alftMREQErVq18l+jaiAeLeuISG2X8z+JyL9F5F4RifVf00w8of1uOymv74PCwooLV4GNyxawcdmC4pnffw8ffOC2vIl/qFBhReQfwG4ROSIi/wauA74DLgTe9nP7TCogZU0hj95xSG8oDzQLF3pkR2ziOzwZEl8LNAcuArYDiUa4yLdFZLsf22biAe+Nj2DDyLpsqee7sJMe8+CDcPfdgZdbg/FEYSOBBKXUjyLyqKGsiEhbCIYRq4krZ+sIOXUK8MX/in/8o+IyxWjcuMoyTbzDE4V9CdgvIscBROQmI78FUCgiOwCUUl3800ST8qh/WvHHD3PJu+ZHott0qviBcvA6PvP+/Trc5JgxpqvTAFGhwiqlXhaR+UAjTJcy1Y7ENMWLU/I4886GKivsRu3c33PF3bwZ7rgDrrgCgrCNribi0bKOUqoAOOzntphUgv1tha7HG/JO/d7UrWJdD2vn/p6vw157Lfz2GzRpUkXJJp5i+nQKcQojhNONwzlDVuCFx8frZBIwPFnW6SU12a4sBLjxtWzCVn0ReMEZGTB3bpFvGRO/48k36S1o/0vvichEETGnBqsZ9z59job/W11xwSpw5zOLStsTZ2TAlClFH78mfseTSafJACLSARgMLDAsn9YBK4FvlFLuYyK4ICLNgf+iJ68UMF8p9S8RqQe8D7REb6+7oaSLGJPy6bstnqkJo5jqRxluHaE1awbHj0Mw1oBrKB5/wyqlfgJ+AmaLSAzwB+B64EXAEwPmsrwmTgTWKKWeFZHpwHTgIe9eo2aTXtfOKapu0j1nTtn33NoSh4eba7EBplLLNEqpXKXUcqXUPZ7uNlBKHVdKfW+cnwP2AEnACOAto9hbwMjKtKkmc9WqQjq/8HmV6+nWzf3WOijDlhhg3jwdAcAkIATFzanhNfFLoDPwm1KqjpEvwBnHtYOwC8IUDYquTa+JxXl2aj63vKVIOFO1qGlfGPNWXjj0h6ZNYcgQ7Z/YpEJcvSZu3br1kFKqpTfPB1xhDa+JG4CnlVKLRSTDVUFF5IxSqtiSorkftnyi8hQXRLZjq6Vq3hO93g8LeuIpLk7vizXxisrshw2610TgpIg0Me43AU4Fsk3nA/nRwu+WDL/K+Px/z/P5/9z4eq9Tx1TWAOK1worIABF5zXCchohM8vA5t14TgU8BR0DNCcAn3rapptN6n52/zPBv2Mlrxk1zBqoqxscfw6uv+k2uSXEq08PeBjwA3Cwi/dFO2DzB4TWxf4nAV88CA0TkF+Bq49rECxqeVEx5IY+CAz/5pf59279xm382/QRn3lkAs2f7Ra5JaSpjmnjO2GI3TUSeBXp48lA5XhMBrqpEO0wMNvWy0Dy/AanSkeZ+qH/W5L5cNnAcEx75D2HhRX8ymekn+CDxLPfv2eMHqSbuqEwPu8xxopSajjaGMAkiyiKESwRppFWpnnnzdCpJUpuLia+dyMvThpGXU2Sz3PzCbmRmpIHF3MQVKLz26QQ0cPXppJR6yU9tM/GCB2ZmYvnAjStSL2jf3n2oSRHhhqkv0rnXYF6YksLpYwcByMvJQvLy9Taf3NwqyTbxjAqHxIZPpwkiotATQq2Ad4HL0D6dKg4PZuJ3hr+XS37W91CFSIlLtXN/N0Gd9ZfMVWP+Qv0mLXlhSgrNLuzGiYN7SLmgB8yaBX/+MyQlVV64iUdUuA4rIjuBrpT26YSIbFdKdfV3I8112IoJV2E8KjO5n/srXUdZ67C7vl1J516DnNd5OVkc2PUddRs2o0nzdnpIbG7o8hp/+SU2fTqFAIVi45jPouwUp1XHnnz08kNs/+pTMs+cBKVIqNeIbn1GMOiW6cTVqurWeRNPMX06nSeM/LCQARs+gZdLhdetMvMeuYGOPQcw7ZX11Kqvo9Vlpp9k4/K3mP/gKP6a0ANuvBG6d/e5bJPimD6dzhPa77HTadVRHevGx8PTM6cOM+iW4huoatVvxKDxD/LN4nnw1ia9a8BUWL9j+nQ6T3jusUgWPpbET2UudVeeeo0vYMV/n6X30InUrq+3051NP8G3y96ifou2kLvf5zJN3BOU3TreYk46eUYMMZyqgin2YeMnuXkJ64uccxms/O+z/PDlJ5w7cwqFolbdRnTrO4JBE2YQG1+7dGUmFVKZSSdTYc8TLvjVzsyZVkZOXUdU8hWBFf7UU3qbnRm2wysCEr3OpHpiscPlG22cHbePhlROYd9/Xx/HjCl9b+fG5Wz/6lMyTh0FoE7DJLr2GcHFvQfDihXQqZOpsAHAVNjzhF/bWOh9oDEfcxENK1nHXCM0d0mFfef5uzl97Fd6Db6Feo30ePn3k4dZt+hlfvx2BWNNJ2wBw1TY8wiF4jjHfV7vj9+t5OlF+4rltQF6DBjDo6PLjxFr4lsCtkwjIv8RkVMisssl7wkROVpiu51JJZnx4BmSHp/v83qjouM4sOu7UvkHdm0iMiYOFi3SITtM/E4ge9gFwMuU3t0zWynlxpWBibfUP1lIYZzve9gJj77JO7OmkJOVQd0GzQDISDtKTHxtbp25AJZ8ru0ZbTYIM43f/ElAZ4kN52ufKaU6G9dPAFkVKaw5S+w5QxjC+7xfqWcr8umUmX6SM2l60qlugySn1ZNJ5QjVWeK7ReQWIBXtt7iUE3GVpshJznFem14Ty+Y3fqv0s4vK2Z33/OQUAKbNXV/p+k2Ke00E3HhnL59gmxrORc9fdAOOA24NYaWBEJsa60ymsrqn79pC5vT7QXvjrwSJiTp5zYEDemo5NbVScmsSkyZNIjU1lVT9b3Xa2+eDqrBKqZNKKZtSyg68BvQMZntCHVuYUIgVe/a5Sj2/YIFOlWLbNjjt9d+fiZcEdUgsIk2UUo7uYBSwq7zyoYJ9j528m/JQpxRRr0YRfm04SilExHm0H7dj+8IGWRB2TRiWNkW/nSpTgQUk3ju74G/6hTFqQz1+IJ6mlWi3Q1knTvTywdat4eefKyHRxFsCprAi8i6QAiSKyBHgcSDFcJeq0IGw7nT3rMpTFH5WaFSEHhe4pjCQCNFvEwFEgkSK3skbCRIlEA1Eg4QFYKN1HYj6TxQFjxagThuTekq33aG01les2PfYQcC+207EQxFYmlmwbbBR8HwB9k12wkaGEflkJJbGng+EIojgEIdoWimVNanuBExhlVI3usl+w5Nnw9Ps5F2b55N2SDiExQgSAxIjSCyoWMEeq1BxArEgcQLxuoeT+KJzElyOtQRJEKiFPsZoZQSwNLFAEyAKpHbRD4Sjd7WtsKGOKqKej8LS0kLu0Fxs62xYxlsoeK6A8OvCiVgaQe7oXGxLbFjusjifrYj516VTu8MseHpxhWV9yv336wgATz4ZWLk1jOowS1wh7RvV5z9L01EKZ7LbdbLZdLIWClarYLVasFohv0AoKBDy8yG/APLyjJSvyMtV5OZCdradvFxFTo5Oub9D1mHIyoLsbMjO0s94QouxkXR6J4FMIAM7ZygkN0uBYyOL4OxlbV/bsHS1IHW0AkptgTCwfWvD0sqCJVn3qGFXhKHSFOqsKqb45XEqURFfO9+rf1+fkJ4O1qrF9jGpmJBQ2MjIMJKTPfmDVUCFoWrLwH39NpsiKwvOncN5PHcOzmZayDwXxrks4dw5aHehhREqD7ADNpStkKty7cxKsNLZbidHCVlKyEaY+budZq2EztEFZNqFd2MUSRYLeQeE4/FhJNWNxqosHKhnJ+OkDZVjx3ZUKHiuAKlV1MOToHt3197/z/eEMSm+HZ1OnyYuLo7o6GiPeuYqU+nZKhNvCAmFDSZhYULt2lC71JZPhQ55657cAkV+PtSKtRGPnVilqGeHcIuQZFFcFgnXFUJMpPBNGkxKsHHmjLBd2flLRD6NFLyRV8BvYTbuj1DsTLMwYYNd/2BkgrVs0fzL+A/AYrEQFxdXKsXGxhIbG+s8j4mJ4ZJLahMTE8Ozz4YTHR1NdHQ0MTExREdHczo9HYtFWL9+PdHR0URFRRVL0dHRREZGEhUVRWRkZGB+JHyMUoqCggLy8vKKpdzcXGfKy8sjJyenWJ7rdU5OjvO65NH1vFOnTpVqo6mwfiIqSntqaWfYxlss4vS3nXwpfLcJxo/Xf9Q//6Jo2aKApo3hkyUQHWYlAuHX/YpmzSAuFlL6KA4d0OWV0j8GmZlFPf65c5CVDTEbLVz6qp1P7vozh+OSyM7OLpaysrLIyckhOzub06dPk5ubS3Z2tvOPKa+Mb4CLjbjNz7z/B7f3+wNPor2sHgMiIiKIjIwslRz5ERERREREEB4e7jwPCwsjPDycsLAwwsLCsFgsiIjz6EiOfwPXZLfbsdlszqPNZqOwsJDCwkKsVmuxVFBQgNVqJT8/v1SqLCJCTEwMMTExzh9AxzEmJob69es7z2NiYmjdujXrvQoTqDEV1g/cd79i0Udw5Ahc1AmeeEwRE6O/vUeOhD/+ET5cBP+cpcjLg0u7Q8uWEBcn/LJPsW8fxMcrlnwCSxZDdHTx3kpEiI6G6GhoWHIvXXM7HAjj5psbQocZXrX7lVdAKTu33ZZPbm4u+fn5zp4hPz+fvLy8YkfXVO/HH2n+2WfMHDGCEwkJFBQUkJ+fX0w5XI+O5FConJwcp5I5FM5utzuV0aGYJf8dHMmh4K7H8PBw5w+Co+d3/dFwJMeIwfXoOHdVMnfJoZRRUVFejyoefPBBr8pDiHicSE5upFI3Vy0MRSCx25Vz4urMGahbF/LztXP8iy7S/1PXrFEs/hgKC+FvT0Djxjr/iy8U0x7U38sP3A+TJlHJ4eVIsHg3U1yp+LAmlSZUbYnPOywWoVYtqFULmjRxX+aqq4Sr3IQAu/pq4YfvfdAI+3af2rGZtsTVA1Nhz0duV7DrV9hkA/HNdrfeQydWXGj0aGjRAl58seKyJpXCVNjzkT5A2wi08Vgbn1TZe9jEigslJbn5qDbxJabCno9MECAG2I2vFPZchjbsT6hTznaef/3LJ7JMysZU2POVwmzI3woJpULRlUl5k03zZowGzG/YYBPs/bAm/iBPQZ1CmP1eYOWuXQvNmsHOnYGVW4Mwe9jzkWiBhxVcWcp5R7k8bzjqmTatknKbNoWrroII08GAvwi218R6IrJaRH4xjmbcQl/xsEDfM6AKPH7ks890qjQdOsBbb+mjiV8I5JB4ATCoRN50YI1Sqh2wxrg28QVKwcEoKAjC8NRuD7zMGkLAFFYp9SXwe4nsEcBbxvlbwMhAtee8ZwnQJgu2V6XLrAQ33IBbixATnxDsb9hGLi5iTqBj0JYiLS2X5J5FJpSTbodJk0JvN0hA6QXMFWjmn6jsZXL11dom08QtVfWaGGyFdaKUUiLi1rC5QYMYUjdnBbpJoU1jgUkAng+JY3zh+nnSJB9Ucv4yadIkJhn/RiLitde6YCvsSYcjNhFpAlUIbmpSmjQFv+2EHp4VX7HCR3KtVv0dGxXlowpNHAR7HfZTYIJxPgH4JIhtOf94BBicBfaq73TqPXSiZ/bEe/fqrvrjj6ss06Q0wfaa+CzwgYj8CTiE3v9s4iumAGPiQO0AKp4IeuopfZw5s/Q9j2yJQRv/T59uLu34CXM/7HlPNMizIPdWWLK8/bAe2RKbeEVl9sMGe0hs4k+Ugo258MOqKlc1b8Zopz1xhdhslQ4XYlI+wZ50MvEnInCDggFfF612V5IBN93veeG774YPPzRDd/gBU2HPdz4ELsgFVbXN7F37eL7rhxtvhORkPVNsMQdxvsRU2POdXoKOU/IzcFG5RevXL/veiUN7AWh8QfuKZfbtq5OJzzEV9nznrIJPrNBnObQpX2E/+qjsewuf1WGPPNoPqxQcO6Z72ObNvWisSUWY45XznSzg1jxYVk60Zn/QuTM8/XRgZdYAzB72fCdJYJeC9hUbkc0w3Bg/80wVZYrA669D27ZVrMikJKbC1gQuEuAoqHSQsj9Uv/3WhzKvu86HlZk4MIfENYFTCh4GtnkU3dM3WK2wYQPs3x84mTUAU2FrAtHAy/nw3fuBk5mTA/37m1HtfIw5JK4J1BI4riBuL6h8kADsoqldG9asgUsu8b+sGoTZw9YU4gQIA/vSMos0a6aTz0hJcRen06QKmD1sTeKvmXDoTlji3iZ44UIfy1MK3nwT4uJgzBgfV14zqRYKKyIHgXPo8OmF3u5gMPGQJkBkJth3g6WjV496ZUvsQARee01HBDMV1idUi+11hsImK6XcWoub2+t8SRgwHCylzZqmTtXHOXN8KC4tDRITtfKaFMPcXmfiATbYugy+/7DUnR9+0MkdJw7tddoTe0WDBlpZrVbvnzUpRXVRWAV8LiJbRaSUFy+H10RHmj8/+KOCkMWq4Lp8ePxO/Y3pIQufvdNpT+w1mzbpEPPf+yLwbWgzf/58kpOTSU5OhhD2mnilUuqoiDQEVovIT4YfY8D0muhTIgTeV9C+AHgfGOvRY6Mm/6PyMjt0gO7dIcw3sWpDmVD3mgiAUuqocTwlIh8DPYEvy3/KpNJcJkAO2O6EYxdCi+4VPtKmS+/Ky6tdG5aWvZwUithsNue5xWJBXL7RrVYrSikiIyN9LjfoQ2IRiRORBMc5cA2wq/ynTHzCXVnQtzfk6NHLhRfq5I79Ozayf8fGqsnLzoYnn4TMzKrV42eWL19O+/btad++PbNmzSp1/4033qBRo0b06NGDnj178tZbRe48XnvtNTp27EiXLl148803fd84pVRQE9Aa2G6kH4FHSpa59NKGStnETL5OG1Hq5UilbNNURcy6q5+adVe/CsuVy6ZNSoWFKfXuu1Wrx49YrVbVpk0bdfjwYZWfn6+6du2qfvrpp2Jl3nzzTTV16tRSz546dUq1bt1a5ebmqszMTNW6dWuVkZFRpiwgVXmpL0EfEiulDgBdyytz+nQuw0eUPUEiUrRq4Hp0PbdYys5zvVdWniO5y3N9pry8sLBy8sR9ubCw0vW55lUpxYBcWYDlx38TecKOPelPWCIiEBHnMM9isWCxWMjPzwcRTpw44fa+J3nSoweydy+08U1UeH+wefNm2rVrRzPD5Gvs2LEsWbKEhx56yFlGKYXVasVut6OUIsz4Nv/8888ZPHgw0dHRREVFMXDgQFasWMHYsZ7NE3hC0BXWE2w2OHIUoPRanlJFk52ux5LndnvZea7nZeUVnatSeTZb6XLVYHnbYxLJ5Ude5L/s5AFGA6Vng4cazioebdKkyvIsFgudgDARdoeFFVPs8pLjWce563ejuzzXe6qM/yGO/B07dtCoUSOOHTtGcxcvGUlJSWzZsqVU+5csWcLXX39Nu3btePHFF2nevDnHjx8nKSnJKbNp06YcO6ZjG/Xv359NmzY567ikkjbWIaGwjRpdSOqWtW7uqBJHx7kqca+8ZHdzXjKvZH7JvJLndpSyoZQNu92O3W7FbrdhsznyCrHbbUZeIUrZndd2e6FLOcd9hc2m61DKbty3Y7MVGvXbit2z2+3YjaNSNqOczaWcMso5ZNs5uuwwazY+SofI9jz8cIyz99D129nz2SwUimH33ufMc9x3LedJnios5N5588iOjWXeuHHYXe6XlQDn845z5/9xl/ul/kJc8twpsyM/youwIiNGjGD8+PFYLBZef/11brnlFtatW+e2XQ6Zo0aNonv37s7rpKQkvvnmG49lOggJhQVAagW7BV4hoscDllBZyRgLuSk6fOD4iAi49lptA2zw/FZtaHzXXXf5Rt6YMTSoV49nqpnPp6SkJA4fPuy8Pnz4sHN47KBOnTrO81tvvZVpRsj65s2bs2bNGue93377jYEDBwJwzz33lJL117/+1ev2BX2W2KR60TL7Rxg3Dv7v//wrqGtX7aBNKZg3DzIy/CvPQ3r06MEvv/zCoUOHyM/P54MPPmDEiBHFyhw7dgy7XY9mFi9eTJcuXQAYOHAga9euJS0tjRMnTrBu3TqnwvqK0OlhTQLCwbhO8NVX0MMIeZef798odD//DPfcA+fOgdFTBZPw8HBeeuklrrnmGux2O7fffjvt27fn8ccfp0ePHgwbNoyXX36ZpUuXEh4eTmJiIguMTfp16tThiSee4IorrkBEeOqpp0hISPBp+6qF8X9FJCcnq9TU1GA347ynlPF/Tg5cfjmMH8/zB5YBHro59ZbUVL3RPSxM97g1ZKOAafxvUiXmzHGzU6dHDz189SfJyVpZMzL0pveNVTTQOI8xh8QmZRMbC29ox22jGsfDp5/CP/+ph67+CMGRnq7j8RQW+r7u8wSzhzVxcvPNOrmjTZfetNl7FNau9d+QtU0b2LGjKMzHqlXanNHESUgobFpa8Davz58/v8bIPXIEtmw55vbe/h0b2T/tLh3PQ0T3hpMn65AcPsD5vo4dPcePw4gR8PjjPqnfI9mBx/tgu97aMgYjxcbGlmmP6W8uvfTSGiO3Xz+l4uNT3d4rZUv88cdKxcUptWuXT2S7fd+1a5VKT9fnv/+ulNXqE1keyQ4AQLYKNVtik9Dg5unzimeMHKm7ZIcRwcaN0KuXb4fLf/iDPiqlQ1j26QOPPOK7+kOQkFjWEZFzQCX8k/iERCAYkYlNuee/7PZKKa8WakNCYU1MTDQhMelkYmKiMRXWxCSEqPYKKyKDRGSviOwTkekBlHtQRHaKyA8i4le7SBH5j4icEpFdLnn1RGS1iPxiHOsGSO4TInLUeO8fRGSIH+Q2F5F1IrJbRH4Ukb8Y+X5953Lk+vWdRSRaRDaLyHZD7t+M/FYissn4235fRCp2AuXttHIgE9rr9X60G5lItBuZjgGSfRBIDJCsvkB3YJdL3j+B6cb5dOC5AMl9Apjm5/dtAnQ3zhOAn4GO/n7ncuT69Z3ROy3jjfMIYBNwOfABMNbIfxWYXFFd1b2H7QnsU0odUEoVAO8BIyp4JuRQ2qXr7yWyRwAO715vASMDJNfvKKWOK6W+N87PAXuAJPz8zuXI9StK4/DTG2EkBfQHFhn5Hr1vdVfYJOCwy/URAvAPbFCuc/MA0Egpddw4P4HeWx4o7haRHcaQ2edDcVdEpCVwCbrXCdg7l5ALfn5nEQkTkR+AU8Bq9MgxQynlMJz26G+7uitsMLlSKdUdGAz8WUT6BqshSo+ZArX+NhdoA3QDjgMv+EuQiMQDHwFTlVLFfJ/6853dyPX7OyulbEqpbkAz9MixQ2Xqqe4KexRw9SHSzMjzO8rFuTngcG4eSE6KSBMA43gqEEKVUieNPy478Bp+em8RiUArzf+UUouNbL+/szu5gXpnQ1YGsA7oBdQREYe1oUd/29VdYbcA7YzZtEh0XIlP/S20mjg3/xSYYJxPAD4JhFCHwhiMwg/vLdoT2RvAHqXUiy63/PrOZcn19zuLSAMRqWOcxwAD0N/P6wBHsF7P3tefs4E+mmEbgp7N248bJ+N+klmhc3Mfy3sXPRSzor9l/gTUB9YAvwBfAPUCJPdtYCewA61ATfwg90r0cHcH8IORhvj7ncuR69d3BroA24z6dwGPufydbQb2AR8CURXVZZommpiEENV9SGxiYuKCqbAmJiGEqbAmJiGEqbAmJiGEqbAmJiGEqbAmJiGEqbAmJiGEqbBBRERGiogSEa/sSkWkUq7xRSTLTd46ERlYIm+qiMytpIyWrvtrK1nHqyJyRVXqOF8xFTa43Ah8bRyLIRqLu2ulVG8ftuFdtMmnK2ON/GBxOfBdEOVXW0yFDRLGjpEr0eaAY428loZ3jf+iTdj6lLhubpTLEpFnReTPLvU9ISLTjPMlxrbAHz3YGrgIGOrwdmBsO2sKfOWDd2wtIttEpIfxbj+JyAIR+VlE/iciV4vIN4aHiZ7GMxcBPyulbIZN9zLDU8MuERlT1TaFPP60kTVTufal44A3jPONwKVAS3QI98uN/GLXLs9mofdybnDJ2w00N87rGccYtKLXdzxXRls+A0YY59OB56vwXi0Nme3R9rNdXfILgYvRHcVW4D9obwwjgCVGufuA24zz64DXXOquHez/b8FOZg8bPG5Ee9DAODqGxYeUUq7DwZLXACiltgENRaSpiHQFziilHJv97xWR7ehhZXOgXQVtcR0W+2I43AC982ScUmq7S/6vSqmdSm9j+xFYo7Qm7kQrNMBAYKVxvhMYICLPiUgfpdTZKrYr5DE9/wcBEamHdg9ysYgotO8qBfwbKBn9qbxoUB+it2c1Bt436k4BrgZ6KaVyRGQ9EF1Bkz4BZotIdyBWKbXVqEuAJ9FeGZoAkUqpf3vwimeB39BD/t0u+fku53aXazsQLiKxQB2l1DEApdTPRpuGAH8XkTVKqSc9kH/eYvawwWE08LZS6gKlVEulVHPgV4pv1veE99E94mi08gLURve2Ocbs8+UVVaK0v6F16CGqa+/aHfgScAQdLnTZ17lGRMpyaVKA3ld6i4jc5MX7/MFoB4aMpkCOUmohMMtoT43G7GGDw43AcyXyPgJmeFOJUupHY6P9UVXkC2klcJeI7EGHN/F0tvVdtGcN1xnjA0abDgJ90H8vrxmz1W0px4GbUipbRIYBq43lpB0etGEwRU7JQH/vzhIRO3rP7mQP3+W8xdwPa+I1ItIZPTF0n4/r/R64TCll9WW95xOmwpqYhBDmN6yJSQhhKqyJSQhhKqyJSQhhKqyJSQhhKqyJSQhhKqyJSQhhKqyJSQjx/9h41ZZYoeFtAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x = np.loadtxt('../data/jsr-paper/neptune/'+runID+'vinf_kms_array.txt')\n", "y = np.loadtxt('../data/jsr-paper/neptune/'+runID+'betaRatio_array.txt')\n", "\n", "Z1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'TCW_array.txt')\n", "G1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'acc_net_g_max_array.txt')\n", "Q1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'q_stag_total_max_array.txt')\n", "H1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'heatload_max_array.txt')\n", "S1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'stag_pres_atm_max_array.txt')\n", "\n", "\n", "f1 = interpolate.interp2d(x, y, np.transpose(Z1), kind='cubic')\n", "g1 = interpolate.interp2d(x, y, np.transpose(G1), kind='cubic')\n", "q1 = interpolate.interp2d(x, y, np.transpose(Q1), kind='cubic')\n", "h1 = interpolate.interp2d(x, y, np.transpose(H1), kind='cubic')\n", "s1 = interpolate.interp2d(x, y, np.transpose(S1), kind='cubic')\n", "\n", "\n", "x_new = np.linspace( 0.0, 30, 110)\n", "y_new = np.linspace( 0.0, 41 ,110)\n", "\n", "z1_new = np.zeros((len(x_new),len(y_new)))\n", "g1_new = np.zeros((len(x_new),len(y_new)))\n", "q1_new = np.zeros((len(x_new),len(y_new)))\n", "h1_new = np.zeros((len(x_new),len(y_new)))\n", "s1_new = np.zeros((len(x_new),len(y_new)))\n", "\n", "for i in range(0,len(x_new)):\n", " for j in range(0,len(y_new)):\n", "\n", " z1_new[i,j] = f1(x_new[i],y_new[j])\n", " g1_new[i,j] = g1(x_new[i],y_new[j])\n", " q1_new[i,j] = q1(x_new[i],y_new[j])\n", " h1_new[i,j] = h1(x_new[i],y_new[j])\n", " s1_new[i,j] = s1(x_new[i],y_new[j])\n", "\n", "\n", "Z1 = z1_new\n", "G1 = g1_new\n", "Q1 = q1_new\n", "S1 = s1_new\n", "H1 = h1_new/1000.0\n", "\n", "X, Y = np.meshgrid(x_new, y_new)\n", "\n", "Zlevels = np.array([0.5, 1.0])\n", "\n", "Glevels = np.array([8])\n", "Qlevels = np.array([1200, 1600])\n", "Hlevels = np.array([200])\n", "#Slevels = np.array([0.8])\n", "\n", "\n", "fig = plt.figure()\n", "fig.set_size_inches([3.25,3.25])\n", "rcParams['font.family'] = 'sans-serif'\n", "rcParams['font.sans-serif'] = ['DejaVu Sans']\n", "\n", "plt.xlim([0.0,30.0])\n", "plt.ylim([1.0,41.0])\n", "\n", "\n", "ZCS1 = plt.contour(X, Y, np.transpose(Z1), levels=Zlevels, colors='black')\n", "\n", "\n", "\n", "\n", "plt.clabel(ZCS1, inline=1, fontsize=10, colors='black',fmt='%.2f',inline_spacing=1)\n", "ZCS1.collections[0].set_linewidths(1.5)\n", "ZCS1.collections[1].set_linewidths(1.5)\n", "ZCS1.collections[0].set_label(r'$TCW, deg$')\n", "\n", "\n", "GCS1 = plt.contour(X, Y, np.transpose(G1), levels=Glevels, colors='blue',linestyles='dashed')\n", "\n", "Glabels=plt.clabel(GCS1, inline=1, fontsize=10, colors='blue',fmt='%d',inline_spacing=0)\n", "GCS1.collections[0].set_linewidths(1.5)\n", "GCS1.collections[0].set_linewidths(1.5)\n", "\n", "GCS1.collections[0].set_label(r'$g$'+r'-load')\n", "\n", "\n", "\n", "\n", "\n", "QCS1 = plt.contour(X, Y, np.transpose(Q1), levels=Qlevels, colors='red',linestyles='dotted')\n", "\n", "plt.clabel(QCS1, inline=1, fontsize=10, colors='red',fmt='%d',inline_spacing=0)\n", "QCS1.collections[0].set_linewidths(1.5)\n", "QCS1.collections[1].set_linewidths(1.5)\n", "QCS1.collections[0].set_label(r'$\\dot{q}$'+', '+r'$W/cm^2$')\n", "\n", "\n", "HCS1 = plt.contour(X, Y, np.transpose(H1), levels=Hlevels, colors='xkcd:brown',linestyles='dashdot')\n", "\n", "Hlabels=plt.clabel(HCS1, inline=1, fontsize=10, colors='xkcd:brown',fmt='%d',inline_spacing=0)\n", "HCS1.collections[0].set_linewidths(1.5)\n", "\n", "HCS1.collections[0].set_label(r'$Q$'+', '+r'$kJ/cm^2$')\n", "\n", "\n", "#GCS1.collections[0].set_label(r'$Peak$'+r' '+r'$g-load$')\n", "#plt.grid(True,linestyle='dotted', linewidth=0.3)\n", "params = {'mathtext.default': 'regular' } \n", "plt.rcParams.update(params)\n", "plt.ylabel(r'$\\beta_2$'+' / '+r'$ \\beta_1 $' ,fontsize=10)\n", "plt.xlabel(\"Arrival \"+r'$V_\\infty$'+r', km/s' ,fontsize=10)\n", "plt.xticks(fontsize=10)\n", "plt.yticks(fontsize=10)\n", "ax = plt.gca()\n", "ax.tick_params(direction='in')\n", "ax.yaxis.set_ticks_position('both')\n", "ax.xaxis.set_ticks_position('both')\n", "plt.legend(loc='upper right', fontsize=8)\n", "\n", "for l in Hlabels:\n", " l.set_rotation(-90)\n", "for l in Glabels:\n", " l.set_rotation(-90)\n", "\n", "dat0 = ZCS1.allsegs[1][0]\n", "\n", "x1,y1=dat0[:,0],dat0[:,1]\n", "F1 = interpolate.interp1d(x1, y1, kind='linear',fill_value='extrapolate', bounds_error=False)\n", "\n", "\n", "dat2 = QCS1.allsegs[0][0]\n", "x3,y3= dat2[:,0],dat2[:,1]\n", "F3 = interpolate.interp1d(x3, y3, kind='linear',fill_value='extrapolate', bounds_error=False)\n", "\n", "dat0a = ZCS1.allsegs[0][0]\n", "x1a,y1a=dat0a[:,0],dat0a[:,1]\n", "F1a = interpolate.interp1d(x1a, y1a, kind='linear',fill_value='extrapolate', bounds_error=False)\n", "\n", "\n", "x4 = np.linspace(0,30,301)\n", "y4 = F1(x4)\n", "y4a =F1a(x4)\n", "\n", "\n", "y6 = F3(x4)\n", "\n", "y7 = y6\n", "y8 = np.minimum(y4,y6)\n", "\n", "\n", "\n", "plt.fill_between(x4, y4, y7, where=y4<=y7,color='xkcd:neon green')\n", "\n", "plt.fill_between(x4, y4a, y8, where=y4a<=y8,color='xkcd:bright yellow')\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-small.png', dpi= 300,bbox_inches='tight')\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-small.pdf', dpi=300,bbox_inches='tight')\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-small.eps', dpi=300,bbox_inches='tight')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "The PostScript backend does not support transparency; partially transparent artists will be rendered opaque.\n", "The PostScript backend does not support transparency; partially transparent artists will be rendered opaque.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x = np.loadtxt('../data/jsr-paper/neptune/'+runID+'vinf_kms_array.txt')\n", "y = np.loadtxt('../data/jsr-paper/neptune/'+runID+'betaRatio_array.txt')\n", "\n", "Z1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'TCW_array.txt')\n", "G1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'acc_net_g_max_array.txt')\n", "Q1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'q_stag_total_max_array.txt')\n", "H1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'heatload_max_array.txt')\n", "S1 = np.loadtxt('../data/jsr-paper/neptune/'+runID+'stag_pres_atm_max_array.txt')\n", "\n", "f1 = interpolate.interp2d(x, y, np.transpose(Z1), kind='cubic')\n", "g1 = interpolate.interp2d(x, y, np.transpose(G1), kind='cubic')\n", "q1 = interpolate.interp2d(x, y, np.transpose(Q1), kind='cubic')\n", "h1 = interpolate.interp2d(x, y, np.transpose(H1), kind='cubic')\n", "\n", "x_new = np.linspace( 0.0, 30, 310)\n", "y_new = np.linspace( 1.0, 41 , 110)\n", "\n", "z1_new = np.zeros((len(x_new),len(y_new)))\n", "g1_new = np.zeros((len(x_new),len(y_new)))\n", "q1_new = np.zeros((len(x_new),len(y_new)))\n", "h1_new = np.zeros((len(x_new),len(y_new)))\n", "#s1_new = np.zeros((len(x_new),len(y_new)))\n", "\n", "for i in range(0,len(x_new)):\n", " for j in range(0,len(y_new)):\n", "\n", " z1_new[i,j] = f1(x_new[i],y_new[j])\n", " g1_new[i,j] = g1(x_new[i],y_new[j])\n", " q1_new[i,j] = q1(x_new[i],y_new[j])\n", " h1_new[i,j] = h1(x_new[i],y_new[j])\n", "\n", "Z1 = z1_new\n", "G1 = g1_new\n", "Q1 = q1_new\n", "H1 = h1_new/1000.0\n", "\n", "X, Y = np.meshgrid(x_new, y_new)\n", "\n", "Zlevels = np.array([0.5 ,0.8, 1.0, 1.1, 1.2, 1.3])\n", "\n", "Glevels = np.array([3.0, 5.0, 6.0 , 8.0])\n", "Qlevels = np.array([900.0, 1000.0 , 1200.0, 1500.0 ])\n", "Hlevels = np.array([160.0, 180.0, 200.0, 220.0])\n", "#Slevels = np.array([0.8])\n", "\n", "fig = plt.figure()\n", "fig.set_size_inches([6.5,6.5])\n", "rcParams['font.family'] = 'sans-serif'\n", "rcParams['font.sans-serif'] = ['DejaVu Sans']\n", "\n", "ZCS1 = plt.contour(X, Y, np.transpose(Z1), levels=Zlevels, colors='black')\n", "\n", "\n", "\n", "\n", "plt.clabel(ZCS1, inline=1, fontsize=10, colors='black',fmt='%.1f',inline_spacing=1)\n", "ZCS1.collections[0].set_linewidths(1.5)\n", "ZCS1.collections[1].set_linewidths(1.5)\n", "ZCS1.collections[2].set_linewidths(1.5)\n", "ZCS1.collections[3].set_linewidths(1.5)\n", "ZCS1.collections[4].set_linewidths(1.5)\n", "ZCS1.collections[5].set_linewidths(1.5)\n", "\n", "ZCS1.collections[0].set_label(r'$TCW, deg$')\n", "\n", "\n", "GCS1 = plt.contour(X, Y, np.transpose(G1), levels=Glevels, colors='blue',linestyles='dashed')\n", "\n", "Glabels=plt.clabel(GCS1, inline=1, fontsize=10, colors='blue',fmt='%d',inline_spacing=0)\n", "GCS1.collections[0].set_linewidths(1.5)\n", "GCS1.collections[1].set_linewidths(1.5)\n", "GCS1.collections[2].set_linewidths(1.5)\n", "\n", "GCS1.collections[0].set_label(r'$g$'+r'-load')\n", "\n", "\n", "for l in Glabels:\n", " l.set_rotation(-90)\n", "\n", "QCS1 = plt.contour(X, Y, np.transpose(Q1), levels=Qlevels, colors='red',linestyles='dotted')\n", "\n", "plt.clabel(QCS1, inline=1, fontsize=10, colors='red',fmt='%d',inline_spacing=0)\n", "QCS1.collections[0].set_linewidths(1.5)\n", "QCS1.collections[1].set_linewidths(1.5)\n", "QCS1.collections[2].set_linewidths(1.5)\n", "QCS1.collections[3].set_linewidths(1.5)\n", "\n", "QCS1.collections[0].set_label(r'$\\dot{q}$'+', '+r'$W/cm^2$')\n", "\n", "\n", "HCS1 = plt.contour(X, Y, np.transpose(H1), levels=Hlevels, colors='xkcd:brown',linestyles='dashdot')\n", "\n", "Hlabels=plt.clabel(HCS1, inline=1, fontsize=10, colors='xkcd:brown',fmt='%d',inline_spacing=0)\n", "HCS1.collections[0].set_linewidths(1.75)\n", "HCS1.collections[1].set_linewidths(1.75)\n", "HCS1.collections[2].set_linewidths(1.75)\n", "HCS1.collections[3].set_linewidths(1.75)\n", "\n", "HCS1.collections[0].set_label(r'$Q$'+', '+r'$kJ/cm^2$')\n", "\n", "for l in Hlabels:\n", " l.set_rotation(-90)\n", " \n", "plt.ylim(1,11)\n", "#plt.grid(True,linestyle='dotted', linewidth=0.3)\n", "params = {'mathtext.default': 'regular' } \n", "plt.rcParams.update(params)\n", "plt.ylabel(r'$\\beta_2$'+' / '+r'$ \\beta_1 $' ,fontsize=12)\n", "plt.xlabel(\"Arrival \"+r'$V_\\infty$'+r', km/s' ,fontsize=12)\n", "plt.xticks(np.array([ 0.0, 5, 10, 15, 20, 25, 30]),fontsize=12)\n", "plt.yticks(np.array([ 1, 10, 20, 30, 40]),fontsize=12)\n", "ax = plt.gca()\n", "ax.tick_params(direction='in')\n", "ax.yaxis.set_ticks_position('both')\n", "ax.xaxis.set_ticks_position('both')\n", "plt.legend(loc='upper right', fontsize=12)\n", "\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-large.png', dpi= 300,bbox_inches='tight')\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-large.pdf', dpi=300,bbox_inches='tight')\n", "plt.savefig('../data/jsr-paper/neptune/neptune-drag-large.eps', dpi=300,bbox_inches='tight')\n", "\n", "\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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": 5 }