1
0
Fork 0

Fix drag when engine is shut down, by avoiding negative RPM.

The Propeller class ignored negative RPM but still returned a torque
value, which ratcheted up a higher and higher negative RPM until drag
overwhelmed the aircraft.

In reality, the propeller should windmill at a reasonable postive RPM,
introducing a constant drag on the aircraft -- the propeller should
*not* stop unless the plane is flying very slowly.  That's a future
project.
This commit is contained in:
david 2003-08-06 21:38:01 +00:00
parent c2684e9bc6
commit 1d4a7659fc

View file

@ -161,6 +161,9 @@ void PropEngine::integrate(float dt)
// Runge-Kutta stuff.
float rotacc = (engTorque-propTorque)/Math::abs(_moment);
_omega += dt * rotacc;
if (_omega < 0)
_omega = 0 - _omega; // don't allow negative RPM
// FIXME: introduce proper windmilling
// Store the total angular momentum into _gyro
Math::mul3(_omega*_moment, _dir, _gyro);