Devlog #42 – Fala 22: Symulacje statystyki, szczególnej teorii względności i elektrochemii

Fala 22 dodaje trzy nowe interaktywne symulacje obejmujące szczególną teorię względności (względność jednoczesności), elektrochemię (równanie Nernsta i napięcie ogniwa galwanicznego) oraz algebrę liniową (wektory i wartości własne). Fali towarzyszą dwa obszerne wpisy — Category Spotlight o statystyce i teorii prawdopodobieństwa oraz wpis Learning o równaniach różniczkowych w fizyce.

Statystyki platformy po Fali 22

348
Symulacji
75
Kategorii
127
Wpisów na blogu
22
Fale treści
43
Spotlighty
32
Wpisów Learning
42
Devlogów

Skupienie Fali 22: połączenie abstrakcyjnej matematyki statystyki i algebry liniowej z konkretnymi zjawiskami fizycznymi — rozpadem jednoczesności przy prędkościach relatywistycznych, przesunięciami napięcia w ogniwie elektrochemicznym oraz geometrycznym znaczeniem wektorów własnych macierzy. Każda symulacja ma na celu uczynienie równania widocznym.

Wpisy na blogu z Fali 22

Względność jednoczesności

Eksperyment myślowy Einsteina z 1905 roku z jadącym pociągiem i dwoma jednoczesnymi uderzeniami piorunów to jedna z najsilniejszych ilustracji szczególnej teorii względności: zdarzenia jednoczesne w układzie peronu nie są jednoczesne w układzie pociągu. Symulacja uwidacznia to poprzez animację obu układów odniesienia umieszczonych obok siebie.

Jak działa symulacja

Pociąg porusza się z prędkością β = v/c od lewej do prawej. Dwa pioruny uderzają w przód i tył pociągu jednocześnie w układzie peronu (pioruny są równo odległe od obserwatora na peronie, więc światło z obu dociera do niego w tej samej chwili). Symulacja pokazuje oba układy równocześnie:

Zastosowana transformacja Lorentza

t′ = γ(t − vx/c²)
x′ = γ(x − vt)

γ = 1/√(1−β²),  β = v/c

Zdarzenia w układzie peronu (jednoczesne): t₁ = t₂ = 0
Zdarzenia w układzie pociągu (niejednoczesne):
  t′₁ = γ(0 − v·x₁/c²) = −γv·x₁/c²   (tył: x₁ < 0)
  t′₂ = γ(0 − v·x₂/c²) = −γv·x₂/c²   (przód: x₂ > 0)
  Δt′ = γv·L/c²   gdzie L = długość pociągu w układzie peronu

Sterowanie obejmuje suwak β (0,1 → 0,95), przycisk odtwórz/pauza/reset oraz mnożnik prędkości. Panel informacyjny pod płótnami pokazuje γ, Δt′ (lukę jednoczesności w układzie pociągu) oraz skróconą przez skrócenie Lorentza długość pociągu L′ = L/γ.

Równanie Nernsta — napięcie ogniwa galwanicznego

Równanie Nernsta opisuje, jak siła elektromotoryczna (SEM) półogniwa lub ogniwa galwanicznego zależy od temperatury i stężeń (lub aktywności) zaangażowanych jonów. To fundamentalne równanie elektrochemii, leżące u podstaw baterii, ogniw paliwowych, biologicznych kanałów jonowych oraz chemii analitycznej (elektrody pH, elektrody jonoselektywne).

Projekt symulacji

Symulacja modeluje kompletne ogniwo galwaniczne (np. ogniwo Daniella: Zn | ZnSO4 || CuSO4 | Cu). Użytkownik kontroluje:

Równanie Nernsta

E = E° − (RT/nF) ln Q

E    = potencjał ogniwa [V]
E°   = potencjał standardowy (przy 298 K, 1 M, 1 atm) [V]
R    = 8,314 J mol⁻¹ K⁻¹
T    = temperatura [K]
n    = liczba moli przeniesionych elektronów
F    = 96485 C mol⁻¹  (stała Faradaya)
Q    = iloraz reakcji  = [produkty]/[substraty]

Przy 25°C:  RT/F = 0,025693 V ≈ 25,7 mV
  ⇒ E = E° − (0,05916/n) log₁₀ Q  (równanie Nernsta przy 25°C)

Półogniwo (reakcja redukcji):
  Ox + ne⁻ → Red
  E_pół = E°_pół − (RT/nF) ln([Red]/[Ox])

Płótno renderuje schematyczne ogniwo galwaniczne: dwie zlewki połączone mostkiem solnym, z animowaną migracją jonów (kationy dryfujące ku katodzie, aniony ku anodzie). Wskaźnik masy elektrod pokazuje rozpuszczanie anody (malejący słupek) i osadzanie na katodzie (rosnący słupek). Wykres E vs. ln(Q) na żywo rysuje krzywą Nernsta z poruszającą się kropką śledzącą aktualny punkt pracy. Dodatkowy panel pokazuje ΔG = −nFE oraz stałą równowagi K = exp(nFE°/RT) dla wybranego ogniwa.

Wizualizator wektorów i wartości własnych

Wektory własne to kierunki, w których przekształcenie liniowe działa czysto jako rozciągnięcie (o czynnik λ, wartość własną). Pojawiają się wszędzie: osie główne elipsoidy (macierz symetryczna w tensorze bezwładności), mody normalne oscylatora sprzężonego (macierz sztywności), obserwable kwantowe (operatory hermitowskie w przestrzeni Hilberta), PageRank Google (dominujący wektor własny macierzy linków) oraz redukcja wymiarowości PCA (wektory własne macierzy kowariancji).

Wielomian charakterystyczny

A = [[a, b], [c, d]]    (rzeczywista macierz 2×2)

Wielomian charakterystyczny:  det(A − λI) = 0
  ⇒  λ² − (a+d)λ + (ad−bc) = 0
  ⇒  λ² − tr(A)·λ + det(A) = 0

Wartości własne: λ₁,λ₂ = [tr(A) ± √(tr(A)² − 4·det(A))] / 2

Rzeczywiste, gdy wyróżnik ≥ 0: tr(A)² ≥ 4·det(A)

Wektor własny dla λ_i:  (A−λ_i I)v = 0
  v = [b, λ_i − a]  (lub dowolna niezerowa wielokrotność skalarna)

Wizualizator rysuje na płótnie 540×440: siatkę jednostkową, standardowe wektory bazowe i obok ich obrazów A / A, okrąg jednostkowy i jego obraz (elipsę, której półosie są zgodne z wektorami własnymi i przeskalowane przez |λ|) oraz dwie linie kierunków wektorów własnych. Osiem gotowych ustawień obejmuje przypadki: tożsamość, skalowanie x razy 3, obrót o 90°, ścinanie, symetryczne (przypominające PCA), odbicie i siodło. Panel informacyjny pokazuje ślad, wyznacznik, wartości własne, typ macierzy oraz uwagę, gdy wartości własne są zespolone.

Notatka inżynierska: równoczesna animacja dwóch płócien

Symulacja względności jednoczesności renderuje dwa płótna obok siebie w jednej pętli requestAnimationFrame. Czas symulacji przechowywany jest w jednej zmiennej głównego zegara tsim (w jednostkach L/c, gdzie L to długość pociągu). Każde płótno ma własną transformację współrzędnych: płótno peronu używa tsim bezpośrednio; płótno pociągu stosuje transformacje Lorentza do wszystkich współrzędnych zdarzeń przed renderowaniem.

Kluczowy szczegół implementacji polega na tym, że promienie impulsów światła również rozszerzają się z prędkością c w przekształconym układzie — co potwierdza fakt, że c = 1 w jednostkach naturalnych jest niezmiennicze względem układu odniesienia. Mały przypadek brzegowy: gdy β → 0,999, γ ≈ 22, więc luka jednoczesności Δt′ = γvL/c² staje się bardzo duża; animacja jest automatycznie skalowana, aby oba impulsy światła pozostały widoczne na ekranie.

Co dalej — Fala 23

Fala 23 skupi się na topologii i zaawansowanej geometrii: eksploratorze butelki Kleina i rodzaju torusa (charakterystyka Eulera χ = V−E+F), wizualizatorze niezmienników węzłów (wielomian Alexandera) oraz symulatorze orbit geodezyjnych Schwarzschilda modelującym trasy fotonów i cząstek masywnych wokół nierotującej czarnej dziury. Od strony treści Fala 23 obejmie Spotlight o ogólnej teorii względności i kosmologii oraz wpis Learning o analizie zespolonej i odwzorowaniach konforemnych.

Masz pomysł na symulację? Projekt jest otwartoźródłowy. Zobacz CONTRIBUTING.md, aby poznać przewodnik dla współtwórców, lub otwórz zgłoszenie w repozytorium.