simulate_pulsing fixes neighbor preservation