Я хочу вычислить числа Пи от 13 трлн до 13,1 трлн.
Какой самый быстрый инструмент для этого?
Требования:
Вы можете вычислить энную двоичную цифру числа пи, используя формулу Плуффа :
Алгоритм — это самый быстрый способ вычислить n-ю цифру (или несколько цифр в окрестностях n-й); из-за этого при использовании нескольких машин это самый быстрый способ вычислить все цифры от 1 до n. Кроме того, на одной машине. Если размер памяти всех цифр от 1 до n вызывает перегрузку машины, это самый быстрый способ вычислить все цифры от 1 до n.
В Питоне :
>>> from decimal import Decimal as d, getcontext
>>> def bbp(n):
... return sum( 1/d(16**k) \
... * (4/d(8*k+1)-2/d(8*k+4)-1/d(8*k+5)-1/d(8*k+6)) \
... for k in xrange(n))
...
>>> print bbp(50)
3.141592653589793238462643381
>>>
>>> getcontext().prec = 70
>>> print bbp(50)
3.141592653589793238462643383279502884197169399375105820974944592246655
В результате создается впечатление, что вы ищете самую быструю реализацию формулы Плуффа. Я не видел никаких тестов, и это зависит от вашего оборудования (особенно GPU ).
Николя Рауль
Томас Веллер
Томас Веллер