Malintent
Veteran Member
My second Leading Petty officer, a guy trained in the maintenance of nuclear weapons and their guidance systems, maintained that people act crazy during the full moon because of the increased gravitational attraction... The moon's bigger, so it pulls harder on the human brain and... And... um.
Same guy... We used to get weather reports for the conditions over our targets. Wind speed, direction, air density. Funny thing was, the computer that generated the messages sometimes sent out a -000 value. I came to understand that if a value was negative, it would stay negative until a positive value was entered. So if a -002 wind stopped blowing, it dropped to -000, then might became +001 the next day. If it dropped again, it would go from +001 to +000
But the computer on board the sub wasn't programmed for negative zero. If we typed in -000, it would change it to +000. . PO Idiot did a spot check of my procedure one day, caught that the reader said 'minus zero zero zero' and when I went to verify, I said 'plus zip zip zip.' Ordered us to start troubleshooting the problem.
There was no problem. Nothing to troubleshoot. The system was working. This issue Had quite literally ZERO impact on the missile's flight. A zero velocity wind meant the missile made zero flight corrections to reach the target, whether or not it was positive or negative zero. And it wasn't a rounding error, the computer ONLY got the numbers we typed in, not like there was a value behind the decimal that we just couldn't see.
He threatened to pull my supervisor quals because I refused to troubleshoot a NOTAPROBLEM condition. I pointed out that if I was off the watchbill, he'd have to cover more hours, and his leisure time would be cut in half. He didn't punish me, but he did grumble quite a bit...
In Unreal engine, a video game development tool, it is possible to end up with an internally calculated value of -0.0 for one or more vector dimensions. It happens quite a lot when rotating a 3d object... sounds like it is the exact same deal you observed in your system... both are doing vector math and arriving at 0 from a negative value. It causes no harm in UE.. .it is equivalent to +0.0. HOWEVER, when calculating offsets in animation sequences, if you ENTER -0.0 as the value of one of the dimensions of an origin point, unexpected behavior results. so, in this particular engine, entering a value of -0.0 is invalid, but deriving an internally calculated number through a transformation as -0.0 IS valid. It's one thing to have a display error, and another to have a math error.