In implicit approach, set derivatives to zero (when switch is off)
before update. This seems to stop numerical leakage though non-return
switches.