4 ms·
From the linked James Gleick article: "the programmers had decided that this particular velocity figure would never be large enough to cause trouble. After all
by youngerdryas 14y ago
From the linked James Gleick article:
"the programmers had decided that this particular velocity figure would never be large enough to cause trouble. After all, it never had been before. Unluckily, Ariane 5 was a faster rocket than Ariane 4. One extra absurdity: the calculation containing the bug, which shut down the guidance system, which confused the on-board computer, which forced the rocket off course, actually served no purpose once the rocket was in the air. Its only function was to align the system before launch. So it should have been turned off. But engineers chose long ago, in an earlier version of the Ariane, to leave this function running for the first 40 seconds of flight -- a "special feature" meant to make it easy to restart the system in the event of a brief hold in the countdown."
- michielvoo 14y agoThat seems like a contradiction: it was caused by a calculation regarding velocity, but that calculation served no purpose once in the air. Based on the quote I* have to agree with the developer then: this particular 'horizontal velocity' figure would never be large enough to cause overflow, it would always be zero since the rocket should still be on the platform. So maybe the existence of the routine was the root cause, and not so much the potential for overflow inside the routine? * I am not a rocket scientist
- Martimus 14y agoYeah it certainly seems like that based on the way it's written. However, it does say "horizontal velocity of the rocket with respect to the platform". Perhaps it had something to do with calibration prior to launch. The report states: "The Operand Error occurred due to an unexpected high value of an internal alignment function result called BH, Horizontal Bias, related to the horizontal velocity sensed by the platform. This value is calculated as an indicator for alignment precision over time."
- InclinedPlane 14y ago> "this particular 'horizontal velocity' figure would never be large enough to cause overflow, it would always be zero since the rocket should still be on the platform." Except the Earth is not stationary, nor is the surface of the Earth moving at a constant velocity.
- CognitiveLens 14y agoRegardless, the Earth didn't substantially speed up between Ariane 4 and 5, so although the horizontal velocity figure might not be zero, it would at least be approximately constant on the platform.
- InclinedPlane 14y agoThe point I was making is that it is necessary to calibrate an inertial guidance system to the ground, you can't just pretend that the launchpad is stationary. More so, because a launch vehicle's guidance will become entirely internal (dependent only on the on board systems and commands sent from mission control) well before launch it's not so easy to have some software routines running on the rocket which don't run during an actual launch. I imagine it was far easier to simply use a timer to allow the routine in question to run up through T+40s than to attempt to programatically trigger deactivating the routine in the event the vehicle actually left the pad. More so given that running the routine through part of an actual launch, on an Ariane 4 at least, had never been problematic before. The problem was that nobody had formally detailed all of the assumptions and risks for every part of the code, so when the conditions changed and those assumptions became faulty nobody was the wiser because nobody was aware they were actually making such an assumption about the speed of the rocket.