Как увеличить точность переменных в Dyalog APL?

StackOverflow https://stackoverflow.com/questions/971246

  •  13-09-2019
  •  | 
  •  

Вопрос

Мне нужно работать с точностью в Dyalog APL.Я знаю, что значение ⎕PP задает точность, но я не могу увеличить его более чем на 18, поэтому я не могу получить большую точность, чем 18 цифр, и мне нужно оперировать большими числами.Есть ли какой-нибудь способ повысить точность?

Это было полезно?

Решение

Версия 13.0 Dyalog APL, которая в настоящее время находится в стадии бета-тестирования и запланирована к выпуску в конце марта, позволяет пользователям решать, использовать ли старый двоичный формат двойной точности IEEE-754, который имеет максимальную точность 16 цифр, или IEE-754-2008 128- разрядные десятичные числа с плавающей запятой.Новый формат имеет точность 34 цифры, а также позволяет избежать ряда проблем с округлением, вызванных старым двоичным форматом.Вычисления с использованием нового формата будут выполняться значительно медленнее, если только вы не используете APL на оборудовании IBM POWER, которое имеет аппаратную поддержку нового формата с P6.Свяжитесь с нами sales@dyalog.com если вы хотите принять участие в программе бета-тестирования.

Версия 13.0 также добавляет поддержку комплексных чисел в Dyalog APL - но только с использованием пары двоичных чисел двойной точности - десятичных комплексных чисел пока не будет.

Мы работаем над поддержкой целых чисел неограниченной точности и рациональных чисел.Прототип этого устройства может появиться в 2011 году, но мы не ожидаем, что он будет выпущен в серийное производство самое раннее до 2012 года.

Мортен Кромберг (технический директор, Dyalog Ltd)

Другие советы

Quad PP предназначен для "точности печати" и применим только для отображения чисел в сеансе Dyalog APL и не имеет ничего общего с фактической точностью чисел.

Существует прилагаемая рабочая область с именем "dfns", которая содержит функции для работы с большими числами.

Просто чтобы продолжить ответ Мортена, Dyalog APL действительно поддерживает 128-битную десятичную систему счисления с плавающей запятой четырехкратной точности, поскольку версия 13.0 была выпущена еще в 2011 году!Вы можете переключить формат с плавающей запятой, установив системной переменной ⎕FR значение 645 (для двоичной системы счисления двойной точности) или 1287 (для десятичной системы счисления четырехзначной точности). Попробуйте это онлайн!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top