<p>I am working with the IGRF (International Geomagnetic Reference Field) model and from a journal article <a href="https://adsabs.harvard.edu/full/2005GeoJI.160..487W" rel="nofollow noreferrer">found here</a>, I am able to compute the earth's magnetic field at any point in spherical coordinates <span class="math-container">$(r, \theta, \phi)$</span>, which can be trivially converted to Cartesian coordinates. The result from this conversion has the <span class="math-container">$z$</span>-axis going from the center of the earth through <strong>magnetic</strong> north.</p>
<p>I am interested in a satellite for which I have a TLE (two-line element), which tells me where the satellite is in space (I have satellite propagation software to tell me where the satellite is at a given moment in time). I want to know the magnetic field at the satellite location. The problem is that the satellite is given in a Cartesian space where the <span class="math-container">$z$</span>-axis goes from the center of the earth through <strong>true</strong> north, which is different from magnetic north.</p>
<p>How do I convert the satellite Cartesian coordinate system to the magnetic field Cartesian coordinate system? My thinking is I can take the satellite position, rotate to &quot;magnetic coordinates&quot;, convert to spherical, and compute the magnetic field using the IGRF model, but I don't know how to do the coordinate rotation.</p>

CC BY-SA 4.0
2023-02-15T03:22:24.570Z
You could convert the satellite's cartesian coordinates to spherical coordinates, then just add the lat/lon of the magnetic North pole.
Greg Miller
CC BY-SA 4.0
2023-02-16T01:18:54.353Z
I'm not saying this is wrong (in fact, I hope it's right), but it seems too simple. Is there a reference that shows this works, or some way for me to verify it? Something in spherical geometry? I ask for the extra step because I need to get this right.
mwoods
<earth><coordinate><rotation><magnetic-field>
Convert from magnetic coordinates to true coordinates
mwoods
# Convert from magnetic coordinates to true coordinates

(Asked by: username_0 on 2023-02-15)

I am working with the IGRF (International Geomagnetic Reference Field) model and from a journal article [found here](https://adsabs.harvard.edu/full/2005GeoJI.160..487W), I am able to compute the earth's magnetic field at any point in spherical coordinates $(r, \theta, \phi)$, which can be trivially converted to Cartesian coordinates. The result from this conversion has the $z$-axis going from the center of the earth through **magnetic** north.

I am interested in a satellite for which I have a TLE (two-line element), which tells me where the satellite is in space (I have satellite propagation software to tell me where the satellite is at a given moment in time). I want to know the magnetic field at the satellite location. The problem is that the satellite is given in a Cartesian space where the $z$-axis goes from the center of the earth through **true** north, which is different from magnetic north.

How do I convert the satellite Cartesian coordinate system to the magnetic field Cartesian coordinate system? My thinking is I can take the satellite position, rotate to "magnetic coordinates", convert to spherical, and compute the magnetic field using the IGRF model, but I don't know how to do the coordinate rotation.

**Tags:** earth, coordinate, rotation, magnetic-field

> **Comments:**
> **username_1**: You could convert the satellite's cartesian coordinates to spherical coordinates, then just add the lat/lon of the magnetic North pole.  
> **username_0**: I'm not saying this is wrong (in fact, I hope it's right), but it seems too simple. Is there a reference that shows this works, or some way for me to verify it? Something in spherical geometry? I ask for the extra step because I need to get this right.  

---

## 0 answers

