J/other/AC/52.968 Solar System bodies cross-matches catalog (Alonso-Albi, 2025)
SSOXmatch: A Java pipeline to compute cross-matches of Solar System bodies in
astronomical observations.
Alonso-Albi, T.
<Astronomy and Computing, Volume 52, 100968 (2025)>
=2025A&C....5200968A 2025A&C....5200968A (SIMBAD/NED BibCode)
ADC_Keywords: Solar system ; Minor planets ; Comets ; Planets ;
Cross identifications
Keywords: Numerical integration - N-body simulations - Solar system -
Cross-matching - Ephemerides - Web-service
Abstract:
In this paper I will describe a new software package developed using
the Java programming language, aimed to compute the positions of any
Solar System body (among asteroids, comets, planets, and satellites)
to help to perform cross-matches of them in observations taken from
earth- and space-based observatories. The space telescopes supported
are Hubble, James Webb, Euclid, XMM-Newton, Spitzer, Herschel, Gaia,
Kepler, Chandra, and TESS, although the flexibility of the software
allows to support any other mission without the need to change a
single line of code. The orbital elements can be selected among the
asteroid database from the Lowell observatory (completed with the
cometpro database of comets maintained by the LTE), and the JPL
database of minor bodies.
The software does not depend on external tools, and performs its own
numerical integration of minor bodies. The dynamical model implemented
for the Solar System includes the gravity effects of all major bodies,
including the Earth, Moon, and Pluto as individual bodies, 16
perturbing asteroids as in other tools, the General Relativity
effects, the oblateness of the Sun, Earth, and Moon, and the
non-gravitational forces for both comets and asteroids. A complete set
of web services allow to compute the cross-matches (that are later to
be confirmed, for instance by visual inspection of the images) and
also ephemerides of specific bodies. The code is highly optimized and
follows the highest standards in terms of software quality and
documentation.
Description:
The SSOXmatch software is designed to compute cross-matches of Solar
System bodies (asteroids, comets, planets, natural satellites, and
spacecrafts) in the observations taken from any observatory on Earth
or in the space. This catalog includes the cross-matches for the
observations taken from some space observatories (HST, JWST,
XMM-Newton, Spitzer, Herschel, Euclid), including possible
cross-matches of any known Solar System body. The observations and
bodies considered cover the period up to April, 2026. Cross-matches
were filtered by the visual magnitude of the bodies, assuming a
limiting magnitude of 22 for XMM and Spitzer, 26 for Herschel, 31 for
HST, and 34 for JWST. For Euclid only raw frames for the 'WIDE'
observation mode were considered. The software is described in
Alonso-Albi 2025. To generate the tables in this catalog, SSOXmatch
version 0.9 was used. The software may be obtained from
http://talonsoalbi.noip.me/ssoxmatch/.
The cross-matches have been computed by means of numerical integration
of the orbits of asteroids and comets, using SPICE kernels for the
other bodies. Two catalogs have been used. For asteroids, the Lowell
asteroid database, and the JPL database of minor bodies. For comets,
the cometpro database, and again the JPL database of minor bodies. The
numerical integration model is consistent with the ephemerides server
Horizons from JPL, generating in most cases ephemerides consistent
with this server, up to 0.1" or better (when the same elements from
JPL are used). For bodies very close to the Earth (or another massive
body), around 1000 bodies, the kernels from Horizons are used for the
dates around the close approaches, instead of the output of the
numerical integration of JPL elements. For Lowell elements this is not
done, which may produce, for these bodies, significant discrepancies
when integrating back in time beyond the close encounter dates. The
integration process consists in two steps: a pre-integration of all
orbits in intervals of 73.05 days (five times per Julian year), using
a detailed dynamical model (16 perturbing asteroids, EIF model for
General Relativity, among other options), and a less detailed
dynamical model for the shorter integration period between the closest
pre-integration and each observation date (Ceres as the only
perturber, Sitarsky/Damour-Deruelle simplified method for General
Relativity, and an integrator less strict with integration errors).
The parameters for the non-gravitational forces and models for
asteroids and comets were obtained from Horizons, except for the
comets in the cometpro database, that already included them.
The catalog is a single .dat file including the main information about
the cross-match, including the mission identifier and if JPL elements
were used or not. The catalog can help to identify serendipitious
tracks of Solar System bodies in the observations taken by the
observatories considered. The presence of the tracks in the images
will depend on the accuracy of the observational data, the limiting
magnitude of the instruments, and the positional error estimated from
the numerical integration. The list of observations were taken from
public ESA and NASA services, by querying the ivoa.ObsCore tables, and
filtering the observations that were found to contain inconsistent
data. The field of view is a mandatory field to consider the
observation. The estimated uncertainty of the integration is provided
in the tables (see Alonso-Albi 2025 for an explanation on how the
uncertainty was computed). The presence of a given cross-match of an
asteroid or comet when using both the JPL and Lowell + cometpro
databases of elements is indicative that the body was very likely
present in the field of view during the observation.
The cross-matches of natural moons were computed with SPICE kernels,
and they appear duplicated for JPL and non-JPL elements. Consistency
of the ephemerides with Horizons will be also around 0.1". All natural
moons known up to December, 2025 are included.
File skip.dat list those observations that have been ignored in the
computation of cross-matches, due to different reasons that are
described below.
A file named summary.pdf is provided with the summary of the input to
the SSOXmatch software for both the pre-integration and the
cross-matches steps. This file provides histograms of the
cross-matches found for each survey, as function of time and apparent
magnitude.
The total number of cross-matches computed is 4.5 million, from them
2.4 million are obtained with JPL elements, and about 2.1 million are
obtained with the Lowell + cometpro catalogs. Around 360 000
cross-matches belongs to planets and moons, and, as mentioned above,
they are the same for JPL and Lowell + cometpro databases since they
were computed with SPICE kernels.
Please include a reference to the Paper by Alonso-Albi
(2025A&C....5200968A 2025A&C....5200968A , and to this catalog in any published material
that makes use of this data.
File Summary:
--------------------------------------------------------------------------------
FileName Lrecl Records Explanations
--------------------------------------------------------------------------------
ReadMe 80 . This file
xm.dat 315 4512049 Catalog of cross-matches
skip.dat 76 1855658 List of observations ignored
summary.pdf 512 13091 Summary of the results in the catalog
--------------------------------------------------------------------------------
See also:
https://ui.adsabs.harvard.edu/abs/2025A&C....5200968A/abstract :
reference paper by Alonso-Albi (2025)
http://talonsoalbi.noip.me/ssoxmatch/ : SSOXmatch software and documentation
https://ssd.jpl.nasa.gov/tools/sbdb_query.html : JPL small body database
https://asteroid.lowell.edu/astorb/ : Lowell asteroid database
https://ftp.imcce.fr/pub/databases/cometpro/ : cometpro database
https://jwst.esac.esa.int/archive/ : JWST archive
https://hst.esac.esa.int/ehst/ : HST archive
https://nxsa.esac.esa.int/nxsa-web/#search : XMM archive
https://archives.esac.esa.int/hsa/whsa/ : Herschel archive
https://irsa.ipac.caltech.edu/Missions/spitzer.html : Spitzer archive
Byte-by-byte Description of file: xm.dat
--------------------------------------------------------------------------------
Bytes Format Units Label Explanations
--------------------------------------------------------------------------------
1- 74 A74 --- ObsId Observation identifier,
with sub-identifier (obs_id) (1)
76- 81 A6 --- Mission Mission identifier (mission) (2)
83 A1 --- ElemId Elements used (elem_id) (3)
85- 96 F12.6 d Start Observation MJD start time in UTC (start)
98-106 F9.1 s Time Observation duration (time)
108-119 A12 --- SSOId Identifier for the Solar System body
(sso_id)
121-148 A28 --- Name Name of the Solar System body (name)
150-159 A10 --- Type Body type (type) (4)
161-168 I8 --- SPK ? SPK identifier of the body (spk)
170-178 F9.5 deg RAdeg [0/360] Right ascension (J2000) of the body
when de the cross-match started
(astrometric) (ra1)
180-188 F9.5 deg DEdeg Declination (J2000) of the body when the
cross-match started (astrometric) (de1)
190-199 F10.6 AU Dist1 Distance of the body to the telescope when
the cross-match started (dist1)
201-209 F9.5 deg RA2deg Right ascension (J2000) of the body when
the cross-match ended (astrometric) (ra2)
211-219 F9.5 deg DE2deg Declination (J2000) of the body when the
cross-match ended (astrometric) (de2)
221-230 F10.6 AU Dist2 Distance of the body to the telescope when
the cross-match ended (dist2)
232-239 F8.1 arcsec ePos Position uncertainty of the body (p_err)
241-245 F5.1 mag mag ? Visual magnitude of the body,
if available (mag) (5)
247-251 F5.1 arcsec AngRad ? Angular radius of the body, if available
(ang_rad)
253-263 F11.3 arcsec/min pmRA Proper motion in right ascension (ra_dot)
265-273 F9.3 arcsec/min pmDE Proper motion in declination (de_dot)
275-281 F7.3 km/s RV Radial velocity (r_dot)
283-294 F12.6 d xmT1 Cross-match MJD start time (UTC) (xm_t1)
296-307 F12.6 d xmT2 Cross-match MJD end time (UTC) (xm_t2)
309 I1 --- xmType Cross-match type (xm_type) (6)
311-315 F5.3 --- obProb Observation probability (ob_prob) (7)
--------------------------------------------------------------------------------
Note (1): This sub-identifier is only needed for Spitzer, Herschel, and XMM.
Note (2): Mission identifiers are euclid, jwst, hst, xmm, hsa, spz.
Note (3): Can be j for JPL elements, or l for Lowell + cometpro elements.
Note (4): Body type can be planet, moon, asteroid, comet, and spacecraft. Note
Pluto has been included as a planet in the tables. The spacecrafts
considered to appear in the field of view of the telescopes are JWST, HST,
GAIA, Kepler, Chandra, TESS, IUE, Euclid, XMM, Herschel, and Spitzer,
although the computations are time-limited, dependent on the time span
validity of the kernels (mainly for the inactive missions Spitzer and
Herschel). This time interval is provided in the summary pdf file.
Note (5): When the magnitude is not available, the value will be blank. There
are some special values for natural moons:
101: Eclipsed moon.
103: Occulted moon.
107: Eclipsed and occulted moon.
An intermediate value may appear in some cases when the moon status changed
between the start and the end of the cross-match.
Note (6): Cross-match type can be 2 (body position within the field of view)
and 1 (body within the field when the positional uncertainty is also
considered).
Note (7): The observing probability will be 1 when the body is likely to be
within the field of view. Lower values (even for a cross-match type 2)
means that the body may not be within the field due to the positional
uncertainty. These values may not reflect the correct probability, since
the positional uncertainty may be under- or over-estimated.
--------------------------------------------------------------------------------
Byte-by-byte Description of file: skip.dat
--------------------------------------------------------------------------------
Bytes Format Units Label Explanations
--------------------------------------------------------------------------------
1- 74 A74 --- ObsId Observation identifier (obs_id)
76 I1 --- SkipCode Reason to skip (skip_code) (1)
--------------------------------------------------------------------------------
Note (1): The skip code is a value between 0 and 3, with the following meaning:
0: Wrong right ascension or declination respect the values included in the
polygon (a database field showing the outline or sky region of the
observation, provided in the archive service of each survey), or wrong
field of view.
1: Inconsistent start/end of observation, or observation duration respect
start/end times.
2: The observation period is outside the time span validity of the kernel
for the space telescope, so the position of the telescope cannot be
computed. This may happen in the most recent observations covered, when
the information for the trajectory of the telescope was still not
available.
3: The ratio (observation end time - start time) / duration > 10 and the
difference (observation end time - start time) is > 20 days. Such
observations may show many cross-matches that are extremely unlikely to
have been observed, among them the Hubble Deep Fields.
--------------------------------------------------------------------------------
Acknowledgements:
Tomas Alonso, t.alonso(at)oan.es
License: CC-BY-4.0
(End) Patricia Vannier [CDS] 09-Jan-2026