Jump to content

алгоритм Чудновского

Алгоритм Чудновского собой быстрый метод вычисления цифр числа π , основанный на Рамануджана π представляет формулах . Издано братьями Чудновскими в 1988 году. [1] его использовали для вычисления числа π с точностью до миллиарда десятичных знаков. [2]

Он использовался при расчете мирового рекорда 2,7 триллионов цифр числа π в декабре 2009 года. [3] 10 триллионов цифр в октябре 2011 года, [4] [5] 22,4 триллиона цифр в ноябре 2016 года, [6] 31,4 триллиона цифр в сентябре 2018 г. – январе 2019 г., [7] 50 триллионов цифр 29 января 2020 года, [8] 62,8 триллиона цифр на 14 августа 2021 года, [9] 100 триллионов цифр 21 марта 2022 года, [10] и 105 триллионов цифр 14 марта 2024 года. [11]

Алгоритм [ править ]

Алгоритм основан на отрицательном числе Хегнера. , j -функция и на следующих быстро сходящихся обобщенных гипергеометрических рядах : [12]

Подробное доказательство этой формулы можно найти здесь: [13]


Это тождество похоже на некоторые формулы Рамануджана , включающие π , [12] и является примером серии Рамануджана-Сато .

Временная сложность алгоритма составляет . [14]

Оптимизации [ править ]

Техника оптимизации, используемая для вычислений мировых рекордов, называется бинарным расщеплением . [15]

Бинарное расщепление [ править ]

Фактор можно вынести из суммы и упростить до


Позволять и подставим это в сумму.


можно упростить до , так

из первоначального определения , так

Это определение не определено для , поэтому вычислите первый член суммы и используйте новое определение

Позволять и , так

Позволять и

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

Из первоначального определения ,

Рекурсивное вычисление функций [ править ]

Рассмотрим значение такой, что

Базовый вариант рекурсии [ править ]

Учитывать

Код Python [ править ]

import decimal


def binary_split(a, b):
    if b == a + 1:
        Pab = -(6*a - 5)*(2*a - 1)*(6*a - 1)
        Qab = 10939058860032000 * a**3
        Rab = Pab * (545140134*a + 13591409)
    else:
        m = (a + b) // 2
        Pam, Qam, Ram = binary_split(a, m)
        Pmb, Qmb, Rmb = binary_split(m, b)
        
        Pab = Pam * Pmb
        Qab = Qam * Qmb
        Rab = Qmb * Ram + Pam * Rmb
    return Pab, Qab, Rab


def chudnovsky(n):
    """Chudnovsky algorithm."""
    P1n, Q1n, R1n = binary_split(1, n)
    return (426880 * decimal.Decimal(10005).sqrt() * Q1n) / (13591409*Q1n + R1n)


print(f"1 = {chudnovsky(2)}")  # 3.141592653589793238462643384

decimal.getcontext().prec = 100 # number of digits of decimal precision
for n in range(2,10):
    print(f"{n} = {chudnovsky(n)}")  # 3.14159265358979323846264338...

Примечания [ править ]

См. также [ править ]

Ссылки [ править ]

  1. ^ Чудновский, Дэвид; Чудновский, Грегори (1988), Приближение и комплексное умножение по Рамануджану , Возвращение к Рамануджану: материалы столетней конференции
  2. ^ Варси, Карл; Дэнджерфилд, Ян; Фарндон, Джон; Гриффитс, Джонни; Джексон, Том; Патель, Мукул; Поуп, Сью; Паркер, Мэтт (2019). Книга по математике: большие идеи просто объяснены . Нью-Йорк: Дорлинг Киндерсли Лимитед . п. 65. ИСБН  978-1-4654-8024-8 .
  3. ^ Баруа, Наяндип Дека; Берндт, Брюс Дж.; Чан, Хэн Хуат (1 августа 2009 г.). «Серия Рамануджана для 1/π: Обзор» . Американский математический ежемесячник . 116 (7): 567–587. дои : 10.4169/193009709X458555 .
  4. ^ Да, Александр; Кондо, Сигэру (2011), 10 триллионов цифр числа Пи: пример суммирования гипергеометрических рядов с высокой точностью в многоядерных системах , технический отчет, факультет компьютерных наук, Университет Иллинойса, hdl : 2142/28348
  5. ^ Арон, Джейкоб (14 марта 2012 г.), «Конфликт констант в день числа Пи» , New Scientist
  6. ^ «22,4 триллиона цифр числа Пи» . www.numberworld.org .
  7. ^ «Google Cloud побил рекорд Pi» . www.numberworld.org/ .
  8. ^ «Пи-запись возвращается на персональный компьютер» . www.numberworld.org/ .
  9. ^ «Pi Challenge - попытка установления мирового рекорда FH Graubünden - FH Graubünden» . www.fhgr.ch. ​Проверено 17 августа 2021 г.
  10. ^ «Вычисление 100 триллионов цифр числа Пи в Google Cloud» . Cloud.google.com . Проверено 10 июня 2022 г.
  11. ^ Да, Александр Дж. (14 марта 2024 г.). «Хромая к новому рекорду числа Пи в 105 триллионов цифр» . NumberWorld.org . Проверено 16 марта 2024 г.
  12. ^ Jump up to: Перейти обратно: а б Баруа, Наяндип Дека; Берндт, Брюс К.; Чан, Хенг Хуат (2009), «Ряд Рамануджана для 1/ π : обзор», American Mathematical Monthly 116 ( 7): 567–587, doi : 10.4169/193009709X458555 , JSTOR   40391165 , MR   ,
  13. ^ Милла, Лоренц (2018), Подробное доказательство формулы Чудновского средствами базового комплексного анализа , arXiv : 1809.00533
  14. ^ «y-cruncher — Формулы» . www.numberworld.org . Проверено 25 февраля 2018 г.
  15. ^ Рэйтон, Джошуа (сентябрь 2023 г.), Как число π вычисляется до триллионов цифр? , YouTube
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ac931476fe4911c710e0810d7664aaeb__1717854420
URL1:https://arc.ask3.ru/arc/aa/ac/eb/ac931476fe4911c710e0810d7664aaeb.html
Заголовок, (Title) документа по адресу, URL1:
Chudnovsky algorithm - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)