Точный признак определителя в Java - PullRequest
0 голосов
/ 18 февраля 2012

Есть ли математическая библиотека Java для вычисления точного знака определителя?Эта библиотека должна поддерживать точные вычисления с конструктивными нулевыми границами, точным подходом и числовыми фильтрами для производительности.

Например: Когда я просто использую числовой тип Java BigDecimal для вычисления, возникает проблема с нулем.Если результат равен, например, 1.0E-101, это ноль?да или нет?На мой взгляд, решение, основанное на постоянной нулевой границе (например, 0,0E-100), является неточным и не надежным.

Спасибо за ответ.

Примечание: Лично,Я пробовал библиотеки JScience, Common Math, но у меня нет доказательств того, что эти библиотеки используют точные вычисления.

JScience предлагает Rational , но есть проблема с обратной операцией (0 / x не удалось).Также JScience предлагает Real, но есть проблема и с инверсией (Точность потеряна).

Кажется, что Common Math использует BigDecimal в неточном режиме.(см. BigReal ).Может быть, BigFraction точно, но у меня нет доказательств.

1 Ответ

0 голосов
/ 18 февраля 2012

Я предлагаю использовать BigDecimal.signum для проверки знака BigDecimal.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...