Zaslat SMS: Structure-preserving algorithms for oscillatory differential equations /