Różnice między wybraną wersją a wersją aktualną.
Poprzednia rewizja po obu stronachPoprzednia wersjaNowa wersja | Poprzednia wersja | ||
narzedzia:pendulum_py [2025/05/07 15:47] – administrator | narzedzia:pendulum_py [2025/05/16 18:48] (aktualna) – administrator | ||
---|---|---|---|
Linia 1: | Linia 1: | ||
- | ===== Symulator Wahadła Podwójnego ===== | + | ===== PY: Symulator Wahadła Podwójnego ===== |
{{ : | {{ : | ||
- | {{ : | + | |
To nie jest zwykłe wahadło — to **wahadło podwójne** (ang. _double pendulum_), jeden z najprostszych układów fizycznych pokazujących zjawisko **deterministycznego chaosu**. | To nie jest zwykłe wahadło — to **wahadło podwójne** (ang. _double pendulum_), jeden z najprostszych układów fizycznych pokazujących zjawisko **deterministycznego chaosu**. | ||
Dwa ramiona, dwie masy, grawitacja — a efekt to piękny, nieprzewidywalny taniec, w którym drobna zmiana kąta startowego potrafi całkowicie zmienić przyszły ruch. | Dwa ramiona, dwie masy, grawitacja — a efekt to piękny, nieprzewidywalny taniec, w którym drobna zmiana kąta startowego potrafi całkowicie zmienić przyszły ruch. | ||
- | |||
- | Zobacz więcej: | ||
- | |||
- | [https:// | ||
- | |||
- | [https:// | ||
=== Co tu się właściwie dzieje? === | === Co tu się właściwie dzieje? === | ||
Linia 51: | Linia 45: | ||
- rozwiązanie daje **metoda Rungego-Kutty 4. rzędu (RK4)**. | - rozwiązanie daje **metoda Rungego-Kutty 4. rzędu (RK4)**. | ||
- | --- | + | ---- |
=== Mechanika Lagrange’a === | === Mechanika Lagrange’a === | ||
Linia 89: | Linia 83: | ||
Podstawiamy do $L = T - V$, a następnie wstawiamy do równań Lagrange’a. W efekcie otrzymujemy dwa nieliniowe równania różniczkowe drugiego rzędu, które potem przekształcamy do układu równań pierwszego rzędu. | Podstawiamy do $L = T - V$, a następnie wstawiamy do równań Lagrange’a. W efekcie otrzymujemy dwa nieliniowe równania różniczkowe drugiego rzędu, które potem przekształcamy do układu równań pierwszego rzędu. | ||
- | --- | + | ---- |
=== Metoda Rungego-Kutty 4. rzędu (RK4) === | === Metoda Rungego-Kutty 4. rzędu (RK4) === | ||
Linia 115: | Linia 109: | ||
W naszym kodzie użyto `solve_ivp()` z biblioteki `scipy`, która domyślnie używa wersji **RK45** — adaptacyjnej metody z kontrolą błędu i dynamicznym doborem kroku. | W naszym kodzie użyto `solve_ivp()` z biblioteki `scipy`, która domyślnie używa wersji **RK45** — adaptacyjnej metody z kontrolą błędu i dynamicznym doborem kroku. | ||
- | --- | + | ---- |
=== Dlaczego to działa === | === Dlaczego to działa === | ||
Linia 127: | Linia 121: | ||
- | --- | + | ---- |
=== Linki dla ciekawskich === | === Linki dla ciekawskich === | ||
- | * [https:// | + | * [[https:// |
- | * [https://en.wikipedia.org/ | + | * [[https://pl.wikipedia.org/ |
- | * [https://pl.wikipedia.org/ | + | * [[https://en.wikipedia.org/ |
- | * [https:// | + | * [[https:// |
- | * * [https:// | + | * [[https:// |
- | * [https:// | + | * [[https:// |
- | * [https:// | + | * [[https:// |
+ | |||
+ | ---- | ||
+ | ==== Kod programu ==== | ||
- | <code python> | + | <code python |
import numpy as np | import numpy as np | ||
import matplotlib.pyplot as plt | import matplotlib.pyplot as plt |