Я хотел бы знать, есть ли способ повысить точность вычисления наклона. (Это произошло несколько месяцев назад here).Rejigging уравнение с плавающей точкой
Кажется, изменяя:
float get_slope(float dXa, float dXb, float dYa, float dYb) {
return (dXa - dXb)/(dYa - dYb);
}
в
float get_slope(float dXa, float dXb, float dYa, float dYb) {
return dXa/(dYa - dYb) - dXb/(dYa - dYb);
}
может быть улучшение. Предложения?
Редактировать: Точность, которую я добиваюсь, а не эффективность.
На каком языке вы используете? –
C. Но мне любопытно, как это может квалифицировать ответы людей. – Jamie
Кроме того: числа с плавающей точкой действительно странные. Чем ближе вы к нулю, тем больше точность вы получите. Под этим я подразумеваю, что поплавки могут представлять гораздо больше значений в диапазоне [0,0.1], чем в диапазоне [0,9,1]. Многие процессоры перейдут в «денормальный» режим около нуля. Некоторое время некоторые чипы Intel так резко сокращались, что имели дело с денонсациями, которые «денормальные всплески» появились в приложениях обработки сигналов (особенно в фильтрах LP), и люди рекомендовали AMD для обработки звука. Люди фактически добавили небольшое количество шума вблизи нуля, чтобы закодировать вокруг медленности. – Nosredna