The following article is Open access

ASSIST: An Ephemeris-quality Test-particle Integrator

, , , , , , and

Published 2023 April 24 © 2023. The Author(s). Published by the American Astronomical Society.
, , Citation Matthew J. Holman et al 2023 Planet. Sci. J. 4 69 DOI 10.3847/PSJ/acc9a9

Download Article PDF
DownloadArticle ePub

You need an eReader or compatible software to experience the benefits of the ePub3 file format.

2632-3338/4/4/69

Abstract

We introduce ASSIST, a software package for ephemeris-quality integrations of test particles. ASSIST is an extension of the REBOUND framework and makes use of its IAS15 integrator to integrate test-particle trajectories in the field of the Sun, Moon, planets, and 16 massive asteroids, with the positions of the masses coming from the Jet Propulsion Laboratory's DE441 ephemeris and its associated asteroid perturber file. The package incorporates the most significant gravitational harmonics and general-relativistic corrections. ASSIST also accounts for position- and velocity-dependent nongravitational effects. The first-order variational equations are included for all terms to support orbit fitting and covariance mapping. This new framework is meant to provide an open-source package written in a modern language to enable high-precision orbital analysis and science by the small-body community. ASSIST is open source, freely distributed under the GNU General Public license v3.0.

Export citation and abstract BibTeX RIS

Original content from this work may be used under the terms of the Creative Commons Attribution 4.0 licence. Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.

1. Introduction

It is well known that the n-body equations of motion involving gravitational interactions among more than two bodies are not classically integrable (Murray & Dermott 2000). Practical applications thus require perturbative or numerical treatment. Numerical approaches have become increasingly accurate since the advent of fast electronic computers, beginning in the second half of the twentieth century. The concomitant development of modern algorithms for this purpose has advanced significantly over the past few decades.

The introduction of symplectic integrators for the n-body problem contributed to a resurgence of interest and research in long-term solar system dynamics (Gladman et al. 1991; Wisdom & Holman 1991). For numerical integrations of systems over billions of years it is particularly important to capture key properties, such as conservation of energy and angular momentum, secular and mean motion resonances, and intrinsic dynamical chaos. However, with the availability of extremely precise observations, such as radar ranging (Ostro et al. 2002), stellar occultations (Ferreira et al. 2022), and space-based astrometry (Tanga et al. 2022), the study of short-term dynamics has becoming increasing relevant. That is the focus of this paper.

The specific problem we consider is that of a massless test particle moving in the gravitational field of the Sun, planets, Moon, and a set of massive asteroids, with the precomputed, time-dependent positions and velocities of these massive bodies provided by reliable ephemerides. For this, we develop ASSIST, a software package for ephemeris-quality integrations of test particles. ASSIST is an extension of the REBOUND framework (Rein & Liu 2012) and makes use of its IAS15 integrator (Rein & Spiegel 2015). The emphasis is accuracy, with a model that encompasses all the relevant physical effects. Possible applications include accurately fitting orbits and detailed tests of gravity itself.

The standard of reference for solar system small-body ephemeris computations is the Horizons service, 9 developed and maintained by the Solar System Dynamics Group at the Jet Propulsion Laboratory (JPL). Although the underlying source code is not public, the Horizons system is publicly accessible via a web interface, as well as through an API. The JPL small-body orbit software is an ideal basis of comparison since its accuracy has been thoroughly tested by observations as well as space missions (e.g., Farnocchia et al. 2021).

It should be noted that a number of software packages have been developed and are available specifically for integrating and fitting orbits over observational timescales. These include OrbFit from the University of Pisa's Celestial Mechanics Group (Orbfit Consortium 2011), Find_Orb from Project Pluto, 10 OpenOrb from the University of Helsinki (Granvik et al. 2009), and the package developed by Bernstein & Khushalani (2000), also named orbfit, for fitting the orbits of trans-Neptunian objects (TNOs). Each, as well as others, is used effectively by members of the small -body community.

This raises an obvious question: Why develop another such package? Our motivations for developing a new integrator include using state-of-the-art numerical techniques, using a more current language (C99), providing Python wrappers so that the tools are accessible to a wider audience, and transitioning away from file-based processing to enhance computational speed. (We note that OpenOrb already addresses the last two objectives.)

In addition to matching the integrated output of Horizons, we also have technical goals for the integrator that are driven by the precision of current and future data sets. Gaia can deliver submilliarcsecond (mas) astrometry for bright asteroids (Tanga et al. 2022). Gaussian process regression, applied to Dark Energy Camera astrometry of the TNO Eris, reached residuals of 5 mas (Fortino et al. 2021). Astrometric precision of 1–2 mas should be achievable with the Rubin Observatory's Legacy Survey of Space and Time (LSST). Thus, it is essential that the precision of the numerical integration tools used to model such objects exceeds that of the data. We adopt as a target that the numerical errors for a main belt asteroid result in an astrometric uncertainty of no more than 1 mas over a 10 year integration. The JPL small-body code meets these goals, but it is not available to the community other than through web interfaces.

The remainder of this paper is organized as follows. In Section 2, we describe the overall integrator. In Section 3, we present the equations of motion. In Section 4, we present tests of the integrator and its components. In Section 5, we describe the Python wrapper. Finally, in Section 6, we discuss the implications of our results and describe possible future work.

2. REBOUND IAS15 Integrator

ASSIST is built in the framework of the REBOUND package (Rein & Liu 2012). REBOUND is a collection of numerical integrators, with associated tools, designed to carry out investigations of solar system dynamics. It provides a consistent, well-documented environment. The code is written in C99 and is available on Github. 11

Although other integrators included in REBOUND could be used with the equations of motion described in Section 3, we focus on the IAS15 integrator (Rein & Spiegel 2015). IAS15 is a predictor-corrector method, based on the RADAU integrator (Everhart 1985). However, IAS15 includes compensated summation (Kahan 1965). It is highly efficient, and for some problems and specific phase space variables, IAS15's error grows as the square root of the number of steps, which is optimal (Brouwer 1937). Although this is not fully appreciated, even by many dynamicists, the RADAU and IAS15 integrators are general-purpose tools that happen to be very well suited to integrating equations of motion that have very smooth solutions, such as the n-body problem (Everhart 1985). Therefore, it is straightforward to include additional terms in the equations of motion.

The REBOUNDx extension to REBOUND provides a convenient, general framework for the addition of such terms to the equations of motion and is the natural choice for most such work (Tamayo et al. 2020). However, although the mechanism of extending REBOUND is similar to that of REBOUNDx, ASSIST is a highly specialized package that is far less flexible by design and necessity. Because the positions and velocities of the perturbers come from the DE441 ephemeris (Park et al. 2021), the coordinate frame, timescale, masses, and other physical constants are fixed and the test particles must abide by those. We chose to develop ASSIST as a distinct package to enforce self-consistency of those units, as well as to limit the dependencies of ASSIST to only the REBOUND package.

Although ASSIST imposes this structure, the rest of the process is inherited from REBOUND and will be familiar to its users. As is demonstrated in the examples, one initiates a REBOUND simulation, loads the ephemeris file, attaches the equations of motion from ASSIST, and adds test particles to the simulation (the planets and other perturbers are provided by ASSIST). At that point, the routines for carrying and managing the integrations are essentially the same.

3. Equations of Motion

We integrate the orbits of small bodies as massless test particles. That is, they are subject to the gravitational influence of the massive bodies in the system, and may also be subject to nongravitational effects, but they do not themselves affect the trajectories of their perturbers. The timescale used is barycentric dynamical time (TDB). 12 The coordinates are barycentric and in the International Celestial Reference Frame (ICRF; Charlot et al. 2020).

3.1. Perturbers

In contrast to the usual IAS15 n-body integrator, which integrates the orbits of systems of fully interacting massive bodies, along with the orbits of test particles moving in the field of massive bodies, in our integrator the positions of the perturbing objects are known as a function of time. We include the direct Newtonian acceleration from the Sun, planets, Moon, Pluto, and 16 massive asteroids.

The positions of the Sun, Moon, planets, and Pluto are given by JPL's DE441 ephemeris (Park et al. 2021). These are determined by evaluating Chebyshev polynomials tabulated in binary SPK format (Acton et al. 2018). These provide the polynomial coefficients in time segments that span the years −13200–17191. The extracted positions are barycentric, in the ICRF equatorial frame. As noted earlier, we adopt the same frame for all internal calculations. This avoids unnecessary coordinate transformations and simplifies the equations of motion.

There is a corresponding file for a set of 16 massive asteroids, also in SPK format (Farnocchia 2021). 13 The positions of the massive asteroids are also in an equatorial frame but are heliocentric. We convert these internally to barycentric, using the position of the Sun from the DE441 ephemeris, for consistency.

We developed library routines to access the SPK-format files. These routines make use of highly optimized "memory mapping" for higher performance, while allowing thread-safe concurrent access with transparent disk caching. The independent variable in the ephemeris routines is the number of days (TDB) relative to a specified reference date. This avoids the loss of precision in representing time that would come with a large number of unchanging leading digits in the full Julian date. It can be important to retain this precision when small time steps are used, such as during close encounters. We adopt J2000.0 (JD 2 451 545.0/2000-01-01.5 TDB) as the reference date.

3.2. Relativistic Corrections

We implement three models to account for the effects of general relativity (GR). These can be selected by the user. The first includes only the central potential for the Sun that matches the apsidal precession rate from GR (Nobili & Roxburgh 1986). The second includes the effects from the Sun only with the following expression (Damour & Deruelle 1985; Farnocchia et al. 2015):

Equation (1)

where r and v in this expression are the heliocentric position and velocity of the test particle, and a REL is the heliocentric acceleration due to solar GR with this simplified model. These two models are faster but less accurate than the parameterized post-Newtonian (PPN, also known as Einstein–Infeld–Hoffman) formulation for the Sun and planets, assuming the body whose orbit is being integrated is a test particle (Moyer 2003). The equations of motion for point particles in the PPN formulation, reproduced for reference, are as follows:

Equation (2)

which is accurate to O(v2/c2). The gravitational parameter for body j is given by μj = GMj , where G is the gravitational constant and Mj is the gravitational mass of the body. For this expression, the position vectors r i of the test particle and massive bodies are barycentric. The Euclidean distance between bodies i and j is given by rij . The speed of light is given by c. We assume β = γ = 1, as is predicted by GR (Will 1971), but these values can easily be changed by the user. The velocities are given by ${v}_{i}=| {\dot{{\boldsymbol{r}}}}_{i}| $. The final summation over asteroid indices m in Equation (2) reflects the fact that the GR corrections due to the massive asteroids are insignificant and can be ignored (the index j does not include asteroids.) The PPN model is used by the JPL small-body integrator. (The Horizons service also uses the PPN model but restricts the outer loop in Equation (2) to the Sun.)

We take one of two approaches for the accelerations ${\ddot{{\boldsymbol{r}}}}_{j}$ on the right-hand side of Equation (2). One solution is to calculate the acceleration of the planets; the Newtonian acceleration from the other bodies, excluding the massive asteroids, is sufficiently accurate, given that the PPN formulation is O(v2/c2). This is the approach recommended in Moyer (2003). Another solution is to calculate the acceleration from the JPL ephemeris by taking the next derivative of the Chebyshev polynomials (described in Section 3.1). We note that the DE441 ephemeris files are Chebyshev fits to position with the velocity determined from its derivative; the interpolated accelerations are not guaranteed to be accurate. However, our integrated results have matched those of the JPL small-body code. Using the interpolated accelerations is the default behavior in ASSIST, but code for calculating the acceleration can be swapped in.

3.3. Gravitational Harmonics

An accurate description of the gravitational field should account for the true shape of massive bodies (Battin 1987). We start with the oblateness of the Sun, which is well described by the J2 zonal harmonic; higher-order zonal harmonics are negligible. The solar J2 coefficient is 2.2 × 10−7 (Park et al.2021).

Additional higher-order gravitational harmonics of the Earth are necessary for an accurate treatment of near-Earth orbits. These are especially important during close approaches. The Earth's J2, J3, J4, and J5 zonal harmonic coefficients are 1.08 × 10−3, −2.53 × 10−6, −1.62 × 10−6, and −2.28 × 10−7, respectively. The full precision of these values are available in the DE441 headers (Park et al. 2021). Our current implementation truncates the zonal harmonic potential expansion for the Earth at J4 and does not include the J5 term.

The mass distribution of the Earth has nonnegligible azimuthal asymmetry. However, we do not account for axial asymmetry effects and include no nonzonal harmonic terms. These terms may be significant for near-Earth orbits and can be implemented in future work. Such terms are included by JPL on an ad hoc basis when needed for specific orbits. For example, Naidu et al. (2021) used the full 4 × 4 gravity field of the Earth, including nonzonal harmonics, to accurately model the trajectory of 2020 CD3, a temporarily captured "mini-moon" of the Earth.

3.4. Nongravitational Effects

The orbits of bodies moving under the influence of Newtonian gravity and relativistic corrections may also be affected by nongravitational effects that depend on the intrinsic properties of the body. For asteroids, these include solar radiation pressure (Vokrouhlický & Milani 2000) and the Yarkovsky effect (Vokrouhlický et al. 2015). For comets, nongravitational forces can be induced by outgassing from the body.

A detailed, ab initio model of such effects is not practical, as it would depend on typically unknown details of object shape, composition, and surface properties. We include these effects with the semiempirical, parameterized model of Marsden et al. (1973). These perturbations are reasonably expected to depend on the position and velocity of the object, in addition to its intrinsic properties. The parameterized acceleration is given by

Equation (3)

where A1, A, and A3 are tunable parameters, with units of acceleration, that incorporate the intrinsic properties of the object. The three terms account for accelerations in the radial, transverse—in the direction of motion and normal (to the orbital plane) directions, respectively. This assumes that the prefactor g(r) of Equation (3) is general, as described below.

The prefactor models the dependence of the absorbed solar radiation (for asteroids) and degree of outgassing (for comets) on distance from the Sun. It is given by

Equation (4)

The parameters α, r0, m, n, and k are specific to each body being modeled. The function g(r) is unitless. The value of r0 is a normalizing distance. The constants m, n, and k model the decay of the effect of nongravitational acceleration at distance r, and α is a normalization constant (Yeomans et al. 2004). The constant α is set so that g(r) = 1 for r = 1 au. For asteroids, g(r) reduces to ${\left(1\,\mathrm{au}/r\right)}^{2}$ (Farnocchia et al. 2015). For comets, we set g(r) to the standard expression in Marsden et al. (1973), in which case r0 indicates the distance from the Sun where the solar insolation primarily contributes to the sublimation of ices.

3.5. Variational Equations

In addition to the equations of motion, we implement the first-order variational equations (Rein & Tamayo 2016). These describe the evolution of the analytic partial derivatives of each component of a test particle's acceleration with respect to each of the components of its initial conditions r and $\dot{{\bf{r}}}$, as well as its nongravitational parameters A1, A2, and A3. The variational equations are essentially the equations of motion for the phase space difference between neighboring trajectories, for small initial displacements. These allow one to estimate the Lyapunov exponents of a given trajectory, as well as support orbit fitting and covariance mapping (Rein & Tamayo 2016). The alternative is to compute these by finite differences by integrating additional test particles with slightly offset initial conditions, but that process can be slower, more subject to numerical error and possibly limited by the extent of phase space. We include terms for the variational equations for all the implemented effects: Newtonian gravity; Earth J2, J3, and J4; solar J2; the Damour & Deruelle (1985) GR treatment; the Einstein–Infeld–Hoffman GR treatment; and the Marsden et al. (1973) formulation of nongravitational forces. The first-order variational equations are integrated along with the equations of motion of the corresponding test particle. The form of these equations is available in the code. 14

4. Tests

We carry out a number of tests to demonstrate the correctness of the equations of motion and the integrator.

4.1. Force Model Terms

To verify the equations of motion, we completed a term-by-term comparison of the various contributions to the acceleration of a test particle to the corresponding terms from the JPL small-body code. Rather than integrating, we simply evaluate the acceleration of the test particle, asteroid (3666) Holman, at a specific epoch (JD 2 458 849.5 TDB, 2020 January 1). This is a fine-grain test that verifies that the physical constants, the values of the positions and velocities of the perturbing bodies from the ephemeris, and the algebraic terms in the equations of motion are identical to machine precision. Our code, as well as JPL's, is designed to work well in double precision for computational speed. As the individual terms span orders of magnitude, a term-by-term comparison is more stringent than comparing the summed accelerations. Specifically, this comparison includes the gravitational constants (GM values); the components of the relative vector between the test particle and the Sun, planets, Moon, and massive asteroids; the direct Newtonian accelerations from those bodies; the complete PPN formulation of GR; the simplified formulation of GR; the J2, J3, and J4 gravitational harmonics from the Earth, the solar J2 gravitational harmonic, and the parameterization of nongravitational forces presented earlier. We find that all terms in our code agree with those from the JPL small-bodies integrator, differing only in the least significant digit.

In order to test the PPN formulation of GR, which involves a large number of terms, we carried out a more detailed comparison of each contribution in Equation (2). This suite of comparisons verifies that our coding of the various contributions in the equations of motion is consistent with that of the corresponding small-body code from JPL.

4.2. Variational Equations

We carry out a detailed check of the variational equations with two approaches. First, we compared the analytic variational equations results with the corresponding numerical partial derivatives, also term by term. For each component of position and velocity, we computed second-order derivatives with finite differences using "shadow particles," pairs of real particles with their initial conditions displaced by a small amount in position (epsilon ∼ 10−8 au) and velocity (epsilon ∼ 10−8 au day−1). Second, we compared the results from integrating the shadow particles with those from integrating the variational equations. The results verify the analytic derivatives to the precision of the numerical derivatives. Figure 1 demonstrates that results from variational equations and integrating shadow particles differ at second order in time, as expected.

Figure 1.

Figure 1. Top: numerically and analytically calculated variational equations for the x-component of asteroid (3666) Holman. The two curves have been intentionally offset by 10−7 au to make them distinguishable on this scale. Bottom: difference between the numerically and analytically calculated results, for all Cartesian components. The magnitude of the difference grows quadratically in time, as expected.

Standard image High-resolution image

4.3. Integrations

In order to verify the integration of the equations of motion, we perform a series of "out-and-back" tests. These involve integrating a set of initial conditions for some period of time, reversing the direction of the integration, and integrating back to the starting time. Because the IAS15 integrator is not intrinsically time reversible and errors accumulate in both directions, comparing the initial conditions with the final state constitutes a meaningful comparison, when dissipative terms are excluded. Again, we use (3666) Holman for these tests. An optimal integrator, meaning that all floating point errors are unbiased, would exhibit an energy error that grows as O(n1/2) and errors in the angles that grow as O(n3/2), where n is the number of steps (Brouwer 1937; Rein & Spiegel 2015). The accumulated error during an out-and-back integration test is shown in Figure 2. This error grows roughly as t3/2, indicating that any remaining biases are insignificant on this timescale. The slope may be changing toward the longer integrations; we leave investigation of this to future work.

Figure 2.

Figure 2. The magnitude of the accumulated error in integrating asteroid (3666) Holman for the indicated outgoing time and back to the initial time. The error grows approximately as t3/2, as is shown by the dashed red line.

Standard image High-resolution image

In addition to out-and-back tests, which validate the integrator against itself, we also compare the integrated results with those from JPL's small-body integrator. We integrate the orbit of the main belt asteroid (3666) Holman for 10, 102, 103, 104, and 105 days. At the end of the integrations, we find that the positions differ by 2.7 × 10−4, 9.5 × 10−4, 9.3 × 10−2, 3.7, and 19 m, respectively. Even for the longest integration this implies an angular difference of 10 mas. For (84100) Farnocchia, the differences after the same integration lengths are comparable: 1.5 × 10−4, 8.5 × 10−4, 1.4 × 10−2, 2.4 m, and 32 m, respectively. These integrations demonstrate that our models and integrations are essentially identical. In addition, it demonstrates that the numerical limits of ASSIST are well below our goal of 1 mas over 10 years. However, it is worth noting that although the results of both routines agree, the precision of the models themselves is ultimately limited by the size of the smallest terms included.

Based on these integrations, we find that ASSIST is presently comparable in speed to JPL's small-body code on similar hardware. Further speed optimization of ASSIST is left to future work.

Next, we consider the trajectory of (99942) Apophis around the time of its 2029 April 13 close approach to the Earth. This is a particularly stringent test because Apophis comes within six Earth radii from the geocenter (Farnocchia & Chesley 2022), which accentuates the importance of terms such as the Earth's gravitational harmonics, as well as the integration time step. And, perhaps more importantly, the scattering of the encounter amplifies the differences.

Starting at 2029 January 1 and integrating forward, the differences between the ASSIST and JPL small-body code integrations are less than 1 cm prior to the encounter. The results diverge after the encounter. However, even after integrating 103 days, through the encounter and beyond, the difference is only ∼500 m.

The heliocentric orbit of Apophis and that of the Earth, as well as the geometry of the close approach, are shown in the panels of Figure 3. The deflection of Apophis's orbit is obvious. The integrator time step can be seen to drop significantly during close approach, as indicated by the separation of the plotted points; this can be seen explicitly in the left panel of Figure 4, where the time step drops to a prescribed minimum value of 10−3 days. The divergence of our integrated orbit from the results when the initial conditions are offset in the x-coordinate by 10−15 au is shown in the right panel of Figure 4. This remains small despite the close encounter, indicating that the integrator is stable.

Figure 3.

Figure 3. Left: the heliocentric equatorial trajectories of Earth (red) and Apophis (blue) from 2029 January 1 to 2030 January 1, encompassing the close approach on 2029 April 13. The x- and y-axes are ICRF coordinates. Right: the geocentric, equatorial position of Apophis near the time of the 2029 April 13 encounter (Earth's physical size is shown as a circle). The deflection of the trajectory is clear.

Standard image High-resolution image
Figure 4.

Figure 4. Left: the IAS15 step size as a function of time from the start of the integration (2029 January 1). The step size drops, reaching the prescribed minimum, at the time of the encounter. Right: divergence of two calculated trajectories as a function of time, differing by a small displacement in initial conditions. Note that the time axis in the left panel extends further.

Standard image High-resolution image

Figure 5 shows the magnitude of the difference in the positions of Apophis integrated with ASSIST and with the JPL small-body code as a function of time, starting from 2029 January 1. The differences are less than ∼1 cm before the encounter, near day 102 in the figure. Small differences in the calculated velocities near the close approach lead to a smoothly growing separation between the results as the integrations are continued. The discontinuities in the difference are due to adaptive step size changes.

Figure 5.

Figure 5. The magnitude of the difference in the positions of Apophis integrated with ASSIST and with the JPL small-body code, as a function of time starting from 2029 January 1. The differences are less than ∼1 cm before the encounter, near day 102 in the figure, growing to ∼500 m by the end. Small differences in the calculated velocities near the close approach lead to a smoothly growing separation between the results as the integrations are continued. The discontinuities in the difference are due to adaptive step size changes.

Standard image High-resolution image

As an additional, visually interesting demonstration, we consider the serial Cereal encounters of (5303) Parijskij, with closest approach 1996 September 10 (Kovačević & Kuzmanoski 2007). The left panel of Figure 6 shows the x–y position of 5303 relative to Ceres over a 10 year interval starting before the closest approach. The right panel shows the magnitude of the separation over the same time span. The difference in the relative position differs from that of the JPL small-body code of only ∼1 m. (The difference with JPL Horizons is ∼500 m.)

Figure 6.

Figure 6. (5303) Parsijkij–Ceres close approach. Left: relative position. Right: magnitude of the separation vs. time.

Standard image High-resolution image

5. Code

ASSIST is written in C99, following the style and structure of REBOUND. In addition to the underlying code, we have written a Python wrapper to the basic integrator functions. This makes ASSIST easier to use, particularly for users who are not familiar with the C99 language and associated compilers. In addition, the Python wrapper provides a layer of abstraction upon which more complex applications can be built.

The code and the associated Python wrapper can be found at https://github.com/matthewholman/assist. Installation instructions can be found at https://readthedocs.org/projects/assist. A limited installation for users wishing only to use the wrapper is available via the standard PyPI Python package installer, pip.

A number of examples in C99 and within Jupyter notebooks are included in the repository. Among these is the code for reproducing the figures in this paper.

6. Conclusions

In this paper, we have introduced ASSIST: a new, general-purpose, ephemeris-quality test-particle integrator. The software is written in C99 in the REBOUND framework, and we also provide a convenient Python wrapper. The software is freely available for distribution under the GNU General Public License v3.0. Integrations are performed using the IAS15 integrator, using the positions of planets and the 16 most massive asteroids from the JPL DE441 ephemeris. We find that out-and-back integration tests produce an error that grows as n3/2, indicating optimal Brouwer's law behavior. We have verified that our results are in agreement with the JPL small-body integrator based on a term-by-term comparison, as well as in the integrated results for several test cases. ASSIST achieves our goal of better than 1 mas precision over 10 years. We expect that ASSIST will be valuable to the solar system dynamics community as the volume of high-precision data to be fitted increases substantially with the LSST and the Vera Rubin Observatory (Rubin Observatory LSST Solar System Science Collaboration et al. 2009; Jones et al. 2018; Ivezić et al. 2019).

Future work could include extending the equations of motion to be more suitable for artificial satellite orbits, parallelizing the code to improve the speed performance, and building a framework for orbit fitting.

We are grateful to the anonymous referees for their helpful suggestions. We thank Zachary Murray for suggesting using the (5303) Parijskij—Ceres encounter as a test. M.J.H. gratefully acknowledges support from the NSF (grant No. AST-2206194), the NASA YORPD Program (grant No. 80NSSC22K0239), and the Smithsonian Scholarly Studies Program (2022). D.F. conducted this research at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration (grant No. 80NM0018D0004). M.J.P. gratefully acknowledges NASA award No. 80NSSC22M0024.

Software: ASSIST, Holman et al. (2023).

Footnotes

Please wait… references are loading.
10.3847/PSJ/acc9a9