Available resources for SSOXmatch
User manual (complements the paper by T. Alonso-Albi 2025)
Javadoc technical documentation
Executable jar file for SSOXmatch 0.9. Please note that a 64-bit operating system (Linux, Mac, or Windows) and Java 8 are required to run this jar file, check your version with the command java -version. The code has been obfuscated, and the jar is only provided for testing purposes. The source code is copyrighted by Tomás Alonso Albi (2021-2026). For reference see the paper by T. Alonso Albi (2025). To access the basic help of the program execute the command java -jar SSOXmatch.jar. The user manual above can be useful, although it can also be accessed from the command-line.
Version 0.9 of the jar file, published on May 13, 2026. Main changes (more details in the user manual):
- Support for all known natural moons up to 2025, including dwarf irregular ones, using JPL kernels. These kernels are an extension that can be downloaded as a zip file. To install it, place the file along with the jar file, and uncompress it. Then check the option accurate moons in the properties file is enabled.
- Memory optimizations in the database (service_xmatch is now a view and SVG sketches require less space)
- Behavior change: the ephemerides of the cross-matching body are now referred to the cross-match start/end times, not to the observation start/end times as before
- Solved some bugs affecting the limiting magnitude set for the surveys, the accurate position and sketch aspect of cross-matching bodies located close to the telescope, the computation of ephemerides of comets with the delay parameter DT for JPL elements, among others
Version 0.8 of the jar file, published on December 30, 2025. Main changes (more details in the user manual):
- Code rollback to be compatible with Java 8, and support for Windows systems. SSOXmatch 0.8 can run even in Windows XP 64-bit
- Developed a set of scripts for Linux, Mac, and Windows, to perform operations like updating the data or computing cross-matches with Lowell and JPL elements. See the user manualy
- Support for computing cross-matches incrementally
- Performance improvements
Version 0.7 of the jar file, published on November 12, 2025. Main changes (more details in the user manual):
- Support for cross-matches of space telescopes, for instance the track of JWST appearing in an Euclid observation, or the opposite
- Solved a memory/lock problem when computing cross-matches of bodies very close to the telescope
- Cross-matches exported to binary files, and then ingested in groups of 100 000, to avoid memory issues when holding millions of them in memory. This allows the program to run indefinitely
- The pre-integration of new bodies suffering close encounters with other massive bodies can now be updated from the console (see documentation)
Version 0.6 of the jar file published on October, 12, 2025. Main changes (more details in the user manual):
- Fixed a bug that may produce XMs for some comets with an SSO identifier inconsistent with the sso_id table. This bug is only relevant when using postgres databases
- Important performance optimizations that were lost in some of the latest code commits from late 2024
- Data (orbital elements, observation lists) updated to October, 11, 2025
Cross-match service
A basic web service is provided below to return pre-computed cross-matches for any of the supported surveys in the paper (JWST, HST, XMM, Herschel, Spitzer, Euclid), providing an observation identifier or a body name (asteroid, comet, spacecraft, planet or moon). Examples would be 'jw01245041001_03102_00001_nrcblong' for a cross-match of Didymos in JWST, 'Shoemaker-Levy 9' for the cross-matches of this comet, that impacted Jupiter, or 'XMM' for cross-matches of the XMM spacecraft (in HST images). The number of queries allowed is limited to 10/minute. All cross-matches were computed for a list of observations and bodies updated to the end of April, 2026, using SSOXmatch 0.9. Elements used are those provided by the JPL (for both asteroids and comets), and Lowell+cometpro. The field jpl_elem identifies which set of elements where used to compute a given cross-match: true for JPL elements, and false for the other set. When the cross-match is detected with both sets of elements, it will appear duplicated, with only minor differences in the predicted positions. No guarrantee is provided about the availability of the service.
Observation identifier / source name: