Physics Library
 An open source physics library
Encyclopedia | Forums | Docs | Random |  
Login
create new user
Username:
Password:
forget your password?
Main Menu
Sections

Meta

Talkback

Downloads

Information
ECI to ECEF Coordinates: Earth Rotation and the GPS Ascending-Node Equation (Topic)

1 Where GPSORB08 stopped

GPSORB08 produced the satellite position in an Earth-centered inertial frame from its orbital-plane coordinates. With the argument of latitude u = ω + ν, the inertial Cartesian position can be written

     ⌊   ⌋
       X
rI = ⌈ Y ⌉ .
       Z
(1)

The inertial frame is useful because Newton’s two-body equation has its simplest form there:

       μ
¨rI = − -3rI.
       r
(2)

But a receiver antenna, a survey monument, and a point on Earth’s surface are naturally described in a frame attached to the rotating Earth. That frame is Earth-centered, Earth-fixed, abbreviated ECEF. Its Cartesian position is written

      ⌊ ⌋
       x
rE =  ⌈y⌉ .

       z
(3)

The next step in the navigation chain is therefore

|--------------------|
-ECI---−-→----ECEF.---
(4)

The physics behind this step is simple: the Earth-fixed axes rotate relative to the inertial axes. The bookkeeping is not simple, because a sign error in that rotation changes every satellite longitude.

2 Idealized ECI and ECEF frames

For the present derivation, use an idealized pair of frames sharing the same origin at Earth’s center and the same z axis. Let

{^I,^J, ^K }
(5)

be the inertial basis and

{^ex, ^ey,^ez}
(6)

be the rotating Earth-fixed basis. In this simplified model,

^ez = ^K.
(7)

The Earth-fixed x and y axes rotate eastward about the common z axis. Let 𝜃e(t) denote the angle through which the Earth-fixed frame has rotated relative to the inertial frame.

PIC

Figure 1. Idealized ECI and ECEF axes viewed along the common Earth spin axis.

If the rotation rate is approximated as constant,

|-----⋅--|
-˙𝜃e =-Ωe-|
(8)

and therefore

|------------------------------|
|                    ⋅         |
-𝜃e(t) =-hetae(t0)-+-Ωe(t-−-t0).-|
(9)

For the legacy GPS broadcast equations the specified Earth rotation rate is

|⋅-------------------------------|
|Ωe = 7.2921151467 ×  10−5 rad∕s.|
----------------------------------
(10)

This is the value appearing in IS-GPS-200 broadcast user equations.

3 Active rotation versus coordinate transformation

A rotation matrix can be used in two logically different ways:

1.
actively rotate a physical vector while the basis remains fixed;
2.
keep the physical vector fixed while changing the basis in which its components are reported.

ECI-to-ECEF is the second operation. The satellite does not jump when we change coordinate frames. Only its components change.

GPSORB08 used the active right-handed rotation

         ⌊                 ⌋
          cos α  − sinα   0
R3 (α) = ⌈ sin α   cosα    0⌉ .
            0       0     1
(11)

If the ECEF basis has actively rotated through +𝜃e, the coordinates of a fixed vector in that rotated basis are obtained with the inverse rotation:

|----------------|
rE  = R3 (− 𝜃e)rI.
------------------
(12)

Thus the inertial-to-Earth-fixed coordinate transformation matrix is

|------⌊------------------⌋--|
|        cos 𝜃e   sin 𝜃e  0   |
|CE  = ⌈ − sin 𝜃   cos𝜃   0⌉ .|
|  I           e      e      |
------------0-------0----1---|
(13)

This sign pattern is also the R3 convention used in the Earth-orientation portion of IS-GPS-200.

PIC

Figure 2. A fixed physical vector has different coordinate components in ECI and ECEF.

Equation (13) gives

|----------------------|
-x-=-X-cos-𝜃e +-Y-sin-𝜃e-
(14)

|------------------------|
|y = − X sin𝜃e + Y cos 𝜃e|
-------------------------
(15)

|------|
z-=--Z.-
(16)

Because CIE is orthogonal,

   E −1      E T
(C I )  = (C I ) .
(17)

Therefore

|-------------------------|
rI-=-CIErE-=--R3-(+𝜃e)rE.--
(18)

4 A sign sanity check

Suppose the ECI and ECEF frames coincide at t = 0. Place a fixed point on the positive inertial X axis:

     ⌊  ⌋
       R
rI = ⌈ 0⌉ .
       0
(19)

After Earth has rotated eastward by 90, the ECEF x axis points along inertial +Y . The original inertial point therefore appears on the Earth-fixed negative y axis. Equation (13) gives

      ⌊    ⌋
        0
rE =  ⌈− R ⌉,
        0
(20)

which confirms the sign.

This is an extremely useful test in software. If the same thought experiment produces +R in the Earth-fixed y component, the ECI-to-ECEF rotation sign has been reversed.

5 Differentiating the rotating-frame transformation

The position transformation contains time through 𝜃e(t). Consequently, velocity cannot be transformed by applying only the same matrix to the inertial velocity.

Start with

rE = CEI rI.
(21)

Differentiate:

vE = C˙EI rI + CEI vI.
(22)

For a frame rotating with angular velocity

       ⌊   ⌋
         0
ωE  =  |⌈ 0 |⌉ ,
 IE      ⋅
        Ωe
(23)

the derivative of the coordinate transformation satisfies

C˙EI rI = − ωEIE × rE.
(24)

Hence

|------------------------|
|vE =  CE vI − ωE  × rE. |
--------I-------IE-------
(25)

Equivalently,

|--------------------------|
| I     I(  E    E     E ) |
v--=--C-E-v---+-ωIE-×-r---.-
(26)

This is the same transport-theorem physics that appears in strapdown navigation. Differentiating once more, with constant Earth rate, produces the Coriolis and centrifugal terms

|---------------------------------(---------)--|
|aE =  CEI aI − 2ωEIE × vE − ωEIE ×  ωEIE × rE  .|
-----------------------------------------------
(27)

Those terms will reappear when the GPS broadcast acceleration equations are derived later in the series.

6 The ascending node seen from two frames

The same frame-rotation geometry applies to the line of nodes. Let ΩI be the node angle measured from the inertial reference direction, and let ΩE be the longitude of that same node measured from the rotating ECEF x axis.

The geometry immediately gives

|--------------|
|ΩE =  ΩI − 𝜃e.|
----------------
(28)

PIC

Figure 3. Earth-fixed node longitude is inertial node angle minus Earth rotation angle.

Equation (28) is the conceptual core of the GPS node-longitude equation. The satellite orbit plane may itself precess slowly, while the Earth-fixed reference direction rotates rapidly underneath it.

7 Allow the orbital plane to precess

In the ideal two-body problem,

 ⋅
Ω  = 0.
(29)

A real GPS orbit experiences perturbations, especially from Earth’s oblateness, so the node drifts. Over the relatively short broadcast-ephemeris fit interval, the GPS model represents that drift with the broadcast rate ⋅
Ω.

Let

tk = t − toe
(30)

be the elapsed time from the ephemeris reference epoch. In the GPS broadcast parameterization, introduce the nonrotating-reference node angle

              ⋅
Ω∗(t) = Ω0 + Ω tk.
(31)

The superscript star is used here only to make the derivation transparent: Ω is the node angle before the Earth-fixed reference meridian is rotated away. It should not be interpreted as a full modern celestial-frame right ascension. IS-GPS-200 formally names Ω0 the “Longitude of Ascending Node of Orbit Plane at Weekly Epoch.” Because the broadcast coefficients are curve-fit parameters, the normative meaning is the specified user equation as a whole, not an attempt to reinterpret Ω0 as an independently propagated terrestrial longitude.

Measure GPS time t from the beginning of the GPS week. In the simplified broadcast model the accumulated Earth rotation is

        ⋅
𝜃e(t) = Ωet.
(32)

Applying the same geometry as Eq. (28) to the broadcast angle gives

              ⋅           ⋅     ⋅
Ωk =  Ω∗(t) − Ωet = Ω0 + Ωtk − Ωet.
(33)

Since

t = toe + tk,
(34)

Eq. (33) becomes

            ⋅     ⋅
Ωk =  Ω0 + Ωtk − Ωe (toe + tk).
(35)

Collect the terms multiplying tk:

|------------------------------|
|            ⋅    ⋅      ⋅     |
-Ωk-=-Ω0-+--(Ω-−-Ωe)tk-−-Ωetoe.|
(36)

This is the longitude-of-ascending-node equation in IS-GPS-200 Table 20-IV and in Kaplan’s broadcast-ephemeris position algorithm.

PIC

Figure 4. The GPS node equation separates week-start Earth rotation from propagation after the ephemeris reference time.

8 Why the Earth-rate term seems to appear twice

Equation (36) contains both

  ⋅
−Ωetk
(37)

and

  ⋅
− Ωetoe.
(38)

There are not two different Earth rotations. Their sum is simply

  ⋅               ⋅
− Ωe(tk + toe) = − Ωet.
(39)

The two terms appear because the GPS algorithm propagates the orbit using time measured from toe while Earth orientation in the legacy formula is referenced to GPS time of week. The equation must therefore account for Earth rotation from week start to toe and from toe to the evaluation time.

The compact equivalent form is

|------------⋅-----------⋅---|
|Ωk =  Ω0 + Ω (t − toe) − Ωet.|
-----------------------------|
(40)

The ICD form is preferred in implementation because it uses the already-computed quantity tk.

9 The node rate in ECEF

Differentiate Eq. (36). Since toe is fixed for a given ephemeris data set,

dtk
--- = 1.
dt
(41)

Therefore

|--------------|
| ⋅    ⋅    ⋅  |
-Ωk-=--Ω-−-Ωe.-
(42)

This is exactly the node-rate expression used in the satellite-velocity portion of IS-GPS-200 Table 20-IV. It also gives a useful physical interpretation. Even if the orbital plane were perfectly fixed in inertial space,

 ⋅
Ω  = 0,
(43)

the Earth-fixed node longitude would still move at

 ⋅      ⋅
Ωk  = − Ωe.
(44)

The ground-fixed longitude of an inertially fixed orbital plane sweeps westward because Earth rotates eastward beneath it.

10 Return to the orbital-plane coordinates

The broadcast algorithm does not ordinarily form an ECI position and then perform a separate ECI-to-ECEF multiplication. Instead it folds the Earth rotation directly into the corrected node longitude Ωk.

After computing corrected radius rk, argument of latitude uk, and inclination ik, define

x′k = rk cos uk,
(45)

 ′
yk = rk sinuk.
(46)

These are coordinates in the orbital plane with the first axis along the ascending-node direction.

Rotating that in-plane vector by inclination and then by the Earth-fixed node longitude gives

|------------------------------|
xk =  x′k cos Ωk − y′k cosik sinΩk
--------------------------------
(47)

|------------------------------|
|yk = x′k sinΩk + y′k cos ik cosΩk|
--------------------------------
(48)

|--------------|
|zk = y′k sin ik. |
---------------
(49)

These are the Earth-fixed coordinate equations in the GPS broadcast user algorithm. Compare them with GPSORB08: the algebraic structure is the same, but the angle multiplying the final rotation is now Ωk, an Earth-fixed node longitude rather than a purely inertial right ascension.

11 A matrix view of the same GPS equations

Equations (47)–(49) can be written compactly as

                         ⌊ x′⌋
 E     coord      coord    ⌈  k′⌉
rk = R 3   (Ωk )R 1   (ik)  yk  ,
                           0
(50)

where the coordinate-transformation sign convention is chosen consistently with the component equations above.

This is an important conceptual simplification:

|--------------------------------------------------------------------|
|GPS  broadcast position =  orbital geometry + Earth-fixed  node angle.|
----------------------------------------------------------------------
(51)

Earth rotation does not require a separate correction after Eqs. (47)–(49); it is already embedded in Ωk.

12 GPS time of week and week crossover

The quantity

tk = t − toe
(52)

looks harmless but needs careful implementation near the beginning or end of a GPS week. A GPS week contains

604800  s.
(53)

IS-GPS-200 instructs the user to use the actual nearest time difference. Thus, after initially computing tk,

if tk > 302400 s,     tk ←  tk − 604800 s,
(54)

and

if tk < − 302400 s,   tk ←  tk + 604800 s.
(55)

Without this correction, an ephemeris valid across a week boundary can appear to be almost one week old or one week in the future. The resulting errors in mean anomaly and node longitude would be enormous.

The specification also defines t in the broadcast user equation as GPS system time at signal transmission, with propagation time accounted for. This becomes important when a receiver iterates satellite transmit time and applies Earth-rotation or Sagnac corrections consistently.

13 Numerical example: corrected node longitude

Take the illustrative broadcast-like values

Ω0 = 1.75 rad,
(56)

 ⋅
Ω =  − 8.0 × 10− 9 rad ∕s,
(57)

toe = 345600 s,    tk = 7200  s.
(58)

Then

t = 352800 s.
(59)

The node’s inertial drift over the two-hour propagation interval is only

 ⋅
Ωt  =  − 5.76 × 10− 5 rad ≈ − 0.00330 ∘.
   k
(60)

By comparison, Earth rotates during the same two hours through

⋅                             ∘
Ωetk ≈ 0.525032 rad ≈  30.0821  .
(61)

Using Eq. (36),

                       −9                     −5                             −5
Ωk =  1.75 + (− 8.0 × 10   − 7.2921151467 ×  10  )(7200) − (7.2921151467 ×  10  )(345600 ).
(62)

This gives the unwrapped angle

Ωk  ≈ − 23.97664 rad.
(63)

Angles differing by integer multiples of 2π are equivalent, so wrapping to [0, 2π) gives

|---------------------------∘-|
Ωk-≈--1.15610-rad-≈-66.2397-.--
(64)

The example shows why Earth rotation dominates the node longitude over hour-scale intervals even though the orbital plane’s inertial precession is physically important over longer periods.

14 Numerical example: direct ECI-to-ECEF rotation

Consider the inertial position

     ⌊      ⌋
 I     15600
r  = ⌈ 7540 ⌉  km,
       20140
(65)

and suppose the Earth rotation angle is

𝜃  = 45∘.
 e
(66)

Equation (13) gives

      ⌊          ⌋
        16362.45
rE ≈  ⌈− 5699.28 ⌉ km.
        20140.00
(67)

The z component is unchanged because the idealized ECI and ECEF frames share their rotation axis. The horizontal components change because the Earth-fixed axes have rotated beneath the inertial vector.

15 What the simple Earth rotation model leaves out

The transformation

     ⋅
𝜃e ≈ Ωet
(68)

is intentionally simple. It is appropriate for understanding the legacy GPS broadcast position equations, but it is not a complete high-precision transformation between a celestial reference frame and a terrestrial reference frame.

At high precision, Earth orientation includes effects such as

  • Earth rotation tied to UT1;
  • precession and nutation of the Celestial Pole;
  • polar motion;
  • conventional celestial and terrestrial reference-frame realizations.

IS-GPS-200’s modern Earth-orientation material points users to the IERS Conventions for the more complete inertial-to-geodetic transformation. The legacy broadcast orbit equations, however, intentionally use the specified constant Earth rotation rate in the node-longitude relation.

This distinction is important. One should not replace the broadcast user equation with an arbitrary sidereal-time model and expect bit-for-bit agreement with a GPS receiver implementation. Conversely, one should not use the simple legacy broadcast rotation as a substitute for a precision ITRF/GCRF transformation in high-accuracy geodesy.

16 The chain from Newton to Earth-fixed GPS coordinates

The derivation sequence can now be summarized as

¨r = − μ-r
      r3
(69)

⇓
(70)

(a,e,i,Ω,ω, M0 )
(71)

⇓
(72)

Mk  −→  Ek −→  νk
(73)

⇓
(74)

(rk,uk,ik)
(75)

⇓
(76)

(x′,y′)
  k  k
(77)

⇓
(78)

|------------⋅----⋅-------⋅----|
|Ωk =  Ω0 + (Ω − Ωe )tk − Ωetoe |
-------------------------------|
(79)

⇓
(80)

|----------------|
-(xk,yk,zk)ECEF.-|
(81)

At this point the frame mechanics underlying Kaplan’s final position equations are no longer a recipe: each Earth-fixed term follows from the geometry of a rotating coordinate frame.

17 Summary

The main results are:

1.
ECEF coordinates of a fixed physical vector are obtained from ECI coordinates by the inverse of the active Earth rotation:
  E            I
r   = R3 (− 𝜃e)r .
(82)

2.
In the constant-rate model,
                ⋅
𝜃e(t) = 𝜃e(t0) + Ωe (t − t0).
(83)

3.
Node longitude in the rotating frame equals inertial node angle minus Earth rotation angle:
ΩE =  ΩI − 𝜃e.
(84)

4.
With tk = t toe, the GPS broadcast parameterization gives
|------------⋅----⋅------⋅-----|
|Ω  = Ω  +  (Ω − Ω )t  − Ω t  .|
--k-----0----------e-k-----eoe-|
(85)

5.
The corresponding Earth-fixed node rate is
|--------------|
|Ω⋅ =  ⋅Ω − Ω⋅ .|
---k---------e-
(86)

6.
The final Earth-fixed position follows from
x  = x ′cosΩ   − y′cos i sin Ω ,
 k     k     k    k    k     k
(87)

       ′          ′
yk = x k sin Ωk + y k cosik cos Ωk,
(88)

zk = y′k sin ik.
(89)

These equations form the frame-rotation bridge between classical orbital mechanics and the GPS broadcast ECEF position algorithm.

References

References

[1]   Global Positioning Systems Directorate, IS-GPS-200N: NAVSTAR GPS Space Segment/Navigation User Interfaces, 1 August 2022, especially Tables 20-II and 20-IV.

[2]   E. D. Kaplan and C. J. Hegarty, eds., Understanding GPS/GNSS: Principles and Applications, 3rd ed., Artech House, 2017.

[3]   O. Montenbruck and E. Gill, Satellite Orbits: Models, Methods, and Applications, Springer, 2000.

[4]   G. Petit and B. Luzum, eds., IERS Conventions (2010), IERS Technical Note No. 36, International Earth Rotation and Reference Systems Service, 2010.


"ECI to ECEF Coordinates: Earth Rotation and the GPS Ascending-Node Equation" is owned by bloftin.
(view preamble)
View style:
Other names:  GPSORB09
Keywords:  ECI, ECEF, Earth rotation, Earth rotation angle, ascending node, node longitude, right ascension, GPS ephemeris, Omega0, Omegadot, toe, time of week, direction cosine matrix

Cross-references: mechanics, relation, motion, Celestial Pole, reference frame, system, boundary, algebraic, formula, algorithm, parameters, meridian, acceleration, velocity, operation, vector, matrix, spin, longitude, latitude, position, GPSORB08
There is 1 reference to this object.

This is version 1 of ECI to ECEF Coordinates: Earth Rotation and the GPS Ascending-Node Equation, born on 2026-09-21.
Object id is 1264, canonical name is ECIToECEFCoordinatesEarthRotationAndTheGPSAscendingNodeEquation.
Accessed 4 times total.

Classification:
Physics Classification45.50.Pk (Celestial mechanics )
 91.10.Fc (Space geodetic surveys)
 02.20.-a (Group theory )
 95.10.Ce (Celestial mechanics )
 06.30.Ft (Time and frequency)
Pending Errata and Addenda
None.
Discussion
Style: Expand: Order:

No messages.

Interact
rate | post | correct | update request | add example | add (any)