Calculation of oxygen self-diffusion coefficients in Mg2SiO4 polymorphs and MgSiO3 perovskite based on the compensation law