Рассказы о математике с примерами на языках Python и C - [4]
>Шаг | >Значение | >Погрешность |
>1 | >3.5 | >0.25 |
>2 | >3.464285714285714 | >0.00127 |
>3 | >3.464101620029455 | >3.3890E-8 |
>4 | >3.464101615137754 | >2.392873369E-17 |
Результат: √12 = 3,464101615137754
Как можно видеть, сделав всего 4 шага, можно получить √12 с достаточной точностью, задача вполне посильная даже для ручных расчетов 15 века.
Наконец, запрограммируем вторую часть алгоритма — собственно вычисление Пи.
>sum = Decimal(1)
>sign = -1
>for p in range(1,32):
> sum += Decimal(sign) / Decimal((2 * p + 1)*(3**p))
> sign = -sign
> print(p, sqrt12 * sum)
>print("Result:", sqrt12 * sum)
Результаты работы программы:
>Шаг Значение
>1 3.079201435678004077382126829
>2 3.156181471569954179316680000
>3 3.137852891595680345522738769
>4 3.142604745663084672802649458
>5 3.141308785462883492635401088
>6 3.141674312698837671656932680
>7 3.141568715941784242161823554
>8 3.141599773811505839072149767
>9 3.141590510938080099642754230
>10 3.141593304503081513121460820
>11 3.141592454287646300323593597
>12 3.141592715020379765581606212
>13 3.141592634547313881242713430
>14 3.141592659521713638451335328
>15 3.141592651733997585128216671
>16 3.141592654172575339199092210
>17 3.141592653406165187919674184
>18 3.141592653647826046431202391
>19 3.141592653571403381773710565
>20 3.141592653595634958372427485
>21 3.141592653587933449530974820
>22 3.141592653590386522717511595
>23 3.141592653589603627019680710
>24 3.141592653589853940610143646
Уже на 24-м шаге мы получаем искомые 11 знаков числа Пи. Задача явно требовала больше времени чем сейчас, но вполне могла быть решена в средние века.
Современные формулы не столь просты внешне, зато работают еще быстрее. Для примера можно привести формулу Чудновского:
Для сравнения, те же 24 итерации по этой формуле дают число Пи со следующей точностью:
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249.
Если сделать 100 итераций и вычислить 1000 знаков Пи, то можно увидеть так называемую «точку Фейнмана»:
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420207
Это последовательность «999999», находящаяся на 762-м знаке от начала. Желающие могут поэкспериментировать дальше самостоятельно с помощью программы на языке Python:
>from math import factorial
>from decimal import *
>def chudnovsky(n):
> pi = Decimal(0)
> k = 0
> while k < n:
> pi += (Decimal(-1)**k) * (Decimal(factorial(6 * k)) / ((factorial(k)**3) * (factorial(3*k))) * (13591409 + 545140134 * k) / (640320**(3 * k)))
> k += 1
> print("Шаг: {} из {}".format(k, n))
> pi = pi * Decimal(10005).sqrt() / 4270934400
> pi = pi**(-1)
> return pi
># Требуемая точность (число знаков)
>N = 1000
>getcontext().prec = N
>val = chudnovsky(N / 14)
>print(val)
Эта программа не оптимизирована, и работает довольно-таки медленно, но для ознакомления с сутью алгоритма этого вполне достаточно. Кстати, с помощью формулы Чудновского два инженера Александр Йи и Сингеру Кондо в 2010 году объявили о новом мировом рекорде вычисления Пи на персональном компьютере: 5 трлн знаков после запятой. Компьютеру с 12 ядрами, 97 Гб памяти и 19 жесткими дисками потребовалось 60 дней для выполнения расчетов.
На этом мы закончим с числом Пи, хотя с ним конечно, связано куда больше интересных фактов. Например 3 марта (т. е. 03.14) отмечается международный «день числа Пи», ну а другие факты читатели могут поискать самостоятельно.
4. Вычисление радиуса Земли
О том, что Земля круглая сегодня знает каждый школьник, и никого не удивить таким видом планеты из космоса.
Однако в историческом плане, увидеть планету свысока мы смогли совсем-совсем недавно. Как же мог греческий ученый Эратосфен измерить радиус Земли, в 240 году до нашей эры? Оказывается мог, используя 2 научных «инструмента» — транспортир и верблюда, ну и разумеется, математику.
Эратосфен жил в Александрии — крупнейшем городе того времени, центром науки и искусств древнего мира. В Александрии по преданию, находился маяк высотой 120 метров — даже сегодня такое сооружение не просто построить, а в то время маяк считался одним из 7 чудес света. Эратосфен же был не только ученым, но и хранителем Александрийской библиотеки, содержащей до 700000 книг.
За последнее столетие одно из центральных мост в математической науке заняла созданная немецким математиком Г. Кантором теория бесконечных множеств, понятия которой отражают наиболее общие свойства математических объектов. Однако в этой теории был вскрыт ряд парадоксов, вызвавших у многих видных ученых сомнения в справедливости ее основ. В данной книге излагается в популярной форме, какими путями шла человеческая мысль в попытках понять идею бесконечности как в физике, так и в математике, рассказывается об основных понятиях теории множеств, истории развития этой науки, вкладе в нее русских ученых. Книга предназначена для широких кругов читателей, желающих узнать, как менялось представление о бесконечности, чем занимается теория множеств и каково современное состояние этой теории.
Как приобщить ребенка к математике и даже сделать так, чтобы он ее полюбил? Замечательные британские популяризаторы науки Роб Истуэй и Майк Эскью нашли веселый и легкий путь к детскому сердцу, превратив страшное пугало – математику – в серию увлекательных игр для детей от 4 до 14 лет. Пусть ваш ребенок исподволь овладевает математической премудростью, играя изо дня в день в угадайку, числовые прятки, двадцаточку и зеленую волну. Вы сможете играть за столом, в очереди к врачу, в магазине, на прогулке, используя подручный счетный материал: машины на стоянке, товары на полках супермаркета, мотоциклистов на дороге… И конечно, ничто не мешает вам переиначивать придуманные авторами математические забавы на свой лад, приспосабливая их ко вкусам и потребностям собственных детей.
Несмотря на загадочное происхождение отдельных своих элементов, математика не рождается в вакууме: ее создают люди. Некоторые из этих людей демонстрируют поразительную оригинальность и ясность ума. Именно им мы обязаны великими прорывными открытиями, именно их называем пионерами, первопроходцами, значимыми фигурами математики. Иэн Стюарт описывает открытия и раскрывает перед нами судьбы 25 величайших математиков в истории – от Архимеда до Уильяма Тёрстона. Каждый из этих потрясающих людей из разных уголков мира внес решающий вклад в развитие своей области математики.
В книге развита теория квантового оптоэлектронного генератора (ОЭГ). Предложена модель ОЭГ на базе полуклассических уравнений лазера. При анализе доказано, что главным источником шума в ОЭГ является спонтанный шум лазера, обусловленный квантовой природой. Приводятся схемы и экспериментальные результаты исследования малошумящего ОЭГ, предназначенного для применения в различных областях военно-космической сферы.
Произведения Э. Эбботта и Д. Бюргера едины по своей тематике. Авторы в увлекательной форме с неизменным юмором вводят читателя в русло важных геометрических идей, таких, как размерность, связность, кривизна, демонстрируя абстрактные объекты в различных «житейских» ситуациях. Книга дополнена научно-популярными статьями о четвертом измерении. Ее с интересом и пользой прочтут все любители занимательной математики.
Любую задачу можно решить разными способами, однако в учебниках чаще всего предлагают только один вариант решения. Настоящее умение заключается не в том, чтобы из раза в раз использовать стандартный метод, а в том, чтобы находить наиболее подходящий, пусть даже и необычный, способ решения.В этой книге рассказывается о десяти различных стратегиях решения задач. Каждая глава начинается с описания конкретной стратегии и того, как ее можно использовать в бытовых ситуациях, а затем приводятся примеры применения такой стратегии в математике.