better way to calc step size