Проблемы точности при оценке числа Пи методом Машина - PullRequest
1 голос
/ 13 мая 2019

Мне нужно оценить число Пи до 100 знаков после запятой, используя метод Мачина, который заключается в следующем. 4 (4 (арктан (1/5)) - арктан (1/239)) = пи.

Эта формула, как известно, довольно быстро сходится к пи, при этом источники цитируют точность 72 знаков после десятичной точки в 50 итерациях / терминах.

Я могу достичь точности до 15 знаков после запятой, используя формулу Машина, и не могу понять, почему.

Я написал функцию для ряда Тейлора arctan (x), а затем использую эту функцию внутри другой функции, которая применяет формулу, которую я написал выше. Я также попытался установить более высокую точность с помощью модуля десятичных.

##This is the function for the taylor series of arctan(x)
def arctan(first_term, terms):
    k = 0
    array = []
    if k < 1:
        x = (((-1)**k)*(first_term)**((2*k)+1))/((2*k)+1)
        k = 1
        array.append(x)
    if k > 0:
        while k < terms:
            x = x + (((-1)**k)*(first_term)**((2*k)+1))/((2*k)+1)
            k += 1
            array.append(x)
        return array[-1]
##Here is the function for Machin's formula
def machinpi(first_term, first_term2, terms):
    x = 4*(arctan(first_term, terms))-(arctan(first_term2, terms))
    return x*4

Мачин известен оценкой числа Пи до 100 знаков после запятой вручную. Я пытаюсь выяснить, сколько терминов серии требуется для достижения этой точности. Тем не менее, я не могу найти ответ, если я не могу сначала сходиться к 100 десятичных знаков числа Пи. Используя формулу Мачина, я ожидаю, что она будет сходиться к 72 значениям после десятичного знака за 50 итераций.

1 Ответ

2 голосов
/ 13 мая 2019

Хорошо, я решил эту проблему.Я не знаю, почему это происходит в python, но вызов функции, которую я написал, как этот machinpi (десятичное число (1/5), десятичное число (1/239), условия), не равно этому, что имеет точность, которую я ожидаю machinpi (Десятичное число (1) / Десятичное число (5), Десятичное число (1) / Десятичное число (239), слагаемые)

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