Interpreting dyke propagation and emplacement dynamics using crystal and vesicle textures