logo Add spacecraft offsets to MPC-formatted astrometry

Overview of tools for asteroid observers on this site

(You can click here for the C source code for this tool; look at add_off.c. It can be compiled to run "standalone" or, as here, as an on-line service.)

The MPC has a special format for handling observations made from spacecraft, such as Hubble, TESS, SOHO, Gaia, etc. You have a fairly normal-looking 80-column astrometric record specifying time, RA/dec, and the magnitude of the observed object. Column 14 contains an 'S' to indicate that the observation was made from a spacecraft.

In theory, each 'S' (uppercase) record is accompanied by an 's' (lowercase) record, which tells us where the spacecraft was when it made the observation. If you have some 'S' records but no 's' record (and no easy way to know where your spacecraft was), or need to check such records, this service is for you.

Cut and paste astrometry in the MPC's 80-column astrometric reporting format ( ADES doesn't work yet), or upload a file with observations, and click 'Process observations'. The program will look for 'S' lines, and will make 's' lines giving the position of the spacecraft at the time the observations were made.

Note that lines will only be added. If you've got extraneous stuff in there (headers, notes, earth-based observations), they'll be output unchanged. Any existing 's' lines will be removed, to avoid conflicts with the new 's' lines.

Also, a COM (comment) line will be added before each observation that gives the spacecraft velocity, in km/s. Most software will ignore this. But you need the spacecraft velocity to compute apparent angular motion of an object or its radial velocity as seen from the spacecraft, or to compute along-track and cross-track residuals.

Or, you can upload a file containing the astrometry.

Background on how this works

Fortunately, the JPL Horizons system makes it relatively straightforward to request data of this sort. The C program that does this (look at add_off.c) just looks for 'S' records, then sends JPL a request for the positions of each spacecraft at the various dates in those records. Then it runs through the file again and outputs the added 's' records.

Once you have the source code, you can run make add_off to make an off-line utility, and/or make add_off.cgi to make the on-line version that underlies this page.

Currently recognized spacecraft are :

MPC code   JPL code   name
 (245)        -79     Spitzer
 (249)        -21     SOHO
 (250)        -48     Hubble
 (258)    -139479     Gaia
 (C49)       -234     STEREO-A
 (C50)       -235     STEREO-B
 (C51)       -163     WISE
 (C52)    -128485     Swift
 (C53)    -139089     NEOSSAT
 (C54)        -98     New Horizons
 (C55)       -227     Kepler
 (C56)    -141043     LISA Pathfinder
 (C57)        -95     TESS
 (Cas)        -82     Cassini
 (PSP)        -96     Parker Solar Probe
 (SoO)       -144     Solar Orbiter

The last three lack official MPC codes. The ones given will work here and in Find_Orb. Cassini did get some astrometry of the outer moons of Saturn, and there's some hope that PSP and/or Solar Orbiter may observe a comet or two.

Aside from those three, the spacecraft have reported astrometry to MPC in the past and the three-character codes will be recognized by MPC.

If you run into questions/problems, please let me know (contact info below.)

Contact info

I can be reached at p‮оç.ötŭlpťсéјôřp@otúl‬m. If you're a human instead of a spambot, you can probably figure out how to remove the diacritical marks...