void target(double v, {required double time}) { if (startValue.isNaN) { startValue = endValue = v; startVelocity = 0; } else { startValue = x(time); startVelocity = dx(time); endValue = v; } }