The inharmonicity is caused by the strings not being 'ideal' mathematical strings: they have stiffness, due to having some thickness - and require some additional force to bend them back and forth, beyond that of the string tension. This bending stiffness is more evident in higher harmonics than in the fundamental (tighter radius of curvature), manifesting in increased 'apparent stiffness' and therefore a higher frequency, at the higher harmonics, compared to the lower harmonics.
Not sure if I've explained it well, but vibrations of an ideal string (no bending stiffness) can be described by a second-order partial differential equation [0], whereas a real string with nonzero bending stiffness is actually more of a 'vibrating beam' problem, which is a fourth-order PDE [1].
EDIT: this is why low notes have greater inharmonicity (thicker strings).
[0] https://jmahaffy.sdsu.edu/courses/s17/math531/beamer/string....
[1] http://www.math.umbc.edu/~jbell/pde_notes/20_Beam%20Equation...