comparisonofthelegendre–gausspseudospectral andhermite–legendre–gauss...
TRANSCRIPT
-
Aerospace Systemshttps://doi.org/10.1007/s42401-019-00042-w
ORIG INAL PAPER
Comparison of the Legendre–Gauss pseudospectraland Hermite–Legendre–Gauss–Lobatto methods for low-thrustspacecraft trajectory optimization
Sanjeev Narayanaswamy1 · Christopher J. Damaren1
Received: 15 August 2019 / Revised: 20 November 2019 / Accepted: 2 December 2019© Shanghai Jiao Tong University 2020
AbstractLow-thrust spacecraft propulsion systems enable fuel-efficient trajectories through space but the resulting trajectory opti-mization problems can be challenging. Such problems often use direct collocation methods for transcribing the optimalcontrol problem into a nonlinear programming problem. In this work, the Hermite–Legendre–Gauss–Lobatto (HLGL) andthe Legendre–Gauss pseudospectral (PS) direct collocation methods have been compared for a minimum-time low-thrustEarth-to-Mars transfer problem. It is demonstrated that trajectories with different time domains can be effectively comparedusing points that correspond to the same normalized times. Various metrics that describe the computational cost as well as theerrors with respect to a reference trajectory have been used. For the HLGL method, the number of subintervals (m) and theorder of the interpolating polynomial (n), can be varied such that the number of nodes (N ) stays constant. The distributionof the number of such (m, n) pairs is analysed using the concept of divisor functions from number theory and an algorithmfor determining all the possible combinations for any N value is developed. In addition, a method is presented by which theEdelbaum trajectory is used to set bounds, scale the problem, and generate a suitable initial guess. The primary contributionof this paper involves a detailed comparison of the performance of all the HLGL pairs with the PS method for nodes in therange N = 6 to N = 40 for the minimum-time low-thrust Earth-to-Mars transfer.
Keywords Low thrust · Spacecraft trajectory optimization · Interplanetary transfer · Pseudospectral method ·Divisor function
1 Introduction
Low-thrust electric propulsion for spacecraft provides a fuel-efficient mode of transportation in space. Because of the highspecific impulses of these engines, they have been used for avariety of missions with the first interplanetary spacecraft touse this technology beingDeepSpace I [4]. The primary chal-lengewith the optimization of low-thrust trajectories is due tothe large search space caused by the continuous thrusting, thenon-Keplerian nature of the orbits, and the longmission dura-tions. As with high-thrust trajectory optimization, a suitableinitial guess to an optimization algorithm is required in orderto obtain a converged solution. An effective method of gen-
B Sanjeev [email protected]
Christopher J. [email protected]
1 University of Toronto Institute for Aerospace Studies,4925 Dufferin Street, Toronto, ON M3H 5T6, Canada
erating these initial guesses is through the use of shape-basedmethods that use functions with limited parameters to modela family of low-thrust trajectories [17,22,24]. To satisfy theequations of motion and the boundary conditions, differ-ent systems of equations corresponding to each shape-basedmethod need to be solved. Petropoulos and Longuski [16]developed the four-parameter exponential sinusoid model toapproximate near-planar low-thrust trajectories. Research byWall and Conway [23,24] developed an inverse polynomialmodel that can be used for a three-dimensional rendezvousmission with up to a 15 ◦ inclination change with a specifiedstarting and ending time. Another type of analytical solutionis basedon theworkbyEdelbaum[7],whichprovides expres-sions for a minimum-time coplanar circle-to-circle transferwith a low, constant, tangential thrust, for which the termi-nal phase cannot be specified [6]. Such methods are usefulfor rapidly searching large areas of the feasible set, whichcan reduce computational times for problems such as grav-ity assist optimization [13]. Once an estimate of an optimaltrajectory has been found using analytical methods, it can be
123
http://crossmark.crossref.org/dialog/?doi=10.1007/s42401-019-00042-w&domain=pdfhttp://orcid.org/0000-0002-3037-3620http://orcid.org/0000-0002-2036-2506
-
Aerospace Systems
supplied as an initial guess to a direct transcription methodfor finer optimization [16].
Direct transcriptionmethods, also called direct collocationmethods, convert the optimal control problem into a Non-linear Programming (NLP) problem through transcriptiononto a discrete set of points in the time domain. Com-pared to the calculus of variations-based indirect methods,direct methods do not require the derivation of the first-order necessary conditions and are less sensitive to the initialguess [3]. These methods can be further divided into globalcollocation methods and local collocation methods. Globalcollocation methods use an approximating function over theentire time interval. An area of active research involves aclass of methods known as pseudospectral methods, whichhave been generally used as global methods [20]. Thesemethods use orthogonal basis polynomials to approximatethe state and control and use orthogonal collocation pointsto achieve accurate quadrature approximations. For smoothproblems, pseudospectral methods have the property of spec-tral, or exponential, convergence [21]. Garg et al. [9] havecompared the Legendre–Gauss–Lobatto (LGL), Legendre–Gauss (LG), and Legendre–Gauss–Radau (LGR) variants ofthe pseudospectral method in depth and developed the trans-formations between the Karush–Kuhn–Tucker multipliers ofthe NLP problem and the costates of the continuous prob-lem. Local collocation methods break the time interval intosegments and within each of these segments, piecewise func-tions are used to approximate the state and control histories.Awell-known method is the Hermite–Simpson method wherewithin each segment, cubic polynomials are used to approx-imate the state and linear functions are used to approximatethe control. Herman and Conway [12] have compared theperformance of direct collocation methods that use higherorder Gauss–Lobatto quadrature rules.Williams developed aframework known as the Hermite–Legendre–Gauss–Lobatto(HLGL)method for higher odd-orderedGauss–Lobatto rules[27]. This method avoids the detailed analytical derivation ofthe constraints needed in the work by Herman and Conway[12] and takes a generalized matrix based approach.
Numerical comparisons of the performance of differentdirect methods with respect to the number of time discretiza-tion nodes, N , is an important research topic. In fact, asexpressed by Shirazi et al. [22] in their recent survey paper,there is no widely accepted way to do comparisons of space-craft trajectory optimization methods. Williams conducted[26,27] a comparison of various direct transcription meth-ods using five different values of N and later using eightdifferent values of N for the HLGL method. Wang et al.[25] compared the LGL, LG, and LGR pseudospectral meth-ods for a minimum-fuel Earth-to-Mars rendezvous missionbut restricted their analysis to N = 42. García-Heras et al.[8] compared the Hermite–Simpson, the 5th-order HLGL,the Chebyshev–Gauss–Lobatto, and the LGL methods for a
minimum-fuel air traffic management problem but not all ofthe methods were compared for the same N values.
It is apparent that there is limited research into a compar-ison of direct methods for a fine mesh of N values with athorough investigation, for local methods, of all the combi-nations of the number of subintervals and the order of theinterpolating polynomial for a given N value. As a comple-ment to the existing research, and to address this researchgap, a detailed comparison of the local Hermite–Legendre–Gauss–Lobatto (HLGL) and the global Legendre–Gausspseudospectral (PS) direct methods for fixed problem sizesin the range N = 6 to N = 40 has been performed here for aminimum-time interplanetary spacecraft trajectory optimiza-tion problem.
2 Methodology
A formulation of a general continuous optimal control prob-lem stated in the Bolza form [5], is as follows:
Minimize J = φ (x f , t f) +
∫ t f
t0L (x (t) ,u (t) , t) dt
Subject To:
ẋ (t) = f (x (t) ,u (t) , t)gi (x (t) ,u (t) , t) ≤ 0, i = 1, 2, . . . , nghi (x (t) ,u (t) , t) = 0, i = 1, 2, . . . , nh (1)
where x(t) ∈ Rnx is the state, u(t) ∈ Rnu is the control,x f is the terminal state, t f is the terminal time, and J is theobjective function. The functions gi and hi correspond to theinequality and equality constraints, respectively. It is impor-tant to note that the general formulation in Eqs. (1) is suitablefor both minimum-time as well as minimum-fuel optimiza-tions, due to the presence of t f and u(t) in the definition ofJ .
2.1 Edelbaum transfer
Edelbaum published his analytic equations for a low-thrustminimum-time transfer between two inclined circular orbitsof radii r0 and r f based on Gauss’ variational equations [7].For the case of a coplanar circle-to-circle transfer, these equa-tions simplify [6] to:
r(t) = μ(√μr0
− f t)2
θ(t) = μ4 f
(1
r20− 1
r2 (t)
)
123
-
Aerospace Systems
Table 1 Summary of the Legendre–Gauss pseudospectral and Hermite–Legendre–Gauss–Lobatto methods
State interpolationstrategy
State interpolatingpolynomial
Enforcement of dynamics Control interpolation Quadrature
PS Lagrange interpola-tion over the entiretime domain usingthe state values at theset of N + 1 interpo-lating points τ 0:N
A single N th-orderglobal polynomial isused to approximatethe state over theentire time domain
The hPS equations con-strain the derivatives of theinterpolating polynomial tomatch the vector field at theset of N collocation pointsτ 1:N
Lagrange interpola-tion over the entiretime domain usingthe control values atτ 1:N
LG quadrature per-formed over the entiretime domain
HLGL Hermite interpo-lation over the i thsubinterval using thestate values and itsderivatives at the setof n+12 nodes γ i
A separate nth-orderlocal polynomial isused to approximatethe state for each ofthe m subintervals
The hHLGL equations con-strain the derivatives ofthe interpolating polynomialover the i th subinterval tomatch the vector field at theset of n−12 collocation pointsζ i
Linear interpolationover the i th subinter-val using the controlvalues at γ i
LGL quadrature per-formed cumulativelyover each subinterval
ṙ (t) = 2μ f(√μr0
− f t)3
θ̇ (t) = μ2 f
(ṙ (t)
r3 (t)
)
Tm =(1
f
)(√μ
r0−
√μ
r f
), (2)
where we assume a small, constant, tangential thrust ( f ), asmall eccentricity throughout the transfer, and a long transfertime (Tm) relative to the orbital period [6,7]. The quantityμ is the standard gravitational parameter and θ is the trueanomaly. Sincewe have constant thrust, this coplanar transferis optimal with respect to both time and fuel.
The Edelbaum equations are not as flexible as some of theother analytical methods such as exponential sinusoids andinverse polynomials because they only depend on r0, r f , andthe thrust magnitude f . For this reason, they cannot be usedto generate trajectories for rendezvous missions where thetime of flight and terminal position are constraints. However,the real power of Edelbaum’s equations lies in the fact thatthey can be used as an initial guess for direct transcriptionmethods to solve closely related minimum-time problems.
2.2 Legendre–Gauss pseudospectral method
The continuous optimal control problem in Eqs. (1) can betransformed into an NLP problem using the Legendre–Gausspseudospectral method [9]:
Minimize J = φ (XN+1, t f)
+(t f − t0
2
) N∑
i=1wiL (Xi ,Ui , t (τi ))
Subject To:
gi (X1:N+1,U1:N+1, t (τ 1:N+1)) ≤ 0, i = 1, 2, . . . , ng
hi (X1:N+1,U1:N+1, t (τ 1:N+1)) = 0, i = 1, 2, . . . , nhhPS := DX0:N −
(t f − t0
2
)F (X1:N ,U1:N , t (τ 1:N )) = 0,
(3)
where the problem has been discretized at the set of NLegendre–Gauss collocation points τ 1:N . The wi are theLegendre–Gauss quadrature weights. Lagrange basis poly-nomials are used to form a global N th-order polynomial tointerpolate the state and control. The quantities X1:N andU1:N are the matrices composed of rows of the state andcontrol vectors, respectively, at τ 1:N . F is the state deriva-tive matrix at τ 1:N evaluated using the equations of motion,and D is the differentiation matrix such that DX0:N gives thederivative of the interpolating polynomial for the state at eachof the collocation points. It should be noted that an additionalNnx equality constraints, which are due to the PS method,have been added to the problem. These are denoted by hPSand are enforced at the collocation points τ 1:N . The otherequality and inequality constraints, gi and hi , are enforcedat τ 1:N+1 with the expectation that a high enough N is likelyto cause the entire interpolated solution to satisfy the con-straints. For a summary of this method in relation to theHLGL method, please see Table 1. For a detailed deriva-tion of the Legendre–Gauss pseudospectral method, pleasesee Appendix A.
2.3 Hermite–Legendre–Gauss–Lobattomethod
The continuous optimal control problem in Eqs. (1) canbe transformed into an NLP problem using the Hermite–Legendre–Gauss–Lobatto method [27]:
123
-
Aerospace Systems
Minimize J = φ (xm (1) , t f)
+m∑
i=1
hi2
n∑
j=1w jL
(xi
(ξ j
),ui
(ξ j
), ti
(ξ j
))
Subject To:
gi (x (γ ) ,u (γ ) , t (γ )) ≤ 0, i = 1, 2, . . . , nghi (x (γ ) ,u (γ ) , t (γ )) = 0, i = 1, 2, . . . , nhhHLGL := ΦTdibi−hi
2F(ΦTi bi ,ui
(ζ i
), ti
(ζ i
)) = 0, i = 1, 2, . . . ,m(4)
where the time domain has been split into m subintervals.Within each subinterval, Hermite interpolation is used toform an nth-order polynomial to approximate the state whilelinear interpolation is used to approximate the control. Forsubinterval i , the n LGL points ξ are divided into n+12 nodesdenoted by γ and n−12 collocation points denoted by ζ . Intotal, across all subintervals, this problem has N nodes. Theterm w j denotes the Legendre–Gauss–Lobatto quadratureweights within each subinterval. The quantities xi and uiare the state and control approximations at the i th subin-terval while x and u represent the approximations of thefull state and control trajectories, respectively, in [t0, t f ].The quantity ΦTdi bi represents the derivative of the approxi-
mating polynomial for the state evaluated at ζ i while ΦTi bi
just represents the polynomial evaluated at those points. Anadditional mnx ( n−12 ) equality constraints, due to the HLGLmethod, have been added to the problem. The hHLGL con-straints are enforced at the collocation points, whereas theother constraints, gi and hi , are enforced at the nodal points.For a summary of this method in relation to the PS method,please see Table 1. For a detailed derivation of the Hermite–Legendre–Gauss–Lobatto method, please see Appendix B.
3 Problem formulation: Earth-to-Marsorbital transfer
The dimensional problem statement is formulated with thestate x = [r θ ṙ θ̇ ] and the control u = [u α], where u isthe thrust magnitude and α is the thrust angle. This can bewritten as:
Minimize J = t fSubject To:
ẋ (t) =[ṙ θ̇
(r θ̇2 − μSun
r2+ u sin α
)
(−2ṙ θ̇r
+ u cosαr
)]
xlb ≤ x ≤ xub
xlb = [rEarth 0 − 100max(|ṙEdel|) 0]xub =
[rMars 2(2π)
⌈θ f ,Edel
2π
⌉100max(|ṙEdel|)
100max(|θ̇Edel|)]
[0 − π ] ≤ u ≤[3 × 10−4 π
]
1 ≤ t f ≤ 10t f ,Edelx (0) =
[
rEarth 0 0
√μSun
r3Earth
]
x(t f
) =[
rMars3π
2+ k2π 0
√μSun
r3Mars
]
, (5)
where the units for x are [m rad m/s rad/s], the units foru are [N/kg rad], and the unit of t is [s]. The quantities withsubscript ( )Edel correspond to the Edelbaum transfer. A lin-ear scaling method is chosen where each of the variables andtheir bounds are scaled by the corresponding upper boundsso that the problem is non-dimensionalized. In addition, thedecision vector lies in [−1, 1] because the upper bound ofeach variable has been chosen to be larger than or equal tothe magnitude of the lower bound.
4 PS and HLGL comparison with constant N
The Legendre–Gauss pseudospectral method and theHermite–Legendre–Gauss–Lobatto method have been com-pared for an Earth-to-Mars minimum-time transfer problemfor the range N = [6, 40]. In addition, the N = 64 PSmethod and the N = 64 HLGL method with n = 3 wereanalysed to investigate the behaviour at a higher value ofN . The n = 3 HLGL method, using cubic polynomials, isalso known as the Hermite–Simpson (HS) method. The ref-erence trajectory for calculating error metrics for trajectoriesin the range N = [6, 40] was taken to be the solution ofthe N = 64 PS method as it had a lower objective functionvalue than the N = 64HSmethod. Thesemethods have beenimplemented and compared in Matlab using SNOPT [10] asthe NLP solver. The Edelbaum trajectory, shown in Fig. 1,was used as an initial guess for the N = 16 HS method. Tomake a fair comparison, the result of this optimization wasthen used as an initial guess for all runs.
4.1 Optimized Earth-to-Mars trajectory
For N = 64, both the HS method and the PS method resultin trajectories that are close to each other, as can be seen inFig. 2. This suggests that close localminimahave been found.The optimal transfer time for the PS method was found tobe approximately 354 days while for the HS method, it was
123
-
Aerospace Systems
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5x [m] 1011
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
y [m
]1011
Earth
Mars
Fig. 1 Earth-to-Mars Edelbaum transfer
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5x [m] 1011
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
y [m
]
1011
PS InterpolantHS Interpolant
Mars
Earth
Fig. 2 Earth-to-Mars optimized trajectory—N = 64
found to be about 365 days. If we assume a spacecraft dryterminal mass ofmdry = 300 kg and an enginewith a specificimpulse of Isp = 3550 s, it was found that the PS trajectoryexpended more fuel in trying to minimize the objective asit consumed mfuel = 90 kg while the HS trajectory onlyconsumed mfuel = 76 kg. In addition, it was found that thearc length of the PS trajectory was 8.41 × 1011 m while theHS trajectory had a higher arc length of 8.52× 1011 m. Thisagrees with the lower transfer duration for the PS trajectory.
4.2 HLGL (m, n) pairs for constant N
To compare the performance of the PS and HLGL methods,it is desirable to keep the problem size approximately con-stant. This can be done by comparing runs that have the samenumber of nodes. In this work, we define the problem size
to be the length of the NLP vector passed to the NLP solver.The problem size of the global PS method is directly con-trolled by N , the number of nodes. In contrast, the problemsize of the HLGL method is indirectly controlled by m, thenumber of subintervals, and n, the order of the interpolatingpolynomial within each subinterval. It is important to notethat for a given N value, the size of the NLP vector for theLegendre–Gauss PS method is given by N (nx + nu) + 1while the size of the NLP vector for the HLGL method isgiven by N (nx + nu) − nx + 1. The “+1” terms correspondto adding the transfer time to the set of optimization variables.The size of the NLP vector for the HLGL method is lowerby nx since we omit the initial state from the NLP vector asit is a known quantity. It is, however, augmented internallyto evaluate constraints and perform interpolation. For largeenough values of N , it is reasoned that the difference of nxwill be negligible when controlling for the problem size. Therelation between N , m, and n can be expressed as
N = n + 12
+(n − 12
)(m − 1) ,
{n ∈ 2Z + 1 | 3 ≤ n ≤ 2N − 1}, (6)
where the first term represents the number of nodes in thefirst subinterval and the second term accounts for the (n −1)/2 nodes in each of the remaining (m − 1) subintervals.The restrictions on n are necessary to make the number ofconstraints per interval, nx (n − 1)/2, a positive integer. It isuseful to isolate form in Eq. (6) as a function of N and n andthis results in the simple relation
m = 2 (N − 1)n − 1 , {n ∈ 2Z + 1 | 3 ≤ n ≤ 2N − 1}. (7)
For a given value of N , Eq. (7) can be used to generate possi-ble pairs of (m, n) values by iterating through various valuesof n. To search for valid integer values of m, it is necessaryto test positive odd values of n between the lower bound ofn = 3 and the upper bound of n = 2N − 1. A full listing ofthe possible (m, n) pairs in the range N = [6, 40] is given inTable 2.
At this point, a connection to number theory can be madehere using Ramanujan’s work on divisor functions [19] andHighly Composite Numbers (HCN) [2,15,18]. The divisorfunction
σk (n) =∑
d|ndk (8)
sums over the kth powers of all d such that d is a divisor ofn, which is indicated by d|n. If k = 0, then
σ0 (n) =∑
d|nd0 (9)
123
-
Aerospace Systems
Table 2 HLGL (m, n) pairs and case numbers—bolded case numbers indicate convergence
Casenumber
NodesN
HLGLpair(m, n)
Casenumber
NodesN
HLGLpair(m, n)
Casenumber
NodesN
HLGLPair(m, n)
Casenumber
NodesN
HLGLpair(m, n)
1 6 (5, 3) 37 16 (1, 31) 73 25 (4, 13) 109 33 (4, 17)
2 6 (1, 11) 38 17 (16, 3) 74 25 (3, 17) 110 33 (2, 33)
3 7 (6, 3) 39 17 (8, 5) 75 25 (2, 25) 111 33 (1, 65)
4 7 (3, 5) 40 17 (4, 9) 76 25 (1, 49) 112 34 (33, 3)
5 7 (2, 7) 41 17 (2, 17) 77 26 (25, 3) 113 34 (11, 7)
6 7 (1, 13) 42 17 (1, 33) 78 26 (5, 11) 114 34 (3, 23)
7 8 (7, 3) 43 18 (17, 3) 79 26 (1, 51) 115 34 (1, 67)
8 8 (1, 15) 44 18 (1, 35) 80 27 (26, 3) 116 35 (34, 3)
9 9 (8, 3) 45 19 (18, 3) 81 27 (13, 5) 117 35 (17, 5)
10 9 (4, 5) 46 19 (9, 5) 82 27 (2, 27) 118 35 (2, 35)
11 9 (2, 9) 47 19 (6, 7) 83 27 (1, 53) 119 35 (1, 69)
12 9 (1, 17) 48 19 (3, 13) 84 28 (27, 3) 120 36 (35, 3)
13 10 (9, 3) 49 19 (2, 19) 85 28 (9, 7) 121 36 (7, 11)
14 10 (3, 7) 50 19 (1, 37) 86 28 (3, 19) 122 36 (5, 15)
15 10 (1, 19) 51 20 (19, 3) 87 28 (1, 55) 123 36 (1, 71)
16 11 (10, 3) 52 20 (1, 39) 88 29 (28, 3) 124 37 (36, 3)
17 11 (5, 5) 53 21 (20, 3) 89 29 (14, 5) 125 37 (18, 5)
18 11 (2, 11) 54 21 (10, 5) 90 29 (7, 9) 126 37 (12, 7)
19 11 (1, 21) 55 21 (5, 9) 91 29 (4, 15) 127 37 (9, 9)
20 12 (11, 3) 56 21 (4, 11) 92 29 (2, 29) 128 37 (6, 13)
21 12 (1, 23) 57 21 (2, 21) 93 29 (1, 57) 129 37 (4, 19)
22 13 (12, 3) 58 21 (1, 41) 94 30 (29, 3) 130 37 (3, 25)
23 13 (6, 5) 59 22 (21, 3) 95 30 (1, 59) 131 37 (2, 37)
24 13 (4, 7) 60 22 (7, 7) 96 31 (30, 3) 132 37 (1, 73)
25 13 (3, 9) 61 22 (3, 15) 97 31 (15, 5) 133 38 (37, 3)
26 13 (2, 13) 62 22 (1, 43) 98 31 (10, 7) 134 38 (1, 75)
27 13 (1, 25) 63 23 (22, 3) 99 31 (6, 11) 135 39 (38, 3)
28 14 (13, 3) 64 23 (11, 5) 100 31 (5, 13) 136 39 (19, 5)
29 14 (1, 27) 65 23 (2, 23) 101 31 (3, 21) 137 39 (2, 39)
30 15 (14, 3) 66 23 (1, 45) 102 31 (2, 31) 138 39 (1, 77)
31 15 (7, 5) 67 24 (23, 3) 103 31 (1, 61) 139 40 (39, 3)
32 15 (2, 15) 68 24 (1, 47) 104 32 (31, 3) 140 40 (13, 7)
33 15 (1, 29) 69 25 (24, 3) 105 32 (1, 63) 141 40 (3, 27)
34 16 (15, 3) 70 25 (12,5) 106 33 (32, 3) 142 40 (1, 79)
35 16 (5, 7) 71 25 (8, 7) 107 33 (16, 5)
36 16 (3, 11) 72 25 (6, 9) 108 33 (8, 9)
counts the number of divisors for a given n and is a well-known function in number theory [11]. As the values of σ0(n)are tabulated in the literature [1], if we connect Eq. (7) to thisfunction, then it will be possible to look up the number ofvalid (m, n) pairs for a given N . Let us, therefore, rewriteEq. (7) as:
m = 2 (N − 1)n − 1 , {n ∈ 2Z + 1 | 3 ≤ n ≤ 2N − 1} (10)
= N − 1( n−12
) , {n ∈ 2Z + 1 | 3 ≤ n ≤ 2N − 1} (11)
= N − 1k
, {k ∈ Z | 1 ≤ k ≤ N − 1}, (12)
where k = n−12 . In this form, since any integral value of kfrom 1 to N − 1 that is a divisor of N − 1 corresponds to anHLGL (m, n) pair, we see that the number of HLGL pairscorresponds to the number of divisors of N −1. To formalize
123
-
Aerospace Systems
0 5 10 15 20 25 30 35 40 45N
0
2
4
6
8
10
12
14N
umbe
r of
HLG
L P
airs
Fig. 3 Number of HLGL pairs and its upper bound vs. N
this, let us denote the number of valid HLGL pairs for a givenN by η(N ). Then we can write
η (N ) = σ0 (N − 1) . (13)
With Eq. (13) we are able to use the values of the divisorfunction to determine the number of possible HLGL pairs fora given N . Additionally,we know that for a natural number p,we can find an upper bound on the number of divisors usingσ0(p) < 2
√p and knowing that the number of divisors must
be an integral value, we can write η(N ) ≤ �2√N − 1�. Aplot that shows η(N ) for the range N = [2, 40] along withthe upper bound of �2√N − 1� is given in Fig. 3.
Through this process, it can be seen that η(N ) is non-monotonic and that there are some values of N that havemore valid (m, n) pairs than others. Odd values of N tend toresult in larger values of η(N ) since this causes N − 1 in Eq.(13) to be even, and even numbers tend to have more divisorsthan odd numbers. In 1915, Ramanujan [18] introduced theconcept of a Highly Composite Number (HCN) to describe anumber q such that σ0(p) < σ0(q), ∀p < q. Looking at thespikes in Fig. 3, we see that a maximum value of η(N ) = 9occurs at N = 37, which is expected since N − 1 = 36 isthe largest HCN less than 48.
4.3 Calculating errors between spacecrafttrajectories with different time domains
For minimum-time spacecraft trajectory optimization prob-lems, since the terminal time is free, the time domains fortrajectories resulting from different optimization runs maynot be equal. This is certainly the case with using the N = 64PS trajectory as the reference trajectory, since the transferduration found by this method is generally smaller than the
transfer durations found using the other cases that are beingcompared. To calculate the Root Mean Square (RMS) errors,corresponding points in time need to be chosen between bothtrajectories. If we use dimensional time to find the corre-sponding points, then the reference N = 64 PS trajectoryneeds to be extrapolated and will diverge quite quickly asthis involves a 64th-order polynomial.
The solution used in this paper is to calculate RMS errorsby comparing points that correspond not to the same points indimensional time but to the same points in normalized times ∈ [−1, 1]. For example, the beginning (s = −1), middle(s = 0), and end (s = 1) of each trajectory can be comparedwith the corresponding points of the reference trajectory.This idea eschews extrapolation and allows the comparisonof two spacecraft trajectories with different time domains.As required, the RMS errors found using this method willapproach zero as these trajectories converge.
Specifically, in this work, we calculate the RMS errorsof trajectories found using either the PS or HLGL methodfor the range N = [6, 40], with respect to the N = 64 PSmethod reference trajectory. First, a set S of KRMS = 20000linearly spaced points in [−1, 1] is chosen, including theendpoints. Then the RMS error for the quantity p, whichcan be a position, velocity, or thrust vector represented inCartesian coordinates, is calculated as
ERMS,p =√√√√
∑
si∈S
|p(si ) − pref(si )|2KRMS
, (14)
where | · | represents the Euclidean norm operator. Thequantities p(si ) and pref(si ) represent the values of p corre-sponding to si at the comparison and reference trajectories,respectively. To determine p(si ), either Lagrange interpola-tion or Hermite interpolation needs to be applied dependingon whether the PS or HLGL method was used to find thecomparison trajectory. We note that Lagrange interpolationis used to determine pref(si ) since we are using the N = 64PS trajectory as the reference. For the terminal position error,only the points corresponding to s = 1 are used for the cal-culation.
4.4 Comparison results
The PS method has been compared with the HLGL methodfor the range N = [6, 40] and each of the HLGL pairs isgiven a unique case number. If an HLGL run converged,the corresponding case number will be bolded in Table 2and the data will be included in the figures below. A totalof 157 converged trajectories, including the PS runs, havebeen generated for this analysis. The results for N = 37,which corresponds to the largest number of HLGL (m, n)pairs in this range, with η(37) = 9, are given in Table 3. The
123
-
Aerospace Systems
Table 3 Comparison metrics for HLGL (m, n) pairs with the LG pseudospectral method for N = 37—bolded case numbers indicate convergenceCasenumber
NodesN
PS or HLGLpair (m, n)
Transferduration (s)
Position RMSerror (m)
Terminalposition RMSerror (m)
VelocityRMS error(m/s)
Thrust RMSerror (N/kg)
Processortime (s)
– 37 PS 3.07 × 107 1.35 × 108 2.23 × 104 6.37 × 101 1.03 × 10−4 610124 37 (36, 3) 3.17 × 107 5.13 × 109 1.09 × 107 8.93 × 102 2.45 × 10−4 43.9125 37 (18, 5) 3.13 × 107 5.00 × 109 1.63 × 108 7.54 × 102 2.20 × 10−4 42.1126 37 (12, 7) 3.32 × 107 1.36 × 1010 9.87 × 108 1.58 × 103 2.60 × 10−4 295127 37 (9, 9) 3.10 × 107 5.19 × 109 7.96 × 106 7.33 × 102 1.74 × 10−4 130128 37 (6, 13) 3.10 × 107 4.38 × 109 1.58 × 106 5.72 × 102 1.36 × 10−4 107129 37 (4, 19) 3.09 × 107 3.12 × 109 1.25 × 107 5.26 × 102 1.40 × 10−4 80.3130 37 (3, 25) 3.13 × 107 4.65 × 109 1.28 × 106 7.36 × 102 2.03 × 10−4 78.4131 37 (2, 37) – – – – – –
132 37 (1, 73) – – – – – –
0 50 100 150Case Number
6.5
7
7.5
8
8.5
9
9.5
10
10.5
Log
10 P
ositi
on R
MS
Err
or [m
]
HLGLPS
124 126 128 1308
9
10
Fig. 4 Log10 of position RMS error for HLGL cases vs. PS
complete comparison results for the range N = [6, 40] aregiven in Table 4 in Appendix C.
The plots in Figs. 4, 5, 6, 7, 8, and 9 show the behaviourof all the HLGL pairs in comparison to the PS method withinsets showing the behaviour for N = 37. The PS metricsfor a particular value of N are repeated such that each of theconverged HLGL cases corresponding to that N value has aPS metric for comparison. It is important to note that thesemetrics are represented in dimensional units. From theseplots, one can immediately observe that although the rela-tionship between the metrics and the case number is highlyvariable and non-monotonic, certain general trends can befound. First, it is seen from Fig. 9 that the processor timesfor a given N value are in general higher for the PS methodthan for the corresponding HLGL cases. From Fig. 8, it isseen that the transfer duration, which represents the objec-tive function, tends to be lower for the PSmethod than for theHLGL method. From Case 3 to Case 15, the RMS errors for
0 50 100 150Case Number
1
2
3
4
5
6
7
8
9
10
Log
10 T
erm
inal
Pos
ition
RM
S E
rror
[m] HLGL
PS
124 126 128 130468
Fig. 5 Log10 of terminal position RMS error for HLGL cases vs. PS
0 50 100 150Case Number
-0.5
0
0.5
1
1.5
2
2.5
3
3.5
Log
10 V
eloc
ity R
MS
Err
or [m
/s]
HLGLPS
124 126 128 130
22.5
3
Fig. 6 Log10 of velocity RMS error for HLGL cases vs. PS
123
-
Aerospace Systems
0 50 100 150Case Number
-5.5
-5
-4.5
-4
-3.5
Log
10 T
hrus
t RM
S E
rror
[N/k
g]HLGLPS
124 126 128 130
-4
-3.5
Fig. 7 Log10 of thrust RMS error for HLGL cases vs. PS
0 50 100 150Case Number
7.44
7.45
7.46
7.47
7.48
7.49
7.5
7.51
7.52
7.53
Log
10 T
rans
fer
Dur
atio
n [s
]
HLGLPS
124 126 128 130
7.5
7.52
Fig. 8 Log10 of transfer duration for HLGL cases vs. PS
0 50 100 150Case Number
-1
-0.5
0
0.5
1
1.5
2
2.5
3
3.5
4
Log
10 P
roce
ssor
Tim
e [s
]
HLGLPS
124 126 128 130
1.52
2.53
3.5
Fig. 9 Log10 of processor time for HLGL cases vs. PS
both the HLGL method and the PS method are similar. Forsubsequent case numbers, the HLGL errors tend to be higherthan the corresponding PS errors and stay close to a certainlevel as N increases while the PS errors tend to decreasewith increasing N . This may occur because as the numberof nodes is increased, the HLGL trajectories approach theN = 64 HS trajectory and the PS trajectories approach theN = 64 PS trajectory, which is used as the reference. How-ever, like Case 72, there are exceptions where certain HLGLcases have errors that are below the corresponding PS errors.Another exception occurs for Case 59, which correspondsto (m, n) = (21, 3) where the transfer duration is only 342days in contrast to the reference value of 354 days for theN = 64 PS method. Perhaps if we use the solution of thisrun as an initial guess, lower transfer durations would resultfor all the HLGL pairs. From Table 2, it is seen that problemswith convergence for HLGL runs occur for n ≥ 35. All thePS runs in the range N = [6, 40] have converged but HLGLruns with n ≥ 43 have not converged. An important analysisis how for a given value of N , the choice of m and n affectsthe performance of the HLGL method. From the insets, it isseen that Case 126, which corresponds to (m, n) = (12, 7)exhibits higher errors when compared to Case 127 whichcorresponds to (m, n) = (9, 9), even though they both corre-spond to N = 37. For the specific example of velocity RMSerror, looking at Table 3, it is apparent that while Case 126has an error of 1.58× 103 (m/s), Case 127 only has an errorof 7.33 × 102 (m/s).
5 Conclusion
A minimum-time low-thrust Earth-to-Mars trajectory witha terminal phase constraint has been solved using both theLegendre–Gauss pseudospectral and theHermite–Legendre–Gauss–Lobatto methods. The phase-free Edelbaum transferis used to set bounds, scale the problem, and generate a suit-able initial guess. A general algorithm for finding the HLGL(m, n) pairs for a given value of N has been formulated. Anexpression for the number of possible HLGL pairs has beenrepresented using the concept of a divisor function and anupper bound has been derived. Ramanujan’s work on HighlyCompositeNumbers is used to describe values of N forwhichmany HLGL pairs exist. It is also shown that spacecraft tra-jectories with different time domains can be compared bycalculating errors between points that correspond to the samenormalized times. A detailed comparison of the performanceof the PS and HLGL methods has been completed for fixedproblem sizes in the range N = [6, 40], which addressesa research gap. This reveals significant performance differ-ences between the PS and HLGLmethods with respect to N ,m, and n. Future adaptive versions of theHLGLmethod, suchas the recent work by Lei et al. [14], may benefit by exploit-
123
-
Aerospace Systems
ing those HLGL pairs which offer the best performance fora given problem size. The approach of the present paper canbe used as a basis for a systematic comparison of two generallocal and global direct collocation methods.
Appendix A Legendre–Gauss pseudospectralmethod derivation
The pseudospectral method is typically formulated as aglobalmethod.Wewill develop and summarize the equationsfor the N th-order global Legendre–Gauss pseudospectralmethod using the N th-order LG points as collocation pointsbased on the work by Garg et al. [9].
First we transform the problem into τ = [−1, 1] fromt = [t0, t f ] space using:
t = t f − t02
τ + t f + t02
. (15)
The point τ0 corresponds to t0, τ 1:N represents the transfor-mation of the set of N LG points in the open interval (t0, t f ),and the terminal point τN+1 corresponds to t f . The state andcontrol are then approximated using Lagrange basis polyno-mials Li (τ ):
x (τ ) =N∑
i=0Xi Li (τ ) (16)
u (τ ) =N∑
i=1Ui Li (τ ), (17)
where Xi and Ui are row vectors corresponding to τi .Differentiating and evaluating at the kth collocation point
τk results in
ẋ (τk) =N∑
i=0Xi L̇ i (τk) =
N∑
i=0DkiXi (τk) . (18)
We note that X0 is used for interpolation but not for collo-cation. Now we can impose constraints that the interpolatedvalues of the state derivative at the collocation points τ 1:Nmatch the exact values of the state derivative at τ 1:N ,expressed using F:
DX0:N =(t f − t0
2
)F (X1:N ,U1:N , t (τ 1:N )) . (19)
Since we are using the Legendre–Gauss points, we can alsoemploy Gaussian quadrature to write
XN+1 = X0 +(t f − t0
2
)wTF (X1:N ,U1:N , t (τ 1:N )), (20)
where XN+1 is the terminal state and w is the column vectorof Legendre–Gauss quadrature weights.
The NLP problem obtained from transcribing the optimalcontrol problem in Eqs. (1) can be written as:
Minimize J = φ (XN+1, t f)
+(t f − t0
2
) N∑
i=1wiL (Xi ,Ui , t (τi ))
Subject To:
gi (X1:N+1,U1:N+1, t (τ 1:N+1)) ≤ 0, i = 1, 2, . . . , nghi (X1:N+1,U1:N+1, t (τ 1:N+1)) = 0, i = 1, 2, . . . , nhhPS := DX0:N −
(t f − t0
2
)F (X1:N ,U1:N , t (τ 1 :N )) = 0.
(21)
Wenote that an additional Nnx equality constraints are addedto the problem due to the Legendre–Gauss PS method.
Appendix B Hermite–Legendre–Gauss–Lobattomethod derivation
TheHLGLmethod is a local method formulated byWilliams[27]. We will develop and summarize this method here. Thetime interval [t0, t f ] is first subdivided into m subintervalswhere the (m+1)th-order LGL points are used as the subin-terval boundaries in this paper. The time domain for eachsubinterval is then transformed into τ = [−1, 1] using thesubinterval boundaries.Within each of these subintervals, thestate is approximated by an nth-order polynomial [27].
In the HLGL method, n is restricted to be an odd integersuch that n ≥ 3. For the i th subinterval, the state approxima-tion can be written as
xi (τ ) = a0 + a1τ + a2τ 2 + · · · + anτ n . (22)
In order to form this polynomial, the n LGL points corre-sponding to the i th subinterval are represented by ξ and aredivided into n+12 nodes denoted by γ and
n−12 collocation
points denoted by ζ :
γ j � ξ2 j−1, j = 1, . . . , (n + 1)/2 (23)ζ j � ξ2 j , j = 1, . . . , (n − 1)/2. (24)
The (n+1) pieces of information needed to find the coeffi-cients are obtained from the nodes using both the state valuesand its derivatives in the τ domain:
123
-
Aerospace Systems
⎡
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣
1 −1 1 · · · γ n−11 γ n11 γ 12 γ
22 · · · γ n−12 γ n2
......
......
......
1 γ 1n+12
γ 2n+12
· · · γ n−1n+12
γ nn+12
0 1 2γ 11 · · · (n − 1)γ n−21 nγ n−11...
......
......
...
0 1 2γ 1n+12
· · · (n − 1)γ n−2n+12
nγ n−1n+12
⎤
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦
⎡
⎢⎢⎢⎢⎢⎣
a0a1a2...
an
⎤
⎥⎥⎥⎥⎥⎦
=
⎡
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣
x (γ1)x (γ2)
...
x(γ n+1
2
)
hi2 f (γ1)
...hi2 f
(γ n+1
2
)
⎤
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦
, (25)
where hi is the length of the i th subinterval in t space.Equation (25) is of the form Aa = b, so we can now deter-mine the values of the state at the collocation points byinverting this system of equations:
xi (ζ j ) = vTj a = vTj A−1bi = φTj bi , (26)
where
v j =[1 ζ j ζ 2j · · · ζ nj
]T,
j = 1, . . . , (n − 1)/2. (27)
If we take the derivative of Eq. (22) and evaluate at the col-location points, then we obtain
ẋi (ζ j ) = vTd j a = vTd jA−1bi = φTd jbi , (28)
where
vd j =[0 1 2ζ j · · · nζ n−1j
]T,
j = 1, . . . , (n − 1)/2. (29)
If we form the following matrices for the i th subinterval:
Φ i =[φ1 φ2 · · · φ(n−1)/2
](30)
Φdi =[φd1 φd2 · · · φd(n−1)/2
], (31)
then the constraints to be enforced within the i th subintervalcan now be written as
ΦTdibi −hi2F(ΦTi bi ,ui
(ζ i
), ti
(ζ i
)) = 0, (32)
where ui is evaluated at ζ i through linear interpolation of thevalues at γ i , the nodes in the i th subinterval.
The NLP problem obtained from transcribing the optimalcontrol problem in Eqs. (1) can be written as:
Minimize J = φ (xm (1) , t f)
+m∑
i=1
hi2
n∑
j=1w jL
(xi
(ξ j
),ui
(ξ j
), ti
(ξ j
))
Subject To:
gi (x (γ ) ,u (γ ) , t (γ )) ≤ 0, i = 1, 2, . . . , nghi (x (γ ) ,u (γ ) , t (γ )) = 0, i = 1, 2, . . . , nhhHLGL := ΦTdibi
− hi2F(ΦTi bi ,ui
(ζ i
), ti
(ζ i
)) = 0, i = 1, 2, . . . ,m(33)
where w j are the Legendre–Gauss–Lobatto quadratureweights within each subinterval. We note that an additionalmnx (
n−12 ) equality constraints are added to the problem due
to the HLGL method.
Appendix C Complete comparison results
Please see Table 4.
123
-
Aerospace Systems
Table4
Detailedmetrics
forthecomparisonof
HLGL
(m,n)
pairswith
theLGpseudospectralmethod—
bolded
case
numbersindicateconvergence
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
–6
PS3.311
×10
71.429
×10
105.664
×10
61.518
×10
32.906
×10
−436.3
16
(5,3
)3.063
×10
72.396
×10
91.421
×10
83.756
×10
21.337
×10
−49.33
26
(1,1
1)3.076
×10
72.263
×10
99.425
×10
53.079
×10
21.317
×10
−49.62
–7
PS3.074
×10
71.950
×10
91.745
×10
62.493
×10
21.081
×10
−4275
37
(6,3
)3.073
×10
72.684
×10
91.671
×10
83.784
×10
21.258
×10
−48.6
47
(3,5
)3.073
×10
72.495
×10
92.007
×10
73.488
×10
21.264
×10
−411.5
57
(2,7
)3.064
×10
71.106
×10
91.426
×10
71.846
×10
29.276
×10
−54.79
67
(1,1
3)3.080
×10
73.200
×10
91.244
×10
74.373
×10
21.309
×10
−48.57
–8
PS3.071
×10
76.812
×10
81.508
×10
61.838
×10
21.127
×10
−418.1
78
(7,3
)3.068
×10
71.075
×10
94.487
×10
72.103
×10
21.023
×10
−412.9
88
(1,1
5)3.067
×10
79.175
×10
82.228
×10
72.018
×10
21.064
×10
−45.43
–9
PS3.066
×10
71.181
×10
94.142
×10
62.123
×10
29.082
×10
−525
99
(8,3
)3.067
×10
71.484
×10
97.484
×10
62.508
×10
21.066
×10
−435
109
(4,5
)3.069
×10
71.623
×10
93.890
×10
62.591
×10
21.002
×10
−419.1
119
(2,9
)3.062
×10
72.186
×10
89.508
×10
66.772
×10
15.293
×10
−57.85
129
(1,1
7)3.069
×10
71.784
×10
97.037
×10
62.829
×10
21.099
×10
−47.41
–10
PS3.063
×10
75.104
×10
84.139
×10
68.701
×10
18.466
×10
−522.6
1310
(9,3
)3.059
×10
74.199
×10
91.115
×10
96.689
×10
22.138
×10
−43.99
1410
(3,7
)3.067
×10
77.937
×10
83.066
×10
61.735
×10
29.501
×10
−521.7
1510
(1,1
9)3.066
×10
76.904
×10
82.771
×10
61.553
×10
28.841
×10
−59.88
–11
PS3.070
×10
71.006
×10
99.050
×10
62.422
×10
21.293
×10
−426.9
1611
(10,
3)3.066
×10
71.219
×10
99.726
×10
72.021
×10
28.962
×10
−534.1
1711
(5,5
)3.064
×10
71.116
×10
93.697
×10
71.902
×10
28.683
×10
−517.1
1811
(2,1
1)3.059
×10
73.352
×10
84.726
×10
66.112
×10
13.763
×10
−511
1911
(1,2
1)3.067
×10
71.317
×10
95.192
×10
62.171
×10
29.203
×10
−58.98
–12
PS3.117
×10
73.178
×10
91.819
×10
75.354
×10
21.925
×10
−4465
2012
(11,
3)3.059
×10
74.071
×10
84.726
×10
71.410
×10
28.021
×10
−530.8
2112
(1,2
3)3.064
×10
73.976
×10
84.538
×10
61.234
×10
27.833
×10
−510.7
–13
PS3.069
×10
78.970
×10
86.112
×10
62.026
×10
21.614
×10
−4188
2213
(12,
3)3.072
×10
73.986
×10
94.360
×10
76.223
×10
21.722
×10
−414.5
2313
(6,5
)3.143
×10
75.823
×10
91.251
×10
76.635
×10
21.503
×10
−423.6
2413
(4,7
)3.062
×10
74.185
×10
83.156
×10
78.217
×10
15.845
×10
−522.3
123
-
Aerospace Systems
Table4
continued
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
2513
(3,9
)3.064
×10
71.311
×10
91.485
×10
72.167
×10
29.290
×10
−519.4
2613
(2,1
3)3.061
×10
71.408
×10
81.960
×10
64.582
×10
13.842
×10
−514.2
2713
(1,2
5)3.072
×10
71.305
×10
92.375
×10
62.330
×10
29.050
×10
−511.2
–14
PS3.063
×10
72.192
×10
87.034
×10
65.503
×10
16.337
×10
−5165
2814
(13,
3)3.143
×10
74.986
×10
99.905
×10
77.855
×10
22.143
×10
−49.93
2914
(1,2
7)3.068
×10
73.814
×10
86.887
×10
51.101
×10
28.252
×10
−523.3
–15
PS3.269
×10
71.255
×10
101.783
×10
61.376
×10
32.655
×10
−459.3
3015
(14,
3)3.119
×10
74.979
×10
92.571
×10
87.128
×10
22.229
×10
−410.6
3115
(7,5
)3.057
×10
71.767
×10
82.006
×10
79.269
×10
16.795
×10
−537
3215
(2,1
5)3.076
×10
72.717
×10
93.054
×10
63.510
×10
29.410
×10
−524.1
3315
(1,2
9)3.065
×10
77.505
×10
81.443
×10
61.296
×10
26.890
×10
−581.7
–16
PS3.111
×10
72.816
×10
99.673
×10
64.872
×10
22.161
×10
−4123
3416
(15,
3)3.150
×10
75.054
×10
95.578
×10
78.275
×10
22.461
×10
−49.15
3516
(5,7
)3.084
×10
74.571
×10
97.010
×10
65.716
×10
21.589
×10
−416.1
3616
(3,1
1)3.069
×10
79.933
×10
81.693
×10
72.144
×10
21.232
×10
−422.1
3716
(1,3
1)3.158
×10
74.656
×10
93.338
×10
58.427
×10
22.430
×10
−420.1
–17
PS3.136
×10
74.705
×10
91.632
×10
65.611
×10
22.554
×10
−4213
3817
(16,
3)3.144
×10
75.144
×10
99.378
×10
77.697
×10
22.186
×10
−413.9
3917
(8,5
)3.046
×10
71.461
×10
95.002
×10
71.844
×10
26.641
×10
−542.6
4017
(4,9
)3.073
×10
72.333
×10
96.374
×10
62.921
×10
29.222
×10
−529.9
4117
(2,1
7)3.082
×10
73.420
×10
91.073
×10
74.409
×10
21.105
×10
−417.9
4217
(1,3
3)3.133
×10
74.369
×10
94.975
×10
56.299
×10
21.961
×10
−437.7
–18
PS3.076
×10
77.823
×10
83.548
×10
72.509
×10
21.267
×10
−4151
4318
(17,
3)3.161
×10
75.029
×10
92.772
×10
79.046
×10
22.502
×10
−411
4418
(1,3
5)3.171
×10
74.998
×10
92.293
×10
79.228
×10
22.537
×10
−410
–19
PS3.066
×10
79.082
×10
85.192
×10
71.950
×10
21.670
×10
−4374
4519
(18,
3)3.115
×10
75.179
×10
93.298
×10
86.430
×10
22.396
×10
−442.2
4619
(9,5
)3.056
×10
72.487
×10
84.770
×10
79.402
×10
16.349
×10
−547.9
4719
(6,7
)3.075
×10
73.085
×10
95.964
×10
64.441
×10
21.454
×10
−442.1
4819
(3,1
3)3.092
×10
74.270
×10
91.074
×10
66.956
×10
21.695
×10
−428
4919
(2,1
9)3.081
×10
73.460
×10
98.380
×10
64.677
×10
21.268
×10
−418.9
123
-
Aerospace Systems
Table4
continued
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
5019
(1,3
7)3.172
×10
75.962
×10
95.652
×10
79.694
×10
22.421
×10
−485.5
–20
PS3.074
×10
78.176
×10
85.847
×10
62.375
×10
21.329
×10
−4304
5120
(19,
3)3.105
×10
74.690
×10
93.875
×10
86.048
×10
21.881
×10
−436.5
5220
(1,3
9)3.172
×10
75.085
×10
93.354
×10
89.379
×10
22.565
×10
−425.2
–21
PS3.063
×10
73.244
×10
81.460
×10
75.787
×10
14.602
×10
−52208
5321
(20,
3)3.138
×10
74.964
×10
91.508
×10
87.687
×10
22.108
×10
−440
5421
(10,
5)3.078
×10
74.436
×10
91.258
×10
95.368
×10
21.390
×10
−456.9
5521
(5,9
)3.078
×10
73.155
×10
92.382
×10
74.724
×10
21.268
×10
−439.1
5621
(4,1
1)3.068
×10
71.338
×10
92.499
×10
52.209
×10
27.586
×10
−541
5721
(2,2
1)3.078
×10
72.883
×10
97.526
×10
53.855
×10
21.084
×10
−430.9
5821
(1,4
1)3.173
×10
78.494
×10
98.433
×10
81.129
×10
32.852
×10
−4356
–22
PS3.064
×10
71.694
×10
86.789
×10
55.714
×10
14.754
×10
−5781
5922
(21,
3)2.958
×10
78.105
×10
92.966
×10
81.125
×10
31.606
×10
−470.5
6022
(7,7
)3.078
×10
72.783
×10
92.289
×10
74.243
×10
21.357
×10
−448.4
6122
(3,1
5)3.064
×10
72.267
×10
81.523
×10
67.459
×10
16.107
×10
−554.9
6222
(1,4
3)–
––
––
–
–23
PS3.067
×10
76.953
×10
85.855
×10
61.598
×10
21.401
×10
−4532
6323
(22,
3)3.124
×10
75.235
×10
91.739
×10
86.512
×10
22.155
×10
−423.1
6423
(11,
5)3.155
×10
75.155
×10
95.176
×10
78.175
×10
22.247
×10
−413.9
6523
(2,2
3)3.065
×10
71.102
×10
91.312
×10
61.790
×10
27.293
×10
−549.1
6623
(1,4
5)–
––
––
–
–24
PS3.072
×10
76.821
×10
81.675
×10
61.984
×10
21.044
×10
−4219
6724
(23,
3)3.119
×10
75.050
×10
91.815
×10
86.561
×10
22.357
×10
−425.1
6824
(1,4
7)–
––
––
–
–25
PS3.067
×10
73.411
×10
82.098
×10
61.038
×10
21.157
×10
−4646
6925
(24,
3)3.148
×10
75.092
×10
95.451
×10
78.337
×10
22.705
×10
−420.4
7025
(12,
5)3.129
×10
74.936
×10
91.036
×10
87.579
×10
22.144
×10
−424.6
7125
(8,7
)3.087
×10
74.597
×10
92.309
×10
75.727
×10
21.559
×10
−445.8
7225
(6,9
)3.063
×10
79.891
×10
76.489
×10
62.702
×10
12.999
×10
−568
7325
(4,1
3)3.078
×10
74.209
×10
97.105
×10
65.780
×10
21.472
×10
−437.9
7425
(3,1
7)3.098
×10
73.017
×10
91.297
×10
64.882
×10
21.573
×10
−451
7525
(2,2
5)3.091
×10
73.188
×10
93.204
×10
54.080
×10
21.434
×10
−442
123
-
Aerospace Systems
Table4
continued
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
7625
(1,4
9)–
––
––
–
–26
PS3.071
×10
76.688
×10
89.738
×10
61.897
×10
21.001
×10
−4489
7726
(25,
3)2.982
×10
76.801
×10
92.007
×10
71.154
×10
31.863
×10
−482.2
7826
(5,1
1)3.066
×10
74.389
×10
81.132
×10
78.761
×10
15.857
×10
−560.2
7926
(1,5
1)–
––
––
–
–27
PS3.066
×10
73.667
×10
81.134
×10
71.001
×10
21.049
×10
−41041
8027
(26,
3)3.129
×10
74.826
×10
91.526
×10
88.044
×10
22.677
×10
−423.4
8127
(13,
5)3.073
×10
74.131
×10
91.040
×10
76.061
×10
21.540
×10
−475.7
8227
(2,2
7)3.070
×10
73.490
×10
84.080
×10
51.122
×10
29.816
×10
−5228
8327
(1,5
3)–
––
––
–
–28
PS3.070
×10
76.265
×10
87.166
×10
61.772
×10
29.888
×10
−51062
8428
(27,
3)3.133
×10
74.873
×10
91.228
×10
88.049
×10
22.606
×10
−424.9
8528
(9,7
)3.089
×10
74.588
×10
93.411
×10
65.219
×10
21.426
×10
−476.8
8628
(3,1
9)3.178
×10
76.791
×10
92.156
×10
61.054
×10
31.940
×10
−487.1
8728
(1,5
5)–
––
––
–
–29
PS3.066
×10
72.433
×10
89.502
×10
68.697
×10
11.181
×10
−41154
8829
(28,
3)3.128
×10
74.828
×10
91.542
×10
88.061
×10
22.801
×10
−427.7
8929
(14,
5)3.160
×10
75.075
×10
94.118
×10
78.737
×10
22.362
×10
−422.1
9029
(7,9
)3.095
×10
74.718
×10
92.349
×10
75.305
×10
21.412
×10
−452.3
9129
(4,1
5)3.081
×10
73.405
×10
91.492
×10
64.561
×10
21.256
×10
−498.2
9229
(2,2
9)3.142
×10
74.792
×10
91.223
×10
86.105
×10
21.494
×10
−479
9329
(1,5
7)–
––
––
–
–30
PS3.064
×10
71.895
×10
89.118
×10
65.839
×10
19.171
×10
−5655
9430
(29,
3)3.148
×10
75.180
×10
94.135
×10
77.762
×10
22.478
×10
−439
9530
(1,5
9)–
––
––
–
–31
PS3.066
×10
72.479
×10
81.148
×10
78.286
×10
11.185
×10
−41611
9631
(30,
3)3.135
×10
74.930
×10
91.121
×10
87.772
×10
22.444
×10
−431.7
9731
(15,
5)3.044
×10
72.638
×10
98.007
×10
74.416
×10
21.099
×10
−4134
9831
(10,
7)3.062
×10
75.829
×10
81.744
×10
79.989
×10
15.111
×10
−5116
9931
(6,1
1)3.063
×10
78.109
×10
73.016
×10
71.950
×10
12.893
×10
−585.2
100
31(5,1
3)3.065
×10
72.774
×10
81.757
×10
77.107
×10
16.185
×10
−574
101
31(3,2
1)3.083
×10
73.030
×10
91.061
×10
64.505
×10
21.145
×10
−462.3
123
-
Aerospace Systems
Table4
continued
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
102
31(2,3
1)3.162
×10
74.884
×10
91.143
×10
68.409
×10
22.498
×10
−475.6
103
31(1,6
1)–
––
––
–
–32
PS3.069
×10
75.690
×10
83.946
×10
61.579
×10
29.508
×10
−51146
104
32(31,
3)3.147
×10
74.933
×10
97.166
×10
78.113
×10
22.071
×10
−4162
105
32(1,6
3)–
––
––
–
–33
PS3.065
×10
71.838
×10
82.664
×10
67.333
×10
11.154
×10
−41649
106
33(32,
3)3.159
×10
75.114
×10
92.399
×10
78.575
×10
22.426
×10
−427.9
107
33(16,
5)3.129
×10
74.768
×10
92.461
×10
87.631
×10
22.206
×10
−444.5
108
33(8,9
)3.171
×10
75.098
×10
96.841
×10
69.347
×10
22.539
×10
−47.11
109
33(4,1
7)3.065
×10
71.127
×10
83.930
×10
74.354
×10
14.854
×10
−5148
110
33(2,3
3)3.171
×10
74.865
×10
93.751
×10
68.917
×10
22.503
×10
−4222
111
33(1,6
5)–
––
––
–
–34
PS3.069
×10
73.527
×10
81.524
×10
61.284
×10
21.019
×10
−4489
112
34(33,
3)3.162
×10
75.107
×10
92.352
×10
78.813
×10
22.501
×10
−432.2
113
34(11,
7)3.061
×10
72.288
×10
83.857
×10
66.981
×10
15.652
×10
−5127
114
34(3,2
3)3.100
×10
74.152
×10
91.505
×10
66.142
×10
21.455
×10
−471.2
115
34(1,6
7)–
––
––
–
–35
PS3.065
×10
71.653
×10
82.598
×10
66.909
×10
11.048
×10
−4511
116
35(34,
3)3.149
×10
75.166
×10
94.619
×10
77.846
×10
22.338
×10
−457.1
117
35(17,
5)3.146
×10
74.974
×10
91.006
×10
88.346
×10
22.404
×10
−426.3
118
35(2,3
5)–
––
––
–
119
35(1,6
9)–
––
––
–
–36
PS3.063
×10
71.311
×10
81.528
×10
63.283
×10
13.362
×10
−52033
120
36(35,
3)3.156
×10
75.131
×10
92.865
×10
78.424
×10
22.837
×10
−441.6
121
36(7,1
1)3.080
×10
73.541
×10
96.004
×10
64.694
×10
21.397
×10
−485.6
122
36(5,1
5)3.090
×10
74.371
×10
98.978
×10
55.451
×10
21.452
×10
−4102
123
36(1,7
1)–
––
––
–
–37
PS3.065
×10
71.347
×10
82.233
×10
46.366
×10
11.026
×10
−4610
124
37(36,
3)3.167
×10
75.133
×10
91.091
×10
78.934
×10
22.447
×10
−443.9
125
37(18,
5)3.132
×10
75.001
×10
91.628
×10
87.544
×10
22.197
×10
−442.1
123
-
Aerospace Systems
Table4
continued
Case
number
Nodes
NPS
orHLGL
pair
(m,n)
Transfer
duratio
n(s)
Positio
nRMS
error(m
)Term
inalpo
sitio
nRMSerror(m
)Velocity
RMS
error(m
/s)
ThrustR
MS
error(N
/kg)
Processor
time(s)
126
37(12,
7)3.320
×10
71.358
×10
109.870
×10
81.579
×10
32.596
×10
−4295
127
37(9,9
)3.097
×10
75.193
×10
97.958
×10
67.328
×10
21.744
×10
−4130
128
37(6,1
3)3.095
×10
74.377
×10
91.584
×10
65.717
×10
21.359
×10
−4107
129
37(4,1
9)3.086
×10
73.117
×10
91.251
×10
75.258
×10
21.404
×10
−480.3
130
37(3,2
5)3.128
×10
74.647
×10
91.282
×10
67.361
×10
22.030
×10
−478.4
131
37(2,3
7)–
––
––
–
132
37(1,7
3)–
––
––
–
–38
PS3.067
×10
74.178
×10
81.126
×10
61.335
×10
21.163
×10
−4546
133
38(37,
3)3.164
×10
75.133
×10
91.640
×10
78.820
×10
22.545
×10
−437.2
134
38(1,7
5)–
––
––
–
–39
PS3.065
×10
71.365
×10
83.408
×10
66.031
×10
11.006
×10
−4905
135
39(38,
3)3.142
×10
74.883
×10
96.501
×10
77.861
×10
22.145
×10
−4534
136
39(19,
5)3.145
×10
75.053
×10
91.071
×10
88.030
×10
22.397
×10
−432.3
137
39(2,3
9)3.173
×10
74.953
×10
93.223
×10
89.077
×10
22.567
×10
−441
138
39(1,7
7)–
––
––
–
–40
PS3.067
×10
74.203
×10
81.239
×10
51.301
×10
21.157
×10
−4633
139
40(39,
3)3.152
×10
74.892
×10
93.549
×10
78.832
×10
22.534
×10
−4497
140
40(13,
7)3.096
×10
74.637
×10
96.756
×10
65.660
×10
21.661
×10
−4107
141
40(3,2
7)3.124
×10
75.175
×10
92.714
×10
57.244
×10
21.664
×10
−487.4
142
40(1,7
9)–
––
––
–
123
-
Aerospace Systems
References
1. Abramowitz M, Stegun IA (1972) Handbook of mathematicalfunctions with formulas, graphs, and mathematical tables. U.S.Department of Commerce, Washington, D.C.
2. Andrews GE, Berndt BC (2012) Ramanujan’s lost notebook.Springer, New York
3. Betts JT (1998) Survey of numerical methods for trajectory opti-mization. J Guid Control Dyn 21(2):193–207
4. Choueiri EY (2009) New dawn for electric rockets. Sci Am300(2):58–65
5. Conway BA (ed.) (2010) Spacecraft trajectory optimization. In:No. 29 in Cambridge Aerospace Series. Cambridge UniversityPress, Cambridge
6. De Ruiter AHJ, Damaren CJ, Forbes JR (2013) Spacecraft dynam-ics and control: an introduction. Wiley, Chichester
7. Edelbaum TN (1961) Propulsion requirements for controllablesatellites. ARS J 31(8):1079–1089
8. García-Heras J, Soler M, Sáez FJ (2016) Collocation methods tominimum-fuel trajectory problems with required time of arrival inATM. J Aerosp Inf Syst 13(7):243–265
9. GargD, PattersonM,HagerWW,RaoAV, BensonDA,HuntingtonGT (2010) A unified framework for the numerical solution of opti-mal control problems using pseudospectral methods. Automatica46(11):1843–1851
10. Gill PE, Murray W, Saunders MA (2005) SNOPT: an SQPalgorithm for large-scale constrained optimization. SIAM Rev47(1):99–131
11. Hardy GH, Wright EM (1975) An introduction to the theory ofnumbers, 4th edn. Oxford University Press, Oxford
12. Herman AL, Conway BA (1996) Direct optimization using collo-cation based on high-order Gauss–Lobatto quadrature rules. J GuidControl Dyn 19(3):592–599
13. Izzo D (2006) Lambert’s problem for exponential sinusoids. J GuidControl Dyn 29(5):1242–1245
14. Lei H, Liu T, Li D, Ye J, Shao L (2017) Adaptive meshiteration method for trajectory optimization based on hermite-pseudospectral direct transcription. Math Probl Eng 2017:1–7
15. Nicolas JL, Robin G (1997) Highly composite numbers by Srini-vasa Ramanujan. Ramanujan J 1(2):119–153
16. Petropoulos AE, Longuski JM (2004) Shape-based algorithm forthe automated design of low-thrust, gravity assist trajectories. JSpacecr Rockets 41(5):787–796
17. Petropoulos AE, Sims JA (2002) A review of some exact solutionsto the planar equations of motion of a thrusting spacecraft. In: 2ndinternational symposium on low thrust trajectories. Toulouse
18. Ramanujan S (1915) Highly composite numbers. Proc Lond MathSoc 2(1):347–409
19. Ramanujan S (1915) On the number of divisors of a number. JIndian Math Soc 7:131–133
20. RaoAV (2009) A survey of numerical methods for optimal control.Adv Astronaut Sci 135(1):497–528
21. Ross IM, Fahroo F (2004) Legendre pseudospectral approxima-tions of optimal control problems. In: New trends in nonlineardynamics and control and their applications. Lecture notes in con-trol and information science. Springer, Berlin, pp 327–342
22. Shirazi A, Ceberio J, Lozano JA (2018) Spacecraft trajectory opti-mization: a review ofmodels, objectives, approaches and solutions.Prog Aerosp Sci 102:76–98
23. Wall B (2008) Shape-based approximation method for low-thrusttrajectory optimization. In: AIAA/AAS astrodynamics specialistconference and exhibit. American Institute of Aeronautics andAstronautics, Honolulu
24. Wall BJ, Conway BA (2009) Shape-based approach to low-thrustrendezvous trajectory design. J Guid Control Dyn 32(1):95–101
25. Wang Y, Zhu Y, Jiang X, Li S (2014) Comparison of LPM, GPMand RPM for optimization of low-thrust Earth-Mars rendezvoustrajectories. In: Proceedings of 2014 IEEE Chinese guidance, nav-igation and control conference. IEEE, Yantai, pp 2461–2467
26. Williams P (2005) A comparison of differentiation and integrationbased direct transcriptionmethods. AdvAstronaut Sci 120(1):389–408
27. Williams P (2009) Hermite–Legendre–Gauss–Lobatto directtranscription in trajectory optimization. J Guid Control Dyn32(4):1392–1395
123
Comparison of the Legendre–Gauss pseudospectral and Hermite–Legendre–Gauss–Lobatto methods for low-thrust spacecraft trajectory optimizationAbstract1 Introduction2 Methodology2.1 Edelbaum transfer2.2 Legendre–Gauss pseudospectral method2.3 Hermite–Legendre–Gauss–Lobatto method
3 Problem formulation: Earth-to-Mars orbital transfer4 PS and HLGL comparison with constant N4.1 Optimized Earth-to-Mars trajectory4.2 HLGL (m,n) pairs for constant N4.3 Calculating errors between spacecraft trajectories with different time domains4.4 Comparison results
5 ConclusionAppendix A Legendre–Gauss pseudospectral method derivationAppendix B Hermite–Legendre–Gauss– Lobatto method derivationAppendix C Complete comparison resultsReferences