Describir: Structure-preserving algorithms for oscillatory differential equations /