Sir Vivor
Well-Known Member
My first ever request for critique, for my first ever bit of (science) fiction..
Thanks in advance to anyone reading this.
=================================
The second of the new course changes contains:
Trajectory [UPDATED]: Closest approach [3.2-4.6] x 103 km, ETA April 1 2038
Risk: High
Alan is unaware of his body's reaction, but his bloodstream instantly receives an injection of adrenaline from his adrenal glands. Alan is wide awake now, and won't be needing that initial coffee after all, "Jikes, the second update is getting awfully close to us, no?" Joan and Guy nod. Guy's celestial mechanics brain doesn't accept what the computer is telling them though: "But this is impossible! I've already done a simulation on 496's course over the past two weeks, this asteroid hasn't passed through any gravity anomalies, no Apophis-style gravitational keyhole, nothing of the kind. Our probes can fly like that, every time they do course corrections, but not an asteroid. I also checked some of the observational logs, there is nothing that even smells of any possible collisions that could have nudged the asteroid." Alan sees the opportunity for some on-the-spot humor: "What about Elon Musk's Tesla sports car.. you remember how SpaceX launched that car into orbit around the sun?" Guy had already mentioned his puzzlement at the asteroid's course changes at home, and his 13-year old daughter actually proposed exactly the same possibility: SpaceX's car collided with the asteroid. Guy therefore had a pre-cooked reply to Alan's jest: "Even if the Tesla was traveling at 100 kilometers a second, which it isn't, its impulse would be a millionth of the asteroid's impulse, so it would have no effect on the course." Alan adds, "Plus there's only one gleaming red car out there, and we've seen several course changes by now." Guy continues, "Exactly. So, don't be offended by asking, but you wrote CoCa, right?" Alan's eyes widened and a slightly offended look froze on his face, "I sure did, what are you thinking of?" Joan again took over, as if Guy and Joan were trying a good cop, bad cop routine on Alan: "You know software is never bug free, so we were wondering if you could maybe look at the CoCa logs.. you never know." Alan protested, "Come on, Coca has been churning out thousands of mails, based on trillions of calculations over the last, what?, five or six years since the last version update? This thing is rock solid!" Joan asked again, "We just want to eliminate all possibilities, one by one, and our JPL experience taught us that we often mess up ourselves, no?" Alan knew Joan was totally right: 99 times out of a hundred, when software goes wrong, it's because of a bug in home-grown software, not a bug in anything third party or external. Alan accepts Joan's argument - she's rarely wrong anyway - and navigates for CoCa's logs. "OK, I'll start by doing a global search for 'error', OK?" Joan and Guy both thank Alan for the cooperation. "Here we go, not a single 'error' string anywhere in the past month's system logs." Guy suggests another search: "How about mathematical problems, divisions by zero, out of range stuff, things like that?" Alan gave several searches a whirl, then suddenly a search produced several dozen identical hits: "[Problem] Loss of Accuracy." Joan and Guy looked at each other, then at Alan. Alan was taken aback by the log message, because he had never seen anything like that before in CoCa's logs, and he knew CoCa like the back of his hand. "No idea what this means, or whether it's relevant to our asteroid. Will you give me some time to figure out what's going on?" Joan and Guy were happy to give Alan some peace and quiet, and left for their respective cubicles.
Later that day, Joan and Guy were sitting opposite each other in the canteen. Alan strode towards them with a pleased look on his face. "Kind of fixed the problem we saw this morning." "Great!" says Joan. Alan launched in a detailed, highly technical explanation: "The Accuracy loss message was indeed a problem. CoCa was written with a 128-bit I triple E maths library. Do you guys know about Institute of Electrical and Electronics Engineers floating point stuff?" Guy nodded yes, Joan shook no. "OK, for Joan, quick recap on the basics: all floating point calculations in a machine follow some IEEE standard. In essence you have different standards to cater for different numeric precision levels. In the early days of computing, when bits were really expensive, people used the 32-bit IEEE standard. Then when 64-bit CPUs became as cheap as cereals, everyone migrated to 64-bit IEEE. CoCa was written about ten years ago using the new - at the time - 128-bit standard. Since then the IEEE have also published a brand new 256-bit floating point math library standard, but I had never upgraded CoCa to use it, because 128-bit should give us more than enough accuracy for our calculations... except, except, except".. Alan teased Joan and Guy before unveiling the tasty surprise.. "except when our calculations have to deal with an object that experiences huge accelerations in comparison with a normal rock, which only experiences extremely weak accelerations as it comes close to the earth, or the moon." Guy nods, "OK, so our 496 friend is clearly being accelerated due to an unknown force, and our calculations warned us that the acceleration component was loosing accuracy because the IEEE standard is all about sacrificing accuracy for magnitude, or vice versa." "You got it!", Alan proclaims triumphantly, while pointing to Guy. Joan frowned and said "Hmm.. will need to have a Wikipedia read of all this IEEE jargon." Alan continued, "That was the good news. Wanna hear the bad news?" His two colleagues nodded. "The bad news is that I re-ran all the NEO input data for the past fortnight in the new CoCa version, and, apart from the logs, which now don't contain the accuracy warning anymore, all the generated emails come out identical.
Thanks in advance to anyone reading this.
=================================
The second of the new course changes contains:
Trajectory [UPDATED]: Closest approach [3.2-4.6] x 103 km, ETA April 1 2038
Risk: High
Alan is unaware of his body's reaction, but his bloodstream instantly receives an injection of adrenaline from his adrenal glands. Alan is wide awake now, and won't be needing that initial coffee after all, "Jikes, the second update is getting awfully close to us, no?" Joan and Guy nod. Guy's celestial mechanics brain doesn't accept what the computer is telling them though: "But this is impossible! I've already done a simulation on 496's course over the past two weeks, this asteroid hasn't passed through any gravity anomalies, no Apophis-style gravitational keyhole, nothing of the kind. Our probes can fly like that, every time they do course corrections, but not an asteroid. I also checked some of the observational logs, there is nothing that even smells of any possible collisions that could have nudged the asteroid." Alan sees the opportunity for some on-the-spot humor: "What about Elon Musk's Tesla sports car.. you remember how SpaceX launched that car into orbit around the sun?" Guy had already mentioned his puzzlement at the asteroid's course changes at home, and his 13-year old daughter actually proposed exactly the same possibility: SpaceX's car collided with the asteroid. Guy therefore had a pre-cooked reply to Alan's jest: "Even if the Tesla was traveling at 100 kilometers a second, which it isn't, its impulse would be a millionth of the asteroid's impulse, so it would have no effect on the course." Alan adds, "Plus there's only one gleaming red car out there, and we've seen several course changes by now." Guy continues, "Exactly. So, don't be offended by asking, but you wrote CoCa, right?" Alan's eyes widened and a slightly offended look froze on his face, "I sure did, what are you thinking of?" Joan again took over, as if Guy and Joan were trying a good cop, bad cop routine on Alan: "You know software is never bug free, so we were wondering if you could maybe look at the CoCa logs.. you never know." Alan protested, "Come on, Coca has been churning out thousands of mails, based on trillions of calculations over the last, what?, five or six years since the last version update? This thing is rock solid!" Joan asked again, "We just want to eliminate all possibilities, one by one, and our JPL experience taught us that we often mess up ourselves, no?" Alan knew Joan was totally right: 99 times out of a hundred, when software goes wrong, it's because of a bug in home-grown software, not a bug in anything third party or external. Alan accepts Joan's argument - she's rarely wrong anyway - and navigates for CoCa's logs. "OK, I'll start by doing a global search for 'error', OK?" Joan and Guy both thank Alan for the cooperation. "Here we go, not a single 'error' string anywhere in the past month's system logs." Guy suggests another search: "How about mathematical problems, divisions by zero, out of range stuff, things like that?" Alan gave several searches a whirl, then suddenly a search produced several dozen identical hits: "[Problem] Loss of Accuracy." Joan and Guy looked at each other, then at Alan. Alan was taken aback by the log message, because he had never seen anything like that before in CoCa's logs, and he knew CoCa like the back of his hand. "No idea what this means, or whether it's relevant to our asteroid. Will you give me some time to figure out what's going on?" Joan and Guy were happy to give Alan some peace and quiet, and left for their respective cubicles.
Later that day, Joan and Guy were sitting opposite each other in the canteen. Alan strode towards them with a pleased look on his face. "Kind of fixed the problem we saw this morning." "Great!" says Joan. Alan launched in a detailed, highly technical explanation: "The Accuracy loss message was indeed a problem. CoCa was written with a 128-bit I triple E maths library. Do you guys know about Institute of Electrical and Electronics Engineers floating point stuff?" Guy nodded yes, Joan shook no. "OK, for Joan, quick recap on the basics: all floating point calculations in a machine follow some IEEE standard. In essence you have different standards to cater for different numeric precision levels. In the early days of computing, when bits were really expensive, people used the 32-bit IEEE standard. Then when 64-bit CPUs became as cheap as cereals, everyone migrated to 64-bit IEEE. CoCa was written about ten years ago using the new - at the time - 128-bit standard. Since then the IEEE have also published a brand new 256-bit floating point math library standard, but I had never upgraded CoCa to use it, because 128-bit should give us more than enough accuracy for our calculations... except, except, except".. Alan teased Joan and Guy before unveiling the tasty surprise.. "except when our calculations have to deal with an object that experiences huge accelerations in comparison with a normal rock, which only experiences extremely weak accelerations as it comes close to the earth, or the moon." Guy nods, "OK, so our 496 friend is clearly being accelerated due to an unknown force, and our calculations warned us that the acceleration component was loosing accuracy because the IEEE standard is all about sacrificing accuracy for magnitude, or vice versa." "You got it!", Alan proclaims triumphantly, while pointing to Guy. Joan frowned and said "Hmm.. will need to have a Wikipedia read of all this IEEE jargon." Alan continued, "That was the good news. Wanna hear the bad news?" His two colleagues nodded. "The bad news is that I re-ran all the NEO input data for the past fortnight in the new CoCa version, and, apart from the logs, which now don't contain the accuracy warning anymore, all the generated emails come out identical.