Structure-preserving algorithms for oscillatory differential equations II. (2015)