# Could the orbit of a satellite place it on the z-axis of the ECI coordinate frame (x=y=0)?

It is mostly a hypothetical question; I assume the answer is no, but I am looking for any data to contradict my claim that there are none or at most only one satellite at a time which could ever remain at (0, 0, specific height) in the ECI coordinate system. I can also think of no reason for anyone to every place a satellite in that orbit unless stars near the first point of Aries were of particular interest.

• Earth-centered inertial means it's a frame always centered on the Earth but not rotating with the Earth's 23h 56m rotation, right? If so, then to be at x=y=0 means it does not orbit the Earth, have I got that right? If so, then there is nothing to keep it there against the Earth's and Sun's gravity and depending upon the distance will begin some strange wandering trajectory and possibly enter Earth's atmosphere. Am I missing something?
– uhoh
Jun 25, 2020 at 21:07
• I'm wondering if the questioner is asking about a satellite positioned directly over the pole at some altitude. But it's not clear to me either. Jun 25, 2020 at 21:42
• I suspect the questioner is asking about a satellite that remains stationary over a pole (which of course is not possible) as opposed to an orbiting satellite that for an instant passes directly over a pole (which of course is possible). Jun 25, 2020 at 22:19
• OK @david-hammen I realize my initial question was not what I meant to ask. Nevertheless, someone did answer it. I was instead imagining an orbit where a satellite is continually in the line from Earth's center to the first point of Aries. Jun 26, 2020 at 14:43
• What I should have asked was, is it possible to position a satellite in a stable orbit at coordinates in the form (x, 0, z)? Nevertheless, I failed to ask it, and yet in the process I gained knowledge from the answers given to what I did ask. Thanks to @ChrisR for the answer below Jun 26, 2020 at 14:48

In the Earth Centered Inertial frame (ECI, often called EME2000), a spacecraft could indeed pass through the Z-axis (formed from X=0 and Y=0). However, as with all orbital dynamics, it would not remain in that position unless there was active thrusting.

It is possible for a spacecraft to stay in close proximity of the Earth's pole (north or south) with nearly continuous thrusting. These are called "pole sitter" trajectories, and are usually achieved using a solar sail: http://www.esa.int/ESA_Multimedia/Images/2016/02/Polar-sitting_orbit . It is also possible to reach that with other mechanism such as electric propulsion, but fuel requirements would greatly limit the duration of the mission.

As outlined in the ESA link and other papers on pole sitters, such an orbit provides a constant view of one of the Earth's hemispheres. This is incredibly useful for immediate analysis of ground images.

## Example

In this example, I'm using version 0.0.22 of nyx to propagate an orbit initialized in the state x=0, y=0, z=10,000 (km) and some initial velocity similar to what a LEO object would have.

### Result

The initial and final states, in Keplerian orbital elements, are respectively:

Initial:
sma = 14270.303080 km   ecc = 0.299244       inc = 90.000000 deg
raan = 135.000000 deg   aop = 90.000000 deg  ta = 0.000000 deg

Final:
sma = 14290.081381 km   ecc = 0.300111       inc = 89.990899 deg
raan = 135.002325 deg   aop = 88.754477 deg  ta = 250.290371 deg


### Configuration file

sequence = ["prop"]

[state.init_state]
x = 0.0
y = 0.0
z = 10000.0
vx = 5.088611
vy = -5.088611
vz = 0.0
frame = "EME2000"
epoch = "2020-01-01T00:00:00.00"
unit_position = "km"
unit_velocity = "km/s"

[orbital_dynamics.orbital_dyn]
integration_frame = "EME2000"
initial_state = "init_state"
point_masses = ["Sun", "Earth", "Jupiter", "Luna"]
accel_models = ["my_models"]

[spacecraft.sc1]
dry_mass = 100.0
fuel_mass = 20.0
orbital_dynamics = "orbital_dyn"

[propagator.prop]
dynamics = "sc1"
stop_cond = "3.5 days"
output = "my_csv"

[accel_models.my_models.harmonics.jgm3_70x70]
frame = "EME2000"
degree = 70
order = 70
file = "data/JGM3.cof.gz"

[output.my_csv]
filename = "./data/quick-run.csv"
headers = ["epoch:GregorianUtc", "x", "y", "z", "vx", "vy", "vz"]


### Execution

\$ cargo run --release -- data/quick.toml
Finished release [optimized] target(s) in 0.16s
Running target/release/nyx data/quick.toml
INFO  nyx > Loaded scenario data/quick.toml
INFO  nyx_space::celestia::cosm > Loaded 14 ephemerides in 0 seconds.
INFO  nyx_space::celestia::cosm > Loaded frame iau venus
INFO  nyx_space::celestia::cosm > Loaded frame iau earth
INFO  nyx_space::celestia::cosm > Loaded frame iau jupiter
INFO  nyx_space::celestia::cosm > Loaded frame iau saturn
INFO  nyx_space::celestia::cosm > Loaded frame iau moon
INFO  nyx_space::celestia::cosm > Loaded frame iau mars
INFO  nyx_space::celestia::cosm > Loaded frame iau sun
INFO  nyx_space::celestia::cosm > Loaded frame iau uranus
INFO  nyx_space::celestia::cosm > Loaded frame iau neptune
INFO  nyx_space::io::gravity    > data/JGM3.cof.gz loaded with (degree, order) = (70, 70)
INFO  nyx                       > Executing sequence prop
INFO  nyx_space::md::ui         > Saving output to ./data/quick-run.csv
INFO  nyx_space::md::ui         > Propagating for 302400 seconds (~ 3.500 days)
INFO  nyx_space::md::ui         > Initial state: [Earth J2000] 2020-01-01T00:00:37 TAI sma = 14270.303080 km   ecc = 0.299244  inc = 90.000000 deg     raan = 135.000000 deg   aop = 90.000000 deg     ta = 0.000000 deg       120 kg
INFO  nyx_space::md::ui         > Final state:   [Earth J2000] 2020-01-04T12:00:37 TAI sma = 14290.081381 km   ecc = 0.300111  inc = 89.990899 deg     raan = 135.002325 deg   aop = 88.754477 deg     ta = 250.290371 deg     120 kg (computed in 0.974 seconds)

• Cool example! Now do a pole-sitter :D Jun 26, 2020 at 2:25
• @Chris Ha, I can, for a fee ;-) My team did some work on those for a customer. Jun 26, 2020 at 5:10