Jest to po raz kolejny Pi Day (14 marca – co jest jak pierwsze cyfry pi: 3 i 14). Zanim przejdę do tegorocznych obchodów liczby pi, pozwólcie, że podsumuję kilka najważniejszych rzeczy na temat tej niesamowitej liczby.
- Poza USA, Dzień Liczby Pi powinien prawdopodobnie przypadać 22 lipca (22/7)- ten ułamek jest zaskakująco dobrym oszacowaniem liczby pi.
- Możesz znaleźć wartość liczby pi za pomocą masy i sprężyny.
- Wartość pi jest związana z lokalnym polem grawitacyjnym.
- Możesz znaleźć wartość pi używając liczb losowych (ta jest moją ulubioną).
- I wreszcie – istnieje związek między pi, e, 1, 0 i i (liczba urojona).
Ale dzisiaj będę obliczał pi za pomocą całki numerycznej. Co to w ogóle znaczy? Zacznę od przykładu, jak znaleźć pole powierzchni półokręgu?
Pole powierzchni okręgu to pi razy promień podniesiony do kwadratu. To jest połowa okręgu o promieniu 1 (bez jednostek) taka, że miałaby pole pi/2. Jeśli znajdę obszar za pomocą jakiejś innej metody, mogę po prostu pomnożyć ten obszar przez 2 i uzyskać pi. That’s the plan.
Ale jak znaleźć powierzchnię jakiegoś kształtu-lub jakiegokolwiek kształtu dla tej sprawy? Tu właśnie przydaje się rachunek. Mogę znaleźć pole powierzchni półkola, sumując pole powierzchni kilku prostokątów. Okazuje się, że znalezienie pola powierzchni prostokąta jest całkiem proste. Pozwól mi tylko narysować kilka prostokątów w tym półokręgu, abyś mógł zobaczyć, co mam na myśli.
Powierzchnię każdego z tych chudych prostokątów można znaleźć za pomocą wzoru „podstawa razy wysokość”. Prostokąt ma wysokość „y” i podstawę „dx”, gdzie dx jest po prostu jakąś arbitralną długością wzdłuż osi x. Mogę znaleźć rzeczywistą wartość wysokości, ponieważ wierzchołek prostokąta trafia na okrąg, gdzie tę wysokość można znaleźć z równania okręgu.
Teraz muszę tylko zsumować wszystkie te prostokąty – bum, to jest powierzchnia połowy okręgu. Mogę to zapisać jako sumę obszarów w ten sposób:
Ale zaraz! Czy to nie jest słabe przybliżenie do rzeczywistej powierzchni okręgu (półokręgu)? Tak, to prawda – ale to naprawdę zależy od szerokości tych małych prostokątów powierzchni. W rzeczywistości, jeśli wezmę granicę jak szerokość (dx) idzie do zera, wtedy dostanę dokładny obszar. To jest właściwie definicja całki w rachunku, ale zachowam to na inny dzień. Zamiast tego wykonamy obliczenia numeryczne, po prostu sumując pole powierzchni kilku prostokątów. Mógłbyś oczywiście zrobić to ręcznie, ale to mogłoby się znudzić. Zamiast tego, zróbmy to za pomocą programu komputerowego. Yup.
Oto obliczenia numeryczne w pythonie. Możesz przejść dalej i uruchomić kod, naciskając przycisk „play”, ale poniżej podam kilka komentarzy do kodu.
Możesz zmienić kod, jeśli cię to uszczęśliwi – oto kilka rzeczy do rozważenia.
- To jest obliczenie numeryczne. Oznacza to, że program zajmuje się tylko liczbami. Technicznie rzecz biorąc, powierzchnia powinna mieć jednostki m2 lub coś w tym stylu, ale nie tutaj. Tylko liczby.
- Dla pętli w pythonie, obejmuje wszystko, co jest tab-indented jako część pętli. Po dedent, to już nie jest w pętli.
- Linia 18 powinna wyglądać dziwnie, ponieważ tak jest. Jeśli uważasz to za równanie algebraiczne, A powinno się anulować, ponieważ znajduje się po obu stronach równania – ale to nie jest równanie. W pythonie (i większości innych języków), „=” oznacza „wyrównaj do”. Ta linia bierze starą wartość A, dodaje nowe rzeczy, a następnie czyni ją nową wartością A.
To początkowe obliczenie ma dx równe 0,1. Oznacza to, że będzie tylko 20 prostokątów, aby dodać i uzyskać obszar półokręgu. Dzięki temu otrzymam przybliżoną wartość pi równą 3.10452 – co oczywiście nie jest dokładną wartością pi. Oczywiście mogę dokonać lepszego oszacowania, tworząc prostokąty o mniejszej szerokości. Powinieneś spróbować tego, zmieniając powyższy kod (wskazówka: zmień wartość dla dx). Ponieważ jednak nie mogę tego zostawić, oto wykres wartości pi dla różnych rozmiarów kroków.
Może to nie jest najlepszy wykres, ale na razie jest wystarczająco dobry. Jeśli chcesz sprawdzić kod dla tego wątku, tutaj idziesz. Ale w końcu, wartość zbliża się do oczekiwanej wartości pi. Ta metoda może nie da ci miliona cyfr liczby pi, ale może przynajmniej nauczysz się czegoś o całkowaniu.