Statystyki wydania
Nowe symulacje
Kompresja SVD
SVD metodą iteracji potęgowej zastosowana do sześciu wzorców testowych 64×64 (portret, figura geometryczna, gradient, szachownica, paski, szum). Suwak rzędu (1–64) określa, ile wektorów osobliwych uwzględniono w aproksymacji rzędu-k A ≈ Σ σiuiviT. Poniżej histogram wszystkich 64 wartości osobliwych σ podświetla uwzględnione wektory na fioletowo.
Otwórz kompresję SVD →Z-pinch
180 cząstek plazmy uwięzionych w kolumnie przez azymutalne pole magnetyczne prądu osiowego (siła pinch J×B). Wybierz tryb Stabilny, Kiełbasa (m=0) lub Kink (m=1) i obserwuj, jak niestabilność narasta z małego początkowego zaburzenia. Lewy panel to przekrój poprzeczny; prawy panel to profil osiowy pokazujący deformację kolumny.
Otwórz Z-pinch →Powierzchnia energii potencjalnej
Pełnoekranowy kolorowy render powierzchni energii potencjalnej Müllera-Browna z 20 nałożonymi białymi liniami konturowymi. Trzy minima oznaczone R (reagent), P (produkt), I (produkt pośredni) oraz dwa punkty siodłowe TS1, TS2. Cząstka całkowana metodą Eulera z tarciem γ i szumem termicznym kT przetacza się między studniami, zostawiając kropkowany ślad. Kliknij w dowolnym miejscu, aby teleportować cząstkę.
Otwórz PES →Kompresja SVD — Notatki projektowe
SVD metodą iteracji potęgowej
Zamiast implementować pełny algorytm Goluba-Reinscha (niedopuszczalnie
wolny w JavaScript dla N=64), symulator wykorzystuje sekwencyjną
iterację potęgową z deflacją. Dla każdej składowej c
znajdowany jest dominujący lewy wektor osobliwy macierzy resztowej
R = A − Σi<c σiuiviT
poprzez 40 iteracji naprzemiennego
u = R v / ‖R v‖
i v = RTu / ‖RTu‖,
po czym reszta jest deflowana. Wszystkie 64 składowe są obliczane
raz przy wczytaniu obrazu; od tej pory aktualizacja suwaka rzędu
jest natychmiastowa.
Panel statystyk
Cztery statystyki na żywo śledzą kompromis między jakością a kompresją:
- Rząd k: liczba zachowanych wektorów osobliwych.
-
Przechwycona wariancja:
Σi≤kσi2 / Σiσi2— zwykle >99% już przy rzędzie 20 dla gładkich obrazów. -
Współczynnik kompresji:
k(m+n+1) / (mn)— wartości poniżej 1 oznaczają, że format SVD wykorzystuje mniej liczb niż surowa siatka pikseli. -
Błąd Frobeniusa:
‖A − Ak‖F = √(Σi>kσi2)— twierdzenie Eckarta-Younga gwarantuje, że jest to minimalny możliwy błąd dla dowolnej macierzy rzędu-k.
Wzorce testowe
Sześć wbudowanych wzorców testuje SVD przy różnych rzędach wewnętrznych. Szachownica jest zasadniczo sygnałem rzędu 8 (8 częstotliwości przestrzennych), więc rząd=8 daje już niemal idealną rekonstrukcję. Obraz szum ma pełny rząd 64, ponieważ losowe piksele nie mają nadmiarowej struktury — wartości osobliwe zanikają powoli i potrzeba wielu składowych, by znacząco zmniejszyć błąd. Gładkie obrazy, jak gradient, kompresują się wyjątkowo dobrze: rząd=2 często przechwytuje >95% wariancji.
Z-pinch — Notatki projektowe
Model fizyczny
W rzeczywistym Z-pinchu osiowa gęstość prądu
Jz generuje azymutalne pole magnetyczne
Bθ = μ0I / (2πr).
Powstająca skierowana do wewnątrz siła Lorentza
F = J × B ściska plazmę radialnie. Równowagę
opisuje relacja Bennetta:
I2 = 8πNkT (w jednostkach Gaussa),
dająca promień równowagowy
Req ∝ √T / I. Wyższy prąd lub
niższa temperatura dają ciaśniejszy pinch.
Tryby niestabilności
Symulowane są dwa klasyczne tryby niestabilności MHD:
-
Niestabilność typu „kiełbasa” (m=0):
azymutalnie symetryczne zaburzenie, które ściska kolumnę w
naprzemienne grubsze i cieńsze odcinki. Zwężenie zwiększa
lokalne pole i siłę pinch, wzmacniając zaburzenie —
niestabilne. Każdy z 32 segmentów osiowych oscyluje do promienia
docelowego sterowanego przez
Req(1 + ε · sin(kzz + t)). -
Niestabilność kink (m=1): kolumna jako całość
wygina się bocznie. Zastosowana do każdego segmentu jako
sinusoidalne przemieszczenie boczne
dx ∝ ε · sin(2kz + 0.7t). Tempo wzrostu wynosi ≈ 0.6 × tempa „kiełbasy”, odzwierciedlając niższy gradient ciśnienia magnetycznego dla trybu m=1.
Tempo wzrostu zależy od prądu i temperatury poprzez
γ ∝ I / (√T · Req),
więc plazma o wysokim prądzie i niskiej temperaturze jest znacznie
bardziej niestabilna.
Parametr plazmy β
Parametr plazmy β = 2μ0nkT/B2 to stosunek ciśnienia termicznego do magnetycznego. Plazma o wysokim β jest termicznie dominująca i opiera się kompresji; plazma o niskim β jest zdominowana magnetycznie. Symulator raportuje β na żywo, dzięki czemu łatwo zobaczyć, jak zmiana I i T przenosi cię przez tę granicę.
Powierzchnia energii potencjalnej — Notatki projektowe
Potencjał Müllera-Browna
Potencjał Müllera-Browna (1979) to standardowa referencyjna PES w chemii obliczeniowej. Jest to suma czterech członów gaussowskich:
-
V(x,y) = Σi=14 Ai exp[ai(x−x0i)2 + bi(x−x0i)(y−y0i) + ci(y−y0i)2]
z parametrami (A, a, b, c, x0, y0) = (−200, −1, 0, −10, 1, 0), (−100, −1, 0, −10, 0, 0.5), (−170, −6.5, 11, −6.5, −0.5, 1.5), (15, 0.7, 0.6, 0.7, −1, 1). Daje to trzy lokalne minima (R, I, P) oraz dwa punkty siodłowe pierwszego rzędu (TS1 między R i P, TS2 między P i I).
Dynamika cząstki
Cząstka podlega równaniu Langevina:
m&ddot;x = −∇V − γ˙x + √(2kBT) · ξ(t)
gdzie ξ jest gaussowskim szumem białym. Przy zerowej temperaturze
i wysokim tarciu trajektoria podąża wewnętrzną współrzędną reakcji
(IRC) — ścieżką najbardziej stromego spadku od punktu
siodłowego do sąsiednich minimów. Przy skończonej temperaturze
cząstka może przekraczać bariery z tempem
∝ exp(−Ea/kT) (Arrhenius), co czyni
spontaniczne przeskoki między studniami widocznymi dla wysokich
wartości temperatury.
Renderowanie
Mapa kolorów PES i linie konturowe są rasteryzowane raz na pozaekranowym płótnie przy wczytaniu strony (i za każdym razem, gdy zmienia się skala bariery). Ekstrakcja 20-poziomowych konturów wykorzystuje uproszczone poziome skanowanie metodą marching squares: dla każdego wiersza oznaczane są krawędzie poziome, w których potencjał przecina docelową izolinię, i są one renderowane jako półprzezroczyste białe linie. Główna pętla renderowania rysuje wtedy tylko pozaekranową bitmapę, znaczniki punktów specjalnych, ślad cząstki (kreskowany bursztynowy) oraz samą cząstkę — utrzymując płynną animację 60 kl./s.
Uwagi techniczne
Wszystkie trzy symulacje to samodzielne jednostronicowe pliki HTML5/CSS/JS bez żadnych zależności poza wspólnymi komponentami nawigacji/stopki obecnymi już na platformie. Obliczenie SVD wykonywane jest synchronicznie przy wczytaniu strony dla obrazu 64×64 (64 kroki deflacji, każdy z 40 iteracjami potęgowymi) w mniej niż 200 ms na współczesnym laptopie. Pozaekranowy render PES przy typowych rozmiarach viewportu kończy się w mniej niż 100 ms. Z-pinch aktualizuje 3 kroki fizyki na klatkę animacji, zapewniając płynnie wyglądającą dynamikę 60 kl./s bez przeciążania głównego wątku.
Tagi
Algebra liniowa SVD Kompresja obrazów Fizyka plazmy Z-pinch Niestabilności MHD Chemia fizyczna Powierzchnia energii potencjalnej Dynamika reakcji Stan przejściowy Fala 37