{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Introducción\n", "\n", "> \"Sometimes I think, how lucky we are to live in this time, the first moment in human history when we are, in fact visiting other worlds and engaging in a deep reconnaissance of the cosmos\" — Carl Sagan\n", "\n", "Cuando aún resonaban los ecos de la «expulsión» de Plutón de nuestro sistema planetario (o más bien, de su descenso a la división de los planetas enanos), de repente dos científicos del Instituto de Tecnología de California (Caltech para los amigos) publican un artículo en el que **hipotetizan la existencia de un planeta más masivo que la Tierra mucho más allá de la órbita de Neptuno**. Batygin y Brown, los responsables de la investigación, han bautizado a su _aún no observado_ descubrimiento como **Planeta Nueve**. No he podido evitar acordarme de la cita de Carl Sagan mientras escribía este artículo :)\n", "\n", "Para los detalles de este fantástico avance y un análisis de sus implicaciones os remito a [los excelentes artículos de Daniel Marín en Eurekablog acerca del \"Planeta Nueve\"](http://danielmarin.naukas.com/2016/01/20/estrechando-el-cerco-alrededor-del-planeta-x/). En Pybonacci vamos a aportar nuestro granito de arena, y como apasionados de la astronomía y del software libre que somos, vamos a darle una pasada al [artículo original de Batygin y Brown](http://iopscience.iop.org/article/10.3847/0004-6256/151/2/22/pdf) (disponible libremente en PDF) y jugar con los datos que ofrece como más nos gusta: usando Python ;)\n", "\n", "**Nota**: El análisis que se plantea a continuación no tiene el debido rigor científico y en ningún caso debe tomarse como un punto de partida para una búsqueda seria del Planeta Nueve. Dicho lo cual, si alguien lo encuentra gracias a este artículo por lo menos que me invite a un café :D" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Python + Órbitas = poliastro\n", "\n", "Para este análisis vamos a utilizar [poliastro, una biblioteca Python para astrodinámica interplanetaria](http://poliastro.readthedocs.org/) que yo mismo estoy desarrollando. poliastro nos permitirá hacer cálculos con los elementos orbitales de los cuerpos que analicemos, y sus dependencias nos ayudarán en la tarea:\n", "\n", "* Gracias a [astropy](http://astropy.org/) podremos hacer conversiones entre sistemas de referencia, utilizar unidades físicas y manejar tiempos con rigor astronómico ([algo nada fácil](https://twitter.com/astrojuanlu/status/686168336330272768)).\n", "* La biblioteca [jplephem](https://pypi.python.org/pypi/jplephem) nos permitirá utilizar las efemérides del [Jet Propulsion Laboratory de la NASA](http://www.jpl.nasa.gov/) para localizar la posición de los planetas.\n", "\n", "Además, y como es natural utilizaremos NumPy, SciPy y matplotlib. Para instalar todo lo necesario solo necesitas ejecutar un comando:\n", "\n", " $ conda install poliastro --channel poliastro\n", "\n", "Y también usando pip (porque en el fondo me caéis bien):\n", "\n", " $ pip install numpy scipy matplotlib astropy jplephem poliastro\n", "\n", "(Nótese que numba es opcional)\n", "\n", "**Sin embargo**, escribiendo este artículo me he encontrado con cosas que no funcionaban y que he tenido que arreglar sobre la marcha, así que utilizaré una rama de desarrollo con algunos arreglos temporales:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fetching package metadata: ..........\n", "Solving package specifications: ............................................\n", "# All requested packages already installed.\n", "# packages in environment at /home/juanlu/.miniconda3/envs/planet9:\n", "#\n", "poliastro 0.4.3 py35_1 file:///home/juanlu/.miniconda3/conda-bld/linux-64/poliastro-0.4.3-py35_1.tar.bz2\n" ] } ], "source": [ "!conda install -qy poliastro --channel poliastro # Instala las dependencias con conda" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Uninstalling poliastro-0.5.dev0:\n", " Successfully uninstalled poliastro-0.5.dev0\n", "\u001b[33mYou are using pip version 8.0.1, however version 8.0.2 is available.\n", "You should consider upgrading via the 'pip install --upgrade pip' command.\u001b[0m\n" ] } ], "source": [ "!pip uninstall poliastro -y" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Collecting https://github.com/poliastro/poliastro/archive/planet9-fixes.zip\n", " Downloading https://github.com/poliastro/poliastro/archive/planet9-fixes.zip\n", "\u001b[K / 966kB 14.7MB/s\n", "Requirement already satisfied (use --upgrade to upgrade): numpy in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): numba>=0.23 in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): astropy>=1.0 in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): matplotlib in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): jplephem in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): scipy in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): llvmlite in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from numba>=0.23->poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): python-dateutil in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from matplotlib->poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): pytz in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from matplotlib->poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): cycler in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from matplotlib->poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): pyparsing!=2.0.4,>=1.5.6 in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from matplotlib->poliastro==0.5.dev0)\n", "Requirement already satisfied (use --upgrade to upgrade): six>=1.5 in /home/juanlu/.miniconda3/envs/planet9/lib/python3.5/site-packages (from python-dateutil->matplotlib->poliastro==0.5.dev0)\n", "Building wheels for collected packages: poliastro\n", " Running setup.py bdist_wheel for poliastro ... \u001b[?25l-\b \b\\\b \b|\b \bdone\n", "\u001b[?25h Stored in directory: /home/juanlu/.cache/pip/wheels/98/83/5a/a5215dd3aaeec3828aca873c4342bc05b4b53605e31c1d1d60\n", "Successfully built poliastro\n", "Installing collected packages: poliastro\n", "Successfully installed poliastro-0.5.dev0\n", "\u001b[33mYou are using pip version 8.0.1, however version 8.0.2 is available.\n", "You should consider upgrading via the 'pip install --upgrade pip' command.\u001b[0m\n" ] } ], "source": [ "#!pip install -e /home/juanlu/Development/Python/poliastro.org/poliastro\n", "!pip install https://github.com/poliastro/poliastro/archive/planet9-fixes.zip # Instala la versión de desarrollo" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "%load_ext version_information" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "application/json": { "Software versions": [ { "module": "Python", "version": "3.5.1 64bit [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]" }, { "module": "IPython", "version": "4.0.3" }, { "module": "OS", "version": "Linux 4.3.3 3 ARCH x86_64 with arch" }, { "module": "numpy", "version": "1.10.2" }, { "module": "astropy", "version": "1.1.1" }, { "module": "scipy", "version": "0.16.1" }, { "module": "matplotlib", "version": "1.5.1" }, { "module": "numba", "version": "0.23.1" }, { "module": "poliastro", "version": "0.5.dev0" } ] }, "text/html": [ "
SoftwareVersion
Python3.5.1 64bit [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]
IPython4.0.3
OSLinux 4.3.3 3 ARCH x86_64 with arch
numpy1.10.2
astropy1.1.1
scipy0.16.1
matplotlib1.5.1
numba0.23.1
poliastro0.5.dev0
Tue Jan 26 23:27:16 2016 CET
" ], "text/latex": [ "\\begin{tabular}{|l|l|}\\hline\n", "{\\bf Software} & {\\bf Version} \\\\ \\hline\\hline\n", "Python & 3.5.1 64bit [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] \\\\ \\hline\n", "IPython & 4.0.3 \\\\ \\hline\n", "OS & Linux 4.3.3 3 ARCH x86\\_64 with arch \\\\ \\hline\n", "numpy & 1.10.2 \\\\ \\hline\n", "astropy & 1.1.1 \\\\ \\hline\n", "scipy & 0.16.1 \\\\ \\hline\n", "matplotlib & 1.5.1 \\\\ \\hline\n", "numba & 0.23.1 \\\\ \\hline\n", "poliastro & 0.5.dev0 \\\\ \\hline\n", "\\hline \\multicolumn{2}{|l|}{Tue Jan 26 23:27:16 2016 CET} \\\\ \\hline\n", "\\end{tabular}\n" ], "text/plain": [ "Software versions\n", "Python 3.5.1 64bit [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]\n", "IPython 4.0.3\n", "OS Linux 4.3.3 3 ARCH x86_64 with arch\n", "numpy 1.10.2\n", "astropy 1.1.1\n", "scipy 0.16.1\n", "matplotlib 1.5.1\n", "numba 0.23.1\n", "poliastro 0.5.dev0\n", "Tue Jan 26 23:27:16 2016 CET" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%version_information numpy, astropy, scipy, matplotlib, numba, poliastro" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# La órbita del Planeta Nueve\n", "\n", "No cuesta nada repetirlo: _no se conoce la órbita del Planeta Nueve_. Batygin y Brown en sus análisis lo que han hecho ha sido, parafraseando a Daniel Marín, _estrechar el cerco_ en torno a él. Sin embargo, en el artículo trabajan con valores característicos y eso sí podemos aprovecharlo - hasta cierto punto, como en seguida veremos.\n", "\n", "En el resumen del artículo tenemos esta frase:\n", "\n", "> We find that the observed orbital alignment can be maintained by **a distant eccentric planet** with mass $\\gtrsim 10 m_{\\bigoplus}$ **whose orbit lies in approximately the same plane as those of the distant KBOs, but whose perihelion\n", "is $180^{\\circ}$ away from the perihelia of the minor bodies**. [Énfasis mío]\n", "\n", "Al final del artículo, en la figura 9, tenemos los datos de la órbita tentativa utilizada para las simulaciones:\n", "\n", "* Ascensión del nodo $\\Omega = 100^{\\circ}$\n", "* Argumento del perigeo $\\omega = 150^{\\circ}$\n", "* Inclinación $i = 30^{\\circ}$\n", "* Semieje mayor $a = 700~\\text{AU}$\n", "* Excentricidad $e = 0.6$\n", "\n", "(La masa que tenga el planeta no nos afecta)\n", "\n", "Con esto ya podríamos representar la forma de la órbita, pero nos falta un parámetro crucial... ¿dónde está el Planeta Nueve _dentro de esta órbita_? Si lo supiéramos no estaríamos hablando de especulaciones. Averiguarlo no es fácil, porque con este semieje mayor estamos hablando de unos períodos larguísimos. ¡Manos a la obra!" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib\n", "matplotlib.style.use('pybonacci') # https://gist.github.com/Juanlu001/edb2bf7b583e7d56468a\n", "import matplotlib.pyplot as plt\n", "\n", "import numpy as np\n", "\n", "from astropy import time\n", "from astropy import units as u\n", "\n", "from poliastro.bodies import Sun\n", "from poliastro.twobody import angles, State\n", "from poliastro import ephem\n", "from poliastro.plotting import plot, OrbitPlotter\n", "\n", "epoch = time.Time(\"2015-01-24 12:00\", scale=\"utc\").tdb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vamos a crear un objeto `State` para representar Planeta Nueve, añadiendo a los parámetros estimados del artículo un valor de la anomalía verdadera de $180^{\\circ}$, es decir: en el punto más alejado (caso peor). El período de la órbita será:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$18520.609 \\; \\mathrm{yr}$" ], "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 700 * u.AU\n", "ecc=0.6 * u.one\n", "inc=30 * u.deg\n", "raan=100 * u.deg\n", "argp=150 * u.deg\n", "nu=180 * u.deg # ¡Solo para probar!\n", "\n", "planet9 = State.from_classical(Sun, a, ecc, inc, raan, argp, nu, # Solo para probar\n", " epoch)\n", "\n", "period = planet9.period.to(u.year)\n", "period" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Habéis leído bien: **este planeta tardaría casi 20 000 años en dar una vuelta alrededor del Sol**. Por comparar, el período del cometa Halley es de 75 años, y el de Plutón es de unos 250 años.\n", "\n", "Para visualizar la forma de la órbita no tenemos más que usar la función `plot`:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[,\n", " ]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot(planet9)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(Más abajo la representaremos junto a las órbitas de los planetas conocidos, pero la escala de la gráfica ya da una idea de las distancias que manejamos)\n", "\n", "Pero es que aún hay más: la órbita del Planeta Nueve sería **bastante excéntrica**, y por la [segunda ley de Kepler](https://en.wikipedia.org/wiki/Kepler's_laws_of_planetary_motion#Second_law) la mayor parte del tiempo estará en la parte **más alejada**. Vamos a intentar visualizar las consecuencias de esta tercera ley pintando dos regiones \"equiprobables\" de la órbita, es decir: el Planeta Nueve estará el 50 % del tiempo cada una de ellas." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from matplotlib.patches import Wedge, PathPatch\n", "\n", "from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes\n", "from mpl_toolkits.axes_grid1.inset_locator import mark_inset" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Transformamos las anomalías medias de 90 y 270 grados en\n", "# anomalías verdaderas\n", "\n", "nu_lower = angles.M_to_nu(1 * np.pi * u.rad / 2, planet9.ecc)\n", "nu_upper = angles.M_to_nu(3 * np.pi * u.rad / 2, planet9.ecc)\n", "\n", "# Regiones equiprobables\n", "\n", "fifty_far = Wedge(\n", " (0, 0), planet9.r_a.to(u.km).value,\n", " nu_lower.to(u.deg).value, nu_upper.to(u.deg).value,\n", " color='#cccccc',\n", " zorder=0\n", ")\n", "fifty_close = Wedge(\n", " (0, 0), planet9.r_a.to(u.km).value,\n", " nu_upper.to(u.deg).value, nu_lower.to(u.deg).value,\n", " color='#999999',\n", " zorder=0\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Para tener algo con lo que comparar vamos a pintar también las órbitas de la Tierra y Neptuno. Para ello poliastro utilizará unos ficheros llamados SPK que contienen información precisa sobre las órbitas de los planetas del sistema solar." ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Recuperamos la órbita de la Tierra para comparar\n", "\n", "r_earth, v_earth = ephem.planet_ephem(ephem.EARTH, epoch)\n", "earth = State.from_vectors(Sun, r_earth.to(u.km), v_earth.to(u.km / u.s), epoch)\n", "\n", "# Y ya que nos ponemos, órbita de Neptuno\n", "\n", "r_nep, v_nep = ephem.planet_ephem(ephem.PLUTO, epoch)\n", "neptune = State.from_vectors(Sun, r_nep.to(u.km), v_nep.to(u.km / u.s), epoch)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Para el resto tendremos que jugar un poco con matplotlib y las funciones de plotting que proporciona poliastro." ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgYAAAGkCAYAAABKA+3YAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8VNX5+PHPnSWTfd83shJIhkUWFxBkLZsKFirSQl3A\ntv5caLWKfBXUilhwtyitKypWW0FxAyyilaWCYth3QshKEpKQPZksc39/UKaEBBLCTGZ73q8XL5h7\n79x75mGSeeac556jqKqqIoQQQggBaOzdACGEEEI4DkkMhBBCCGEhiYEQQgghLCQxEEIIIYSFJAZC\nCCGEsJDEQAghhBAWkhgIIYQQwkISAyE6qbGxkTlz5pCQkEBAQAADBgxg/fr1rY7ZuHEjvXv3xtfX\nl9GjR5Obm2vZ9+9//5tRo0YRGBhIUlJSm/MnJCTg7e2Nv78//v7+jB8//qLtycnJYdSoUfj4+JCe\nns7GjRst+4qKipg8eTIxMTFoNJpW7WjP2rVrGTZsGEFBQURHR/Ob3/yG2traNsedPn2asLAwhg8f\nfsFzNTU18Ytf/ILExEQ0Gg2bNm1qtf/ZZ5+lT58++Pv7k5yczLPPPtttr7OxsZE77riDgIAAoqOj\neeGFFyz7tmzZgp+fnyX+fn5+aDQaPvnkk3bP9dFHHzF06FB8fHwYNWpUm/3ffPMNAwcOJCAggJSU\nFF5//XXLvnfeeQedTme5jr+/f5s4CWEvkhgI0UnNzc3Ex8ezefNmKisrefLJJ7n55pstH0ZlZWVM\nnTqVp556ivLycgYOHMj06dMtz/fx8WH27NkX/CBUFIUvv/ySqqoqqqqq2iQd55sxYwYDBw6kvLyc\nRYsWMW3aNMrKygDQaDRMmDCBjz/+GEVROnxtVVVVLFiwgJMnT3Lw4EHy8/N58MEH2xw3b948MjIy\nOjzfsGHDeP/994mKimp3/3vvvUdFRQXr1q1j2bJl/POf/+yW1/nYY4+RlZVFXl4e33zzDUuXLuVf\n//oXANdeey3V1dWW+H/xxRf4+fldMEELCQnhD3/4A/Pnz2+zr7m5mZ///OfcddddVFZW8uGHH3L/\n/fezd+9eyzFDhgyhqqrKcs2LJVtCdCtVCNFlffv2VT/++GNVVVX1tddeU4cOHWrZV1tbq3p5eamH\nDx9u9Zyvv/5aTUxMbHOuhIQEdePGjZ267pEjR1RPT0+1pqbGsm348OHq3/72t1bHNTc3q4qiqDk5\nOZ1+Taqqqh9//LHat2/fVtu2bt2qDhkyRF2xYoU6bNiwTp0nNjZW/e677y56zH333afed9997e6z\n9uuMjo5Wv/76a8vjhQsXqjNmzGj32Ntuu0294447Lno+VVXVN954Qx05cmSrbcXFxapGo1Hr6+st\n2wYPHqx++OGHqqqqlxRDIbqb2/QYLF++nDvvvJM//vGPHR578OBB5s2bx4wZM9i+fXurfYsXL+b2\n229nyZIltmqqcBLFxcUcOXIEo9EIwP79++nXr59lv7e3NykpKezfv7/T5/zVr35FREQE48ePZ8+e\nPRc8bv/+/SQlJeHj42PZ1q9fv0u61sV89913rXoGzGYz9957L8uWLbPK+c+1efPmVte64YYbWLp0\nKXD5r3PJkiXceOONAFRUVHDy5En69u3b4bnq6upYvXo1t912W1deEuHh4cyYMYO33noLs9nM999/\nT25uLtdee63lmJ07dxIeHk6vXr1YtGgRZrO5S9cSwtp09m5Adxk5ciQTJkzo1C+2sLAw7r77bj7/\n/PM2+2688UYaGxvZsGGDLZopnERzczMzZ87k9ttvJzU1FYCamhrCw8NbHefv7091dXWnzvn3v/+d\nAQMGoKoqL774IuPGjePw4cP4+/u3ObampoaAgIA21yosLOziK/qfDRs28N577/HDDz9Ytr388stc\nc801XHHFFRdNWC7VY489hqqq3H777ZZt5/7cXe7rnDdvXqtzKYrS6nwX+v9ZvXo1YWFhDBs2rNOv\n5Xy33HILc+bMYe7cuSiKwvLly4mJiQHguuuuY9++ffTo0YP9+/dz8803o9frW7VXCHtxmx6DXr16\ntfrWAWe+8S1evJj58+fz2GOPWX7ZhIaGEh8f3+6YpdFoxNPTs1vaLByTqqrMnDkTg8HAX/7yF8t2\nX19fqqqqWh1bWVmJn59fp857zTXXYDAY8PT05OGHHyYwMJDNmzcDZ953Z4vUtm7delnXOrfIrk+f\nPq32bdu2jV/96lesXr2a5ORkAE6ePMnLL7/MokWLLK/fGpYtW8bKlStZu3Yter2+3WMuN6bnnwto\ndb4Lnevdd9/l17/+9SVf46zDhw8zffp0Vq5cSVNTE/v372fJkiWsW7cOOFNo2qNHDwAyMjJYuHAh\nq1at6vL1hLAmt+kxaM9rr73GnXfeSWRkJMeOHeONN95g4cKF9m6WcHCzZ8+mtLSUtWvXotVqLdsz\nMjJ45513LI9ra2vJysrqVLFeexRFsXwI79u3r9W+o0ePcvz4cWpray0J7+7du5k5c2aH5z1bZHe+\nnTt3MmXKFFasWMGIESMs23/44QeKiopIT09HVVXq6+upr68nOjqagoKCThX9ne+tt95i6dKlbN68\n+YIFinAmpl19necLDAwkKiqK3bt3M3r0aMu5zv//yc/P59///jevvfbaJV/jrH379tGrVy/GjBkD\nQGpqKpMmTWLdunVMmDCh3edYK+ES4nK5TY/B+RoaGjh8+DAvvPACDz30EK+99hqVlZX2bpZwcL/7\n3e84dOgQn332GR4eHq323XTTTezfv59PPvkEk8nEE088Qf/+/enZsydw5he/yWSisbERs9mMyWSi\nqakJgLy8PP7zn//Q1NSEyWTimWeeoaysjKFDh7bbjtTUVPr3788TTzyByWTi448/Zt++fUydOtVy\njMlkoqGhATjzfjeZTBd8Xfv27WPChAn85S9/YeLEia32TZw4kRMnTrBr1y52797Nn/70JwYMGMDu\n3bsvmBQ0NjZarm0ymVpd+/333+eRRx5hw4YNlm/NF2Lt1zlr1iwWLVpERUUFBw8e5PXXX281jAFn\neguGDh1KYmLiRdt27v9hS0sLJpOJ5uZmAK644gqOHTvGt99+C0BWVhZffPGFpQZl/fr1lJSUAHDo\n0CEWLVrElClTLno9IbqN/eoeu19JSYn6wAMPqKqqqnV1depvfvObix7/yiuvqNu2bWuzff/+/eqf\n//xnm7RROK6cnBxVURTVy8tL9fX1VX19fVU/Pz/173//u+WYjRs3qr169VK9vb3VkSNHtqqS//e/\n/60qiqJqNBrLn7PV7Pv371f79u2r+vr6qqGhoeqYMWPUzMzMDtszYsQI1cvLS+3Vq5f6zTfftNp/\n7rXO/vtCbr/9dlWr1ap+fn6W12Y0Gts9tjMV9QkJCa1ep0ajscQiMTFR9fDwsFzLz89PveuuuyzP\nnTBhgvr0009b5XUuXrxYnThxouWxyWRS77jjDtXf31+NjIxUX3zxxTZt7927t/r222+32f7++++3\nismKFSva/H/efvvtlv0fffSRajQaVX9/fzUuLk6dP3++Zd8f//hHNSIiQvX19VWTk5PVxx9/XG1u\nbr5oTIXoLoqqOlb/1fLly8nMzCQgIOCC93u/9dZb7Nq1C4PBwN13301CQkKnzl1SUsKSJUt47rnn\n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\nC5tLE4ONGzdO6v1hYWHo7u62/9zb2zvmNeKPHz8+qXOT0fn7+1MbOxm1sfNRG7sGtbNIiifxAAAI\ndklEQVSwCabGYCzS0tLQ0dEBlUqF0NBQlJSUYP369Vd839KlS10QHSGEEOL+REwgO8aUlpbi/fff\nh1arRUBAAJKTk/H000+jr68P77zzDp588kkAF6crvv/++2CM4aqrrprUdEVCCCGEXEowiQEhhBBC\n+OdWsxIIIYQQ4lyUGBBCCCHEzq2KD8di586dKC8vh1QqRVRUFO6//374+/tf9jpHLq3sjca6hPW6\ndevg7+8PkUgEiUSCV155xcWRui8+lgn3NjqdDjt27IBKpUJkZCQ2bNgw7OcFXcfjN5br8k9/+hNO\nnjwJHx8frFu3DsnJya4P1M1dqZ0rKirw3//934iKigIAFBQUYO3ataMflHmYU6dOMZvNxhhjbOfO\nneyjjz667DU2m4098MADrKuri1ksFvboo4+ylpYWV4fq1lpbW1lbWxt74YUXWG1t7YivW7duHevv\n73dhZJ5jLG1M1/LkfPjhh2z37t2MMcb+/ve/s507dw77OrqOx2cs1+Xx48fZ5s2bGWOMVVdXs6ef\nfpqPUN3aWNr53LlzbMuWLeM6rscNJeTl5UEsvvjXSk9PR09Pz2WvGbq0slQqtS+tTMYuNjYWMTEx\nV3wdYwyM6lsnZCxtTNfy5JSVlWHRokUAgMWLF4/YdnQdj89Yrstjx47Z2z49PR16vR5qtZqPcN3W\nWP/9j/fa9bihhKH279+P4uLiyx4fbmnlmpoaV4bmNUQiEV566SWIxWIsXboUy5Yt4zskj0LX8uRo\nNBooFAoAgEKhuGRl1qHoOh6fsVyXIy1xP/j7IFc21n//Fy5cwGOPPYawsDD89Kc/RXx8/KjHdcvE\nYCxLK3/22WeQSCS07OYkOGIJ602bNiE0NBRarRabNm1CfHw8MjMznRWy26Flwp1vtDb+IZFINOIx\n6Dom7ig1NRVvvfUWfHx8cOLECWzduhWvv/76qO9xy8TgSksrHzhwACdOnMBzzz037POTWVrZm0x2\nCWsACA0NBQAEBwejoKAANTU19IE6BJ/LhHuL0dpYoVBArVbb/xsSEjLs6+g6Hp+xXJdhYWGXDPX2\n9PTQtTtOY2lnX19f+//n5+fjj3/8I3Q6HQIDA0c8rsfVGJw8eRL//Oc/8fjjj0Mmkw37mqFLK1ut\nVpSUlNDdmROYTCYYjUYAgNFoxOnTp5GQkMBzVJ6FruXJmTVrFg4cOADg4g3FcG1H1/H4jeW6nD17\nNg4ePAgAqK6uRkBAAA0jjNNY2nlo3cbgMMNoSQHggSsfPvTQQ7BarQgKCgJwsajlnnvuoaWVHWws\nS1h3dXVh69atEIlEsNlsWLBgAbXzONAy4c6n0+mwfft2dHd3IyIiAhs2bEBAQABdxw4w3HX59ddf\nQyQS2Ws03nvvPZw8eRK+vr647777RpySS0Z2pXb+8ssv8fXXX0MikUAul+Ouu+5Cenr6qMf0uMSA\nEEIIIRPncUMJhBBCCJk4SgwIIYQQYkeJASGEEELsKDEghBBCiJ1brmNACCGEuLO3334bx48fR0hI\nCLZt2zbqa8+fP48PPvgATU1NePjhhzF37lz7c5s3b8aFCxeQmZmJJ554wiGxUY8BIYQQ4mJLlizB\nM888M6bXRkREYN26dcOu5Ltq1So8+OCDDo2NegwIIYQQF8vMzIRKpbrksc7OTrz33nvo7++HXC7H\nL3/5S8TGxmLKlCkAhl+yOycnBxUVFQ6NjRIDQgghRADeffdd/OIXv0B0dDRqamrwxz/+ccSl/Z2J\nhhIIIZNiNpvxwgsvgDEGlUqFRx55ZMLHslqteP7558FxnAMjJET4jEYjqqqqsH37djz++ON49913\nR9zt09mox4AQMin79+/H3Llz7d2cI+1QOBZSqRS5ubk4cuQI7YxKvApjDAEBAXj11Vf5DoV6DAgh\nk3P48GHMmTPnssc7OzvxxBNPoK6uDiqVChs2bMBbb72F9evX44033sCZM2ewceNGrF+/HrW1tfb3\nzZkzB99++60r/wqE8IIxhsFdCfz8/BAZGYnvv//e/nxjY+Ow7xntOI5APQaEkBFxHIcjR46gs7MT\n4eHhqKmpwapVqxAZGQngYtd/V1eXvThqUFtbG15//XWsW7cOiYmJUKlU6OjowCOPPIL4+Hg8+eST\nKCkpwaZNm1BWVobPPvsMjz32GAAgISHhkkSBEE/0+uuvo6KiAv39/bjvvvtw00034aGHHsIf/vAH\nfPrpp+A4DkVFRUhKSkJtbS22bduGgYEBlJeXY9euXXjttdcAAM8//zza2tpgNBpx33334b777kNe\nXt6kYqPEgBAyooaGBsybNw/ff/89rFYrCgsLL9kat7+/H/7+/pe8R6PRYOvWrXj00UcRFxdnfzwy\nMhLx8fEAgPj4eOTk5AAAEhMTL9lTXiwWQyaTwWg0XrKXPCGeZP369cM+/vTTT1/2mFKpxNtvvz3s\n61988UWHxgXQUAIhZBSpqamQSqWorq5GVlYWsrOzIZfL7c/L5XJYLJZL3uPv748pU6bg/Pnzlzwu\nk8ns/z/45Q/Avp3xUBaL5ZLzEEJchxIDQsiIampq0N/fj+bmZkRGRl72ZR8QEACO42C1Wu2PyWQy\nPPbYYzh06BAOHz5sf3y0MdChz+l0OgQFBUEspo8nQvhA//IIISM6efIkjh49iqlTp6K0tHTYGQd5\neXmorKy85DG5XI4nn3wSn3/+OcrLywGMPlth6HNnz57FzJkzHfQ3IISMl4g5spSREOJ16uvrsWfP\nHjzwwAMOOd62bdtwxx13IDo62iHHI4SMD/UYEEImJSUlBTk5OQ6ZLmW1WlFQUEBJASE8oh4DQggh\nhNhRjwEhhBBC7CgxIIQQQogdJQaEEEIIsaPEgBBCCCF2lBgQQgghxI4SA0IIIYTYUWJACCGEELv/\nD/b1INo3OowHAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Creamos la figura\n", "\n", "fig, ax = plt.subplots(figsize=(8, 8))\n", "\n", "op = OrbitPlotter(ax)\n", "planet9_point, planet9_orbit = op.plot(planet9)\n", "\n", "planet9_point.set_color(\"#6600ff\")\n", "planet9_orbit.set_color(\"#6600ff\")\n", "\n", "# Enmascaramos los sectores circulares con la órbita\n", "\n", "mask = PathPatch(planet9_orbit.get_path(), fc='none', lw=0)\n", "\n", "ax.add_patch(mask)\n", "ax.add_patch(fifty_far)\n", "ax.add_patch(fifty_close)\n", "\n", "fifty_far.set_clip_path(mask)\n", "fifty_close.set_clip_path(mask)\n", "\n", "# Zoom en el sistema Solar\n", "\n", "ax_zoom = zoomed_inset_axes(ax, 8, loc=3, axes_kwargs={'axisbg': '#fafafa'})\n", "\n", "# Repetimos algunos plots\n", "\n", "op_zoom = OrbitPlotter(ax_zoom)\n", "op_zoom.set_frame(*planet9.pqw())\n", "earth_point, earth_orbit = op_zoom.plot(earth)\n", "nepune_point, _ = op_zoom.plot(neptune)\n", "\n", "earth_orbit.set_linestyle(\"solid\") # ¡Para que se vea algo!\n", "\n", "# Propiedades de la sección aumentada\n", "\n", "ax_zoom.set_xlim(-7e9, 5e9)\n", "ax_zoom.set_ylim(-4e9, 5e9)\n", "ax_zoom.set_xticks([])\n", "ax_zoom.set_yticks([])\n", "ax_zoom.set_xlabel(\"\")\n", "ax_zoom.set_ylabel(\"\")\n", "ax_zoom.grid(False)\n", "ax_zoom.set_title(\"8x zoom\")\n", "mark_inset(ax, ax_zoom, loc1=1, loc2=4, fc=\"none\", ec='0.3')\n", "\n", "# Leyenda de la gráfica\n", "\n", "leg = ax.legend(\n", " [planet9_point, earth_point, nepune_point, fifty_close, fifty_far],\n", " [\"Planeta 9\", \"Tierra\", \"Neptuno\", \"Perihelio\", \"Afelio\"],\n", " numpoints=1\n", ")\n", "leg.get_frame().set_facecolor('#fafafa')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "En este gráfico se aprecian dos cosas:\n", "\n", "* Como hemos dicho antes, el Planeta Nueve pasa la mitad de su período en la parte más alejada del Sol (y por tanto, de nosotros), el **afelio** (sector gris claro). En cambio, la otra mitad del tiempo se la pasa acelerando hacia el **perihelio**. Es evidente entonces que lo más probable es que el planeta esté más lejos que cerca.\n", "* Y hablando de lejos: está muy lejos. *Extremadamente lejos*. Por supuesto está cerca comparado con Alfa Centauri, pero precisamente lo novedoso de este caso es que nadie esperaba encontrar un planeta con un tamaño tan considerable a una distancia tan grande.\n", "\n", "Otra forma de comprobar la enormidad de estas distancias es tratando de averiguar cuánto nos costaría llegar hasta allí. ¡Sigue leyendo!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ¿Cómo llegamos hasta allí?\n", "\n", "
**Importante**: Estos resultados son provisionales y están pendientes de revisión por problemas con el algoritmo, que no converge bien. De hecho se observa que he tenido que especificar una tolerancia relativa desmesurada. Después del tiempo dedicado he preferido publicar el código, que al menos muestra cómo utilizar la biblioteca, a pesar de que haya hecho aflorar sus limitaciones. [Ya he abierto una incidencia en poliastro](https://github.com/poliastro/poliastro/issues/112) para ver dónde está el problema, aunque posiblemente se deba a la fuerte inestabilidad numérica que supone acertar una diana que está a 168 000 000 000 km.
\n", "\n", "Ahora es donde empieza de verdad la ciencia ficción. Vamos a estudiar algunas trayectorias posibles que podríamos seguir para llegar a este hipotético Planeta Nueve, aunque lamentablemente obtengamos tiempos de cientos de años o velocidades inalcanzables con nuestra tecnología :)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Primera opción: Viaje directo\n", "\n", "Supongamos que lanzamos la nave la semana que viene (no hay tiempo que perder) y que nos planteásemos llegar en un tiempo optimista: 200 años. Supongamos también que en el momento del lanzamiento tenemos al Planeta Nueve en su afelio, que de hecho es el caso peor. El problema de calcular qué velocidad necesitamos para llegar se llama **problema de Lambert**, y con poliastro lo podemos resolver." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from poliastro import iod\n", "from poliastro.util import norm" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [], "source": [ "date_launch = time.Time('2016-02-01 12:00', scale='utc').tdb\n", "time_of_flight = 200 * u.year\n", "date_arrival = date_launch + time_of_flight\n", "\n", "r_0, v_earth = ephem.planet_ephem(ephem.EARTH, date_launch)\n", "\n", "r_f = planet9.propagate(time_of_flight).r\n", "\n", "v_0, v_f = iod.lambert(Sun.k, r_0, r_f, time_of_flight, rtol=5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Veamos la magnitud de la velocidad de partida:" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$224320.63 \\; \\mathrm{\\frac{km}{h}}$" ], "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(norm(v_0 - v_earth)).to(u.km / u.h)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "No es demasiado descabellada, teniendo en cuenta que la velocidad de lanzamiento de New Horizons (que llegó a Plutón en menos de 10 años) fue de casi 60 000 km/h. Veamos ahora esta trayectoria:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[,\n", " ]" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nUsICQGpxSbGofa3OJAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "traj1 = State.from_vectors(\n", " Sun,\n", " r_0.to(u.km),\n", " v_0.to(u.km / u.s),\n", " date_launch\n", ")\n", "\n", "op = OrbitPlotter(num_points=10000)\n", "\n", "op.plot(planet9.propagate(time_of_flight))\n", "#op.plot(earth)\n", "plt.gca().set_autoscale_on(False)\n", "op.plot(traj1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Prácticamente en línea recta, ¡como si fuese esto una autopista! Lamentablemente 200 años es demasiado tiempo, y si intentamos reducirlo los requisitos de velocidad solo empeorarían. Veamos otras opción un poco más loca." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Efecto Oberth con el Sol\n", "\n", "Al leer esta posibilidad no he podido evitar acordarme de la entrañable viñeta de XKCD:\n", "\n", "![Obert](http://imgs.xkcd.com/comics/six_words.png)\n", "\n", "El efecto Oberth es el hecho de que *las maniobras impulsivas son más eficientes cuanto más rápido va el vehículo*. Gracias a esto se podría diseñar una trayectoria que pasase muy cerca del Sol y que efectuase un gran impulso en el perihelio. La secuencia de la viñeta es demasiado complicada así que vamos a dividir este recorrido en dos partes:\n", "\n", "1. Una transferencia de Hohmann a 38 millones de kilómetros del Sol, y\n", "2. un impulso para alcanzar la órbita del Planeta Nueve en 100 años.\n", "\n", "Veremos qué números obtenemos ahora:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from poliastro.maneuver import Maneuver" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$26.644522 \\; \\mathrm{\\frac{km}{s}}$" ], "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hoh = Maneuver.hohmann(earth, 38e6 * u.km)\n", "hoh.get_total_cost()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "El frenazo que tenemos que pegar es considerable. Viajemos ahora al perihelio y efectuemos la transferencia." ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$37630210 \\; \\mathrm{km}$" ], "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "interm = earth.apply_maneuver(hoh)\n", "perih = interm.propagate(interm.period / 2)\n", "norm(perih.r)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$59.625601 \\; \\mathrm{\\frac{km}{s}}$" ], "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "norm(perih.v)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "La diferencia de radios se debe a que no partíamos de una órbita circular. Nos hemos saltado el paso de circularizar la órbita para simplificar.\n", "\n", "Por último, rezamos para que el algoritmo del problema de Lambert converja y nos lleve hasta el Planeta Nueve:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$84.05882 \\; \\mathrm{\\frac{km}{s}}$" ], "text/plain": [ "" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "v_i, _ = iod.lambert(Sun.k, perih.r.to(u.km), planet9.r.to(u.km), 100 * u.year, rtol=12) # De nuevo, tolerancia demasiado grande\n", "norm(v_i)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Y el requisito total de velocidad será:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$149.06333 \\; \\mathrm{\\frac{km}{s}}$" ], "text/plain": [ "" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hoh.get_total_cost() + norm(v_i - perih.v)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Caramba, ¡mucho más alto que antes! Intentamos pintarlo todo:" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[,\n", " ]" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZYAAAFeCAYAAACmQzlPAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VGXaBvD7TMkkkzLpjTRCCxBCCZ1IlY5SXBURXAXL\nuggogjTBRVCU8iGIoqIuq1hBRFF6KBqQTmgBQoIEkpDey/T3+4Mla0ibfs6ZPL/r8rqcmVPuTIY8\nc952OMYYAyGEEGIjEr4DEEIIcS5UWAghhNgUFRZCCCE2RYWFEEKITVFhIYQQYlNUWAghhNgUFRZC\nCCE2RYWF2IxWq8Wzzz6LqKgoqFQqdOvWDXv27Km1TWJiItq3bw8PDw8MGTIEt27dqvX6vHnz4O/v\nj4CAAMyfP7/WaxkZGRg8eDDc3d3RoUMHJCYmNpqnse1zcnIwduxYtGjRAhKJpE6O+nz99deIioqC\np6cnJkyYgJKSkprXtm7din79+sHd3R2DBw9u9Dg6nQ6PPvooWrZsCYlEgt9++63W66tXr0anTp3g\n5eWFVq1aYfXq1Rb/nE3lvp9Wq8XUqVOhUqkQGhqKtWvX1no9OTkZ3bt3h7u7O3r06IHz58/b7Vhr\n165FSEgIvL298eyzz0Kn0zX6PhABYYTYSGVlJVu6dCm7desWY4yxX375hXl6erKMjAzGGGMFBQVM\npVKxH374gWk0GjZ37lzWu3fvmv0/+ugjFhMTw7Kzs1l2djbr0KED+/jjj2te79OnD5szZw5Tq9Xs\nhx9+YN7e3qygoKDBPI1tn5ubyzZu3MiOHz/OJBJJTcaGXLp0iXl6erKkpCRWWVnJJk2axCZOnFjz\nemJiItu6dStbtmwZGzRoUKPH0mq1bN26dezo0aMsNDSUHTlypNbrq1atYufOnWMGg4Fdu3aNRUZG\nsu+++86in7Op3PebP38+69+/PystLWVXrlxhwcHBbO/evTW5IyMj2bp165hWq2Xr169nkZGRTKfT\n2fxYe/bsYcHBwezKlSuspKSEDRw4kC1YsKDR95UIBxUWYldxcXFs+/btjDHGPvnkE9avX7+a1yor\nK5mbmxu7du0aY4yxvn37sk2bNtW8/vnnn7M+ffowxhi7du0ac3V1ZRUVFTWv9+/fv1bh+avU1FST\nttfr9YzjuCYLy8KFC9mTTz5Z8zg9PZ25uLjUOj5jjH366adNFpa/CgsLq1NY7jdz5kw2c+bMel9r\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "op = OrbitPlotter(num_points=10000)\n", "\n", "op.plot(earth)\n", "op.plot(interm)\n", "op.plot(perih)\n", "plt.gca().set_autoscale_on(False)\n", "#op.plot(planet9)\n", "op.plot(State.from_vectors(Sun, perih.r, v_i))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "El motivo del altísimo coste de la maniobra es ese cambio radical de dirección en la trayectoria heliocéntrica que le hemos exigido a nuestra misión. Como se ha señalado arriba, esta forma de calcular la trayectoria tiene numerosos problemas y necesita una revisión urgente." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusiones\n", "\n", "El otro día señalaban por Twitter que [también debemos publicar los resultados negativos](http://scitechconnect.elsevier.com/why-science-needs-to-publish-negative-results), y aquí están los míos. Por un lado, poliastro tiene algunas limitaciones en sus algoritmos que han puesto en duda la precisión de los resultados, aunque en las gráficas no se aprecie demasiado. Por otro lado, esta forma de diseñar las trayectorias es demasiado apresurada y conduce a situaciones absurdas, así que el tema merece más tiempo incluso a este nivel divulgativo y nada riguroso (más que los cuatro días que he tardado yo en publicar esto). En el próximo mes y medio estaré trabajando intensamente en poliastro así que posiblemente pueda hacer avances en este sentido :)\n", "\n", "Querría desde aquí agradecer a las [más de 100 personas que me retuitearon el viernes en Pybonacci](\n", "https://twitter.com/Pybonacci/status/690554406442569730) y a Daniel Marín por la increíble calidad de sus artículos (mucho más finos que estos por suerte).\n", "\n", "¡Un saludo y hasta el próximo artículo!" ] } ], "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.5.1" } }, "nbformat": 4, "nbformat_minor": 0 }