Devlog #65 – Fala 45: Krzywa rotacji galaktycznej, odporność stadna & genetyka populacyjna

Fala 45 obejmuje trzy bardzo odrębne dziedziny naukowe — kosmologię, epidemiologię i biologię ewolucyjną — a mimo to łączy je wspólny motyw: zachowanie emergentne na skali populacji. Symulator Krzywej rotacji galaktycznej czyni ciemną materię namacalną; symulator Odporności stadnej pokazuje dokładnie, kiedy szczepienia przechylają szalę epidemii; a symulator Genetyki populacyjnej pokazuje, jak losowość i selekcja kształtują częstości alleli na przestrzeni pokoleń. Platforma liczy teraz 508 symulacji.

Statystyki wydania

508
Symulacji łącznie
65
Wpisów devlog
45
Fal wydań
3
Objęte kategorie

Nowe symulacje

🌌

Krzywa rotacji galaktycznej

Animowany widok galaktyki z góry + wykres V(r) w czasie rzeczywistym. Pokazuje przewidywanie keplerowskie (opadające), wkład dysku, halo ciemnej materii NFW oraz płaską obserwowaną krzywą. Ustawienia wstępne dla Drogi Mlecznej, Andromedy, galaktyki karłowatej i braku ciemnej materii.

Otwórz symulację →
💉

Odporność stadna

Siatka populacji 30×30 (stany S/I/R/V) + krzywa epidemii SIRV. Wskaźnik progu odporności stadnej na żywo zmienia kolor na zielony, gdy pokrycie szczepieniami przekracza p_c = 1−1/R₀. Ustawienia wstępne: odra (R₀=15), COVID (R₀=3), grypa (R₀=2), polio (R₀=5).

Otwórz symulację →
🧬

Genetyka populacyjna

Wykres częstości alleli na przestrzeni 500 pokoleń + siatka kropkowa genotypów. Równowaga Hardy'ego-Weinberga, dryf genetyczny (próbkowanie dwumianowe), selekcja naturalna (współczynniki dostosowania) i tempo mutacji. Ustawienia wstępne: dryf neutralny, przewaga anemii sierpowatej, efekt wąskiego gardła.

Otwórz symulację →

Najważniejsze aspekty techniczne

🌌 Krzywa rotacji galaktycznej: fizyka halo NFW

Symulacja krzywej rotacji wykorzystuje dwa płótna obok siebie. Lewe płótno animuje 170 gwiazd (140 ramion spiralnych + 30 zgrubienia centralnego), a prędkość kątowa każdej gwiazdy wynika z v(r)/r, gdzie v(r) to całkowita prędkość kołowa na promieniu r. Gwiazdy są kolorowane od niebieskiego przez żółty po czerwony w zależności od prędkości — szybkie wewnętrzne gwiazdy wyglądają na ciepłe, wolne zewnętrzne na chłodne — co, kontrintuicyjnie, odwraca się w przypadku ciemnej materii (zewnętrzne gwiazdy pozostają szybkie).

Prawe płótno wykreśla jednocześnie cztery krzywe: przewidywanie keplerowskie dla masy samego dysku (V ∝ 1/√r, czerwona przerywana), wkład widocznego dysku (żółta półprzezroczysta), wkład halo NFW (niebieska półprzezroczysta) i całkowitą obserwowaną krzywą (jasny cyjan, 2,5px). Prędkość halo NFW wynika z całki masy zawartej: M_zaw(r) ∝ [ln(1+r/rs) − (r/rs)/(1+r/rs)], co daje niemal płaską krzywą rotacji przy dużych r. Suwak udziału ciemnej materii aktualizuje wszystkie cztery krzywe w czasie rzeczywistym.

Ciekawostka: W ustawieniu wstępnym "Bez ciemnej materii" można wyraźnie zobaczyć keplerowski spadek. Vera Rubin odkryła w latach 70. XX wieku, że prawdziwe galaktyki wcale nie podążają za tą krzywą — ich rotacja pozostaje płaska aż do obserwowalnej krawędzi. To wciąż jeden z najbardziej przekonujących dowodów na istnienie ciemnej materii.

💉 Odporność stadna: architektura SIRV oparta na równaniach różniczkowych

Model epidemii wykorzystuje system równań różniczkowych typu kompartmentowego z czterema stanami: podatni (S), zakażeni (I), ozdrowieńcy (R) i zaszczepieni (V). Szczepienie jest stosowane jako stały warunek początkowy — ułamek vacPct/100 populacji zaczyna jako odporny — a nie jako ciągła stopa. Reprezentuje to scenariusz szczepień przeprowadzonych przed wybuchem epidemii.

Równanie różniczkowe jest całkowane metodą Eulera w przód z dt = 0,3 dnia, wykonując 3 kroki na klatkę animacji dla ~6-krotnego przyspieszenia względem czasu rzeczywistego. Współczynnik transmisji wykorzystuje β = R₀ / infDays, a współczynnik zdrowienia γ = 1/infDays, dając efektywne R₀ zgodne z suwakiem. Siatka populacji 30×30 jest resynchronizowana w każdej klatce poprzez sortowanie komórek w kolejności S/I/R/V proporcjonalnie do frakcji równania różniczkowego — pragmatyczne podejście, które zachowuje spójność wizualną bez uruchamiania pełnego modelu agentowego.

Wskaźnik progu odporności stadnej (p_c = 1 − 1/R₀) aktualizuje się natychmiast po dowolnej zmianie ustawienia, jeszcze przed uruchomieniem epidemii. Pozwala to uczniom zrozumieć próg koncepcyjnie, zanim naciśną "Uruchom".

🧬 Genetyka populacyjna: Hardy-Weinberg i dryf

Symulacja uruchamia dyskretny model pokoleniowy w stylu Wrighta-Fishera. W każdym pokoleniu częstości alleli są aktualizowane przez trzy mechanizmy w kolejności: (1) selekcja — wagi dostosowania genotypowego (wAA, wAa, waa) renormalizują częstość alleli; (2) mutacja — A→a z tempem μ i a→A z tempem μ/10; (3) dryf genetyczny — próbkowanie dwumianowe N diploidalnych osobników z zaktualizowanej częstości alleli.

Siatka kropkowa pokazuje do 400 osobników, kolorowanych według genotypu: fioletowy = AA, indygo = Aa, ciemnoszary = aa. Wykres częstości wykreśla p(A) linią ciągłą fioletową i q(a) = 1 − p(A) linią przerywaną indygo, na przestrzeni do 500 pokoleń. Oczekiwane częstości Hardy'ego-Weinberga (p², 2pq, q²) są wyświetlane na pasku statystyk, co ułatwia dostrzeżenie odchyleń spowodowanych dryfem lub selekcją.

Ustawienie wstępne anemii sierpowatej włącza tryb przewagi heterozygoty (HETERO_ADV = true), gdzie wAa > wAA > waa — modelując selekcję balansującą, która utrzymuje oba allele przy pośredniej częstości równowagi nawet pod silną presją selekcyjną. To jeden z najbardziej znanych przykładów doboru naturalnego utrzymującego różnorodność genetyczną.

Co dalej

Pokrycie kategorii wciąż się poprawia — immunologia (teraz 2 symulacje), astrofizyka (teraz 4 symulacje). Priorytetowe cele dla Fali 46 obejmują kinetykę enzymatyczną (krzywe nasycenia Michaelisa-Menten), chromodynamikę kwantową (wizualizator uwięzienia kolorowego) oraz płyty tektoniczne (konwekcja płaszcza i granice płyt). Seria bloga czeka też na Spotlight #48 i Naukę #36 w nadchodzących tygodniach.

rotacja-galaktyczna ciemna-materia halo-NFW Vera-Rubin odporność-stadna model-SIR szczepienia epidemiologia genetyka-populacyjna Hardy-Weinberg dryf-genetyczny dobór-naturalny
← Devlog #64 (Fala 44) Devlog #66 (Fala 46) →