Skip to content

Instantly share code, notes, and snippets.

@brandon-rhodes
Created August 5, 2014 17:16
Show Gist options
  • Save brandon-rhodes/60503689abeef7fc099c to your computer and use it in GitHub Desktop.
Save brandon-rhodes/60503689abeef7fc099c to your computer and use it in GitHub Desktop.
Where Venus appears from Jupiter, relative to Jupiter's axis and equator
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "",
"signature": "sha256:ce9ee21ba6aa7a4d4e447579ac5fdc418ce0a0618ba773d8a6caff240d58ad43"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": [
"%pylab inline"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Compute ICRS position of Venus in Jupiter's sky\n",
"\n",
"from skyfield.api import JulianDate, jupiter, venus\n",
"jd = JulianDate(utc=(2009, 1, range(1, 366 * 6 , 5)))\n",
"astrometric = jupiter(jd).observe(venus)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# How to build a rotation matrix for another\n",
"# plantary pole.\n",
"\n",
"from skyfield.functions import rot_x, rot_z, rot_y\n",
"from skyfield.positionlib import to_polar\n",
"from skyfield.units import Angle\n",
"\n",
"def rotate_to(pole_ra_degrees, pole_dec_degrees):\n",
" ra = Angle(degrees=pole_ra_degrees).radians\n",
" zenith = Angle(degrees=90.0 - pole_dec_degrees).radians\n",
" W = (rot_y(zenith)).dot(rot_z(-ra))\n",
" return W"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Rotate the observation for Jupiter's poles\n",
"# and equator.\n",
"\n",
"W = rotate_to(268.06, 64.50)\n",
"xyz = astrometric.position.AU\n",
"xyz = (W).dot(xyz)\n",
"d, dec, ra = to_polar(xyz)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# How did we do? Compute this new declination\n",
"# number against where SPICE found zero crossings:\n",
"\n",
"d, leapsecond = jd.utc_datetime()\n",
"plot(d, dec)\n",
"for spice_crossing in [\n",
" (2009, 3, 11, 2, 57, 39.814),\n",
" (2009, 5, 20, 2, 22, 53.815),\n",
" (2014, 12, 23, 5, 55, 39.816),\n",
" ]:\n",
" plot(JulianDate(utc=spice_crossing).toordinal(), 0.0, 'ro')\n",
" \n",
"# Success!"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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\nB8W8gY+aJsIoAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0xb0e3662c>"
]
}
],
"prompt_number": 5
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment