// environment time.
// NOTE: This depends on the property that if an integration
// step with a larger step size was successful and produced
// no events, then an integration step with this now smaller
// step size will also be successful and produce no events.
_currentStepSize = outTime.subtract(_iterationBeginTime)
.getDoubleValue();
// If the step size is now negative, then we are trying
// to roll back too far.
if (_currentStepSize < 0.0) {
throw new IllegalActionException(this,