Oxygen self-diffusion in diopside with application to cooling rate determinations