This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

SURF Report: High Accuracy Methods for Computing Gravitational Potential and Gravitational Force Fields Near the Surface of Irregularly Shaped 3-Dimensional Bodies111Copyright: © 2024. California Institute of Technology

Author: Thomas MacLean California Institute of Technology, Pasadena, CA, 91125, tmaclean@caltech.edu Mentor: Prof. Alan H. Barr California Institute of Technology Department of Computing and Mathematical Sciences, Pasadena, CA, 91125
software: La, Mathematica, MATLAB

1 Abstract

Accurate gravity field calculations are necessary for landing on planets, moons, asteroids, Earth’s “minimoons,” or other irregularly shaped bodies, but current methods become increasingly inaccurate and slow near the surface. We present high accuracy, fast methods for computing gravitational potential and gravitational force fields, which are needed for future space missions. Notably, gravitational force and potential computations are simplified, with high accuracy enhanced by bringing the derivative inside the gravitational potential integral. In addition, we present a new gravitational field “calculus,” which lets us combine simpler potentials and force fields to create more complex ones without accuracy loss. Several examples are provided, for instance, where we subtract different shapes from a spherical body making a variety of craters. The calculus will also work well with volumetric octree methods. Additionally, we use new bounds in the gravitational potential integral, to avoid trying to fit smooth basis functions to non-smooth curves, and harness new computational tools where tasks can be migrated to GPUs. We also have found that cylindrical coordinates can have special advantages in tailoring shape models. We have created a series of algorithms and preliminary MATLAB and Mathematica toolboxes utilizing these methods and the gravitational calculus. These methods are newly customizable for necessary high-accuracy gravity computations in future missions planned by JPL and other space agencies to navigate near irregularly shaped bodies in the solar system.

2 Introduction

Computing the gravitational potential field VV and gravitational force field FF are highly applicable and significant results for navigational mathematics, physics and engineering necessary for landing and modeling near-body dynamics. Throughout this paper we refer to (V,FV,F) as the “gravity field.” While the reader may assume that fast, accurate computations of the gravity field near non-spherical objects are already available, this is not the case. Surprisingly, current faster state-of-the-art gravitational force computations exhibit orders of tens of percent error near asteroid and moon surfaces (Scheeres, 2016), (Scheeres et al., 2019), (Takahashi & Scheeres, 2014) and are insufficient for accurately representing the dynamics. Most of these surface gravity models create errors on the order of tens of percent for bodies that stray from spherical symmetry, and the more aspherical the shape is, the more inaccurate the gravitational force models near the surface are (Takahashi & Scheeres, 2014). We foresee that our research opens the door to developing strategies for faster and far more accurate navigation near the surface of bodies.

In particular, space mission design and flight design are increasingly in need of fast accurate surface gravity force computations for the sake of landing, as well as for general navigation near the surface of real bodies. As landing on or flying near asteroids, moons, and other non-spherical bodies in space becomes increasingly pertinent, our current improvement of accuracy in gravity computations near the surface of realistic, non-spherical bodies will be increasingly beneficial.

New Methods: We present new methods for fast, reliable navigation near realistic irregularly shaped bodies that can be used for determining the optimal navigation strategy in a given mission. We present a number of methods that can be used for highly accurate, fast and reliable calculations, with special focus on our “calculus” of gravitational potentials and forces. Additionally, our methodology avoids issues in the “conventional methods” by taking the derivative of the potential integrand, solving the definition of the gravitational force directly, and not working with smooth basis functions to fit to non-smooth curves. See Figure 1 for a non-smooth force curve that is not suitably fitted by smooth basis functions. This work has been accepted as California Institute of Technology Jet Propulsion Laboratory New Technology Report 53321 (Lo et al., 2024).

We address a current issue that lies in computing sufficiently accurate derivatives of standard potential functions to obtain accurate gravitational force fields near the surface (Werner, 2010), (Scheeres, 2016). In the example case of the Mars moon Phobos, computational methods to derive the gravity field with accuracy and speed are crucial to allow for reliable navigation, and the gravitational force calculations on Phobos are especially relevant where the atmosphere is thin and asymmetries make the body highly non-spherical (Willner et al., 2010), (Scheeres et al., 2019).

Refer to caption
Figure 1: Gravity field for uniform density radius R=1 sphere along a line from the sphere center, in any direction, in non-dimensional units. Gravitational potential VSV_{S} is C1C^{1} continuous but not C2C^{2} continuous. Note the cusp in the force function FSF_{S}, which makes FSF_{S} unsuitable for representation with smooth basis functions. The x-axis is the distance from the center of the sphere in units of sphere radii. The left plot is the closed-form absolute value of the gravitational potential of the sphere, |VS||V_{S}|, along any two-dimensional line from the center of the sphere (VSV_{S} shown in Equation 3), and the right plot is the closed-form gravitational force of the sphere, FSF_{S}, along any two-dimensional line from the center of the sphere (shown in Equation 4).

At the core of our new methods, we focus on matching solutions closely to the “true” gravitational potential field VV and gravitational force field FF. Letting \nabla denote the gradient, the “true gravity field definitions,” with no additional assumptions, are given by Equation 1 and Equation 2 for gravitational potential VV and gravitational force FF, respectively, evaluated at any point 𝐱𝐑3\overrightarrow{\mathbf{x}}\in\mathbf{R}^{3}.

In Appendix B, Section 8, we present insights into the challenges that arise in the conventional methods, and we also present an implementable algorithm (B.1) derived from Takahashi & Scheeres (2014) which gives the previous state-of-the-art fast computation method.

V(𝐱)\displaystyle V(\overrightarrow{\mathbf{x}}) =𝐑3Gρ(𝐫)d𝐯(𝐫)|𝐱𝐫|\displaystyle=\int_{\mathbf{R}^{3}}\frac{G\rho(\overrightarrow{\mathbf{r}})d\mathbf{v}(\overrightarrow{\mathbf{r}})}{|\overrightarrow{\mathbf{x}}-\overrightarrow{\mathbf{r}}|} (1)
F(𝐱)\displaystyle F(\overrightarrow{\mathbf{x}}) =V(𝐱)\displaystyle=-\nabla V(\overrightarrow{\mathbf{x}}) (2)

3 Methods

Looking directly at the definition of the gravitational potential VV in real space induced by a shape 𝐒\mathbf{S} with density function ρ(𝐫)\rho(\overrightarrow{\mathbf{r}}), given by Equation 1, we can compute the gravitational potential field VV induced by the shape 𝐒\mathbf{S}. Integrating the integrand Gρ(𝐫)d𝐯(𝐫)|𝐱𝐫|\frac{G\rho(\overrightarrow{\mathbf{r}})d\mathbf{v}(\overrightarrow{\mathbf{r}})}{|\overrightarrow{\mathbf{x}}-\overrightarrow{\mathbf{r}}|} over 𝐫𝐑3\overrightarrow{\mathbf{r}}\in\mathbf{R}^{3}, where GG is the gravitational constant, ρ(𝐫)\rho(\overrightarrow{\mathbf{r}}) is the density function which gives the density of the body at a given point in space, d𝐯(𝐫)d\mathbf{v}(\overrightarrow{\mathbf{r}}) is the volume element, and |𝐱𝐫||\overrightarrow{\mathbf{x}}-\overrightarrow{\mathbf{r}}| is the distance between input vector 𝐱𝐑3\overrightarrow{\mathbf{x}}\in\mathbf{R}^{3} and 𝐫𝐑3\overrightarrow{\mathbf{r}}\in\mathbf{R}^{3}, we derive the expression for the true gravitational potential field VV induced by the shape 𝐒\mathbf{S}.

The integration process just described, where we integrate as in Equation 1 over the shape 𝐒\mathbf{S}, is the most direct way of computing the gravitational potential field, and is derived directly from the gravitational potential definition. Staying “near” the direct definition presents a powerful way of limiting error in our solution; we can derive closed-form expressions for the gravity field for certain shapes 𝐒\mathbf{S} by conventional integration tricks.

The gravitational potential VSV_{S} for a uniform density sphere is a continuous C1C^{1} function (see Figure 1), but its derivative exhibits a fundamental issue near the surface. This restricts the standard methods from accurately deriving the gravitational force FSF_{S} for the sphere, which is the derivative of the potential. The graph of gravitational force may seem to be smooth despite its underlying behavior as a C1C^{1}, not C2C^{2}, function, as demonstrated by Figure 1.

Closed-form expressions for the uniform density sphere’s gravity field can be derived by substituting the sphere into Equation 1, where over 𝐑3\mathbf{R}^{3} the density ρ(𝐫)\rho({\overrightarrow{\mathbf{r}}}) is 0 outside of the sphere and 1 inside the sphere.

VS(𝐱)={GM𝐱,if 𝐱>RGM2R(3𝐱2R2),if 𝐱RV_{S}(\overrightarrow{\mathbf{x}})=\begin{cases}-\frac{GM}{||\overrightarrow{\mathbf{x}}||},&\text{if }||\overrightarrow{\mathbf{x}}||>R\\ -\frac{GM}{2R}\left(3-\frac{||\overrightarrow{\mathbf{x}}||^{2}}{R^{2}}\right),&\text{if }||\overrightarrow{\mathbf{x}}||\leq R\end{cases} (3)
FS(𝐱)={GM𝐱3𝐱,𝐱>RGMR3𝐱,𝐱RF_{S}(\overrightarrow{\mathbf{x}})=\begin{cases}-\frac{GM}{||\overrightarrow{\mathbf{x}}||^{3}}\overrightarrow{\mathbf{x}},&||\overrightarrow{\mathbf{x}}||>R\\ -\frac{GM}{R^{3}}\overrightarrow{\mathbf{x}},&||\overrightarrow{\mathbf{x}}||\leq R\end{cases} (4)

See Equations 3 and 4 for closed-form gravity field expressions about the uniform mass sphere with FSF_{S} denoting the gravitational force field about the sphere and VSV_{S} denoting the gravitational potential field, where we take the positive direction to be pointing inwards and let 𝐱||\overrightarrow{\mathbf{x}}|| denote the norm of vector 𝐱𝐑3\overrightarrow{\mathbf{x}}\in\mathbf{R}^{3}.

See Figure 1 for a plot of these expressions in any given direction from the center of the sphere, where the gravitational force has a cusp at the sphere boundary.

New Methods to Eliminate Conventional Errors: Real shapes of interest typically have other characteristics beyond spherical symmetry and constant density that may make dynamics near the surface additionally complex. We present a method whereby integrating Equation 1 directly, there is no computational noise which may come from unsuitable basis functions, and taking the gradient of Equation 1 prior to integration results in a highly accurate numerical or closed-form gravitational force field. See Algorithm A.1 in Section 7 for a new procedure for gravity field computation via integration which stays near the true gravity field definitions given by Equations 1 and 2.

Symbolic and Numeric Integration: The triple integrals for computing gravitational potential and force, as given by Equations 1 and 2 evaluated for a given shape 𝐒\mathbf{S}, at a point 𝐱=(x,y,z)\overrightarrow{\mathbf{x}}=(x,y,z), may have one, two, or three symbolic integrations depending on the choice of coordinate system (ϕ1(x),ϕ2(y),ϕ3(z))(\phi_{1}(x),\phi_{2}(y),\phi_{3}(z)), where choosing a convenient coordinate system can significantly speed up the computation while retaining accuracy. Each symbolic integration speeds up the computation because it provides a closed-form expression. This choice of coordinate system is motivated by selection of coordinates which exploit symmetries. We select the coordinate system (ϕ1(x),ϕ2(y),ϕ3(z))(\phi_{1}(x),\phi_{2}(y),\phi_{3}(z)) which allows for a higher number of symbolic integrations in order to maintain speed in the computation and limit numerical integration.

We find that in cases where there is symmetry about the z-axis and the height can be written as a function of the radial distance from the center, the use of conventional cylindrical coordinates (ρ,θ,z)(\rho,\theta,z)—where ρ\rho is radial distance in the xy-plane from the origin, θ\theta is the angle relative to the x-axis in the xy-plane, and zz is height—is convenient. This choice of coordinates lends way to two symbolic integrations, following the definitions in Equations 1 and 2. Spherical symmetry leads to a constant factor from integration in θ\theta, and we can write the bounds in zz as a function of planar coordinate ρ\rho, which allows for symbolic integration in zz. These properties hold for many notable volumes which may represent true surface features, such as craters. An example of the setup for computing the gravity field of a crater volume, where integration is simplified with two symbolic integrations via choice of cylindrical coordinates, is shown in Figure 2.

Refer to caption
Figure 2: Computing the gravity field of bowl-shaped “simple” craters can be done with convenient bounds in cylindrical coordinates. The final integral involves only one numeric integration (here, over 𝐈𝐍𝐞𝐰\mathbf{I_{New}} in ρ\rho as opposed to integrating the original integrand 𝐈\mathbf{I} over ρ,θ,z\rho,\theta,z) and two symbolic integrations, due to the symmetry in θ\theta and ability to write bounds of zz as a continuous function of cylindrical coordinate ρ\rho. See Kiefer (2003), Senft & Stewart (2007) for other crater classifications, which can also be modelled conveniently in cylindrical coordinates, due to similar properties of symmetry in θ\theta and ability to write bounds of zz as a continuous function of cylindrical coordinate ρ\rho.
Refer to caption
Figure 3: Example of Gravitational Calculus: Sphere with several bowl-shaped “simple” craters, which models a simple moon. The gravity field of the final shape is equal to the gravity field of the sphere minus the gravity field of the “simple craters.”

New “Gravitational Calculus:” We present uses of our new “gravitational calculus,” where computation of disjoint shapes’ gravity field can be translated or rotated, then added or subtracted to the overall gravity field. See Figures 3, 4, and 5, for examples of shapes with craters and mountains. The operations of translation and rotation via the gravitational calculus are given by Algorithm A.3.1 and A.3.2 in Appendix A, Section 7.

Refer to caption
Figure 4: Example of Gravitational Calculus: Sphere with mountain appendages. The gravity field of the final shape is equal to the gravity field of the sphere plus the gravity field of the mountain volumes. The gravity field of the mountain volume need only be computed once since each mountain is a rotation of the others.
Refer to caption
Figure 5: Example of Gravitational Calculus: Sphere of radius R with an “ice cream cone crater.” The gravity field of the final shape is equal to the gravity field of the sphere minus the gravity field of the crater volume. The spherical coordinate bounds of the crater volume, the piece subtracted from the sphere, are 3R4\frac{3R}{4} to R in radial distance coordinate, 0 to 2π\pi in θ\theta coordinate, and 0 to π8\frac{\pi}{8} in ϕ\phi coordinate.

Certain closed-form solutions can be used in our new type of “gravitational calculus.” Closed-form solutions are possible when a convenient choice of coordinate system allows for three symbolic integrations. This is the case for the gravity field about the sphere. Additionally, highly accurate numerical computations can be used as a part of the calculus, where once a shape’s gravity field has been computed, use of the calculus allows for translation or rotation of the shape. In cases where one or more numerical integrations are computed to represent the gravity field of a shape 𝐒\mathbf{S}, although not exact, that gravity field can also be utilized further via the gravitational calculus with rotation or translation.

Navigation: For navigation purposes, it is often necessary to investigate crater-filled shapes. Scientific classifications exist for craters, with an example of a simple and complex crater shown in Figure 6, while other craters may have even more complicated shapes, which carry other classifications (Kiefer, 2003). Impact craters may have specific morphological shapes including mounds, flat floors, or concentric shapes (Senft & Stewart, 2007).

Refer to caption
Figure 6: Scientific “simple crater” and “complex crater” classifications, figure from Kiefer (2003). Such craters may exist on the shape of interest. The crater’s contribution to the gravity field can be realized via choice of coordinate system, new gravitational potential integral bounds, and use of the gravitational calculus.

A potential shape to investigate, in order to model a given crater, would have some bounds in radius, within a choice coordinate system (for instance, spherical coordinates for the following consideration), that are functions clower(ϕ)c_{lower}(\phi) and cupper(ϕ)c_{upper}(\phi) of ϕ\phi chosen in such a way of closely representing the “real crater.” This can be used to model real craters that form and lie in real bodies such as Phobos. See Figure 5 for a sphere with a “test crater” which algebraically simplifies since clower(ϕ)c_{lower}(\phi) and cupper(ϕ)c_{upper}(\phi) are constants, where use of the gravitational calculus presents a gravity field computation for an asteroid-like shape.

We present additional convenient applications of the gravitational calculus in Figures 3 and 4, where a shape is rotated for use in computing the final shape’s desired gravity field, and the gravitational calculus makes the computations convenient. The gravitational calculus allows us to model mountains, craters, or other surface features.

Octree Methods: We present another new method, which utilizes octrees for shape and density representations to compute the gravity field in Algorithm A.2 of Appendix A, Section 7 (Meagher, 1982). Algorithm A.2 provides a guide for implementing octree representation. The use of quad tree algorithms has been examined in aerospace applications for shape representation of satellite mapping coverage (Lo et al., 2003), and many of the same benefits coming from this form of shape representation of completeness and efficiency may apply in our case of gravity field computations, given our gravitational calculus. The octree is a three-dimensional generalization of the quad tree representation, and this method allows for complete shape representation in three dimensions.

4 Results

We have demonstrated that the nature of the gravitational force, with non-smooth behavior, encourages use of new fast methods for high accuracy, yet efficient, computations, which we propose. These methods are summarized by the algorithms that are stated in the following section.

While it has been previously demonstrated that within the minimum Brillouin sphere, where all mass is enclosed, the force function is not smooth by nature (Costin et al., 2020), (Šprlák & Han, 2021), we find that, in fact, anytime a body’s section crosses a mass boundary, such as in craters or mountains, there can be cusps arising in the true force function. See Figure 7 for an example of the gravity field about a crater modeled to fit the form of a “simple crater,” where we have a seemingly innocent potential function whose derivative has two cusps, which correspond to the points on the boundary of the crater volume.

Refer to caption
Figure 7: Absolute value of gravitational potential (|V||V|) versus distance, and gravitational force (FF) versus distance of bowl-shaped “simple” craters in direction of North Pole. Figure made originally in Mathematica and reproduced in MATLAB using our new GravToolbox Package, where use of cylindrical coordinates gives a convenient computation.

We have developed tools for integrating over certain “crater sections” by directly integrating the potential definition in Mathematica and MATLAB code. See Appendix (Section 7).

Algorithms: We have constructed a set of algorithms which guide computation of gravitational potential field VV and gravitational force field FF for a given shape 𝐒\mathbf{S}. See Appendix A, Section 7, for full set of new method algorithms. Algorithm A.1 states a workflow for computing the gravitational potential and force fields. The algorithms that follow, in Section 7, present direct methods involving integration in solving for VV, FF, the octree method (Algorithm A.2), gravitational calculus operator properties (Algorithms A.3.1, A.3.2), and tools for simplifying computations using the gravitational calculus and properties of the gravitational potential (Algorithms A.4, A.5). See Section 5 for additional future pathways for computing gravity fields. In Appendix B, we condense the previous conventional methods into a convenient algorithm; Algorithm B.1 re-states in brief, implementable fashion, a state-of-the-art method as presented in Takahashi & Scheeres (2014). This algorithm is also implemented in Mathematica notebook “Potential Reconstruction Algorithm,” created for demonstration of the previous methods versus the new methods. Figure 11 demonstrates the success of following the new proposed gravity field workflow in the case of the uniform mass sphere, where there is only numerical error, whereas in the conventional methods, there is additional error (See Appendix B, Section 8).

MATLAB Tools: We have a preliminary MATLAB package, GravToolbox, which computes, and plots in a 2-dimensional cross-section, the numerical potential of a specified shape. Inputting the bounds which represent the crater shape (as a spherical section which can be expressed in terms of numerical bounds for (r,θ,ϕ)(r,\theta,\phi) in spherical coordinates) into our functions, we can compute a (highly accurate) numerical cross-section of the potential and force field. Figure 7 shows the gravity field computation for a uniform density crater modelled to fit the shape of a “simple crater.”

Mathematica Tools: We have preliminary Mathematica notebooks which compute and plot in a 2-dimensional cross-section, the numerical potential of a specified shape, as done in the MATLAB package GravToolbox. We also have an example notebook “Potential Reconstruction Algorithm” which demonstrates Algorithm 1 and error measurements (see Appendix, Section 7).

5 Applications & Future Work

As we have begun to build the calculus for the gravitational potential and gravitational forces, we have found that many of the potential integrations become algebraically complicated, leading to long run times and challenging computations. Taking the derivative of the potential’s integrand prior to integration to find the gravitational force field can lead to a more challenging integral than that of the potential integral. However, these run times can be sped up by some optimal combination of pre-computed octrees or pre-computed “definition integrals” in convenient coordinate systems and bounds for shapes, each of which need only be computed once. Our methods, at their finest, are highly accurate, but potentially slow in such a way that certain computations may be infeasibly slow without GPUs. This is the issue with the polyhedron model (Werner, 1997), (Werner, 2010). However, we anticipate that computation of shapes in parallel using GPUs creates a modern, sufficiently fast method which retains high accuracy up to specified tolerance. We can ensure a desired accuracy, up to some tolerance, in the case of computing numerically by computing the exact potential at a sufficiently large number of points and interpolating. Similarly, with use of octrees, we can continue the algorithm up to construction of a shape that is sufficiently close to the true shape of interest. We also anticipate that there may be special cases where a scaling property could be used with the gravitational calculus to speed up computations.

In the example case of Phobos, a highly accurate form, we predict, would require adaptability to a wide span of shapes that constitute the body in union, and this may involve numerical and octree computations in conjunction with our potential “calculus” (see (Werner, 1997) for Polyhedron approximation of non-spherical bodies). The approach would also extend to navigation near the Earth’s “minimoons.” These accurate computations model gravitational force fields which are very “cusp-like” in behavior, and are not limited to smooth functions.

Further work involves a deep investigation into how changing integration order, reformatting integrands, optimizing code, finding shapes that represent “true craters” in ways that are more conveniently derivable, changing coordinate systems, or using more powerful computing can be combined in such a way that creates a directly implementable algorithm for space agencies to use. Additionally, new algorithms must be able to model non-constant density distributions, which may be done using the octree method in conjunction with machine learning algorithms, to fit a power series density function to each closed-form box in the octree. Our GravToolbox package can be expanded into a re-usable set of code for navigational purposes and our algorithms in Section 7 can also be implemented for specific gravity field computations in missions requiring high accuracy navigation near bodies.

Additional Methods: It may be possible to use a different solution to Poisson’s Equation 2U=4πGρ\nabla^{2}U=-4\pi G\rho using complete basis functions such as wavelets (Iglewska-Nowak & Stefaniak, 2023) and a more complete representation of the problem itself as the single differential equation given by Equation 5 where for an ellipsoid with axes a, b, c, in the x, y, and z directions respectively, f(x,y,z)=1x2a2y2b2z2c2f(x,y,z)=1-\frac{x^{2}}{a^{2}}-\frac{y^{2}}{b^{2}}-\frac{z^{2}}{c^{2}}.

2U=H(f)\nabla^{2}U=H(f) (5)

One solution method in the new formulation involving the Heaviside function representation could be to use a Monte Carlo algorithm which samples points randomly. Other investigations could involve a Fourier Transform Method. Others could investigate other distributions to represent the solution. Speed-up and parallel computations may utilize GPUs.

6 Acknowledgements

Thomas MacLean is supported as a William H. and Helen Lang Summer Undergraduate Research Fellow with funding support provided by William H. Lang and Helen Lang and the California Institute of Technology (Caltech) Student-Faculty Programs Office. Dr. Martin Lo at the NASA Jet Propulsion Laboratory has been a vital source of ideas and collaborator for the research. This research is directly funded and supported by the Caltech Barr Graphics Lab. The NASA Jet Propulsion Lab has provided funding, allocated via the Mission Design Section and made possible by Dr. Jon Sims and Dr. Martin Lo. The research was carried out in part at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration (80NM0018D0004).

© 2024. California Institute of Technology. Government sponsorship acknowledged.

7 Appendix A

Algorithm A.1: New Proposed Workflow for Gravitational Potential VV, Gravitational Force FF Computation
————————————————————————————————————
1. Prepare integral definition of gravitational potential in closed-form. Represent potential V(𝐱)V(\overrightarrow{\mathbf{x}}) as the integral definition, see Equation 1. 2. Partition and choose coordinate systems. Partition the shape 𝐒\mathbf{S} into sections consisting of base shape 𝐁\mathbf{B}, other appendage or intersecting shapes (see A.5 for use of intersections) {𝐒i\mathbf{S}_{i}}i where computations will be done. We select coordinate systems {(ϕ1i(x),ϕ2i(y),ϕ3i(z))}i\{(\phi_{1i}(x),\phi_{2i}(y),\phi_{3i}(z))\}_{i} to simplify integrations involved. Our goal is to optimize over low runtime, error, and numerical computations. See Section 3 for discussion about convenience of selection of coordinates given density function ρ(𝐫)\rho(\overrightarrow{\mathbf{r}}) of shape 𝐒\mathbf{S}. 3. Use Gravitational Calculus. In computing gravity fields due to base shape 𝐁\mathbf{B} and appendages {𝐒i\mathbf{S}_{i}}i, if suitable, refer directly to Algorithm A.2 to represent any appendage shapes with octree modeling. Otherwise, calculate contribution to gravity field by shape 𝐒i\mathbf{S}_{i} in convenient coordinate system {(ϕ1i(x),ϕ2i(y),ϕ3i(z))}i\{(\phi_{1i}(x),\phi_{2i}(y),\phi_{3i}(z))\}_{i} which allows for max of 1, 2, or 3 symbolic integrations in Equation 1 during potential VV calculation. In calculation of gravitational force FF, take the derivative of Equation 2 evaluated at given shape 𝐒i\mathbf{S}_{i}, which is the potential VV contributed by 𝐒i\mathbf{S}_{i}, prior to integrating. Then integrate, in the choice coordinates {(ϕ1i(x),ϕ2i(y),ϕ3i(z))}i\{(\phi_{1i}(x),\phi_{2i}(y),\phi_{3i}(z))\}_{i}. We encourage that these calculations to be migrated and done in parallel via GPU. 4. Compute Overall Gravity Field. Determine overall gravitational potential V(𝐱)V(\overrightarrow{\mathbf{x}}) and gravitational force F(𝐱)F(\overrightarrow{\mathbf{x}}) by again using the gravitational calculus to sum up all component pieces contributed by all shape pieces 𝐁\mathbf{B} and {𝐒i\mathbf{S}_{i}}i from Step 3.

Algorithm A.2: Gravitational Potential VV, Gravitational Force FF Computation using Octree Shape Representation
————————————————————————————————————
1. Octree algorithm. Begin with box that fully encapsulates the shape of interest 𝐒\mathbf{S}. Then execute an octree algorithm out to chosen tolerance, whereby boxes are split into eight quadrants whenever there is mass inside a given box on a step of the algorithm. Stop at “N steps” when tolerance is reached. Use a plug-in software for octree shape representation. See Figure 8 for 2-dimensional cross-section view of this process, which results in any shape representation (Nikolov, 2022). 2. Use of other octrees (if necessary). One may choose to use pre-determined octree data structure computations for pieces of the shape. For instance, crater shapes may already have a pre-computed octree representation. See Algorithms A.3.1 and A.3.2 to move shape representation via calculus to desired location. 3. Compute shape gravitational potential and force. First compute closed-form gravitational potential and force of each box size used in the octree, at the origin. This corresponds to at most the number of steps in the algorithm (“N” closed-form box computations). See Equation 6 for the closed-form representation of the potential induced at point 𝐏=(P1,P2,P3)\overrightarrow{\mathbf{P}}=(P_{1},P_{2},P_{3}) by a box of dimensions 2D1D_{1}, 2D2D_{2}, 2D3D_{3} in x,yx,y, and zz respectively, centered at the origin, as given by Chappell et al. (2012). Equation 6 uses the substitution C=p1p2p3C=p_{1}p_{2}p_{3}. The closed-form force field representation is given by the negative gradient of the potential, as given in Equation 7. Next operate by translation and rotation as in Algorithms A.3.1 and A.3.2, and sum up all components of boxes which contain mass of the body, to find the resulting gravitational potential and gravitational force field of the desired shape. The resulting gravity field is the sum of contributions from all the boxes with mass as given by Equation 8 and Equation 9. 4. Representing densities within boxes. In future work, non-constant shape densities may be inferred within each box using power series machine learning methods, but this requires further investigation.

VB(𝐏)=Gρj=13[i=13[Cpiln(pi+1)pi22arctanCpi2𝐩]]pj=DjPjDjPjV_{B}(\overrightarrow{\mathbf{P}})=-G\rho\sum_{j=1}^{3}\begin{bmatrix}\ \sum_{i=1}^{3}\begin{bmatrix}\frac{C}{p_{i}}\ln{(p_{i}+1)}\\ -\frac{p_{i}^{2}}{2}\arctan{\frac{C}{p_{i}^{2}||\overrightarrow{\mathbf{p}}||}}\end{bmatrix}\end{bmatrix}^{D_{j}-P_{j}}_{p_{j}=-D_{j}-P_{j}} (6)
FB(𝐏)=[VB(𝐏)]F_{B}(\overrightarrow{\mathbf{P}})=-\nabla[V_{B}(\overrightarrow{\mathbf{P}})] (7)
V(𝐏)=BVB(𝐏)V(\overrightarrow{\mathbf{P}})=\sum_{B}V_{B}(\overrightarrow{\mathbf{P}}) (8)
F(𝐏)=BFB(𝐏)F(\overrightarrow{\mathbf{P}})=\sum_{B}F_{B}(\overrightarrow{\mathbf{P}}) (9)
Refer to caption
Figure 8: Shape 𝐒\mathbf{S} in gray represents 2-dimensional cross-section of shape of interest. Quad-tree algorithm out to 5 steps is demonstrated. Generalizes to 3 dimensions in octree representation. See Algorithm A.2 for the octree representation method.

Algorithm A.3.1: Gravitational Calculus; Translation
————————————————————————————————————
1. Original potential and force. Take given gravitational potential V(x,y,z)=V(𝐩)V(x,y,z)=V(\overrightarrow{\mathbf{{p}}}) and force F(x,y,z)=F(𝐩)F(x,y,z)=F(\overrightarrow{\mathbf{{p}}}) of shape 𝐒\mathbf{S} in the home coordinate system of 𝐒\mathbf{S}, centered at the origin. Take desired translated shape 𝐒𝐓\mathbf{S_{T}}. Determine vector 𝐩𝟎=(x0,y0,z0)\overrightarrow{\mathbf{{p_{0}}}}=(x_{0},y_{0},z_{0}) separating the center of the congruent shapes 𝐒\mathbf{S} and 𝐒𝐓\mathbf{S_{T}}. 2. Compute translated gravitational force and potential. To compute translated gravitational potential VT(𝐩)V_{T}(\overrightarrow{\mathbf{{p}}}), use VT(𝐩)=V(𝐩𝐩𝟎)=V(xx0,yy0,zz0)V_{T}(\overrightarrow{\mathbf{{p}}})=V(\overrightarrow{\mathbf{{p}}}-\overrightarrow{\mathbf{{p_{0}}}})=V(x-x_{0},y-y_{0},z-z_{0}). Analogously, to compute translated gravitational force FT(𝐩)F_{T}(\overrightarrow{\mathbf{{p}}}), use the operation FT(𝐩)=V(𝐩𝐩𝟎)=F(xx0,yy0,zz0)F_{T}(\overrightarrow{\mathbf{{p}}})=V(\overrightarrow{\mathbf{{p}}}-\overrightarrow{\mathbf{{p_{0}}}})=F(x-x_{0},y-y_{0},z-z_{0}).

Algorithm A.3.2: Gravitational Calculus; Rotation
————————————————————————————————————
1. Original potential and force. Take given gravitational potential V(x,y,z)=V(𝐩)V(x,y,z)=V(\overrightarrow{\mathbf{{p}}}) and force F(x,y,z)=F(𝐩)F(x,y,z)=F(\overrightarrow{\mathbf{{p}}}) of shape 𝐒\mathbf{S} in the home coordinate system of 𝐒\mathbf{S}, centered at the origin. Take desired rotated shape 𝐒𝐑\mathbf{S_{R}}. Determine rotation matrix A\inSO(3) such that for each 𝐩𝐒\overrightarrow{\mathbf{{p}}}\in\mathbf{S}, the transformation A𝐩\textbf{A}\cdot\overrightarrow{\mathbf{{p}}} maps onto 𝐒𝐑\mathbf{S_{R}}. 2. Compute rotated gravitational force and potential. To compute rotated gravitational potential VR(𝐩)V_{R}(\overrightarrow{\mathbf{{p}}}), use VR(𝐩)=V(A1𝐩)=V(A1(x,y,z))V_{R}(\overrightarrow{\mathbf{{p}}})=V(\textbf{A}^{-1}\cdot\overrightarrow{\mathbf{{p}}})=V(\textbf{A}^{-1}\cdot(x,y,z)). Analogously, to compute translated gravitational force FR(𝐩)F_{R}(\overrightarrow{\mathbf{{p}}}), use the operation FR(𝐩)=F(A1𝐩)=F(A1(x,y,z))F_{R}(\overrightarrow{\mathbf{{p}}})=F(\textbf{A}^{-1}\cdot\overrightarrow{\mathbf{{p}}})=F(\textbf{A}^{-1}\cdot(x,y,z)).

Algorithm A.4: Gravitational Calculus; Re-Use of Volumes
————————————————————————————————————
1. Given “convenient” shapes to use. Use shapes 𝐒\mathbf{S}, 𝐒𝐈\mathbf{S_{I}} such that removing the region 𝐒𝐈\mathbf{S_{I}} from any number of places in the given base shape 𝐁\mathbf{B}, which may be a sphere or ellipsoid, allows for re-use of the shape 𝐒\mathbf{S} with rotation and translation to model the features of the shape of interest. 2. Move the shape pieces to the desired locations. Move 𝐒\mathbf{S} to the (multiple) locations of computation via translation and/or rotation and compute the gravity field of the base shape piece (or pieces) that has been removed, 𝐒𝐈\mathbf{S_{I}}. 3. Compute overall gravity field. Compute the gravitational potential and force of the shape of interest which is formed with just combinations of 𝐒𝐈\mathbf{S_{I}}, 𝐒\mathbf{S}, and 𝐁\mathbf{B} being careful not to double count or double subtract. See Figure 9. Refer to Algorithms 2-3 for computation in 𝐒\mathbf{S}, 𝐒𝐈\mathbf{S_{I}}.

Refer to caption
Figure 9: Consider these shapes as cross-sections of a 3-dimensional ellipsoid with appendage shape 𝐒\mathbf{S}, where shape 𝐒\mathbf{S} represents a flat cone which is intersected with base shape ellipsoid 𝐁\mathbf{B}. The intersection region 𝐒𝐈\mathbf{S_{I}} is the section of the ellipsoid that is missing, and this region is “subtracted” using the gravitational calculus to find the gravitational potential and force fields of the right and left object. The action of a rotation and translation on shape 𝐒\mathbf{S} returns a crater without needing to recompute 𝐒\mathbf{S}, using the gravitational calculus. For the left shape, the gravity field is the result of the gravity field of 𝐁\mathbf{B} minus the gravity field of 𝐒𝐈\mathbf{S_{I}}, the piece of 𝐁\mathbf{B} which is chopped off, plus the gravity field of 𝐒\mathbf{S}. The right shape’s gravity field is the gravity field of 𝐁\mathbf{B} minus the gravity field of 𝐒𝐈\mathbf{S_{I}}, minus the gravity field of 𝐒\mathbf{S}.

Algorithm A.5: Gravitational Calculus; Intersection
————————————————————————————————————
1. Determine a “convenient” shape to use. Determine shape 𝐒I\mathbf{S}_{I} such that intersection derives a wide combination of shapes which represent the surface features of the desired shape 𝐒\mathbf{S}, upon intersection with a chosen base shape 𝐁\mathbf{B}, which may be a sphere or ellipsoid. 2. Move the shape to the desired location. Move 𝐒I\mathbf{S}_{I} to location of computation via translation, rotation, and/or scaling. 3. Compute at intersection. Compute the gravitational potential and force of the intersection 𝐈\mathbf{I} between 𝐒I\mathbf{S}_{I} and the base shape 𝐁\mathbf{B}; see Figure 10. Refer to Algorithms 2-3 for computation in 𝐈\mathbf{I}.

Refer to caption
Figure 10: Shape 𝐒I\mathbf{S}_{I} in gray and blue is intersected with base shape 𝐁\mathbf{B}. Intersection region is 𝐈\mathbf{I}. The intersection region resembles that of a crater.

Packages: GravToolbox. Presented in MATLAB, this directory gives a set of files which can compute specified crater or base sphere gravity fields in cylindrical coordinates. The package also generalizes as a convenient tool for computations of shapes which are a linear combination of craters and a base shape. Potential Reconstruction Algorithm. Mathematica Demonstration of Algorithm 1 versus direct integration. The package features a presentation of a current state-of-the-art implementation on a sphere, where there is some error as shown in Figure 11, while the numerical method used has extremely low error.

8 Appendix B

Appendix B analyzes the challenges that arise in conventional methods of gravitational potential field (here denoted by UU to match previous notations) and gravitational force field (U\nabla U) calculations. We also present an implementable algorithm (B.1) giving the state-of-the-art fast computation method. Most methods use spherical harmonics expansions, though ellipsoidal expansions have also been used, and in certain cases improved accuracy (Romain & Jean-Pierre, 2001). These, however, are each derived in such a way that require assumptions in the posing of the problem.

Conventional Aerospace Method Challenges: Conventional state-of-the-art aerospace methods use series expansions of solutions to the Laplace Equation, given by Equation 10, which is solved by separation of variables to determine orthonormal basis functions which determine the spherical harmonics basis functions whose coefficients are conventionally given by Equation 11 (Takahashi & Scheeres, 2014), (Scheeres, 2016), (Zamaro & Biggs, 2015). This gives approximations for the gravitational potential UeU^{e} outside the body given by Equation 12.

2U=0\nabla^{2}U=0 (10)
{Cnme=(2δ0m)(nm)!M(n+m)!M(rRe)nPnm(sinϕ)cos(mλ)𝑑mSnme|m>0=2(nm)!M(n+m)!M(rRe)nPnm(sinϕ)sin(mλ)𝑑m\left\{\begin{aligned} C^{e}_{nm}&=\frac{(2-\delta_{0m})(n-m)!}{M*(n+m)!}\int_{M}\left(\frac{r^{\prime}}{R_{e}^{*}}\right)^{n}P_{nm}(\sin\phi^{\prime})\cos(m\lambda^{\prime})\,dm^{\prime}\\ S^{e}_{nm}\big{|}_{m>0}&=\frac{2(n-m)!}{M*(n+m)!}\int_{M}\left(\frac{r^{\prime}}{R_{e}^{*}}\right)^{n}P_{nm}(\sin\phi^{\prime})\sin(m\lambda^{\prime})\,dm^{\prime}\end{aligned}\right. (11)
Ue(r,λ,ϕ)=GMRen=0m=0nPnm(sinϕ)[cos(mλ)sin(mλ)][CnmeSnme]U^{e}(r,\lambda,\phi)=\frac{GM^{*}}{R_{e}^{*}}\sum_{n=0}^{\infty}\sum_{m=0}^{n}P_{nm}(\sin\phi)\begin{bmatrix}\cos(m\lambda)\\ \sin(m\lambda)\end{bmatrix}\cdot\begin{bmatrix}C^{e}_{nm}\\ S^{e}_{nm}\end{bmatrix} (12)

This solution method works best for the homogeneous differential equation (Equation 10) and is effective for solving for the gravity field of the body. To calculate the potential or force at points interior to the shape of interest, Poisson’s Equation is conventionally solved, as given by Equation 13.

2U=4πGρ\nabla^{2}U=-4\pi G\rho (13)

Basis functions for the interior case have conventionally been found as Bessel function coefficients presented by Equation 14, though this work assumes that gravitational potential VV is proportional to the density distribution (Takahashi & Scheeres, 2014).

{𝒜lnmi=2(2δ0m)(2n+1)(nm)!Mni(αlni)(n+m)!Mjn(αlnirRe)Pnm(sinϕ)cos(mλ)𝑑mlnmi|m>0=4(2n+1)(nm)!Mni(αlni)(n+m)!Mjn(αlnirRe)Pnm(sinϕ)sin(mλ)𝑑m\left\{\begin{aligned} \mathscr{A}_{lnm}^{i}&=\frac{2(2-\delta_{0m})(2n+1)(n-m)!}{M*\mathscr{E}_{n}^{i}(\alpha_{ln}^{i})(n+m)!}\int_{M}j_{n}\left(\frac{\alpha_{ln}^{i}r^{\prime}}{R_{e}^{*}}\right)P_{nm}(\sin\phi^{\prime})\cos(m\lambda^{\prime})\,dm^{\prime}\\ \mathscr{B}_{lnm}^{i}\big{|}_{m>0}&=\frac{4(2n+1)(n-m)!}{M*\mathscr{E}_{n}^{i}(\alpha_{ln}^{i})(n+m)!}\int_{M}j_{n}\left(\frac{\alpha_{ln}^{i}r^{\prime}}{R_{e}^{*}}\right)P_{nm}(\sin\phi^{\prime})\sin(m\lambda^{\prime})\,dm^{\prime}\end{aligned}\right. (14)
Ui(r,λ,ϕ)=GMRel=0n=0m=0njn(αlnirRe)Pnm(sinϕ)[cos(mλ)sin(mλ)][𝒜lnmilnmi]U^{i}(r,\lambda,\phi)=\frac{GM^{*}}{R_{e}^{*}}\sum_{l=0}^{\infty}\sum_{n=0}^{\infty}\sum_{m=0}^{n}j_{n}\left(\frac{\alpha_{ln}^{i}r}{R_{e}^{*}}\right)P_{nm}(\sin\phi)\begin{bmatrix}\cos(m\lambda)\\ \sin(m\lambda)\end{bmatrix}\cdot\begin{bmatrix}\mathscr{A}_{lnm}^{i}\\ \mathscr{B}_{lnm}^{i}\end{bmatrix} (15)

This state-of-the-art procedure for both the interior and exterior cases in this procedure are summarized by Algorithm B.1.

Main Sources of Error: There is a key region where the errors in current state-of-the-art methods arise in the calculation of the gravitational force field for any non-spherical body. Namely, assuming we have some mass MM with non-negligible volume VV, a Brillouin sphere is any sphere centered at the center of MM which entirely encloses MM. Within the Brillouin sphere, conventional gravitational force predictions are generally demonstrated to be inaccurate and divergent (Costin et al., 2020), (Šprlák & Han, 2021). Even for “nearly spherical” bodies, the divergence of the predication proves to be significant; historically, state-of-the-art methods give errors on the order of tens of percent for calculations within the minimum Brillouin sphere of the body (Takahashi & Scheeres, 2014), (Scheeres, 2016), (Scheeres et al., 2019). See Figure 11 for a comparison of these methods with our method of direct integration, about a uniform mass sphere.

Refer to caption
Figure 11: Error in computational methods on the uniform density sphere. Our method of solving the integral directly only has numerical error, which is bounded by 101110^{-11} percent, indistinguishable from the x-axis. “Degree/Power m” expansions are state-of-the art spherical harmonic expansions of the form given in (Takahashi & Scheeres, 2014) where the expansion is up to degree “m” and power “m.” See Equation (15), where the first and second infinite summations can be truncated to a finite bound which correspond to the power and degree, respectively.

Spherical harmonics expansions are a standard approximation to the gravitational field far from the body, but, in fact, convergence of spherical harmonics occurs with probability zero inside the minimum Brillouin sphere (Costin et al., 2020). Even for bodies such as the moon, where spherical harmonics expansions and other smooth approximations have been used throughout literature, direct surface measurements taken by GRAIL (Gravity Recovery and Interior Laboratory) indicate divergences and significant inaccuracy to conventional aerospace calculations within the minimum Brillouin sphere (Šprlák & Han, 2021). Our problem lies in that the “cusp-like” characteristics of the true force function make smooth approximations highly inaccurate near the surface; that is, the true force function is riddled with cusps and non-differentiable points as was shown in Figure 1 for the gravitational force field near a sphere. Algorithm B.1: Gravitational Potential U(r,λ,ϕ)U(r,\lambda,\phi) Computation (State-of-the-art, Takahashi & Scheeres (2014))
————————————————————————————————————
1. Eigenvalues αlni\alpha^{i}_{ln}. Compute interior (Bessel) gravity field eigenvalues αlni\alpha^{i}_{ln} via boundary condition jn1(αlni)=0j_{n-1}(\alpha^{i}_{ln})=0 upon defining jnj_{n} as the spherical Bessel function of the first kind, letting nn be the degree and ll be the power. Refer to Table 1 for pre-computed values. 2. Normalization factors qi\mathscr{E}^{i}_{q}, constants GG, MM, ReR^{*}_{e}. Working in spherical coordinates, define qi(αlni)=αlni2[jq(αlni)]2\mathscr{E}_{q}^{i}(\alpha_{ln}^{i})=\alpha_{ln}^{i2}\left[j_{q}(\alpha_{ln}^{i})\right]^{2}, latitude λ\lambda, longitude ϕ\phi, volume element dv=r2sinθdrdϕdλdv^{\prime}=r^{\prime 2}\sin\theta\,dr^{\prime}\,d\phi^{\prime}\,d\lambda^{\prime} via integration over points (r,λ,ϕ)(r^{\prime},\lambda^{\prime},\phi^{\prime}) with nonzero density, and colatitude θ=π/2ϕ\theta=\pi/2-\phi. Define constants MM to be reference mass of the body, ReR^{*}_{e} the reference radius of the body, and GG the gravitational constant. Define PnmP_{nm} to be the Legendre polynomials of order n and degree m. 3. Interior gravity field basis coefficients 𝒜lnmi\mathscr{A}^{i}_{lnm}, lnmi\mathscr{B}^{i}_{lnm}. Compute interior (Bessel) gravity field non-dimensional coefficients 𝒜lnmi\mathscr{A}^{i}_{lnm}, lnmi\mathscr{B}^{i}_{lnm} via Equation (14) and scale them by the normalization factor R/MGR^{*}/M^{*}G. 4. Exterior gravity field basis coefficients CnmeC^{e}_{nm}, SnmeS^{e}_{nm}. Compute exterior gravity field non-dimensional coefficients CnmeC^{e}_{nm}, SnmeS^{e}_{nm} via Equation (11). 5. Interior gravity field potential. Define interior gravity potential field UiU^{i} as in Equation (15); using previous definitions and computations, this provides an analytical expression for UiU^{i} as a function of any point (r,λ,ϕ)ϵ𝐑3(r,\lambda,\phi)\epsilon\mathbf{R}^{3} up to r<Rer<R^{*}_{e}. 6. Exterior gravity field potential. Define exterior gravity potential field UeU^{e} as in Equation (12) for an analytical expression of potential at any point (r,λ,ϕ)ϵ𝐑3(r,\lambda,\phi)\epsilon\mathbf{R}^{3} such that rRer\geq R^{*}_{e}.

Table 1: Interior Bessel Gravity Field Eigenvalues αlni\alpha^{i}_{ln}. See Takahashi & Scheeres (2014) for computation.
(Power l, Deg. n) Deg. 0: Deg. 1: Deg. 2: Deg. 3: Deg. 4: Deg. 5:
Power 0: 1.5708 3.1416 0 0 0 0
Power 1: 4.7124 6.2832 4.4934 5.7635 6.9879 8.1826
Power 2: 7.8540 9.4248 7.7253 9.0950 10.4171 11.7049
Power 3: 10.9956 12.5664 10.9041 12.3229 13.6980 15.0397
Power 4: 14.1372 15.7080 14.0662 15.5146 16.9236 18.3013
Power 5: 17.2788 18.8496 17.2208 18.6890 20.1218 21.5254

References