Калькулятор GNOME, использующий MPFR, начиная с версии 3.15.4. | |
Разработчики) | Проект GNU ( INRIA и другие) |
---|---|
изначальный выпуск | 4 февраля 2000 г . |
Стабильный выпуск | 4.1.0 / 10 июля 2020 г . |
Репозиторий | |
Написано в | C |
Операционная система | Кроссплатформенность |
Тип | Математическое программное обеспечение |
Лицензия | LGPL |
Интернет сайт | www |
GNU Multiple точности с плавающей точкой Надежная библиотека ( GNU MPFR ) является GNU портативный C библиотека для произвольной точности двоичном с плавающей точкой расчета с правильным округлением , на основе GNU Multi-Precision Library . [1] [2]
Вычисления MPFR эффективны и имеют четко определенную семантику: функции полностью определены для всех возможных операндов, и результаты не зависят от платформы. [2] Это делается путем копирования идей из стандарта ANSI / IEEE-754 для арифметики с плавающей запятой фиксированной точности (в частности, правильное округление и исключения). Точнее, его основные особенности:
- Поддержка специальных чисел: нулей со знаком (+0 и -0), бесконечности и не-числа (поддерживается одиночный NaN).
- Каждое число имеет свою точность (в битах, поскольку MPFR использует основание 2). Результаты с плавающей запятой правильно округлены до точности целевой переменной в одном из пяти поддерживаемых режимов округления (включая четыре из IEEE 754-1985 ).
- Поддерживаемые функции: MPFR реализует все математические функции из C99 и другие обычные математические функции: логарифм и экспоненту с натуральным основанием, основанием 2 и основанием 10, функции log (1 + x) и exp (x) −1 (
log1p
иexpm1
), шесть тригонометрических и гиперболических функций и их обратные, гамма , дзета и функции ошибок , среднее арифметико-геометрическое , степенная (x y ) функция. Все эти функции правильно округлены по всему диапазону. - Субнормальные явления не поддерживаются, но их можно эмулировать с помощью
mpfr_subnormalize
функции.
MPFR не может отслеживать точность чисел во всей программе или выражении; это не его цель. Пакеты интервальной арифметики, такие как Arb , MPFI , или реализации Real RAM, такие как iRRAM , которые могут быть основаны на MPFR, могут делать это за пользователя.
MPFR зависит от библиотеки арифметических операций с множественной точностью (GMP) GNU .
MPFR необходим для создания Коллекции компиляторов GNU (GCC). [3] Другое программное обеспечение использует MPFR, такое как ALGLIB , CGAL , FLINT , GNOME Calculator , реализация языка Julia , система компьютерной алгебры Magma , Maple , GNU MPC и GNU Octave .
Ссылки [ править ]
- ^ Fousse, L .; Hanrot, G .; Lefèvre, V .; Pélissier, P .; Циммерманн, П. (2007). «MPFR: двоичная библиотека с плавающей запятой множественной точности с правильным округлением». Транзакции ACM на математическом программном обеспечении . 33 (2): 13: 1–15. DOI : 10.1145 / 1236463.1236468 . S2CID 9641003 .
- ^ a b Хайэм, Ник (8 октября 2015 г.). «Рост арифметики смешанной точности» . Проверено 23 мая 2020 года .
- ^ «Серия выпусков GCC 4.3: изменения, новые функции и исправления» . 2012-11-02 . Проверено 25 сентября 2013 года .
Внешние ссылки [ править ]
- Официальный сайт MPFR
- Страница проекта MPFR