Для моего детерминированного механизма физики мне нужно подтвердить, что вычисления с удвоениями на C# достаточно согласованы на нескольких платформах. Кто-нибудь знает, насколько разные функции отличаются от результатов? На моем компьютере как разрядное приложение для Windows 32, эти результаты (Примечание: Псевдо-код):Является ли двойная математика последовательной на нескольких платформах?
double x = 123.123;
x * 2 = 246.246
Math.Pow (x, 2) = 15159.273129
Math.Sqrt (x) = 11.0960803890383
Math.Sin (x) = -0.56537391969734
Я до сих пор не знаю, если одни и те же результаты будут появляться на других платформах или других языках (I используя C#). Если вам нужна дополнительная информация, я поставлю ее как можно быстрее. Пожалуйста, если кто-нибудь, у кого есть знания или время, чтобы помочь проверить вычисления на других платформах, помогите мне преодолеть эту неопределенность.
Это не точный дубликат, но вы можете получить некоторое представление о вопросе и ответах в [Согласование с плавающей точкой в кросс-платформе] (http://stackoverflow.com/questions/20963419/cross-platform-floating-point-consistancy). – Simon
http://stackoverflow.com/questions/28389634/is-double-math-deterministic-enough-for-physics-simulations http://stackoverflow.com/questions/7365790/how-can-floating-point-calculations- be-made-детерминированный http://stackoverflow.com/questions/20963419/cross-platform-floating-point-consistancy –
О, спасибо. Я проверю эти ссылки. – JPtheK9