Numerical noise in ThrustPropulsionModel and tests
Fix this note left in ThrustPropulsionModel
:
// Compute thrust acceleration in inertial frame
// It seems under-efficient to rotate direction and apply thrust
// instead of just rotating the whole thrust vector itself.
// However it has to be done that way to avoid numerical discrepancies with legacy tests.
return new Vector3D(thrust / s.getMass(),
maneuverAttitude.getRotation().applyInverseTo(direction));
Seems if introducing more numerical error is needed to make legacy tests pass then either the tolerances are too strict or the expected values in the legacy tests are wrong.
If the issue is backwards compatibility it would be reasonable to delay to a major release. But we usually don't consider different values of numerical noise to be backwards-incompatible.