Solutions of Multivariate Polynomial Systems using Macaulay Resultant Expressions

18
421 AAS 14-229 SOLUTIONS OF MULTIVARIATE POLYNOMIAL SYSTEMS USING MACAULAY RESULTANT EXPRESSIONS Keith A. LeGrand, * Kyle J. DeMars and Jacob E. Darling Finding zeros of algebraic sets is a fundamental problem in aerospace engi- neering computation. Geometrically, this problem can often be represented by the intersection of multiple conic or quadric surfaces. A common example is GPS trilateration, which is geometrically given by the intersection of three spheres. In this work, Macaulay resultant expressions are used to compute the solutions of a set of multivariate polynomial expressions. Both two- and three-dimensional algebraic sets are considered, and examples of two geomet- ric systems and their solutions are provided. INTRODUCTION Finding zeros of algebraic sets is a fundamental problem in aerospace engineering computation. Two com- mon examples are computing the intersection of two or more conics (the graph of a degree-2 polynomial in two dimensions) and computing the intersection of three or more quadrics (the graph of a degree-2 polynomial in three dimensions). One example of intersecting quadrics is the intersection of three spheres, as shown in Figure 1. Existing techniques for solving sets of multivariate polynomials include “guess and check” iterative techniques such as Newton’s method and least squares, and other non-iterative techniques such as Gr¨ obner bases. 1 Iterative techniques are subject to their initialization, and many times require numerous iterations or diverge completely if a poor initial guess is provided. Gr¨ obner bases, on the other hand, are non-iterative, but become extremely computationally expensive for sets containing three or more polynomials. Over the past two decades, resultant-based approaches have gained some popularity, especially in the computer graphics industry. The resultant of a set of multivariate polynomials is a single univariate polynomial obtained by eliminating all of the other variables. For example, if the equations that are to be solved are functions of x 1 ,x 2 ,...,x n , then by eliminating the variables x 2 ,...,x n , the resultant is given by Rpx 1 q. If the resul- tant has a root, then there exists at least one solution that satisfies the algebraic set. The most versatile form of the resultant, known as the Macaulay resultant, expresses the resultant as a ratio of the determinants of two matrices whose entries are the set’s coefficients. 2 The Macaulay resultant itself can be further categorized into numerous formulations, not all of which are equal. A discussion of the applications of some of these variations is included in this work. Finally, a unique method motivated by the works of References 3 and 4 is presented and applied to a set of two degree-2 bivariate polynomials (conics) as well as a set of three degree-2 trivariate polynomials (quadrics). ˚ Undergraduate Research Assistant, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Tech- nology, 400 W. 13th St, Rolla MO, 65409-0050 : Assistant Professor, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Technology, 400 W. 13th St, Rolla MO, 65409-0050 ; Graduate Research Assistant, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Technology, 400 W. 13th St, Rolla MO, 65409-0050

Transcript of Solutions of Multivariate Polynomial Systems using Macaulay Resultant Expressions

421

AAS 14-229

SOLUTIONS OF MULTIVARIATE POLYNOMIAL SYSTEMS

USING MACAULAY RESULTANT EXPRESSIONS

Keith A. LeGrand,* Kyle J. DeMars† and Jacob E. Darling‡

Finding zeros of algebraic sets is a fundamental problem in aerospace engi-neering computation. Geometrically, this problem can often be represented bythe intersection of multiple conic or quadric surfaces. A common example isGPS trilateration, which is geometrically given by the intersection of threespheres. In this work, Macaulay resultant expressions are used to compute thesolutions of a set of multivariate polynomial expressions. Both two- andthree-dimensional algebraic sets are considered, and examples of two geomet-ric systems and their solutions are provided.

INTRODUCTION

Finding zeros of algebraic sets is a fundamental problem in aerospace engineering computation. Two com-

mon examples are computing the intersection of two or more conics (the graph of a degree-2 polynomial in

two dimensions) and computing the intersection of three or more quadrics (the graph of a degree-2 polynomial

in three dimensions). One example of intersecting quadrics is the intersection of three spheres, as shown in

Figure 1. Existing techniques for solving sets of multivariate polynomials include “guess and check” iterative

techniques such as Newton’s method and least squares, and other non-iterative techniques such as Grobner

bases.1 Iterative techniques are subject to their initialization, and many times require numerous iterations or

diverge completely if a poor initial guess is provided. Grobner bases, on the other hand, are non-iterative, but

become extremely computationally expensive for sets containing three or more polynomials. Over the past

two decades, resultant-based approaches have gained some popularity, especially in the computer graphics

industry. The resultant of a set of multivariate polynomials is a single univariate polynomial obtained by

eliminating all of the other variables. For example, if the equations that are to be solved are functions of

x1, x2, . . . , xn, then by eliminating the variables x2, . . . , xn, the resultant is given by Rpx1q. If the resul-

tant has a root, then there exists at least one solution that satisfies the algebraic set. The most versatile form

of the resultant, known as the Macaulay resultant, expresses the resultant as a ratio of the determinants of two

matrices whose entries are the set’s coefficients.2

The Macaulay resultant itself can be further categorized into numerous formulations, not all of which are

equal. A discussion of the applications of some of these variations is included in this work. Finally, a unique

method motivated by the works of References 3 and 4 is presented and applied to a set of two degree-2

bivariate polynomials (conics) as well as a set of three degree-2 trivariate polynomials (quadrics).

˚Undergraduate Research Assistant, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Tech-

nology, 400 W. 13th St, Rolla MO, 65409-0050:Assistant Professor, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Technology, 400 W.

13th St, Rolla MO, 65409-0050;Graduate Research Assistant, Department of Mechanical and Aerospace Engineering, Missouri University of Science and Technology,

400 W. 13th St, Rolla MO, 65409-0050

422

Figure 1. Intersection of three spheres.

RESULTANT EXPRESSIONS

Most forms of the resultant are expressed as a ratio of two determinants. Macaulay was the first to use this

determinant formulation in 1902, expressing the resultant as

R px1q “ det pMqdet pDq (1)

The existing methods today follow this same principle, but diverge in the ways that they construct the matrices

M and D. Macaulay’s method for constructing M involved first forming some non-square matrix with the

coefficients of the original algebraic set. In order to make M square, Macaulay provided a set of rules to

choose which rows to drop, but it proved to be unstable in many cases.5

Macaulay also provided a special form of the resultant for problems where there are as many inhomo-

geneous polynomials as variables. The homogenization of polynomials, which is discussed in detail later

in this work, introduces an additional variable to the system. This results in n homogeneous equations in

n ` 1 variables, and thus, an additional equation must be included. This equation is linear with coeffi-

cients u0, u1, . . . , un and is commonly referred to as the ‘U-equation.’ The resultant that follows as a con-

sequence of introducing the U-equation is known as the U-resultant and serves as the basis of References 3,4

and 5.

In Reference 5, the U-resultant is formed for n inhomogeneous equations in n variables. The U-equation

is formed with parameterized coefficients, that is, ui “ αi ´ λβi. The coefficients αi and βi are chosen

stochastically, and as the parameter λ is varied, the line defined by the U-equation ‘sweeps’ through the

solution space. The efficacy of this method is sensitive to the choice of coefficients αi and βi, as some

choices may create a sweepline that passes through several solutions simultaneously.5 Because the efficacy

of this method is dependent on a stochastic selection of coefficients, a more repeatable deterministic method

is sought.

Reference 4 presents a deterministic root-finding method using the U-resultant. In this approach, M is

expressed as a matrix polynomial. The matrix polynomial coefficient matrices are used to form a general

companion matrix, of which the eigenvalues correspond directly to the roots of the original polynomial sys-

tem. In this work, a similar root-finding method is presented which does not require an additional U-equation.

This omission of the U-equation significantly reduces the size of M , which greatly simplifies the algorithm

and mitigates computational issues caused by the matrix size and sparsity.

423

Consider a system of n polynomial equations in n unknowns given by

f1 px1, x2, ..., xnq “0

f2 px1, x2, ..., xnq “0 (2)

...

fn px1, x2, ..., xnq “0

with degrees d1, d2, . . . , dn. Multipolynomial resultants can be used to eliminate the variables x2, x3, . . . , xn

from these equations by projecting the algebraic set in a lower dimension.3 A resultant is, by definition, a

polynomial in the coefficients of the original system. Nearly all methods of computing resultants represent the

resultant in terms of matrices and determinants. One of these formulations, known as the Macaulay resultant,

expresses the resultant Rpx1q as a ratio of determinants of two matrices M and D as6

R px1q “ det pMqdet pDq . (3)

The entries of M and D are polynomials in x1, and if D is non-singular, the roots of the polynomial given

by det pMq correspond exactly to the roots of x1 in the original system.7 Reference 4 shows how resultant

expressions can be expressed as matrix polynomials. In this formulation, the root-finding reduces to an

eigenvalue problem.

This work presents the construction of multipolynomial resultants for the common problem of n polyno-

mial equations with n unknowns. Given the multivariate polynomials f1, f2, . . . , fn, the resultant transforms

the original nonlinear system of equations into a new system of linear equations such that3

Mpx1q ` 1 x2 . . . xn . . . xd2 xd

3 . . . xdn

˘T “

¨˚˝

00...

0

˛‹‹‹‚ . (4)

If f1, f2, . . . , fn simultaneously vanish at some point in the projective space, then the kernel of Mpx1qcontains some nontrivial vector.8 Recall that a resultant is simply a polynomial in the coefficients of the

original system. Therefore, as shown in Equation (4), if x1 is known, the remaining roots x2, x3, . . . , xn

simply correspond to the kernel of Mpx1q. With this, the root finding process consists of three main steps:

constructing M , computing x1, and solving for the remaining roots. M is constructed using the coefficients

of the original set of polynomials. Once M is formed, it is expanded into a matrix polynomial. The matrix

polynomial’s coefficient matrices are used in a generalized eigenvalue problem to compute all of the possible

roots in x1. Once x1 is found, the remaining roots are found by computing the kernel of Mpx1q. This entire

process, including the construction of M , the formation of the matrix polynomial, the computation of x1

using eigendecomposition, and the computation of the remaining coordinates’ roots is discussed in greater

detail in the following sections.

CONSTRUCTION OF M

This section is intended to serve as a reference for constructing the M matrix for a general set of homoge-

neous polynomials. The reader is strongly encouraged to reference the two examples presented later in this

work while reading this section.

As shown in Equation (4), M is expressed as a function of one of the system variables. Therefore, the sys-

tem must be reformulated, treating one variable as if it were a constant. For example, consider the following

system:

f1px1, x2q “ a1x21 ` a2x1x2 ` a3x

22 ` a4 “ 0 (5a)

f2px1, x2q “ b1x21 ` b2x1x2 ` b3x

22 ` b4 “ 0 (5b)

424

Regrouping f1 and f2 as if x1 was constant yields

f1px2q “ a3x22 ` pa2x1qx2 ` pa4 ` a1x

21q “ 0 (6a)

f2px2q “ b3x22 ` pb2x1qx2 ` pb4 ` b1x

21q “ 0 (6b)

Homogenization

In order to form the Macaulay resultant expression, f1, f2, . . . , fn must be homogeneous,6 that is, the

degree of every monomial in fi must be equal. Homogenization is achieved via the inclusion of an addi-

tional variable w. For example, consider the inhomogenous polynomials in Equations (6). Equations (6) are

inhomogenous because the first term is degree-2, whereas the second and third terms are of degree 1 and 0,

respectively. To homogenize, the homogenization variable w is added to produce

f1px2, wq “ a3x22 ` pa2x1qx2w ` pa4 ` a1x

21qw2 “ 0 (7a)

f2px2, wq “ b3x22 ` pb2x1qx2w ` pb4 ` b1x

21qw2 “ 0 (7b)

Matrix Size

To construct the resultant matrix M for the system of polynomials f1, f2, . . . , fn, the total degree of the

system must be determined. The total degree, d, of a given set of polynomials is computed as

d “ 1 `mÿi“1

pdi ´ 1q , (8)

where m is the number of equations, and di is the degree of the ith equation. The size of M is directly related

to the system’s total degree and can be computed as

sizepMq “ˆ

n ` dn

˙, (9)

where n is the number of variables in the set before homogenization. For example, for the previously men-

tioned polynomials (Eqs. 5), n “ 1, as there is only one variable (x2) before homogenization. Both polyno-

mials are of degree 2, so the total degree is calculated as

d “ 1 ` pd1 ´ 1q ` pd2 ´ 1q “ 3 .

It follows that the size of M is calculated as

sizepMq “ˆ

1 ` 31

˙“ 4 .

Therefore, M is a 4 ˆ 4 matrix for this example.

Column Labels

The columns of M correspond to all possible degree-d monomials, arranged in lexicographical order from

left to right. Consider the system with variables x2 and w and total degree d “ 3. The columns of M then

correspond (in order) to the monomials x32, x

22w, x2w

2, w3.

M “

x32 x2

2w x2w2 w3

425

Row Labels

Before presenting the algorithm for constructing the row labels of M , the concept of exponent “bigness”

must be understood. This concept is introduced in Reference 7 and is a useful definition when constructing

the rows of M . To determine whether a particular exponent is big, first associate each variable with a poly-

nomial. For example, associate x2 with f1 and w with f2. A variable’s exponent is considered big if it is

greater than or equal to its associated polynomial’s degree. For example, consider the monomial x22w. The

exponent of x2 is 2. Therefore, it is considered big because d1 ď 2. Similarly, consider the monomial w3.

The exponent of w is big because d2 ď 3.

With this definition, the rows of M can be constructed by following the following steps taken from Ref-

erence 7.

For each column label:

1. Search the monomial labeling that column from left to right for the first variable with a big exponent.

Such a variable must exist. Call it a marker variable.

2. Form a new polynomial from the polynomial associated with this marker variable by multiplying the

associated polynomial by the monomial and dividing by the marker variable raised to the degree of the

associated polynomial.

M “

x32 x2

2w x2w2 w3

x2f1wf1x2f2wf2

3. The coefficients of the new polynomial are the elements of the row. Each coefficient goes in the column

labeled by the monomial it multiplies. All the other elements of that row are zero.

M “

x32 x2

2w x2w2 w3

x2f1 a3 a2x1 pa4 ` a1x21q 0

wf1 0 a3 a2x1 pa4 ` a1x21q

x2f2 b3 b2x1 pb4 ` b1x21q 0

wf2 0 b3 b2x1 pb4 ` b1x21q

(10)

CONSTRUCTION OF D

In Macaulay’s original formulation, the determinant of the denominator matrix D was used to remove

extraneous factors from the resultant Rpx1q. However, if D is non-singular, the roots of the polynomial

given by detpMq correspond exactly to the roots of x1 in the original system. If, however, D is singular, Mmust be replaced with its largest non-vanishing minor.4 Therefore, the determinant of D must be computed

in order to determine whether M requires further reduction. An interesting property of D is that it is simply

a minor of M .2 More specifically, the entries of D are the entries of M whose row and column labels are

non-reduced monomials. Reference 7 defines a non-reduced monomial as a monomial comprised of more

than one variable with a big exponent. For the current example, M has no non-reduced column labels (see

Eq. 10), so D is simply 1.

426

MATRIX POLYNOMIALS

M can be written as a matrix polynomial in x1, that is3

Mpx1q “ M0 ` M1x1 ` M2x21 ` ... ` M�x

�1 (11)

For example, Equation (10) can be rewritten as

Mpx1q “

¨˚ a3 0 a4 0

0 a3 0 a4b3 0 b4 00 b3 0 b4

˛‹‹‚`

¨˚ 0 a2 0 0

0 0 a2 00 b2 0 00 0 b2 0

˛‹‹‚x1 `

¨˚ 0 0 a1 0

0 0 0 a10 0 b1 00 0 0 b1

˛‹‹‚x2

1 (12)

The matrix polynomial given in Equation (11) is univariate, and its roots can be easily computed by forming

its associated Frobenius companion matrix.4 The roots of the determinant of Mpx1q directly correspond to

the eigenvalues of the companion transpose matrix

CT “

¨˚˚

0 Im 0 . . . 00 0 Im . . . 0...

... . . ....

...0 0 0 . . . Im

´M0 ´M1 ´M2 . . . ´M �´1

˛‹‹‹‹‹‚ (13)

where M i “ M´1� Mi. Due to the high condition number of M�, it is often singular or close to singular,

thus preventing the computation of M i. Fortunately, matrix inversion can be avoided by reformulating

Equation (13) as the generalized eigenvalue problem, Ax1 ´ B, where

A “

¨˚˚

Im 0 0 . . . 00 Im 0 . . . 0...

... . . ....

...0 0 . . . Im 0

0 0 . . . 0 M�

˛‹‹‹‹‹‚ (14)

B “

¨˚˚

0 Im 0 . . . 00 0 Im . . . 0...

... . . ....

...0 0 0 . . . Im

´M0 ´M1 ´M2 . . . ´M�´1

˛‹‹‹‹‹‚ (15)

The eigenvalues of Ax1 ´ B are the roots that satisfy the original system of equations. Many software

packages include routines for solving generalized eigenvalue problems, including MATLAB’s eig function.

In most situations, only the real and finite solutions are of interest. If an eigenvalue x1 “ α1 is finite and

simple, the roots in the remaining coordinates x2, x3, . . . , xn can be computed algebraically.

COMPUTING ROOTS IN REMAINING COORDINATES

If α1 is a simple and finite eigenvalue, the remaining roots α2, α3, . . . , αn can be computed easily. As

suggested by Equation (4), the remaining solutions correspond to a kernel vector of Mpα1q; that is, the

nontrivial vector v which satisfies Mpα1qv “ 0. Several software routines are readily available that can

compute a matrix kernel, including MATLAB’s null function. Depending on the linear algebra routines

used, the kernel vector v may be a scalar multiple of the solution. In that case, the relationship of Equation (4)

can be used to back out the scale factor β:3

427

`1 x2 . . . xn . . . xd

2 xd3 . . . xd

n

˘T “ β`v1 v2 . . . vm

˘(16)

If α1 is not simple, that is, if it has a multiplicity greater than one, the kernel of Mpα1q will have more

than one vector. Consequently, it is difficult to compute α2, α3, . . . , αn from them. To solve the problem,

x1 “ α1 can be substituted back into the original set of polynomials, and the root finding process is repeated

recursively. In other words, after making the substitution x1 “ α1, a new resultant expression, Rpx2q is

formed by eliminating x3, . . . , xn from n ´ 1 equations, and the solutions in x2 are computed.

EXAMPLE: PLANAR ORBIT INTERSECTION

To demonstrate the applications of Macaulay resultant expressions for root-finding, the simplest case of

two degree-2 inhomogeneous equations in two unknowns is considered. Geometrically, this problem can be

represented as the intersection of two conics, as shown by the examples in Figure 2.

(a) Ellipse-parabola intersection. (b) Parabola-hyperbola intersection.

(c) Ellipse-hyperbola intersection.

Figure 2. Intersections of various conic sections.

For example, consider the planar, two-body motion of a spacecraft returning to orbit about Earth from an

interplanetary trajectory. The spacecraft is on a hyperbolic trajectory with respect to the Earth upon return,

with semi-major axis and eccentricity vector of

ah “ ´10000 km and eh “ “1.7 0

‰T.

It is desired to place the spacecraft in an elliptical orbit about the Earth with semi-major axis and eccentricity

vector of

ae “ 13000 km and ee “”

0.45?2

0.45?2

ıT.

In general, the intersection of an ellipse and a hyperbola can result in 0, 1, 2, 3, or 4 intersections; however, for

the orbit problem, only one branch of the hyperbola is of interest and so only 0, 1, or 2 intersections can exist

428

between an ellipse and the hyperbola branch of interest. These intersection points represent the candidate

locations at which an impulsive ΔV can be performed to inject the spacecraft from its original interplanetary

trajectory to its desired elliptical orbit. These orbits, as well as their intersections, are plotted in Figure 3. It

IntersectionElliptical OrbitHyperbolic Orbit

y EC

I[k

m]

xECI [km] ×104−2 −1.5 −1 −0.5 0 0.5 1

×104

−1.5

−1

−0.5

0

0.5

1

1.5

Figure 3. Hyperbolic and elliptical trajectories around Earth.

is shown in the Appendix that the hyperbolic and elliptic orbits can be expressed in Earth Centered Inertial

Cartesian coordinates respectively as

f1px, yq “ a1x2 ` a2xy ` a3y

2 ` a4x ` a5y ` a6 “ 0 (17a)

f2px, yq “ b1x2 ` b2xy ` b3y

2 ` b4x ` b5y ` b6 “ 0 (17b)

where

a1 “ 1

a2h, a2 “ 0 , a3 “ ´ 1

a2h pe2h ´ 1q , a4 “ 2eha

, a5 “ 0 , and a6 “ e2h ´ 1

and

b1 “ cos θe2

a2e` sin θe

2

a2e p1 ´ e2eq , b2 “ 2 sin θe cos θe

ˆ1

a2e´ 1

a2e p1 ´ e2eq˙

,

b3 “ sin θe2

a2e` cos θe

2

a2e p1 ´ e2eq , b4 “ 2ee cos θeae

, b5 “ 2ee sin θeae

, and b6 “ e2e ´ 1

and θe is the angle of the eccentricity vector of the elliptical orbit in the Cartesian coordinates, which is 45˝in this example.

Solution to Orbit Intersection

To compute the candidate orbit injection locations, Macaulay resultant expressions can be used to find

the roots of Equations (17). First, the matrix M is constructed from the coefficients of Equations (17).

429

This matrix is expanded into a univariate matrix polynomial, of which the coefficient matrices are used

to develop a generalized eigenvalue problem. The solutions of the eigenvalue problem correspond to the

possible solutions (in one coordinate) of the original set of polynomials. Once the roots of one coordinate are

found, the solutions in the remaining coordinates are computed by substituting the known roots into M and

computing its kernel.

M must be expressed as a matrix polynomial in one variable, so one variable must be chosen and absorbed

into the coefficients of the original polynomials. Treating y as a constant, the polynomial equations may be

written as

f1pxq “ a1x2 ` pa2y ` a4qx` `

a3y2 ` a5y ` a6

˘ “0 (18a)

f2pxq “ b1x2 ` pb2y ` b4q x` `

b3y2 ` b5y ` b6

˘ “0 (18b)

Note that the monomials of Equations (18) are not of equal degree. Therefore the polynomials must be

homogenized by introducing the homogenization variable w. The resulting homogeneous polynomials are

given as

f1px,wq “ A1x2 ` A2xw ` A3w

2 “ 0

f2px,wq “ B1x2 ` B2xw ` B3w

2 “ 0

where

A1 “ a1 , A2 “ a2y ` a4 , A3 “ a3y2 ` a5y ` a6 ,

B1 “ b1 , B2 “ b2y ` b4 , and B3 “ b3y2 ` b5y ` b6 .

Before M is constructed, the total degree of the system must be determined, and the size of M must be

computed. The degree of the system is calculated through the utility of Equation (8) as

d “ 1 `mÿi“1

pdi ´ 1q “ 3 ,

from which it follows that the size of the M matrix is given as

sizepMq “ˆn ` dd

˙“

ˆ41

˙“ 4 .

Because the system’s total degree is d “ 3, the columns of M correspond to all the degree-3 monomials

arranged in lexicographical order, that is, x3, x2w, xw2, w3.

M “

x3 x2w xw2 w3

The entries of M are simply the coefficients of the original polynomials. To illustrate, M is constructed

row-by-row as follows:

First Row

• The first variable with a big exponent in the first monomial, x3, is x, since the exponent of x is

larger than or equal to the degree of its associated polynomial f1.

• x is then the marker variable.

430

• The polynomial associated with the first row of M is given by multiplying f1 (the associated

polynomial of the marker variable x) by x3 (the associated monomial of the first column) divided

by x2 (the marker variable x raised to the degree of its associated polynomial f1).

x3f1x2

“ xf1 “ A1x3 ` A2x

2w ` A3xw2 (19)

Second Row

• The first variable with a big exponent in the second monomial, x2w, is x, since the exponent of xis larger than or equal to the degree of its associated polynomial f1.

• x is then the marker variable.

• The polynomial associated with the second row of M is given by multiplying f1 (the associated

polynomial of the marker variable x) by x2w (the associated monomial of the second column)

divided by x2 (the marker variable x raised to the degree of its associated polynomial f1).

x2wf1x2

“ wf1 “ A1x2w ` A2xw

2 ` A3w3 (20)

Third Row

• The first variable with a big exponent in the third monomial, xw2, is w, since the exponent of wis larger than or equal to the degree of its associated polynomial f2.

• w is then the marker variable.

• The polynomial associated with the third row of M is given by multiplying f2 (the associated

polynomial of the marker variable w) by xw2 (the associated monomial of the third column)

divided by w2 (the marker variable w raised to the degree of its associated polynomial f2).

xw2f2w2

“ xf2 “ B1x3 ` B2x

2w ` B3xw2 (21)

Fourth Row

• The first variable with a big exponent in the fourth monomial, w3, is w, since the exponent of wis larger than or equal to the degree of its associated polynomial f2.

• w is then the marker variable.

• The polynomial associated with the fourth row of M is given by multiplying f2 (the associated

polynomial of the marker variable w) by w3 (the associated monomial of the fourth column)

divided by w2 (the marker variable w raised to the degree of its associated polynomial f2).

w3f2w2

“ wf2 “ B1x2w ` B2xw

2 ` B3w3 (22)

The M matrix is then assembled using the coefficients of Equations (19)-(22) as

M “

x3 x2w xw2 w3

xf1 A1 A2 A3

wf1 A1 A2 A3

xf2 B1 B2 B3

wf2 B1 B2 B3

431

Recall that the denominator matrix, D, must also be constructed to check its singularity. By examining the

column labels of M , it is apparent that none of the monomials are non-reduced, so it follows that detpDq “ 1.

M is now written as a polynomial in y as

Mpyq “ M0 ` M1y ` M2y2

where

M0 “

¨˚a1 a4 a6 0

0 a1 a4 a6b1 b4 b6 00 b1 b4 b6

˛‹‹‚ , M1 “

¨˚0 a2 a5 00 0 a2 a50 b2 b5 00 0 b2 b5

˛‹‹‚ , and M2 “

¨˚0 0 a3 00 0 0 a30 0 b3 00 0 0 b3

˛‹‹‚ (23)

The possible solutions for y are the finite, real eigenvalues of the generalized system

Ay “ B , (24)

where

A “ˆI4 00 M2

˙and B “

ˆ0 I4

´M0 ´M1

˙. (25)

Two possible solutions for y are found to be

y1 “ 2733.155 [km] and y2 “ ´13205.404 [km] . (26)

Recall that these solutions correspond to the roots of resultant, Rpyq, as shown in Figure 4. To compute

y = 2733.155y = −13205.404

R(y)(×

1016)

y [km]−15000 −10000 −5000 0 5000−2

−1

0

1

2

Figure 4. The solutions in y correspond exactly to the roots of the resultant, Rpyq.

the solutions in the x coordinate, the computed y solutions are substituted back into M . The remaining

coordinate solutions, x1 and x2, are found by computing the kernel of Mpy1q and Mpy2q, respectively. In

other words, for each solution yi, the vector v is found which satisfies

Mpyiqv “ 0 .

Depending on the numerical method used to compute the kernel, the vector v may be scaled from the solution.

In this case, the scaling factor β is computed using the relation shown in Equation (16). For this problem, the

scaling factor is given as β “ 1{v4. It follows that the x solutions are computed as

xi “ˆv3v4

˙i

. (27)

432

With this, the x solutions are computed as

x1 “ 6804.292 [km] and x2 “ 3133.999 [km] . (28)

It is observed in Figure 3 that these are the correct intersections for the hyperbolic and elliptical orbits.

EXAMPLE: INTERSECTION OF THREE SPHERES

Many astrodynamics problems can be formulated as computing the intersections of quadric surfaces.

Quadrics, by definition, are degree-2 trivariate polynomials. For example, GPS trilateration can be formulated

as finding the intersections of three spheres. The equations of three spheres can be written as

f1px, y, zq “ px ´ xc1q2 ` py ´ yc1q2 ` pz ´ zc1q2 ´ r21 “ 0 (29a)

f2px, y, zq “ px ´ xc2q2 ` py ´ yc2q2 ` pz ´ zc2q2 ´ r22 “ 0 (29b)

f3px, y, zq “ px ´ xc3q2 ` py ´ yc3q2 ` pz ´ zc3q2 ´ r23 “ 0 (29c)

The “cn” subscript denotes the center coordinate of the nth sphere, and rn is the radius of the nth sphere.

Equations (29) can be rewritten as polynomials in standard form as

f1px, y, zq “ a1x2`a2x ` a3y

2`a4y ` a5z2`a6z ` a7 “ 0 (30a)

f2px, y, zq “ b1x2 `b2x ` b3y

2 `b4y ` b5z2 `b6z ` b7 “ 0 (30b)

f3px, y, zq “ c1x2 `c2x ` c3y

2 `c4y ` c5z2 `c6z ` c7 “ 0 (30c)

where

a1 “ a3 “ a5 “ 1 a2 “ ´2xc1 a4 “ ´2yc1 a6 “ ´2zc1 a7 “ xc21 ` yc

21 ` zc

21 ´ r21

b1 “ b3 “ b5 “ 1 b2 “ ´2xc2 b4 “ ´2yc2 b6 “ ´2zc2 b7 “ xc22 ` yc

22 ` zc

22 ´ r22

c1 “ c3 “ c5 “ 1 c2 “ ´2xc3 c4 “ ´2yc3 c6 “ ´2zc3 c7 “ xc23 ` yc

23 ` zc

23 ´ r23

One variable must be chosen as the resultant variable, and the remaining variables are eliminated. For this

problem, all of the three variables are equally good choices, as the the total degree of the resulting system is

the same for any choice. Choosing z as the resultant variable, Equations (30) are rewritten, absorbing z into

the polynomial coefficients:

f1px, yq “ a1x2`a2x ` a3y

2`a4y` `a5z

2 ` a6z ` a7˘“ 0 (31a)

f2px, yq “ b1x2 `b2x ` b3y

2 `b4y` `b5z

2 ` b6z ` b7˘ “ 0 (31b)

f3px, yq “ c1x2 `c2x ` c3y

2 `c4y` `c5z

2 ` c6z ` c7˘ “ 0 (31c)

Homogenization

In order to form the Macaulay resultant expression, Equations (31) must be homogeneous,6 that is, the

degree of every monomial in fi must be equal. Thus, an extra variable w must be added. Homogenization

yields

f1px, y, wq “ A1x2 ` A2xw ` A3y

2 ` A4yw ` A5w2 “ 0 (32a)

f2px, y, wq “ B1x2 ` B2xw ` B3y

2 ` B4yw ` B5w2 “ 0 (32b)

f3px, y, wq “ C1x2 ` C2xw ` C3y

2 ` C4yw ` C5w2 “ 0 (32c)

where

A1 “ a1 A2 “ a2 A3 “ a3 A4 “ a4 A5 “ a5z2 ` a6z ` a7

B1 “ b1 B2 “ b2 B3 “ b3 B4 “ b4 B5 “ b5z2 ` b6z ` b7

C1 “ c1 C2 “ c2 C3 “ c3 C4 “ c4 C5 “ c5z2 ` c6z ` c7

433

Construction of M

The first step in constructing the M matrix requires computing the total degree of the algebraic set. The

total degree, d, of the system is computed using Equation (8) as

d “ 1 ` p2 ´ 1q ` p2 ´ 1q ` p2 ´ 1q “ 4 . (33)

The size of M is computed using Equation (9) as

sizepMq “ˆ

2 ` 42

˙“ 15 . (34)

Thus, M is a 15 ˆ 15 matrix as shown in Equation (35). The columns of M correspond to all possible

degree-d monomials, arranged in lexicographical order from left to right. The rows are constructed in the

same fashion as the two-dimensional example above.

M “

¨˚˚˚˚˚˚˚˚˚˚˚

x4 x3y x3w x2y2 x2yw x2w2 xy3 xy2w xyw2 xw3 y4 y3w y2w2 yw3 w4

x2f1 A1 ¨ A2 A3 A4 A5 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨xyf1 ¨ A1 ¨ ¨ A2 ¨ A3 A4 A5 ¨ ¨ ¨ ¨ ¨ ¨xwf1 ¨ ¨ A1 ¨ ¨ A2 ¨ A3 A4 A5 ¨ ¨ ¨ ¨ ¨y2f1 ¨ ¨ ¨ A1 ¨ ¨ ¨ A2 ¨ ¨ A3 A4 A5 ¨ ¨ywf1 ¨ ¨ ¨ ¨ A1 ¨ ¨ ¨ A2 ¨ ¨ A3 A4 A5 ¨w2f1 ¨ ¨ ¨ ¨ ¨ A1 ¨ ¨ ¨ A2 ¨ ¨ A3 A4 A5

xyf2 ¨ B1 ¨ ¨ B2 ¨ B3 B4 B5 ¨ ¨ ¨ ¨ ¨ ¨xwf2 ¨ ¨ B1 ¨ ¨ B2 ¨ B3 B4 B5 ¨ ¨ ¨ ¨ ¨xyf3 ¨ C1 ¨ ¨ C2 ¨ C3 C4 C5 ¨ ¨ ¨ ¨ ¨ ¨xwf3 ¨ ¨ C1 ¨ ¨ C2 ¨ C3 C4 C5 ¨ ¨ ¨ ¨ ¨y2f2 ¨ ¨ ¨ B1 ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5 ¨ ¨ywf2 ¨ ¨ ¨ ¨ B1 ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5 ¨w2f2 ¨ ¨ ¨ ¨ ¨ B1 ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5

ywf3 ¨ ¨ ¨ ¨ C1 ¨ ¨ ¨ C2 ¨ ¨ C3 C4 C5 ¨w2f3 ¨ ¨ ¨ ¨ ¨ C1 ¨ ¨ ¨ C2 ¨ ¨ C3 C4 C5

˛‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‚

(35)

Construction of D

The denominator matrix D must be constructed to ensure that its determinant is non-zero. The entries

of D are simply the entries of M whose row and column labels are non-reduced monomials. Recall that

monomials are considered non-reduced if they contain more than one with big exponents. With this, D is

constructed as

D “¨˚

x2y2 x2w2 y2w2

y2f1 A1 ¨ A5

w2f1 ¨ A1 A3

w2f2 ¨ B1 B3

˛‹‚ (36)

It is easy to see that detpDq “ A1pA1B3 ´ A3B1q “ 0. Because D is vanishing, M must be replaced with

its largest non-vanishing minor.4 Analysis shows that at minimum, three rows and columns must be dropped.

434

Therefore, we drop the second, third, and fourth rows and columns of M :

M “

¨˚˚˚˚˚˚˚˚˝

x4 x2yw x2w2 xy3 xy2w xyw2 xw3 y4 y3w y2w2 yw3 w4

x2f1 A1 A4 A5 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ywf1 ¨ A1 ¨ ¨ ¨ A2 ¨ ¨ A3 A4 A5 ¨w2f1 ¨ ¨ A1 ¨ ¨ ¨ A2 ¨ ¨ A3 A4 A5

xyf2 ¨ B2 ¨ B3 B4 B5 ¨ ¨ ¨ ¨ ¨ ¨xwf2 ¨ ¨ B2 ¨ B3 B4 B5 ¨ ¨ ¨ ¨ ¨xyf3 ¨ C2 ¨ C3 C4 C5 ¨ ¨ ¨ ¨ ¨ ¨xwf3 ¨ ¨ C2 ¨ C3 C4 C5 ¨ ¨ ¨ ¨ ¨y2f2 ¨ ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5 ¨ ¨ywf2 ¨ B1 ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5 ¨w2f2 ¨ ¨ B1 ¨ ¨ ¨ B2 ¨ ¨ B3 B4 B5

ywf3 ¨ C1 ¨ ¨ ¨ C2 ¨ ¨ C3 C4 C5 ¨w2f3 ¨ ¨ C1 ¨ ¨ ¨ C2 ¨ ¨ C3 C4 C5

˛‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‚

(37)

Matrix Polynomial

M can be written as a matrix polynomial in z as

Mpzq “ M0 ` M1z ` M2z2 (38)

where

M0 “

¨˚˚˚˚˚˚

a1 a4 a7 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨¨ a1 ¨ ¨ ¨ a2 ¨ ¨ a3 a4 a7 ¨¨ ¨ a1 ¨ ¨ ¨ a2 ¨ ¨ a3 a4 a7¨ b2 ¨ b3 b4 b7 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ b2 ¨ b3 b4 b7 ¨ ¨ ¨ ¨ ¨¨ c2 ¨ c2 c4 c7 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ c2 ¨ c2 c4 c7 ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ b2 ¨ ¨ b3 b4 b7 ¨ ¨¨ b1 ¨ ¨ ¨ b2 ¨ ¨ b3 b4 b7 ¨¨ ¨ b1 ¨ ¨ ¨ b2 ¨ ¨ b3 b4 b7¨ c1 ¨ ¨ ¨ c2 ¨ ¨ c2 c4 c7 ¨¨ ¨ c1 ¨ ¨ ¨ c2 ¨ ¨ c2 c4 c7

˛‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‚

(39)

M1 “

¨˚˚˚˚˚˚

¨ ¨ a6 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ a6 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ a6¨ ¨ ¨ ¨ ¨ b6 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ b6 ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ c6 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ c6 ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b6 ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b6 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b6¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ c6 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ c6

˛‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‚

(40)

435

M2 “

¨˚˚˚˚˚˚

¨ ¨ a5 ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ a5 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ a5¨ ¨ ¨ ¨ ¨ b5 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ b5 ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ c5 ¨ ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ c5 ¨ ¨ ¨ ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b5 ¨ ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b5 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ b5¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ c5 ¨¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ ¨ c5

˛‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‚

(41)

The roots in z can then be found by solving the generalized eigenvalue problem Az ´ B, where

A “ˆ

Im 00 M2

˙and B “

ˆ0 Im

´M0 ´M1

˙. (42)

Because the physical intersection of three spheres is sought, only the real and finite eigenvalues are of interest.

Let α12 “ z be a finite and real solution. The remaining coordinate solutions (x and y) are found by

computing the kernel of Mpα12q. Recall that the kernel vector v is scaled by some scalar value β. The scale

factor can be computed using the relationship shown in Equation. (16) as

β “ 1

v11. (43)

With this, the remaining coordinate solutions can be computed:

x “ α7 “ v7v12

and y “ α11 “ v11v12

. (44)

Numerical Example

Consider three spheres described by the data in Table 1. First, the coefficients a1, . . . , a7, b1, . . . , b7, c1, . . . , c7are calculated from the sphere center coordinates and radius information. Next, M is constructed using the

procedure described above. By expanding M into a matrix polynomial, the resulting coefficient matrices are

used to form the generalized eigenvalue problem given by Equation (42). The real and finite eigenvalues are

found to be

α12,1 “ 1.56731 rRCs and α12,2 “ 2.11845 rRCs.

Table 1. Sphere properties.

Sphere Center Coordinates [RC] Radius [RC]

1 p0.00, 0.50, 0.25q 1.902 p1.00, 1.00, 0.20q 2.303 p2.00, 1.00, 1.00q 2.40

Recall that the eigenvalues correspond exactly to the roots of Rpzq and therefore the polynomial solutions

in z, as shown in Figure 5. Each valid solution, z “ α12, is then substituted in Mpzq, of which the kernel is

then computed. Recall that the kernel is the set of vectors v which satisfies Mpα12qv “ 0. Remember that

the x and y solutions correspond to the seventh and eleventh kernel vector elements (Eq. 44). With this, the

full solutions are computed and are provided in Table 2.

These solutions satisfy the original set of polynomials given in Equations (29), and represent the intersec-

tions of the three spheres, as shown in Figure 6.

436

z “ 2.1184z “ 1.5673Rpzq

z rRCs0.5 1 1.5 2 2.5

´50

0

50

100

150

Figure 5. The solutions in z correspond exactly to the roots of the resultant, Rpzq.

Table 2. Numerical example solutions.

Solution x rRCs y rRCs z rRCs1 0.4911 -0.7781 1.5673

2 0.0502 0.1589 2.1184

-1 0 1 2 3 5-10123

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

3

x rRCsy rRCs

zrR

Cs

Figure 6. Solutions of numerical example.

437

CONCLUSIONS

A method of solving systems of multivariate inhomogeneous polynomials using Macaulay resultant ex-

pressions and matrix polynomials is presented. The presented method is non-iterative and deterministic. The

algorithm’s application is demonstrated through worked examples, including a planar orbit insertion prob-

lem, which is represented by two degree-2 bivariate polynomials, and a GPS trilateration problem, which is

represented by three degree-2 trivariate polynomials.

REFERENCES

[1] S. E. Allgeier, Determination of motion extrema in multi-satellite systems. PhD thesis, 2011.[2] F. Macaulay, “Some Formulæ in Elimination,” Proceedings of the London Mathematical Society, Vol. 1,

No. 1, 1902, pp. 3–27.[3] D. Manocha and S. Krishnan, “Solving Algebraic Systems Using Matrix Computations,” ACM SIGSAM

Bulletin, Vol. 30, No. 4, 1996, pp. 4–21.[4] D. Manocha, “Computing Selected Solutions of Polynomial Equations,” Proceedings of the International

Symposium on Symbolic and Algebraic Computation, ACM, 1994, pp. 1–8.[5] G. Jonsson and S. Vavasis, “Accurate Solution of Polynomial Equations Using Macaulay Resultant Ma-

trices,” Mathematics of computation, Vol. 74, No. 249, 2005, pp. 221–262.[6] F. S. Macaulay, The Algebraic Theory of Modular Systems. Cambridge University Press, 1916.[7] P. Stiller, “An Introduction to the Theory of Resultants,” tech. rep., Technical Report ISC-96-02-MATH,

Texas A & M University, Institute for Scientific Computation, 1996.[8] C. Bajaj, T. Garrity, and J. Warren, “On the Applications of Multi-equational Resultants,” 1988.

APPENDIX

Herein, it is shown that hyperbolic and elliptic orbits can be expressed in Earth Centered Inertial Cartesian

coordinates respectively as general equations of the second degree in rectangular coordinates of the form

fpx, yq “ a1x2 ` a2xy ` a3y

2 ` a4x ` a5y ` a6 (45)

Consider a general ellipse and a hyperbola, represented by the following equations respectively in their local

coordinate systems as

x2e

a2e` y2e

b2e“ 1

x2h

a2h´ y2h

b2h“ 1 (46)

where xe, ye, xh, yh represent the principal Cartesian coordinates of the ellipse and hyperbola, ae and ahrepresent the semi-major axes, and be and bh represent the semi-minor axis.

In order to ensure that the ellipse and hyperbola have a common focus, the hyperbola’s left focus is shifted

to lie at the origin of the Earth Centered Inertial Cartesian axes. This shift can be accomplished by the

following transformation

xh “ xh `ba2h ` b2h

yh “ yh

where x and y are the global axes in which both conic sections are desired to be expressed. Substituting this

result into the hyperbola equation of Equation (46) yields´xh ` a

a2h ` b2h

¯2

a2h´ y2h

b2h“ 1

Expanding and grouping terms, it follows that the hyperbola is given by

1

a2hx2 ` 2

aa2h ` b2ha2h

x ´ 1

b2hy2 `

`a2h ` b2h

˘a2h

´ 1 “ 0

438

Finally, by noting that

b2h “ a2h`e2h ´ 1

˘where e2h is the eccentricity of the hyperbola, it can be shown that the hyperbola with its left focus shifted to

the origin of the global axes is given in terms of semi-major axis and eccentricity as

1

a2hx2 ` 2eh

ahx ` ´1

a2h pe2h ´ 1q y2 ` pe2h ´ 1q “ 0 (47)

Similar to the hyperbola, the ellipse’s right focus is shifted to the left so that it lies at the origin of the Earth

Centered Inertial Cartesian axes, such that it is coincident with the hyperbola’s left focus. This shift can be

accomplished by the following transformation

xe “ x ´ aa2e ´ b2e

ye “ y

It is also desired to rotate the ellipse by angle θ about the origin of the shifted axes, which gives

x “ x cos θ ` y sin θ

y “ ´x sin θ ` y cos θ

where x and y are the global axes in which the ellipse is desired to be expressed. For ease of notation, Cθ

will be used to denote cos θ and Sθ will be used to denote sin θ. Combining the shift and the rotation yields

xe “ xCθ ` ySθ ´ aa2e ´ b2e

ye “ ´xSθ ` yCθ

Substituting this this result into the ellipse equation of Equation (46) yields´xCθ ` ySθ ´ a

a2e ´ b2e

¯2

a2e` p´xSθ ` yCθq2

b2e“ 1

Expanding and grouping terms yieldsˆC2

θ

a2e` S2

θ

b2e

˙x2 `

ˆ2CθSθ

a2e´ 2SθCθ

b2e

˙xy `

ˆS2θ

a2e` C2

θ

b2e

˙y2

´ 2Cθ

aa2e ´ b2ea2e

x ´ 2Sθ

aa2e ´ b2ea2e

y `˜`

a2e ´ b2e˘

a2e´ 1

¸“ 0

Noting that

b2e “ a2e`1 ´ e2e

˘where e2e is the eccentricity of the ellipse, the following coefficients for the ellipse with its right focus shifted

to the origin of the global axes and rotated by θ are given in terms of semi-major axis, eccentricity, and θ asˆC2

θ

a2e` S2

θ

a2e p1 ´ e2eq˙x2 `

ˆ2SθCθ

ˆ1

a2e´ 1

a2e p1 ´ e2eq˙˙

xy (48)

`ˆS2θ

a2e` C2

θ

a2e p1 ´ e2eq˙y2 ` 2eeCθ

aex ` 2eeSθ

aey ` `

e2e ´ 1˘ “ 0

By comparing terms in Equations (47) and (48) to the form of the general equation of the second degree

in rectangular coordinates that is given in Equation (45), it can be seen that both the hyperbolic and elliptical

orbits can be written in the form of Equation (45) through appropriate substitution for the coefficients.