vPilotAccel += Propagate->GetPQRdot() * vToEyePt;
vPilotAccel += vPQR * (vPQR * vToEyePt);
} else {
- vPilotAccel = Propagate->GetTl2b() * FGColumnVector3( 0.0, 0.0, Inertial->gravity() );
+ // The line below handles low velocity (and on-ground) cases, basically
+ // representing the opposite of the force that the landing gear would
+ // exert on the ground (which is just the total weight). This eliminates
+ // any jitter that could be introduced by the landing gear. Theoretically,
+ // this branch could be eliminated, with a penalty of having a short
+ // transient at startup (lasting only a fraction of a second).
+ vPilotAccel = Propagate->GetTl2b() * FGColumnVector3( 0.0, 0.0, -Inertial->gravity() );
}
vPilotAccelN = vPilotAccel/Inertial->gravity();