{ "cells": [ { "cell_type": "markdown", "id": "9e33a56f", "metadata": {}, "source": [ "# Example - 71 - Uranus Arrival, Approach, Entry State" ] }, { "cell_type": "markdown", "id": "48a32d8d", "metadata": {}, "source": [ "In this example we illustrate the use of AMAT to compute the state at atmospheric entry for two approach trajectories: one prograde and other retrograde." ] }, { "cell_type": "code", "execution_count": 1, "id": "919b9aba", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "from astropy.time import Time\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 2, "id": "b4db1909", "metadata": {}, "outputs": [], "source": [ "from AMAT.planet import Planet\n", "from AMAT.arrival import Arrival\n", "from AMAT.approach import Approach\n", "from AMAT.vehicle import Vehicle" ] }, { "cell_type": "code", "execution_count": 3, "id": "bee9cf57", "metadata": {}, "outputs": [], "source": [ "arrival = Arrival()\n", "arrival.set_vinf_vec_from_lambert_arc('JUPITER',\n", " 'URANUS',\n", " Time(\"2035-09-04 00:00:00\", scale='tdb'),\n", " Time(\"2039-05-18 00:00:00\", scale='tdb'))" ] }, { "cell_type": "code", "execution_count": 4, "id": "3bf729b4", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Entry altitude, km: 1000.0\n", "Entry longitude BI, deg: -80.95\n", "Entry latitude BI, deg: 25.22\n", "Atm. relative entry speed, km/s: 27.5946\n", "Atm. relative heading angle, deg: 132.066\n", "Atm. relative EFPA, deg: -11.1875\n" ] } ], "source": [ "# prograde approach\n", "approach1 = Approach(\"URANUS\", v_inf_vec_icrf_kms=arrival.v_inf_vec,\n", " rp=(25559+400)*1e3, psi=3*np.pi/2,\n", " is_entrySystem=True, h_EI=1000e3)\n", "\n", "print(\"Entry altitude, km: \"+ str(approach1.h_EI/1e3))\n", "print(\"Entry longitude BI, deg: \"+ str(round(approach1.longitude_entry_bi*180/np.pi, 2)))\n", "print(\"Entry latitude BI, deg: \"+ str(round(approach1.latitude_entry_bi*180/np.pi, 2)))\n", "print(\"Atm. relative entry speed, km/s: \"+str(round(approach1.v_entry_atm_mag/1e3, 4)))\n", "print(\"Atm. relative heading angle, deg: \"+str(round(approach1.heading_entry_atm*180/np.pi, 4)))\n", "print(\"Atm. relative EFPA, deg: \"+str(round(approach1.gamma_entry_atm*180/np.pi, 4)))" ] }, { "cell_type": "code", "execution_count": 5, "id": "09f92eab", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Entry altitude, km: 1000.0\n", "Entry longitude BI, deg: 50.51\n", "Entry latitude BI, deg: 25.22\n", "Atm. relative entry speed, km/s: 31.0646\n", "Atm. relative heading angle, deg: 41.2577\n", "Atm. relative EFPA, deg: -9.9243\n" ] } ], "source": [ "# retrograde approach\n", "approach1 = Approach(\"URANUS\", v_inf_vec_icrf_kms=arrival.v_inf_vec,\n", " rp=(25559+400)*1e3, psi=np.pi/2,\n", " is_entrySystem=True, h_EI=1000e3)\n", "\n", "print(\"Entry altitude, km: \"+ str(approach1.h_EI/1e3))\n", "print(\"Entry longitude BI, deg: \"+ str(round(approach1.longitude_entry_bi*180/np.pi, 2)))\n", "print(\"Entry latitude BI, deg: \"+ str(round(approach1.latitude_entry_bi*180/np.pi, 2)))\n", "print(\"Atm. relative entry speed, km/s: \"+str(round(approach1.v_entry_atm_mag/1e3, 4)))\n", "print(\"Atm. relative heading angle, deg: \"+str(round(approach1.heading_entry_atm*180/np.pi, 4)))\n", "print(\"Atm. relative EFPA, deg: \"+str(round(approach1.gamma_entry_atm*180/np.pi, 4)))" ] } ], "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.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }