🌊 Fala populacyjna — przestrzenne rozprzestrzenianie gatunku
Symuluj przestrzenne rozprzestrzenianie się gatunku inwazyjnego równaniem Fishera-KPP na siatce 2D. Front fali przesuwa się z prędkością v=2√(Dr). Opcjonalny efekt Allee'ego.
O symulacji
Ta symulacja modeluje przestrzenne rozprzestrzenianie się gatunku inwazyjnego za pomocą równania reakcji-dyfuzji Fishera-KPP, ∂u/∂t = D∇²u + ru(1−u), rozwiązywanego numerycznie na siatce 150×150. Niewielka kolonia centralna rozszerza się na zewnątrz jako fala wędrująca, której prędkość zbiega do teoretycznego minimum v = 2√(Dr), a opcjonalny człon efektu Allee może spowolnić lub zatrzymać inwazję poniżej progu gęstości.
🔬 Co pokazuje
Gęstość populacji u(x,y) ewoluującą na siatce 150×150 metodą jawnych różnic skończonych z pięciopunktowym szablonem Laplasjanu i warunkami brzegowymi zerowego strumienia (Neumanna). Niebieski oznacza puste siedlisko (u=0), zielony — połowę pojemności (u=0,5), a czerwony — nasyconą kolonię (u=1). Pasek pod siatką pokazuje całkowitą populację w czasie, a statystyki na żywo porównują zmierzoną prędkość fali z wartością teoretyczną 2√(Dr).
🎮 Jak korzystać
Dostosuj Dyfuzyjność D i Tempo wzrostu r, by zmienić szybkość rozprzestrzeniania się i rozmnażania osobników — obserwuj natychmiastową aktualizację teoretycznej prędkości fali. Włącz efekt Allee i podnieś próg a, by zobaczyć, jak inwazja zwalnia lub całkowicie zawodzi. Przełącz Niejednorodny krajobraz, by losowo zmienić lokalną dyfuzyjność o ±50%, tworząc nieregularny, palczasty front zamiast gładkiego koła. Reset uruchamia od nowa świeżą centralną kolonię; Pauza/Odtwórz zatrzymuje animację.
💡 Czy wiesz, że?
Ten sam wzór v = 2√(Dr), który rządzi symulowaną kolonią, został dopasowany do prawdziwych inwazji — piżmaki rozprzestrzeniające się po Europie po introdukcji w 1905 roku posuwały się w tempie około 1 km/rok, co odpowiada fali Fishera-KPP z D≈51 km²/rok. Ta sama matematyka opisuje też rozprzestrzenianie się zarazy kasztanowej, HIV w węzłach chłonnych, a nawet historyczny postęp rolnictwa w neolitycznej Europie.
Często zadawane pytania
Które suwaki sterują symulacją i co zmieniają?
Dyfuzyjność D (0,1–3,0) ustala, jak szybko osobniki rozpraszają się poprzez losowy ruch; Tempo wzrostu r (0,1–2,0) ustala logistyczne tempo rozmnażania; a Próg Allee a (0–0,5) ustala minimalną karę gęstości stosowaną, gdy włączony jest efekt Allee. Zarówno D, jak i r wpływają bezpośrednio na teoretyczną prędkość fali pokazywaną jako 2√(Dr), więc przesunięcie któregokolwiek suwaka natychmiast aktualizuje tę statystykę, a Reset zasiewa na nowo świeżą kolonię o promieniu 8 komórek w centrum siatki 150×150.
Jak symulacja właściwie oblicza falę w każdej klatce?
Każda klatka wykonuje cztery jawne kroki Eulera równania Fishera-KPP. Laplasjan jest przybliżany pięciopunktowym szablonem (suma czterech sąsiadów minus czterokrotność komórki centralnej, podzielona przez Δx²=1), krok czasowy jest ograniczony do dt = min(0,1, 1/(4D)), by spełnić warunek stabilności CFL dla dyfuzji 2D, a wzrost korzysta z ru(1−u) lub, przy włączonym efekcie Allee, z ru(u−a)(1−u). Brzegi mają zerowy strumień, więc gęstość nie może opuścić siatki.
Czym zmierzona prędkość fali różni się od statystyki „Teoria 2√(Dr)”?
Symulacja śledzi promień, przy którym gęstość po raz pierwszy spada do 0,5, skanując na zewnątrz od centrum, a następnie dzieli zmianę tego promienia przez upływający czas symulowany, by uzyskać zmierzoną prędkość, aktualizowaną mniej więcej co pół jednostki czasu. Statystyka „Teoria 2√(Dr)” to zamknięta formuła Fishera obliczana bezpośrednio z bieżących wartości suwaków D i r. Na początku przebiegu zmierzona prędkość jest niższa od teoretycznej, gdy front staje się bardziej stromy od swojego początkowego gładkiego profilu; po krótkim stanie przejściowym obie wartości się zbiegają.
Co dokładnie zmienia włączenie efektu Allee w modelu?
Przy wyłączonym przełączniku Allee wzrost jest standardowym członem logistycznym ru(1−u), a każda dodatnia gęstość ostatecznie zajmuje całą siatkę. Włączenie go zmienia wzrost na ru(u−a)(1−u): gdy lokalna gęstość spadnie poniżej progu Allee a, ten człon staje się ujemny, więc obszary poniżej a kurczą się zamiast rosnąć. Podniesienie a suwakiem zaostrza efektywny próg inwazji, a wystarczająco wysoka wartość może całkowicie zatrzymać front lub spowodować zapaść kolonii zamiast jej rozprzestrzenienia.
Co się dzieje po włączeniu Niejednorodnego krajobrazu?
Włączenie go tworzy mapę dyfuzyjności dla każdej komórki, w której każda z 150×150 komórek otrzymuje D pomnożone przez losowy czynnik między 0,5 a 1,5, generowany raz przy resecie. Podczas kroków symulacji wykorzystywana jest ta lokalna wartość zamiast jednolitego D wszędzie tam, gdzie przełącznik jest aktywny, więc front fali przesuwa się szybciej przez obszary o wysokiej dyfuzyjności i zwalnia w obszarach o niskiej dyfuzyjności — tworząc taki sam rodzaj nieregularnego, palczastego rozprzestrzeniania, jaki obserwuje się, gdy prawdziwe inwazje podążają wzdłuż dróg, rzek lub korytarzy leśnych zamiast otwartego, jednolitego terenu.