[Physics] Why is the geomagnetic north pole at a different location from the magnetic north pole

dipoleearthgeophysicsmagnetic fields

According to this site
Magnetic North, Geomagnetic and Magnetic Poles

The Geomagnetic poles (dipole poles) are the intersections of the Earth's surface and the axis of a bar magnet hypothetically placed at the center the Earth by which we approximate the geomagnetic field. There is such a pole in each hemisphere, and the poles are called as "the geomagnetic north pole" and "the geomagnetic south pole", respectively. On the other hand, the magnetic poles are the points at which magnetic needles become vertical. There also are "the magnetic north pole" and "the magnetic south pole".

enter image description here

But why does the compass needle not point to the geomagnetic pole? I mean why aren't they both at the same location?

Best Answer

Earth's magnetic field isn't really a dipole, but a dynamic field due to the convection occurring in the planet's core (consists of molten iron). The model below shows a simulation of the magnetic field (blue is pointing towards the core while yellow points away), the cluster of curves in the middle is the planet's core.

enter image description here

The geomagnetic pole is the location of the pole if earth's magnetic field were a simple dipole (no convection-driven fields).

Note also that, in your image, the geomagnetic pole hasn't moved much in the last century while the magnetic pole has. This is because every several thousand years, the magnetic poles flip sides (a non-constant rate of reversal, so we can't really say a definitive time-frame).