Проверка на равенство значений с плавающей точкой: есть ли стандартное имя для константы «точности»? - PullRequest
0 голосов
/ 15 июля 2010

Я только что прочитал этот хороший ответ о том, как сравнивать значения с плавающей точкой на равенство .Вместо прямого сравнения с 0 предлагается следующее (слегка измененное мной):

const double epsilon = 1e-5;

double d = ...;
if (Math.Abs(d) < epsilon)
{
    // d is considered equal to 0.
}

Мой вопрос касается названия переменной epsilon 1) . Является ли "epsilon" общепринятым именем для определения точности чисел с плавающей запятой? (… которое является наименьшим различием между любыми двумя значениями, которые считаются разными числами)?

Поскольку приведенный выше код всегда легко понять из-за его простоты, это может показаться несущественным.Но я часто спотыкался об этой проблеме именования и хотел бы раз и навсегда узнать, как назвать эту точность постоянной, так, чтобы другие, читающие мой код, знали, что предназначено.

1) Мне известно, что эпсилон ( ε для краткости или e ) часто используется для обозначения отклонений илиошибки, например, в статистике (регрессионный анализ).

1 Ответ

0 голосов
/ 15 июля 2010

Эпсилон - хорошее имя, если вы математик - незначительно. Маленькое значение лучше, если вы многословный нормальный человек.:)

...