1 Introduction

Satellite constellation design is generally considered more of an art than a science. With six orbital elements as continuous design variables for each of n satellites in the constellation, where n is typically tens of satellites, the design space itself presents a very large optimization problem. When one also considers that the propagation of all of those satellites and evaluation of the appropriate coverage metrics takes a non-trivial amount of time, the general problem becomes intractable. To make the problem solvable, the constellation designer typically assumes all of the satellites have orbits of the same size and shape and that subsets of the satellites share orbital planes. Dutruel and Mora (1998) and Draim (2004) provide a thorough survey of constellation design methods.

Flower Constellations (FCs) have been developed in recent years to provide a framework for optimal constellation design (Mortari et al. 2004; Wilkins et al. 2004; Bruccoleri 2007). The culmination of these efforts has been the development of the 2-D Lattice Flower Constellation (2D-LFC) theory, partially presented in Avendaño et al. (2010) and fully described in the companion article (Avendaño et al. 2013). These constellations share many features of Walker constellations, but fundamentally approach the design of symmetric constellations from different perspectives. Whereas the Walker constellation theory was formulated in an inertial reference frame, 2D-LFCs were developed with respect to a generic rotating reference frame (e.g., Earth-Centered Earth-Fixed). The 2D-LFC framework supports elliptical constellations, but makes no special accommodations for taking advantage of this extra degree of freedom or to handle the dynamics caused by Earth’s oblateness when dealing with elliptical orbits.

The oblateness of the Earth is typically disregarded for initial constellation design because its effects are slow and generally not significant for circular orbits. The dominant term in the Earth oblateness is known as the \(J_2\) effect which captures the second spherical harmonic describing the shape of the Earth’s gravitational field. Though \(J_2\) affects all of the orbital parameters instantaneously, it causes only Right Ascension of the Ascending Node (RAAN), argument of perigee, and mean orbital rate to vary secularly. For FCs, the effect on RAAN and mean orbital rate can be easily corrected by slight changes to the compatibility equation [see Eq. (1)]. The non-Keplerian rotation of the argument of perigee increases the complexity of constellation design and analysis and is typically avoided by using circular or critically inclined orbits. Requiring additional on-orbit corrections to halt perigee rotation, which increase fuel costs, shorten mission life, and increase operational complexity further discourage the use of elliptical orbits. Here we present a new constellation design framework, the 3D Lattice Flower Constellations (3D-LFCs), to utilize, rather than avoid, the \(J_2\) effect, enabling more effective global coverage utilizing elliptic orbits. Additionally, elliptic orbits require less fuel to launch into than circular orbits of the same semi-major axis, allowing for lower launch costs for the same altitude or higher altitudes for the same launch cost.

The rotation of the argument of perigee is only meaningful in elliptic orbits. Though orbits that are critically inclined at \(\approx 63.4^{\circ }\) (or \(\approx 116.6^\circ \)) experience minimal rotation of the argument of perigee, this inclination requirement eliminates one of the design variables at the disposal of the constellation designer. Instead, we propose that satellites within a given orbital plane be placed in multiple orbits with arguments of perigee distributed evenly from 0\(^\circ \) to 360\(^\circ \). Given that all orbits have the same inclination, eccentricity, and semi-major axis, their rate of perigee rotation will be equal. Thus, as they each rotate, the relative perigee spacing remains constant, and periodically the constellation resumes its original structure. The concept is illustrated in Fig. 1. This approach is particularly well-suited for any mission requiring global coverage.

Fig. 1
figure 1

The 3D Lattice Flower Constellation concept

Lattice Flower Constellations are particularly elegant for global coverage due to their uniformity of satellite distribution. How does one distribute satellites with multiple arguments of perigee and still maintain some level of uniformity? Many issues must be considered. First, as the arguments of perigee rotate due to \(J_2\), occasionally the apogee (or perigee) of an orbit on a given plane will align with the line of nodes where it intersects with another plane. It would certainly not be uniform if an orbit on that second plane also had apogee (or perigee) along that line of nodes, as then two satellites would be at apogee above the same point on Earth. Second, standard 2D-LFCs design defines the distribution within the plane by equally spacing satellites in mean anomaly space. With satellites in different orbits within the same plane, does that mean anomaly space lose all meaning from a uniformity standpoint? Lastly, 2D-LFCs design governs the interaction of satellites between planes, and this too must be preserved. This section will answer those questions, where we will use the 2D-LFCs framework wherever possible to provide uniform satellite distributions.

The first section of this paper briefly describes the 2D-LFCs framework to provide a mathematical basis for the development of the 3D-LFCs in the next section. We then discuss other design considerations for 3D-LFCs and their effects on the various design parameters. Finally, we present a case study designing a Global Navigation Satellite System (GNSS) using 3D-LFCs and compare the performance of the resulting design to the Galileo GNSS constellation.

2 The 2-D Lattice Flower Constellations

The 2D-LFCs can be described by five integer parameters and three continuous parameters (Avendaño et al. 2010, 2013). The integer parameters can be broken into two sets, the first describing the phasing of the satellites and the second describing the orbital period (or semi-major axis). The first set is \(\{N_o,N_{so},N_c\}\) where \(N_o\) is the number of orbital planes, \(N_{so}\) is the number of satellites per orbit, and \(N_c\) is a phasing parameter. The second (optional) set is \(\{N_p, N_d\}\) which satisfies the compatibility equation

$$\begin{aligned} N_p \, T_p = N_d \, T_d \end{aligned}$$
(1)

where \(T_p\) is the orbital period and \(T_d\) is the period of the rotating reference frame (e.g., the sidereal period of Earth’s rotation). This definition enforces the repeating space-track requirement found in the original FCs, but is not required in the general 2D-LFC framework.

The phasing parameters define the RAAN (\(\varOmega \)) and initial mean anomaly (M) as

$$\begin{aligned} \left\{ \begin{array}{l} \varOmega _{ij} = \dfrac{2\pi }{N_o} \, (i - 1)\\ M_{ij} = \dfrac{2\pi }{N_{so}} \, (j - 1) - \dfrac{N_c \, \varOmega _{ij}}{N_{so}} \end{array} \right. \end{aligned}$$

These equations can be rewritten in matrix notation as

$$\begin{aligned} \left[ \begin{array}{ll} N_o &{} 0 \\ N_c &{} N_{so} \end{array}\right] \left\{ \begin{array}{l} \varOmega _{ij} \\ M_{ij} \end{array}\right\} = 2\pi \left\{ \begin{array}{l} i -1 \\ j - 1 \end{array}\right\} \end{aligned}$$
(2)

where \(i = 1,\ldots ,N_o, j = 1,\ldots ,N_{so}\), and \(N_c \in [1, N_o]\). Satellite \((i,j)\) is the j-th satellite on the i-th orbital plane.

As developed in the companion article (Avendaño et al. 2013), the condition for all satellites to have the same repeating ground track can be easily enforced in the 2D-LFC framework, requiring only that two coprime integers \(\mu \) and \(\lambda \) exist such that

$$\begin{aligned} N_d&= \lambda \, N_{so} \\ N_p&= \mu \, N_o + \lambda \, N_c \end{aligned}$$

and \((N_p, N_d)\) are coprime.

The remaining parameters required to define the constellation are continuous parameters that are the same for all orbits in the constellation: the inclination angle, the eccentricity, and the argument of periapsis.

Note that since the 2D-LFCs separate the satellite phasing from the orbit size, non-repeating space-tracks can be used without affecting the uniformity of the satellite distribution. For additional properties of the new lattice framework and its relationship to Walker constellations, see the companion article (Avendaño et al. 2013).

3 The 3-D Lattice Flower Constellations

Given the 2D-LFC mathematical framework, we now seek to develop a description of 3D-LFCs that yields global symmetry and even spacing even in the presence of elliptical orbits with perigee rotation.

3.1 Mathematical formulation

To define the 3D-LFCs, we use \(N_o\) to represent the number of orbital planes, \(N_\omega \) for the number of unique orbits (with different arguments of perigee) on each plane, and \(N^\prime _{so}\) for the number of satellites on each of those orbits. Thus, the total number of satellites is represented by \(N_s = N_o \, N_\omega \, N^\prime _{so}\).

We begin with the original 2D-LFCs equations, using phasing parameter \(N^1_c\), but allow the mean anomaly distribution to be affected by some unknown function of the argument of perigee.

$$\begin{aligned} N_o \, \varOmega _{ijk}&= 2\pi (i - 1) \nonumber \\ N^\prime _{so} \, M_{ijk} + N^1_c \, \varOmega _{ijk}&= 2\pi (j - 1) + h(\omega ) \end{aligned}$$
(3)

We assume here that h is a function of \(\omega \) only, and not dependent on the orbital plane, which helps ensure that we recover the original 2D-LFCs equations if satellites have the same argument of perigee.

Next, we address the distribution of the arguments of perigee. Again we use the LFC framework with phasing parameter \(N^3_c\), this time replacing mean anomaly with argument of perigee—thus treating each perigee as a “satellite” to provide a uniform distribution.

$$\begin{aligned} N_o \, \varOmega _{ijk}&= 2\pi (i - 1) \nonumber \\ N_\omega \, \omega _{ijk} + N^3_c \, \varOmega _{ijk}&= 2\pi (k - 1) \end{aligned}$$
(4)

Lastly, we can consider the multiple orbits within the same plane as a planar 2D-LFC with phasing parameter \(N^2_c\), thus treating \(\omega \) as if it were \(\varOmega \) and distributing M by the equations

$$\begin{aligned} N_\omega \, \omega _{ijk}&= 2\pi (k - 1) + f(\varOmega ) \nonumber \\ N^\prime _{so} \, M_{ijk} + N^2_c \, \omega _{ijk}&= 2\pi (j - 1) + g(\varOmega ) \end{aligned}$$
(5)

Again, we allow these equations to be affected by functions of RAAN, since for constant orbital plane, all satellites will still maintain a 2D-LFC within the plane.

Using the 2D-LFCs framework, we have addressed maintaining the satellites in LFCs when they have the same argument of perigee, phasing satellites within the plane uniformly, and distributing the arguments of perigee uniformly throughout the constellation. Comparing Eqs. (4) and (5), it is clear that \(f(\varOmega ) = -N^3_c \, \varOmega \). Subtracting Eqs. (3) and (5), one arrives at the equation

$$\begin{aligned} N^2_c \, \omega + h (\omega ) = N^1_c \, \varOmega + g(\varOmega ) \end{aligned}$$

Since this equation must hold for all values of \(\varOmega \) and \(\omega \), the only solution is that \(g(\varOmega ) = -N^1_c \, \varOmega \) and \(h(\omega ) =-N^2_c \, \omega \). To be mathematically rigorous, both g and h could also include an arbitrary added constant, but this constant is ignored because it does not affect the relative satellite spacing.

These equations can now be reformulated into matrix notation, similar to Eq. (2)

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0\\ N^3_c &{}\quad N_{\omega } &{}\quad 0 \\ N^1_c &{}\quad N^2_c &{}\quad N^\prime _{so} \end{array}\right] \left\{ \begin{array}{l} \varOmega _{ijk} \\ \omega _{ijk} \\ M_{ijk}\end{array}\right\} = 2\pi \left\{ \begin{array}{l} i - 1 \\ k - 1 \\ j - 1 \end{array}\right\} \end{aligned}$$
(6)

where \(i = 1, \ldots , N_o, j = 1, \ldots , N^\prime _{so}, k = 1, \ldots , N_\omega \), and \(N^1_c \in [1, N_o], N^2_c \in [1, N_\omega ]\), and \(N^3_c \in [1, N_o]\). Note that the limits on these parameters result from the repetitious nature of the constellation. Values outside of those ranges are perfectly valid, but they describe satellites (or configurations) equivalent to ones defined within the specified ranges, as in modular arithmetic.

3.2 Properties

The 3D-LFCs can be considered a generalization of the 2D-LFCs. Many of the properties of 2D-LFCs identified in Avendaño et al. (2010) can be applied to 3D-LFCs as well, as shown in this section.

First, we could generalize the 3D-LFC concept to include any matrix \(E \in \mathbb{Z }^{3\times 3}\) with \(\det (E) \ne 0\) in the form

$$\begin{aligned} E \left\{ \begin{array}{l} \varOmega _{ijk} \\ \omega _{ijk} \\ M_{ijk} \end{array}\right\} = 2\pi \left\{ \begin{array}{l} i - 1\\ k - 1\\ j - 1 \end{array}\right\} \end{aligned}$$

This matrix represents a 3-Dimensional torus, where the intersections of the three planes defined by the three rows of E define the locations of the satellites. Any matrix E with the above properties can be reduced by integer row operations to a unique lower triangular form presented in Eq. (6), known as the Hermite Normal Form (Knuth 1997) of E, which we call \(E_H\). Whereas 3D-LFCs can be represented by any \(3\times 3\) integer matrix, this is a non-minimal representation, so in practice the lower Hermite Normal Form, with six intuitively understood parameters \((N_o, N_\omega , N^\prime _{so}, N^1_c, N^2_c, N^3_c)\), is the best representation for design optimization work.

Still, if the general integer (lattice) matrix E is used, certain properties of the constellation can be easily computed:

  1. 1.

    The total number of satellites is \(N_s=|\det (E)|\).

  2. 2.

    The number of satellites per orbit is \(N^\prime _{so}=|\gcd (e_{13},e_{23},e_{33})|\), where \(\gcd \) is the greatest common denominator.

These can be easily shown by reducing E to its Hermite Normal Form, \(E_H\), and evaluating these same expressions.

When 3D-LFCs are used to describe circular orbit constellations, the argument of perigee becomes ill-defined and multiple 3D-LFCs describe the same satellite distribution, creating an equivalency problem. To find the 2D-LFC equivalent of a circular 3D-LFC, first the 3D-LFC equations can be rewritten as

$$\begin{aligned} \omega = \frac{2\pi k - N_c^3 \varOmega }{N_\omega } \end{aligned}$$
(7)

and

$$\begin{aligned} M = \frac{2\pi j - N_c^1\varOmega -N_c^2\omega }{N_{so}^\prime }. \end{aligned}$$
(8)

Substituting Eq. (7) into Eq. (8) yields

$$\begin{aligned} M = \frac{2\pi j N_\omega - N_c^1N_\omega \varOmega - 2\pi kN_c^2 + N_c^2N_c^3\varOmega }{N_{so}^\prime N_\omega } \end{aligned}$$
(9)

With zero eccentricity, \(M\) and \(\omega \) are no longer independent, so define \(\theta = M + \omega \). Unique values of \(\theta \) produce unique positions within the constellation. Using Eqs. (7) and (9) we find

$$\begin{aligned} N_{so}^\prime N_\omega \theta = 2\pi \left[ N_\omega j + (N_{so}^\prime - N_c^2) k\right] - \left[ N_c^3(N_{so}^\prime - N_c^2) + N_c^1N_\omega \right] \varOmega \end{aligned}$$
(10)

Using an integer identity, we can say

$$\begin{aligned} N_\omega j + (N_{so}^\prime - N_c^2)k = \gcd (N_\omega ,N_{so}^\prime -N_c^2)m \end{aligned}$$

where \(m\) is any integer. This allows us to rewrite Eq. (10)

$$\begin{aligned} \left[ \frac{N_\omega N_{so}^\prime }{\gcd (N_\omega ,N_{so}^\prime -N_c^2)}\right] \theta + \left[ \frac{N_c^1 N_\omega + N_c^3 (N_{so}^\prime - N_c^2)}{\gcd (N_\omega ,N_{so}^\prime -N_c^2)}\right] \varOmega = 2\pi m \end{aligned}$$

which can be simply rewritten into the original 2D-LFCs equation

$$\begin{aligned} N_{so}\theta + N_c\varOmega = 2\pi m \end{aligned}$$

As such, if the constellation is made of circular orbits (\(e=0\)) then the 3D-LFCs is equivalent to the 2D-LFCs (with \(e=0\)):

$$\begin{aligned} \left[ \begin{array}{ll} N_o &{}\quad 0 \\ N_c &{}\quad N_{so} \end{array}\right] \left\{ \begin{array}{l} \varOmega _{ij} \\ M_{ij} \end{array}\right\} = 2\pi \left\{ \begin{array}{l} i - 1\\ j - 1 \end{array}\right\} \end{aligned}$$

where

$$\begin{aligned} N_c = \left[ \frac{N_c^1 N_\omega + N_c^3 (N_{so}^\prime - N_c^2)}{\gcd (N_\omega ,N_{so}^\prime -N_c^2)}\right] \text{ mod }\,(N_o) \end{aligned}$$

and

$$\begin{aligned} N_{so} = \frac{N_\omega N_{so}^\prime }{\gcd (N_\omega ,N_{so}^\prime -N_c^2)} \end{aligned}$$

Note that, if \(\gcd (N_\omega ,N_{so}^\prime -N_c^2) \ne 1\) then the circular case of the 3D-LFCs degenerates as there are not \(N_s\) unique slots for satellites.

Since satellites must have the same argument of perigee to travel on the same repeating ground-track, the number of unique values of argument of perigee, \(N_{u\omega }\), for a given 3D-LFCs is of interest. To find this, first we look at the sub-matrix, \(E_s\) that governs the values of \(\omega \) when the 3D-LFC is written in lower Hermite Normal Form (the last row of \(E_H\), governing the values of mean anomaly, has no impact on the values of \(\omega \)):

$$\begin{aligned} E_s = \left[ \begin{array}{ll} N_o &{}\quad 0 \\ N_c^3 &{}\quad N_\omega \\ \end{array}\right] \end{aligned}$$

Matrix \(E_s\) can be rewritten into upper Hermite Normal Form using elementary row operations:

$$\begin{aligned} E_s^\prime = \left[ \begin{array}{ll} N_{o\omega } &{}\quad N_c^{\prime 3} \\ 0 &{}\quad N_{u\omega }\\ \end{array}\right] \end{aligned}$$

Clearly, \(N_{o\omega }\) is the greatest common denominator of the first column of \(E_s^\prime \). The elementary row operations do not affect this result, such that it is also equal to the greatest common denominator of the first column of \(E_s\). Therefore, \(N_{o\omega } = \gcd (N_o, N_c^3)\).

We can also define the number of unique orbits, \(N_{uo} = N_o N_\omega = \det (E_s)\). Again, the determinant is unchanged by elementary row operations, so \(\det (E_s^\prime ) = N_{o\omega }N_{u\omega } = N_{uo} = N_o N_\omega \). This yields

$$\begin{aligned} N_{u\omega } = \frac{N_o N_\omega }{N_{o\omega }} = N_\omega \left( \frac{N_o}{\gcd (N_o,N_c^3)}\right) \end{aligned}$$

For two satellites to be on the same relative trajectory, they must have the same argument of perigee. The symmetry of the constellation allows us to evaluate the number of satellites on a single relative trajectory, because that number will be the same on all relative trajectories. Considering just the first relative trajectory with all satellites having \(\omega = 0\) reveals the requirement

$$\begin{aligned} N_o \, \varOmega&= 2\pi \, (i - 1)\end{aligned}$$
(11)
$$\begin{aligned} N_c^3 \, \varOmega&= 2\pi \, (j - 1) \end{aligned}$$
(12)

which means that we can solve for the values of \(\varOmega \) that result in the same argument of perigee as

$$\begin{aligned} \varOmega = \frac{2\pi l}{\gcd (N_o,N_c^3)}, \quad \text{ where } \quad l\in {\mathbb{Z }}. \end{aligned}$$

Given that all satellites satisfying this condition have \(\omega =0\) allows us to write the following requirement for all satellites with the same repeating relative trajectory:

$$\begin{aligned} \left[ \begin{array}{ll} \gcd (N_o,N_c^3) &{}\quad 0 \\ N_c^1 &{}\quad N_{so}^\prime \\ N_p &{}\quad N_d\\ \end{array}\right] \left\{ \begin{array}{l} \varOmega \\ M\\ \end{array}\right\} = 2\pi \left\{ \begin{array}{l} l - 1\\ j - 1\\ n - 1\\ \end{array}\right\} , \quad \text{ where } \quad l,j,n \in {\mathbb{Z }} \end{aligned}$$

This matrix can be reduced using elementary row and column operations to the simple

$$\begin{aligned} \left[ \begin{array}{ll} \alpha \; &{}\quad 0 \\ 0 &{}\quad \; \beta \; \\ 0 &{}\quad 0\\ \end{array}\right] \left\{ \begin{array}{l} \varOmega \\ M\\ \end{array}\right\} = 2\pi \left\{ \begin{array}{l} l - 1\\ j - 1\\ n - 1\\ \end{array}\right\} , \quad \text{ where } \quad l,j,n \in {\mathbb{Z }} \end{aligned}$$

which has \(\alpha \beta \) unique solutions. The number of unique solutions of this matrix can be given by the greatest common denominator of the determinants of the \(2\times 2\) sub-matrices. Since elementary row and column operations have no effect on the number of solutions or the \(\gcd \) of the sub-matrix determinants, the number of solutions can be defined as

$$\begin{aligned} N_{sr} = \gcd \left( \left| \begin{array}{ll} \gcd (N_o, N_c^3) &{} 0 \\ N_c^1 &{} N_{so}^\prime \\ \end{array} \right| , \left| \begin{array}{ll} \gcd (N_o, N_c^3) &{} 0 \\ N_p &{} N_d\\ \end{array} \right| , \left| \begin{array}{ll} N_c^1 &{} N_{so}^\prime \\ N_p &{} N_d\\ \end{array} \right| \right) \end{aligned}$$
(13)

The number of relative trajectories is clearly \(N_{rt}=N_s/N_{sr}\). Substituting \(N_{sr} = N_{so}^\prime \gcd (N_o,N_c^3)/m\), where \(m\in {\mathbb{Z }}\) allows us to rewrite this equation in terms of the number of unique values of argument of perigee as \(N_{rt}=mN_{u\omega }\).

Given the desirable properties of having multiple satellites on the same repeating ground-track, a method for achieving the minimum number of unique ground-tracks (\(N_{rt} = N_{u\omega }\)) is desired. This can be accomplished by letting \((N_p, N_d)\) be two coprime integers satisfying the following formula:

$$\begin{aligned} N_p&= \lambda \gcd (N_o,N_c^3) + \mu N_c^1 \end{aligned}$$
(14)
$$\begin{aligned} N_d&= \mu N_{so}^\prime \end{aligned}$$
(15)

where \(\mu ,\lambda \in \mathbb{Z }\) produces exactly \(N_{u\omega }\) unique relative trajectories. Substituting these equations for \(N_p\) and \(N_d\) into Eq. (13) yields \(N_{rt}=N_{u\omega }\).

3.3 Generalizations

Not only do 3D-LFCs share many properties with 2D-LFCs, but 2D-LFCs are actually a subset of 3D-LFCs. A 3D-LFC with \(N_\omega =1, N^2_c=0\), and \(N^3_c=0\) is equivalent to a 2D-LFC. Since the 2D-LFCs framework also encompasses all Walker constellations as proved in Avendaño et al. (2013), the 3D-LFCs include those as well. The 2D-LFCs are represented in the 3D-LFCs framework (using 2D-LFCs variable definitions) by the matrix

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad 1 &{}\quad 0 \\ N_c &{}\quad 0 &{}\quad N_{so}\\ \end{array}\right] \end{aligned}$$

Walker constellations are similarly represented (using Walker variable definitions):

$$\begin{aligned} \left[ \begin{array}{lll} P &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad 1 &{}\quad 0 \\ -F \text{ mod }\,(P) &{}\quad 0 &{}\quad S\\ \end{array}\right] \end{aligned}$$

Dufour (2003, 2004) introduced elliptical Walker constellations with a single orbit per plane, where the arguments of perigee were distributed according to the equation

$$\begin{aligned} \omega _{ij} = \omega _1 + \dfrac{2\pi G}{N_s} \, (i - 1) \end{aligned}$$

where \(G \in [1, N_o]\) is a phasing parameter. If the denominator was \(N_o\) instead of \(N_s\), we could claim that 3D-LFCs also encompassed all of Dufour’s elliptical Walker constellations by setting \(N^3_c = 0, N_\omega =1\), and \(N^2_c=-G \text{ mod }\,(N_o)\). In fact, Dufour’s own limits on the values of \(G\) indicate that this is the correct denominator. Additionally, using \(N_s\) as the denominator leads to non-uniform constellations, where \(\omega \) is not uniformly distributed between orbital planes. Whereas the \(\varDelta \omega \) between subsequent orbital planes is typically \(2\pi G/N_s\), the \(\varDelta \omega \) between the first and last planes is \(2\pi G/N_s - 2\pi G/N_{so}\). In the case where \(N_s = N_o\) or \(G = 1\), the two different denominators produce the same constellation. Of the more than 50 constellations presented in by Dufour (2003, 2004), only one does not satisfy either of those conditions. We thus conclude that 3D-LFCs can legitimately be considered a generalization of the elliptical Walker constellations proposed by Dufour.

Also of interest are the elliptical constellations for global coverage developed by Draim (1986, 1987, 1991), Draim et al. (2012). Dufour notes that all of these constellations can be described using the elliptical Walker constellation framework, and since all of Draim’s constellations in Draim (1986, 1987, 1991), Draim et al. (2012) utilize \(N_s = N_o\), they are unquestionably also a subset of 3D-LFCs. The elliptical Walker constellations are represented in the 3D-LFCs framework by:

$$\begin{aligned} \left[ \begin{array}{lll} P &{}\quad 0 &{}\quad 0 \\ -G \text{ mod }\,(P) &{}\quad 1 &{}\quad 0 \\ -F \text{ mod }\,(P) &{}\quad 0 &{}\quad S\\ \end{array}\right] \end{aligned}$$

The fact that 3D-LFCs can be used to represent such a broad range of existing constellation design methodologies makes it a powerful framework for constellation designers. By developing tools and running analyses based on the 3D-LFC framework, these engineers can explore all of these options simultaneously while also expanding into the elliptical design space offered only by 3D-LFCs.

4 Constellation design considerations

Fully specifying a 3D-LFC requires additional parameters beyond the six integer parameters described above. The semi-major axis (a), eccentricity (e), and inclination (i) that are common to all satellites must be selected. Additionally, the RAAN (\(\varOmega _1\)), argument of perigee (\(\omega _1\)), and mean anomaly (\(M_1\)) of the first satellite can also be selected arbitrarily without affecting the relative phasing within the constellation. We can rewrite Eq. (6) as

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0\\ N^3_c &{}\quad N_{\omega } &{}\quad 0 \\ N^1_c &{}\quad N^2_c &{}\quad N^\prime _{so} \end{array}\right] \left\{ \begin{array}{l} \varOmega _{ijk} - \varOmega _1 \\ \omega _{ijk} - \omega _1\\ M_{ijk} - M_1 \end{array}\right\} = 2\pi \left\{ \begin{array}{l} i - 1\\ k - 1\\ j - 1\\ \end{array}\right\} \end{aligned}$$
(16)

Thus, a 3D-LFC requires six integer parameters and six continuous parameters. Essentially, the six continuous parameters define the orbit elements of the first satellite, and the six integer parameters phase all other satellites relative to that one.

We will refer to the first satellite as the reference satellite. The orbit parameters of the reference satellite provide the basis for the orbit parameters of all remaining satellites in the constellation. In global coverage contexts, the RAAN, argument of perigee, and mean anomaly of the reference satellite are irrelevant, whereas these can play a significant role in regional coverage problems as they determine the ground-tracks followed by every satellite.

These six continuous parameters are required in every other design method, including the most common Walker and streets-of-coverage constellations, though most of those specify eccentricity to be zero, thus eliminating eccentricity and argument of perigee from the design space. The analysis of these orbit elements is based on assuming Keplerian orbits with first order \(J_2\) effects. No additional disturbances are considered as they would increase computational complexity without providing additional insight in this initial constellation design optimization. Each of the continuous parameters is subject to particular considerations as described in the following sections.

4.1 Semi-major axis and eccentricity

The orbit semi-major axis and eccentricity are common among all satellites in the constellation, and are typically bounded by some minimum and maximum altitudes. Typically these bounds are a result of sensor or antennae limitations. Requiring hardware that can operate at varying altitudes is a significant limitation on the use of elliptic orbits.

The semi-major axis can also be chosen to provide repeating ground-tracks as in the Walker or LFCs theories. Satellites with the same argument of perigee can also be placed on the same repeating ground-track through judicious selection of the parameters \((N_p,N_d)\) as discussed in the previous section.

4.2 Inclination

The inclination of the orbits has significant impact on the coverage provided by a 3D-LFC. In addition to directly affecting the latitudes covered by a given constellation, the inclination plays a key role in the minimum approach distance experienced by satellites within the constellation, and, thus, the uniformity of the coverage. Even in circular orbit constellations, certain inclinations result in satellites colliding, whereas others permit near perfect phasing as a satellite from one plane passes directly between two satellites from another plane.

As developed in Speckman et al. (1990), two satellites in circular orbits with the same altitude have a closest approach distance, \(\rho _{\mathrm{min}}\), that can be analytically computed from the equations

$$\begin{aligned} \left\{ \begin{array}{lll} \varDelta F &{}=&{} \varDelta M - 2\arctan \left[ -\tan (\varDelta \varOmega / 2)\cos {i}\right] \\ \cos \beta &{}=&{} \cos ^2 i + \sin ^2 i\cos \varDelta \varOmega \\ \rho _{\mathrm{min}} &{}=&{} 2 \left| \sqrt{\frac{1-\cos {\beta }}{2}}\sin (\varDelta F / 2)\right| \\ \end{array}\right. \end{aligned}$$
(17)

where \(\varDelta M\) and \(\varDelta \varOmega \) are the difference in orbit elements of the two satellites and \(i\) is the inclination angle common to both. Note that \(\rho _{\mathrm{min}}\) must be scaled by the orbit radius to find the physical approach distance. The minimum distance encountered within a constellation of circular orbits can be computed by calculating this approach distance for all pairs of satellites. We can scale the minimum approach distance such that zero corresponds to collision and one corresponds to half the distance between two consecutive satellites in the same orbit (the maximum possible value of \(\rho _{\mathrm{min}}\) within a constellation). Using this scaling, the results for the 27/3/1 Walker constellation are plotted in Fig. 2 as a function of inclination angle. Note the peak near an inclination of 56\(^\circ \), the chosen inclination for the Galileo GNSS system (Piriz et al. 2005).

Fig. 2
figure 2

Minimum encounter distance in the 27/3/1 Walker constellation as a function of inclination

This indicates that even though inclination is technically a continuous parameter, there exist discrete values of inclination that maintain high levels of uniformity in the distribution of satellites. Equation (17) only applies to circular orbits, but similar computations can be made for constellations of elliptic orbits and may prove insightful in the design process. We can also use Eq. (17) to address the approach distances of apogees and perigees—an issue raised in the previous section. As in the development of 3D-LFCs, we can consider the arguments of perigee to be their own 2D-LFC, all of which rotate at the same rate, just like a constellation of circular orbits. Thus, this method can be used to choose an inclination to achieve successful phasing of the apogees and perigees.

4.3 Selecting \(\varOmega _1, \omega _1\), and \(M_1\)

The values of \((\varOmega _1,\omega _1,M_1)\) provide the three angular elements of the reference satellite \((i,j,k) = (1,1,1)\). Though each of them could be drawn from \([0,2\pi )\), each can be further bounded by constellation considerations once the 6 integer parameters have been chosen. For local or regional coverage constellations, bounding these continuous parameters reduces the size of the design space. For global coverage constellations, bounding the range of mean anomaly and argument of perigee reduce the range over which the constellation must be propagated.

For instance, it is readily apparent that each of these parameters can be bounded by the following ranges without any loss of generality, what we call the naive bounds:

$$\begin{aligned} \varOmega _1 \in \left[ 0,\frac{2\pi }{N_o}\right) , \quad \omega _1 \in \left[ 0,\frac{2\pi }{N_\omega }\right) , \quad \text{ and } \quad M_1 \in \left[ 0, \frac{2\pi }{N^\prime _{so}}\right) . \end{aligned}$$

For a regional coverage constellation, for which the values of \((\varOmega _1,\omega _1,M_1)\) impact the results, the selection of any of these upper bounds produces an identical constellation to having that parameter equal zero due to the symmetry of the constellation. For global coverage constellations, the mean anomaly and argument of perigee of the reference satellite need to be propagated only over these ranges before the constellation pattern repeats itself. We seek to minimize each of these ranges to minimize either the design space or the propagation time. Note that limiting these ranges simply eliminates the duplication of designs or the repetition of evaluating the same constellation configuration (assuming Keplerian orbits) and do not entail any approximations or loss of generality.

To find the optimal bounds, start by assuming that the set \(\{\varOmega ^\star , \omega ^\star , M^\star \}\) is the set of satellite locations given \((\varOmega _1,\omega _1,M_1) = (0,0,0)\). To generate an identical set for particular values of \((\varOmega _1,\omega _1,M_1)\) (a repetition interval), Eq. (16) must still be satisfied for all values of \((i,j,k)\):

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0\\ N^3_c &{}\quad N_{\omega } &{}\quad 0 \\ N^1_c &{}\quad N^2_c &{}\quad N^\prime _{so} \end{array}\right] \left\{ \begin{array}{l} \varOmega _{ijk}^\star - \varOmega _1 \\ \omega _{ijk}^\star - \omega _1\\ M_{ijk}^\star - M_1 \end{array}\right\} = 2\pi \left\{ \begin{array}{l} i - 1\\ k - 1\\ j - 1\\ \end{array}\right\} \end{aligned}$$

This condition can be rewritten as three separate equations involving \((\varOmega _1,\omega _1,M_1)\):

$$\begin{aligned}&\displaystyle N_o \varOmega _1= 2\pi (i-1)&\end{aligned}$$
(18)
$$\begin{aligned}&\displaystyle N_c^3 \varOmega _1 + N_\omega \omega _1 = 2\pi (k-1)&\end{aligned}$$
(19)
$$\begin{aligned}&\displaystyle N_c^1 \varOmega _1 + N_c^2 \omega _1 + N_{so}^\prime M_1 = 2\pi (j-1)&\end{aligned}$$
(20)

The task is to find the minimum values of \((\varOmega _1,\omega _1,M_1)\) that satisfy the above equations.

Solving Eq. (18) yields:

$$\begin{aligned} \varOmega _1 = \frac{2\pi }{N_o} \, (i - 1) \end{aligned}$$

The smallest value of \(\varOmega _1\) occurs when \(i=1\), thus establishing the upper limit on \(\varOmega _1\). Solving Eq. (18) for \(\varOmega _1\) and substituting that into Eq. (19) results in:

$$\begin{aligned} \omega _1 = \frac{2\pi }{N_o N_\omega }\left[ N_o (k-1) - N_c^3 (i-1)\right] = \frac{2\pi }{N_o N_\omega }\gcd (N_o, N_c^3) m \end{aligned}$$

Again, \(m = 1\) represents the smallest value of \(\omega _1\) before the pattern repeats. Similarly, solving Eqs. (18) and  (19) for \(\varOmega _1\) and \(\omega _1\), respectively, and substituting them into Eq. (20) yields the result

$$\begin{aligned} M_1&= \frac{2\pi }{N_s}\left[ N_oN_\omega (j-1) - N_c^2N_o (k-1) - \left( N_c^1N_\omega -N_c^2N_c^3\right) \right] \\&= \frac{2\pi }{N_s}\gcd (N_o N_\omega , N_c^2 N_o, N_c^1 N_\omega - N_c^2 N_c^3)n \end{aligned}$$

In summary, the optimal bounds on these parameters can be given by

$$\begin{aligned}&\displaystyle \varOmega _0 \in \left[ 0, \frac{2\pi }{N_o}\right)&\\&\displaystyle \omega _0 \in \left[ 0, \frac{2\pi }{N_oN_\omega }\gcd \left( N_o,N_c^3\right) \right)&\\&\displaystyle M_0 \in \left[ 0, \frac{2\pi }{N_s}\gcd \left( N_o N_\omega , N_c^2 N_o, N_\omega N_c^1 - N_c^2 N_c^3\right) \right)&\end{aligned}$$

The naive bounds can easily be shown to be the worst case bounds allowed by the optimal bounds. First, the bounds on \(\varOmega _1\) are identical. Second, since the value of \(N_c^3\) is always less than the value of \(N_o\), the maximum value of \(\gcd (N_o,N_c^3)\) is \(N_o\), and the maximum value of the optimal bound is \(2\pi /N_\omega \). Finally, the gcd in the bounds on \(M_1\) has a maximum value of \(N_oN_\omega \) since neither of those parameters is allowed to be zero. Therefore, \(M_1\) is bounded by \(2\pi /N_{so}^\prime \) in the worst case.

All 3D-LFCs can be described by values within these ranges due to their uniform, symmetric nature. For general 3D-LFCs with a global coverage mission, the design parameters can simply be taken as zero and the bounds used to limit propagation ranges and reduce computation times. The optimal bounds can reduce the computation time by a factor of \(N_o\) for \(\omega \) and a factor of \(N_oN_\omega \) for \(M\) for a total possible reduction factor of \(N_o^2N_\omega \). In the global navigation example of the next section, with 27 satellites in 3 orbital planes, the optimal bounds reduce propagation time by a factor of \(\approx 7.5\) over the naive bounds when averaged over all 117 3D-LFCs tested. Some of those 117 3D-LFCs see a reduction in propagation time of a factor of 81 (\(N_o=3, N_\omega =9\))!

To complete the picture with respect to other design methods, Walker’s phasing parameter found in Walker (1977) is equivalent to our \(M_1\). Dufour includes an \(\omega _1\) in his elliptical Walker constellations that is a multiple of another integer parameter he introduces, but the range of \(\omega _1\) is limited to \([-\pi /2, \pi /2]\) rather than the full allowable range of \([-\pi , \pi ]\) (Dufour 2003, 2004). The continuous parameter used here clearly includes the discrete values of Dufour (2003, 2004).

5 Global navigation satellite system

To examine the effectiveness of the 3D-LFCs framework for designing a global coverage constellation, we use the example of global navigation. As one of the few applications for which a large constellation has been developed and fielded (multiple times), there exists a large body of literature concerning the designs and comparing various constellation design methodologies. Flower Constellations were first studied for use in GNSS by Park et al. (2004), who found improvements over the Galileo GNSS constellation by using a combination of two Harmonic Flower Constellations (HFCs) found by trial and error. Tonetti (2009) ran a Genetic Algorithm (GA) to improve upon Park’s results. Both of these FCs were designed for 30 satellites and utilized large numbers of orbital planes (15 and 30 respectively). Alternatively, Bruccoleri (2007) found a HFC with 24 satellites that showed improved performance over the GPS constellation. All three studies considered only circular orbits rather than be restricted to a critically inclined FC with elliptic orbits. In this study, in order to validate the proposed design methodology, we consider a 27 satellite, 3 orbital plane 3D-LFCs for comparison to the Galileo constellation as it is currently designed. We have not considered the combination of two or more 3D-LFCs into the same constellation, as was done by Park et al. (2004), nor utilizing a large number of orbital planes, but either may yield additional improved results.

5.1 Cost function

As a cost function to drive these design studies, we consider the Geometric Dilution of Precision (GDOP), a measure of the accuracy of a GNSS solution. The lower the value of GDOP, the more accurate is the GNSS solution. GDOP is dependent entirely on the geometry of the satellites within view of a specific ground site and relies on the visibility matrix, given by

$$\begin{aligned} A = \left[ \begin{array}{llll} {\hat{{\varvec{r}}}}_1 &{}\quad {\hat{{\varvec{r}}}}_2 &{}\quad \ldots &{}\quad {\hat{{\varvec{r}}}}_n\\ 1 &{}\quad 1 &{}\quad \ldots &{}\quad 1\\ \end{array}\right] ^\mathrm{T} \end{aligned}$$

where \({\hat{{{\varvec{r}}}}}_i\) is the unit vector from ground site to the \(i\)-th satellite, and n is the number of visible satellites. We defined a minimum elevation angle of \(10^\circ \) to determine satellite visibility in this simulation. We define the matrix \(H = A^\mathrm{T} A\). GDOP can then be calculated

$$\begin{aligned} \text{ GDOP } = \sqrt{\text{ tr }\left( H^{-1}\right) } \end{aligned}$$

This compact equation is simple, but requires a matrix inverse for every point (in time and space) that needs to be evaluated, so here we derive a new equation with faster computation. Since the trace of a matrix is the sum of its eigenvalues, and the eigenvalues of a matrix inverse are the inverses of the original matrix eigenvalues, we can rewrite the computation of GDOP as

$$\begin{aligned} \text{ GDOP } = \sqrt{\sum _i\frac{1}{\lambda _i}} \end{aligned}$$

where \(\lambda _i\) are the eigenvalues of H. Note that \(\sum _i\lambda _i=2n\). This alternate form of GDOP calculation reduced computation time in MATLAB by more than a factor of two.

To evaluate the accuracy of a given GNSS constellation, 1,000 points were distributed uniformly around a spherical Earth using an iterative electrostatic repulsion method (also known as the Thomson problem). The number of points was selected based on preliminary studies that determined that adding more points did not change the calculated value of the cost function, whereas fewer points produced significant quantization noise in the estimate of mean GDOP for the constellation. A spherical Earth was used to simplify the calculations, and all comparisons between the 3D-LFC and the Galileo constellation are based on calculations using this model.

The constellation was propagated assuming Keplerian motion using an initial argument of perigee of zero with \(5^\circ \) steps in mean anomaly, and GDOP was calculated for all ground sites at each of those times. The argument of perigee was then rotated in \(5^\circ \) steps, repeating the mean anomaly propagation at each value of argument of perigee. In reality, the argument of perigee is rotating continuously as the satellites orbit, but the time constants of each of these motions is such that the satellite completes tens of orbits while the argument of perigee has only rotated a few degrees. As such, the method used here to propagate the mean anomaly while the argument of perigee is held constant provides a useful approximation of the behavior of the constellation while minimizing computational overhead. The values of GDOP from all of these evaluations were averaged, and we sought to minimize this mean GDOP value.

5.2 Design study: 27 satellites

In this study, we compare performance to the Galileo constellation, designed as a 27/3/1 Walker constellation at \(56^\circ \) inclination and a semi-major axis of 29,600   km (Piriz et al. 2005; Mozo-Garcia et al. 2001). Initial design studies based on a variety of performance and operational considerations led to this particular selection of the number of satellites and number of orbital planes, so those were held constant in this design study. Once those numbers are fixed, the Walker constellation framework allows for just two design variables: the phasing parameter F and the inclination angle. The phasing parameter is restricted to just 3 possible values. In contrast, the new 3D-LFCs framework allows for 117 unique combinations of the parameters {\(N_\omega , N_{so}^\prime , N_c^1, N_c^2, N_c^3\)} and permits eccentricity to vary in addition to the inclination angle. Additionally, elliptic orbits are cheaper to launch into than circular orbits of the same semi-major axis, so holding launch cost constant allows 3D-LFCs with higher altitudes. Thus, the search space is significantly expanded, yet still contains the original Galileo constellation design.

A number of optimization strategies are available for designing a constellation using 3D-LFC methods, including (but not limited to) localized steepest-descent methods or globalized GAs. To demonstrate the computational efficiency of the 3D-LFC approach, the most computationally expensive method, a brute force grid search, was used to perform this study of GNSS constellations on a desktop computer. The search was broken into two stages, a coarse grid search to reduce the design space, followed by a finer grid search to refine the solution. Note that the optimization methods used here, including the discretization of the continuous parameters, are not unique to 3D-LFCs and are not particularly recommended for future studies over other optimization strategies.

The coarse grid search consisted of evaluating all 117 3D-LFCs over four values of eccentricity and eleven values of inclination:

$$\begin{aligned} e \in \left\{ 0.1, \; 0.2, \; 0.3, \; 0.4\right\} , \qquad i \in \left\{ 45^\circ , \; 47^\circ , \; \ldots , \; 65^\circ \right\} \end{aligned}$$

Circular orbits were not considered because they all collapse to 2D-LFCs as shown previously. The inclination range was chosen to place the Galileo optimal inclination of \(56^\circ \) in the middle. The semi-major axis was held fixed at 29,655   km, corresponding to a repetition time of 17 orbits in 10   days. A satellite was considered in view if it was at least \(10^\circ \) above the horizon (grazing angle).

The constellations were evaluated for both mean GDOP and maximum GDOP encountered throughout the propagation. To reduce the design space, only solutions with a maximum GDOP below 6 were accepted, corresponding to the original requirements for the GPS constellation (Parkinson and Spilker 1996a, b). There were nine 3D-LFCs out of the original 117 that satisfied this requirement at a variety of inclinations and eccentricities, all of the form

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0 \\ N_c^3 &{}\quad N_\omega &{}\quad 0 \\ N_c^1 &{}\quad N_c^2 &{}\quad N_{so}^\prime \\ \end{array}\right] = \left[ \begin{array}{lll} 3 &{}\quad 0 &{}\quad 0 \\ N_c^3 &{}\quad 9 &{}\quad 0 \\ N_c^1 &{}\quad 0 &{}\quad 1 \end{array}\right] \end{aligned}$$

All of the minima for mean GDOP occurred in the inclination range \(i\in [53^\circ ,59^\circ ]\) over the full range of eccentricity.

This initial analysis was completed at a fixed altitude, but one advantage of elliptical orbits is their ability to launch into larger orbits for the same launch cost. The GIOVE-A and GIOVE-B satellites, launched as test vehicles for Galileo, launched into 190 km altitude circular parking orbits at an inclination of \(51.8^\circ \) (Flight ST 21 Launch Kit (GIOVE-B) 2008). They were then boosted into their final orbit using a simple two-burn maneuver. Using the limiting case of a \(60^\circ \) final inclination, a minimum eccentricity required to launch into an orbit of a given semi-major axis with the same two-burn maneuver cost as Galileo can be calculated.

Following the design guidelines laid out by the Galileo constellation design engineers, we seek a constellation with a repeating ground-track with repetition times between 5 and 10   days (Mozo-Garcia et al. 2001). Shorter repetition times lead to the build up of perturbations as the satellites pass over the same gravitational disturbances repeatedly, whereas longer repetition times pose operational challenges (Mozo-Garcia et al. 2001). Given these limitations and the desire to keep the apogee below GEO to eliminate collision possibilities, we selected nine values of semi-major axis. Table 1 shows the different values of semi-major axis, minimum eccentricity (for the same launch cost), and maximum eccentricity (for apogee below GEO). Only values of semi-major axis larger than the planned Galileo system were considered because Mozo-Garcia et al. (2001) shows that performance improves as altitude increases (though with diminishing returns, and they considered only circular orbits).

Table 1 Values of semi-major axis used for GNSS optimization

For the second stage of the design study, another brute force grid search was completed with inclination selected from \(i \in \{52^\circ , \, 53^\circ , \, \ldots , \, 60^\circ \}\), semi-major axis and \(e = e_{\mathrm{min}}\) selected from Table 1, and the 3D-LFC parameters selected from the 9 3D-LFCs down-selected in the first stage.

After selecting the optimal inclination angle for each 3D-LFC at each altitude (based on mean GDOP), one 3D-LFC outperformed all others at all altitudes on the mean GDOP metric:

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0 \\ N_c^3 &{}\quad N_\omega &{}\quad 0 \\ N_c^1 &{}\quad N_c^2 &{}\quad N_{so}^\prime \end{array}\right] = \left[ \begin{array}{lll} 3 &{}\quad 0 &{}\quad 0 \\ 2 &{}\quad 9 &{}\quad 0 \\ 0 &{}\quad 0 &{}\quad 1 \end{array}\right] \end{aligned}$$

As expected, the best performance occurred at the maximum altitude with a = 34,161 km and \(e=0.177\). The optimal inclination was the same as that of Galileo: \(56^\circ \). The mean GDOP of Galileo was calculated to be 2.32, whereas the mean GDOP of this 3D-LFC designed constellation is 2.24—an improvement of 3.5 %. Given an inclination of only \(56^\circ \) (as opposed to \(60^\circ \)), the minimum eccentricity to achieve the same launch cost to this much larger orbit is 0.150. The mean GDOP varies only slightly (by 0.005) over the allowable eccentricity range, so eccentricity can be chosen based on other considerations. For instance, small eccentricity is attractive from an operational perspective, whereas larger eccentricity increases the allowable on-orbit satellite dry mass.

This 3D-LFC exhibits an interesting property: the satellites share the same geometry of the Galileo constellation at all times, they simply vary in altitude over time. The geometry is not an exact match, as the rotation of the argument of perigee perturbs it somewhat, but the two constellations bear great resemblance to one another. This “breathing” behavior, where the 3D-LFC mimics a 2D-LFC but with varying altitude, will occur for any 3D-LFC of the form

$$\begin{aligned} \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0 \\ N_c^3 &{}\quad N_\omega &{}\quad 0 \\ N_c^1 &{}\quad N_c^2 &{}\quad N_{so}^\prime \\ \end{array}\right] = \left[ \begin{array}{lll} N_o &{}\quad 0 &{}\quad 0 \\ N_c &{}\quad N_{so} &{}\quad 0 \\ 0 &{}\quad 0 &{}\quad 1\\ \end{array}\right] \end{aligned}$$

where \(N_o, N_{so}\), and \(N_c\) are the parameters of the associated 2D-LFCs.

The original designers of Galileo chose a design point near the knee of the curve where increasing number of satellites or altitude met with diminishing returns and optimized the design using similar criterion and analysis to that shown here (albeit with higher fidelity) (Piriz et al. 2005). Under such circumstances, merely matching the performance of Galileo would demonstrate the efficacy of the 3D-LFC approach. Successfully finding a solution that improves upon the positioning performance of Galileo without changing the number of satellites or the number of orbital planes, and while reducing the launch costs, demonstrates the power of incorporating elliptical orbits into the constellation designer’s toolbox in the form of 3D-LFCs.

6 Conclusions

We present here a new framework for constellation design, the 3D-LFCs. 3D-LFCs are defined by six integer parameters and the six orbit elements of a reference satellite. Like the 2D-LFCs, 3D-LFCs have a rigorous mathematical basis that enables easy computation of various properties of the constellation.

Rather than avoid or ignore the effects of \(J_2\), 3D-LFCs utilize those effects to produce uniform constellations of elliptic orbits. The 3D-LFCs include as a subset, the 2D-LFCs, Walker constellations, elliptical Walker constellations, and Draim’s uniform, elliptical, global coverage constellations. As a generalization of all of these methodologies, 3D-LFCs can serve as a single tool for constellation designers seeking to explore a broad design space, rather than having to compare each method independently. This new framework also enables the use of non-critically inclined elliptic orbits for global coverage.

The 3D-LFC framework was used to optimize a constellation for global navigation using the same parameters as the Galileo constellation. The 3D-LFC provided a 3.5 % improvement in positioning accuracy over Galileo with lower launch costs. The results demonstrate that elliptical constellations can indeed provide improved performance.