A body-fixed antenna offset is not an Earth-fixed coordinate correction
A satellite orbit can locate one reference point while a radio observation relates to another. Connecting them requires an offset, its coordinate frame and the satellite’s orientation. Adding three body-fixed numbers directly to Earth-fixed coordinates can produce a plausible-looking answer that belongs to no consistent geometry.
This guide rotates an original fictional offset, computes its range effect and checks the result in reverse. We then change the satellite attitude, reference origin, signal combination and uncertainty. The purpose is to make each link visible: the physical endpoint, its vector connection, the coordinate transformation and the quantity the observation actually measures.
No numerical offset, orbit, attitude law or calibration value below belongs to an actual satellite. ESA Navipedia explains the satellite phase-centre framework, while the European GNSS Service Centre provides mission-specific metadata context. Use current applicable product documentation for real processing; this educational geometry is not an operational correction recipe.
Geodesy subject guide · Learning that transfers into life · How X Works hub
Choose your reading route
Route 1 · Chapters 1–2: Name the endpoints and frames
Route 2 · Chapters 3–5: Rotate and project the offset
Route 3 · Chapters 6–8: Challenge origin and attitude choices
Route 4 · Chapters 9–10: Carry calibration and uncertainty
Preserve the signal and frequency meaning of an antenna model
Route 5 · Chapters 11–12: Test and communicate
Build checks that distinguish geometry from calibration history
Full chapter index · Independent worked case · Questions and practical checks
Chapter index
Name the endpoints and frames
Identify which point the orbit and observation describe
Keep a position, a displacement and an orientation distinct
Rotate and project the offset
Rotate one offset that can be checked by hand
Project the endpoint displacement into the range observation
Compare the projection with the exact endpoint range
Challenge origin and attitude choices
Change the body origin without moving the antenna endpoint
Distinguish a physical attitude change from a passive coordinate change
Test whether the observation can see a particular offset component
Carry calibration and uncertainty
Preserve the signal and frequency meaning of an antenna model
Propagate offset and attitude uncertainty through the range sensitivity
CHAPTER 1 OF 12 · Name the endpoints and frames
1. Identify which point the orbit and observation describe
An orbit record identifies the position of a defined reference point in a defined frame. An antenna model connects that point with a signal-related reference. A centre of mass, a mechanical antenna reference point and a modelled phase centre are different objects. Their proximity does not make their coordinates interchangeable.
ESA’s satellite antenna phase-centre explanation distinguishes an orbit reference from a frequency-dependent antenna offset and expresses the latter in a satellite-fixed frame. The GSC Galileo metadata separately documents spacecraft frames, centre-of-mass information, antenna reference points and phase-centre corrections. These primary sources show why the connection must be read from applicable definitions rather than inferred from a filename.
For our teaching model, let r0 be the Earth-fixed position of a chosen satellite reference point, and let d be an offset from that point to the modelled antenna endpoint, expressed in body-fixed axes. If R maps body components into Earth-fixed components, the endpoint position is rA = r0 + Rd.
The plus sign follows our definition of d as reference-to-antenna. A file that defines the opposite vector would need the corresponding sign change. Before multiplying anything, write the endpoints as a sentence. That small habit can prevent a carefully calculated rotation from being attached to the wrong physical connection.
CHAPTER 2 OF 12 · Name the endpoints and frames
2. Keep a position, a displacement and an orientation distinct
The position r0 describes a point relative to an Earth-fixed origin. The vector d describes a displacement between two satellite-related points. R describes how one set of axes is oriented relative to another. All are needed, but they perform different jobs. A rotation alone cannot supply a missing position or decide which origin an offset uses.
For an ideal orientation matrix, RᵀR = I and determinant R = +1. Its columns are the body unit axes expressed in Earth-fixed coordinates. Multiplying Rd therefore forms the same physical displacement from those three directed components. The transpose maps a vector back into body coordinates under this convention.
A matrix containing the Earth-fixed axes expressed in body coordinates has the opposite mapping. It may look equally orthogonal and equally plausible. Orthogonality checks alone cannot establish which direction it transforms. Test it on a known basis vector and compare the physical direction, not only the numerical matrix properties.
Our examples use arbitrary simple axes rather than a mission’s operational attitude convention. Real satellites can have mission-specific body definitions and attitude behaviour. Do not identify the teaching body x axis with a real spacecraft panel merely because both are called x. Read the relevant frame definition and validity conditions before assigning operational meaning to the symbols.
CHAPTER 3 OF 12 · Rotate and project the offset
3. Rotate one offset that can be checked by hand
Choose a fictional body-fixed offset d = (1,2,3) m. Let R represent a positive90-degree rotation about the common z axis, so R = [[0,−1,0],[1,0,0],[0,0,1]]. The first body axis points toward positive Earth-fixed y, the second toward negative Earth-fixed x and the third remains along positive z.
Multiplication gives Rd = (−2,1,3) m. This is the offset to add to r0 under our reference-to-antenna convention. Adding(1,2,3) directly instead would leave the body components untransformed. Both triples contain the same numbers in magnitude, but their directions differ and so can their observational consequences.
Check length preservation: |d|² =1²+2²+3² =14 m², and |Rd|² =(−2)²+1²+3² =14 m². Then reverse the mapping: Rᵀ(−2,1,3) returns(1,2,3). These tests establish algebraic consistency for the selected matrix and vector.
A further test changes only one component. An offset(1,0,0) in the body frame must become(0,1,0) in Earth-fixed coordinates for this R. Using the transpose instead would send it toward negative y. This basis-vector test exposes a mapping-direction error that the length test would miss, because either orthogonal matrix preserves length.
CHAPTER 4 OF 12 · Rotate and project the offset
4. Project the endpoint displacement into the range observation
Let receiver position be rr and define ρ = |r0 − rr|. The unit line of sight e = (r0 − rr)/ρ points from receiver to satellite reference point. For a small satellite endpoint displacement δr = Rd, the first-order change in geometric range is δρ ≈ eᵀδr. The sign depends on the declared direction of e.
Choose a fictional unit line of sight e = (0.6,0,0.8). Its squared length is 0.36+0.64 =1. With δr = (−2,1,3) m, the projected range change is 0.6(−2)+0(1)+0.8(3) =1.2 m. The antenna endpoint is farther away along this particular line of sight to first order.
If the unrotated d had been projected instead, the result would be0.6(1)+0.8(3) =3 m. The difference is not a generic scale error. It depends on both attitude and line-of-sight direction. At another receiver direction, the wrong-frame calculation could give a different discrepancy or accidentally agree.
This is a geometric range increment, not automatically a quantity to subtract from every observed carrier value. A processing model can incorporate the endpoint by changing the predicted geometry or by an equivalent consistently signed observation correction. State which operation is being performed. The same physical contribution should enter once, with a sign derived from the observation equation.
If both endpoints change, the first-order range increment is e·(δr_sat−δr_rec). The satellite and receiver contributions have opposite signs under our receiver-to-satellite line-of-sight convention. Translating both endpoints by the same vector gives zero, agreeing with exact translation invariance of their separation. This provides a useful whole-chain check: a receiver offset cannot be added using the satellite sign simply because both files call their vectors antenna offsets.
For example, retain a satellite projection of 1.2 m and introduce a fictional receiver-endpoint projection of 0.4 m in the same axes. Their combined first-order range increment is 0.8 m, not1.6 m. This arithmetic says nothing about whether either offset was calibrated correctly; it checks how two already defined endpoint connections enter one distance.
CHAPTER 5 OF 12 · Rotate and project the offset
5. Compare the projection with the exact endpoint range
The exact changed range is |r0 + δr − rr|. Expanding about r0 gives a first-order line-of-sight projection plus higher-order terms. The leading second-order contribution is [|δr|² − (eᵀδr)²]/(2ρ), when the offset is small compared with the reference range. This term reflects transverse geometry rather than an additional antenna calibration.
Use a deliberately short mathematical fixture so the approximation error is visible: rr = (0,0,0), r0 = (1000,0,0) m and δr = (−2,1,3) m. Then e = (1,0,0), so the linear range change is −2 m. The exact antenna range is√(998²+1²+3²), giving a change of approximately−1.99499 m.
The second-order estimate is[14−4]/2000 =0.005 m. Adding it to −2 m gives −1.995 m, close to the exact result. The example’s one-kilometre reference distance is not an actual GNSS orbit geometry. It was chosen to make the difference between a vector projection and a full endpoint norm easy to inspect.
A good numerical test reduces the offset by a factor of ten while holding the reference geometry fixed. The linear contribution then scales by ten, while the leading second-order term scales by one hundred. This changed-scale test can reveal whether a supposed linearisation error actually behaves like one or instead reflects a sign or reference-frame mistake.
CHAPTER 6 OF 12 · Challenge origin and attitude choices
6. Change the body origin without moving the antenna endpoint
Suppose a new body reference origin lies at body vector s relative to the old one, with axes unchanged. Its Earth-fixed position is r0′ = r0 + Rs. The same physical antenna endpoint has new body offset d′ = d − s. Substituting gives r0′ + Rd′ = r0 + Rs + R(d−s) = r0 + Rd.
Choose s = (0.5,0,0) m in our fixture. The new offset is(0.5,2,3) m. Its Earth-fixed vector is(−2,0.5,3) m, while the reference position has gained(0,0.5,0) m. Adding them produces the same antenna endpoint as before. A reference-origin change is not itself an antenna movement.
If the orbit reference changes but the original offset d is retained, the antenna endpoint acquires an extra Rs. Conversely, changing the offset origin without changing the reference position can remove a connection that is still needed. Both mistakes can look like an unexplained antenna correction when the actual problem is an inconsistent origin pair.
For a chain involving a mechanical antenna reference point, add the connections in compatible axes. A reference-to-ARP vector a and ARP-to-phase-centre vector p give net d = a+p. Do not treat p alone as the centre-of-mass-to-phase-centre vector unless the applicable metadata defines it that way. This is why the origin labels belong beside the values, not only in a separate instrument description.
CHAPTER 7 OF 12 · Challenge origin and attitude choices
7. Distinguish a physical attitude change from a passive coordinate change
A passive coordinate change describes the same physical configuration in different axes. Transforming all vectors and the line of sight consistently preserves the scalar range projection. A physical attitude change rotates the antenna offset relative to the receiver geometry and can change the endpoint and its range contribution.
For a passive orthogonal transformation S, set e′ = Se and δr′ = Sδr. Then e′ᵀδr′ = eᵀSᵀSδr = eᵀδr. If a calculation changes its predicted range merely because both vectors were consistently re-expressed, inspect the implementation. A scalar geometric distance cannot depend on an arbitrary relabelling of axes.
For a physical change, hold the Earth-fixed line of sight and satellite reference position fixed in a short teaching snapshot, but change R. With R equal to identity, our offset projects to 3 m along(0.6,0,0.8). With the90-degree rotation it projects to 1.2 m. That changed scalar is allowed because the physical antenna endpoint changed.
Real attitude models include more than our isolated rotation. The GSC metadata explicitly documents mission-specific conventions and laws, including distinctions among spacecraft families and reference conventions. Read those definitions rather than applying the classroom90-degree rotation as a real yaw prescription. The lesson is which quantities must change together, not a particular operational orientation.
CHAPTER 8 OF 12 · Challenge origin and attitude choices
8. Test whether the observation can see a particular offset component
A single scalar range projection constrains only one component of a three-dimensional displacement. Any δr perpendicular to e has zero first-order range effect. That does not mean the endpoint did not move; it means this observation direction is insensitive to that displacement at first order.
With e = (1,0,0), offsets in the Earth-fixed y-z plane are first-order invisible. The exact norm can still change through the second-order term, as the short-distance fixture showed. Distinguish a zero linear sensitivity from a statement that the complete geometry is unchanged.
Multiple line-of-sight directions can provide different constraints, but the resulting ability to estimate offset or attitude parameters depends on their geometry and other unknowns. An offset contribution may trade off with orbit, clock or other observation-model terms. This forward calculation does not prove that the same observing system can independently recover every input vector.
A useful inverse counterexample is to add any perpendicular vector v to δr for one fixed e. Both displacements give the same linear range increment because eᵀv =0. To distinguish them, obtain observations or constraints with another sensitivity. More precision along the same projection cannot by itself supply the missing transverse information.
CHAPTER 9 OF 12 · Carry calibration and uncertainty
9. Preserve the signal and frequency meaning of an antenna model
Antenna phase-centre information can depend on frequency and direction. A constant offset vector and a direction-dependent variation describe different parts of the model. Rotating one constant vector does not automatically reproduce every phase-centre variation. Use the applicable calibration representation and signal definition rather than treating one triple as a universal correction.
For an original algebraic combination, let two body-frame offset vectors be d1 and d2 and form dC = a d1 + b d2 under a stipulated compatible linear observation combination. Rotation distributes: R dC = a R d1 + b R d2. This identity is a useful implementation check when both offsets use the same origin and body axes.
Choose fictional coefficients a =2 and b =−1, with d1 = (1,0,0) m and d2 = (0,1,0) m. The combined body vector is(2,−1,0) m. Under our90-degree rotation it becomes(1,2,0) m. Combining the two rotated vectors separately gives the same result. These coefficients are invented, not actual GNSS signal frequencies.
The algebra does not establish whether a real combination’s orbit, clock, bias and antenna definitions are compatible. A product may already refer to an applicable antenna endpoint or combination. Check that account before adding a new offset. Numerical commutation of a rotation and a linear combination is an internal test, not proof of complete product consistency.
CHAPTER 10 OF 12 · Carry calibration and uncertainty
10. Propagate offset and attitude uncertainty through the range sensitivity
If attitude R and line of sight e are held exact while the body offset has covariance Qd, the first-order range variance from that offset is eᵀ R Qd Rᵀ e. This follows by applying the same linear projection to the covariance as to the vector. It is one contribution, not automatically the entire observation uncertainty.
For an isotropic fictional Qd =σd²I, rotation preserves it, and the projected variance isσd² because e is unit length. For anisotropic uncertainty, orientation matters. Different uncertainty along body axes can project differently as the satellite attitude or receiver direction changes, even if the printed three marginal values remain the same.
Compute the same variance in either frame as an independent check. With R the90-degree rotation, e=(0.6,0,0.8) and fictional body covariance diagonal(1,4,9)m², the body-frame line of sight is Rᵀe=(0,−0.6,0.8). Its quadratic form gives 0.36(4)+0.64(9)=7.2 m². Rotating Qd into Earth-fixed coordinates first gives the same result. Leaving Qd unrotated while using the Earth-fixed e would give 6.12 m² instead. The equality of the two consistent routes tests both vector and covariance mapping. The deliberately large values are calculation fixtures, not uncertainty claims for satellite calibration.
An attitude error contributes through a small rotation. If a small Earth-frame rotation vector δθ perturbs the rotated offset δr, its first-order change is δθ×δr under the chosen active-rotation convention. The range perturbation is e·(δθ×δr) = δθ·(δr×e). The cross product exposes which attitude directions affect this range projection.
Take δr = (−2,1,3) m and e = (1,0,0). Then δr×e = (0,3,−1) m. A small rotation about x has no first-order range effect, while y and z rotation errors have sensitivities3 m and −1 m per radian. Correlated offset, attitude, orbit and line-of-sight uncertainties require their joint covariance rather than independent additions by default.
CHAPTER 11 OF 12 · Test and communicate
11. Build checks that distinguish geometry from calibration history
Begin with internal geometric checks: unit axes, right-handedness, orthogonality, length preservation, basis-vector mapping and a reverse transformation. Then compare an exact endpoint norm with the linear projection at several offset scales. These tests target different implementation mistakes; no single one validates every definition in the chain.
Next test reference invariance by changing the body origin and updating both r0 and d. The antenna endpoint should remain unchanged. Test passive frame invariance by rotating both the line of sight and displacement together. If either operation changes the physical range, the bookkeeping is inconsistent.
Finally inspect the applicable product history: which point the orbit locates, what origin each antenna vector uses, the signal or combination, calibration identity, attitude convention and validity interval. The existing receiver-reference-point guide addresses the corresponding ground-side chain; this guide should complement it rather than overwrite its separate endpoint definitions.
External evidence is still needed to assess real calibration quality or attitude accuracy. Reproducing one official offset value in two pieces of software checks transcription and implementation, not necessarily its physical accuracy. Preserve the difference between a known mathematical fixture, a documented model and an independently validated observation claim.
A time-dependent endpoint also needs its full derivative if a rate is required. From rA(t)=r0(t)+R(t)d(t), differentiation gives vA=v0+Rdot d+R ddot. Even a constant body offset can therefore contribute endpoint velocity when attitude changes. This is a mathematical consequence of a rotating connection, not a claim about any real spacecraft rate. Differentiating only the orbit position and ignoring the rotating offset would answer a different endpoint question. Specify whether the output sought is position, range or range rate before transferring a position correction into another observable.
CHAPTER 12 OF 12 · Test and communicate
12. Report the connection vector and its observational role together
A useful processing account names the satellite reference point, antenna endpoint, body frame, Earth-fixed frame and attitude mapping direction. It states the vector’s sign, units, signal meaning and time validity. A triple without those labels is not a complete transferable antenna model.
Give the rotated endpoint or equivalent correction with the observation convention that determines its sign. Preserve whether the contribution entered the predicted geometry or the observation reduction, and whether any applicable product already incorporated it. This prevents the same physical connection from being added twice.
Keep uncertainty scope visible. A projection variance conditional on exact attitude excludes attitude error; a phase-centre offset model does not automatically include every directional variation or hardware uncertainty. State what was supplied externally and what was inferred from the observations. The forward example alone does not establish an independent calibration.
The practical habit transfers well: identify the two points, connect them in compatible axes, rotate once into the observation frame and project only when the observable requires it. A correction then becomes an explainable part of a measurement model instead of a mysterious three-number addition that happens to improve a residual.
Independent worked case and evidence checks
Change both the offset and the attitude. Let d = (2,−1,0.5) m and let R be a180-degree rotation about z, represented by diagonal entries(−1,−1,1). The Earth-fixed offset is(−2,1,0.5) m. For e = (0,0.8,0.6), the first-order range increment is 0.8+0.3 =1.1 m.
Reverse the coordinate transformation and check that Rᵀ returns the original body vector. Both squared norms are 5.25 m². Now change the body origin by s = (0,0.5,0) m. Update r0 by Rs = (0,−0.5,0) m and d by −s. The final antenna endpoint remains identical, demonstrating the reference-connection rule with new numbers.
For an uncertainty check, hold R and e exact and assign body offset variances(0.01,0.04,0.09) m² with zero cross-covariance. The rotation leaves this diagonal covariance unchanged. The projected variance is 0.8²(0.04)+0.6²(0.09) =0.058 m², giving standard deviation about 0.24083 m. These deliberately large fictional values make the propagation visible; they are not calibration specifications.
For a final physical check, ask whether a satellite yaw change should rotate the line of sight in this snapshot. If you are changing the spacecraft attitude while holding the receiver and orbit reference fixed, no: the line of sight remains defined by those positions. If you are merely changing coordinate axes, both vectors transform. Explaining that distinction is more important than memorising the numerical1.1 m result.
Worked comparison
| Fictional operation | Calculated outcome | Required interpretation |
|---|---|---|
| Rotate(1,2,3)m by 90 degrees aboutz | Offset becomes(−2,1,3)m | Body-to-Earth mapping, not direct addition |
| Project along(0.6,0,0.8) | Range increment1.2 m | Sign follows receiver-to-satellite direction |
| Project the unrotated vector | Incorrect3 m for this geometry | An orthogonal frame error can preserve vector length |
| Change origin and update both connections | Antenna endpoint unchanged | A reference change is not a physical movement |
| Rotate axes for both vectors | Scalar projection unchanged | Passive and physical rotations differ |
Questions and practical checks
Can I add the antenna offset directly to orbit coordinates?
Only when its components already use the required coordinate axes and its endpoints match the orbit reference. A body-fixed vector generally needs a compatible attitude mapping. Establish the actual product definitions before applying any correction.
Does length preservation prove the rotation is correct?
No. The transpose or a differently oriented orthogonal matrix also preserves length. Test a known basis vector, mapping direction, right-handedness and reference definitions as well as the reverse calculation.
Why is the range correction not simply the offset length?
Range responds to the line-of-sight projection at first order. Transverse components affect the exact norm differently. The endpoint displacement and the scalar range increment are distinct quantities, each with its own meaning.
Is a phase centre always a fixed physical point?
The operational antenna model can include frequency and directional dependence. A constant offset is only part of the representation. Use the applicable calibration and product documentation rather than assigning every signal the same universal geometric point.
What prevents duplicate correction?
An explicit account of the orbit reference, antenna model, signal combination and where each contribution entered the prediction or reduction. Keep the original values and definitions so another reader can reconstruct the endpoint connection and verify that it was used once.
Continue with the connected subjects
Connect physical endpoints and coordinates
Compare the separate receiver-side monument, ARP and phase-centre chain
Carry vectors and covariance through a declared change of axes
Preserve reference-point eccentricities in a surveyed connection
Keep related signal effects distinct
Distinguish carrier phase wind-up from a geometric endpoint offset
Compare orbit-error projections without merging them with antenna offsets
Preserve the observation-combination and bias definitions
Sources and scope
The numerical cases in this guide are original fictional teaching examples, not measurements from a real site. This is an educational explanation, not a field safety instruction, engineering approval or an official certification. For a real project, use qualified practitioners, current product documentation and site-specific evidence. Sources were checked on 3 November 2026.
Connect the observation with the reliability check
An endpoint model defines what was observed, a temporal model connects records made at different moments, and an estimation diagnostic tests only the error directions it can see. Use these complementary guides to keep those questions separate.
Trace the observation
VLBI source switching: test interpolation across unobserved time gaps
Test the inference
Integer ambiguity search: separate the best candidate from a validated fix
Residual redundancy and leverage: see which errors the fit can absorb