Multiprecision Python библиотека, которая хорошо работает с boost::multiprecision или другими опциями?

Я работаю над проектом, который вращается вокруг "точных" чисел с несколькими точностями, в частности это приложение на основе Мандельброта, но с изюминкой, которая требует приличного соответствия между выходными данными (быстрого) модуля расширения C++ py (boost, cython или другие...) и чистые модули Python, которые могут захотеть его использовать.

Прямо сейчас я использую boost::multiprecision, чтобы обернуть необработанный тип MPFR, и да, если бы я просто хотел передать mpfr_t в python, это было бы одно. Тем не менее, для этого приложения мне нужно сохранить результат модуля C++ в виде строки, которая будет позже интерпретироваться модулем Python, и должна дать тот же номер.

Предполагается, что BigFloat является оболочкой Python для MPFR, но он не интерпретирует строковый литерал с плавающей запятой точности X точно так же, как метод boost::multiprecision data().

Кто-нибудь знает комбинацию библиотек плюс подход, который приводит к точному соответствию между строковыми литералами C++ и Python чисел с плавающей точкой произвольной точности?

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

1 ответ

Решение

Я поддерживаю gmpy2, который является оболочкой Python для MPFR и MPC (и GMP). Если вы можете привести пример, я могу помочь.

Другие вопросы по тегам