Obsah:
- Krok 1: Základní nastavení
- Krok 2: Nastavení kódu pro vnímavou populaci
- Krok 3: Nastavení kódu pro nakaženého a odstraněného skřítka
- Krok 4: Vyplnění kódu vnímavé populace
- Krok 5: Dokončení infikovaného/odstraněného kódu
Video: (Velmi jednoduché) Modelování nemocí (pomocí Scratch): 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
Dnes budeme simulovat vypuknutí nemoci, přičemž jde o jakoukoli nemoc, ne nutně COVID-19. Tato simulace byla inspirována videem od 3blue1brown, na které odkazuji. Vzhledem k tomu, že se jedná o přetahování, nemůžeme s JS nebo Pythonem dělat tolik, kolik můžeme, ale používání scratch také přináší výhody, takže pokud chcete vidět, jak modelovat ohnisko pomocí JS, můžete si prohlédnout můj článek, který jsem napsal o modelování ohnisek nemocí zde. Pojďme začít!
Poznámka: Výše uvedený obrázek pochází ze simulace provedené nástrojem quantum9innovation (nikoli uživatelem Instructables), který si můžete prohlédnout zde.
Zásoby:
Budeš potřebovat:
- Scratch účet (můžete se zaregistrovat zde
- Základní znalosti drag and drop (ale stejně si projdu kód)
- Počítač nebo zařízení, se kterým můžete programovat (což pravděpodobně máte, protože to čtete)
- Volitelné - podívejte se na video 3b1b, které vám poskytne představu o tom, co programujeme.
Krok 1: Základní nastavení
Nejprve vytvoříme projekt, pojmenujeme jej libovolně a poté odstraníme stávající sprite na plátně. To lze provést kliknutím na tlačítko koše na skřítku. Nyní máme prázdné plátno a můžete změnit barvu pozadí na cokoli chcete.
Dále vytvořte nový sprite a místo použití existujícího sprite namalujte svůj vlastní. Udělejte z toho modrou tečku. Tento sprite představuje vnímavou populaci komunity a budeme mít také obnovenou/odstraněnou a infikovanou populaci, odkud pochází název modelu SIR (vnímavý, infikovaný, obnovený/odstraněný). Ujistěte se, že jste sprite pojmenovali „neinfikovaný“.
Nyní vytvořte nový sprite (znovu) a pojmenujte ho sprite1, který si také namalujeme sami. Pojmenujte jej „Sprite1“a vytvořte 2 kostýmy, jeden by měl být červená tečka a druhý šedá tečka. Udělejte z nich kostým 1, respektive kostým 2. Tito dva představují infikovanou (červená tečka) a obnovenou/odstraněnou (šedá tečka) populace.
Krok 2: Nastavení kódu pro vnímavou populaci
Nyní jsme nastavili náchylný populační kód. Nejprve vytvoříme 2 proměnné: lidé a infikovaní. Proměnná „Lidé“představuje populaci a lze ji změnit podle toho, kolik lidí v naší simulaci chceme, a podle toho se simulace změní. Vytvoříme také infikovanou proměnnou, která představuje populaci, která má/měla nemoc. Obě tyto proměnné by měly být globálními proměnnými, což znamená, že je lze použít ve všech spritech.
Dále zkopírujte výše uvedený kód do neinfikovaného sprite. Pojďme se podívat, co to dělá. Když se program spustí, sprite je skrytý, a proto nemusíme do skriptu vkládat stejný kód pro klony, což pomáhá. Poté nastavíme dvě proměnné (infikovaní a lidé) na to, co chceme, aby byly. V tomto případě nastavíme nakažené na 1 a lidi na 100. To znamená, že začneme s jednou infikovanou osobou a celkem 100 lidmi, včetně infikované osoby. Poté spustíme smyčku, což je částka, kterou proměnná people v tomto případě činí 100. Přejdeme na náhodnou pozici a poté vytvoříme klon sprite. Jdeme do náhodné pozice, protože tímto způsobem nemáme řadu teček pohybujících se jedním směrem a místo toho se objevují v náhodných pozicích.
Krok 3: Nastavení kódu pro nakaženého a odstraněného skřítka
Nyní přepněte na sprite „Sprite1“a poté zkopírujte výše uvedený kód. Pojďme si to projít. Když se program spustí, sprite je skrytý a poté spustí smyčku pro částku, na kterou je infikováno nastaveno. Přejde do náhodné polohy a vytvoří svůj vlastní klon.
Krok 4: Vyplnění kódu vnímavé populace
Pojďme si projít věci, které musíme udělat:
- Infikovat
- Přestěhovat se
Přepněte na Neinfikovaný sprite, zkopírujte výše uvedený kód a pojďme se podívat, jak dokončí nakažení a přesun. Nejprve jde o kostým jeden, a to opravdu není nutné, ale máme to tam, takže pokud se rozhodneme přidat další, nemusíme si dělat starosti, že to změní kostýmy na ty nové, které jsme přidali. Dále se to ukáže samo. Pokud si pamatujete, schovali jsme původní sprite, takže budou skryty i klony, což nechceme. Poté spustíme navždy smyčku, která spustí celý program, dokud někdo neklikne na značku stop na začátku. Klouzáme do náhodné polohy po dobu 1 sekundy a poté kontrolujeme, zda jsme na hraně, v takovém případě to odrazíme. Pokud se dotkneme červené barvy, naklonujeme Sprite1 (infikovaná/odstraněná populace) a zvýšíme infikovanou proměnnou o 1, poté odstraníme našeho sprite.
Krok 5: Dokončení infikovaného/odstraněného kódu
Přepnutím na Sprite1 vytvoříme nový seznam, časovač. Tento seznam bude sledovat, jak dlouho je bod infikován, a po určitém čase buď zemře, nebo se zotaví, stane se součástí odebrané/obnovené populace a je reprezentován šedou tečkou, kterou nelze znovu infikovat.
Zkopírujte výše uvedený kód a pojďme si to projít. Když začínáme jako klon, vložíme do seznamu časovačů celkový počet sekund, po které byl program spuštěn, a zkontrolujeme to, abychom zjistili, jak dlouho byl infikován, a podle toho jej změníme, aby byl obnoven. Skrýváme seznam časovačů a poté pro případ přepneme kostým klonu na infikovaný kostým a poté ukážeme náš sprite. Nyní spustíme věčnou smyčku, ve které se stane více věcí: řekneme klonu, aby klouzal do náhodné polohy každou sekundu, zkontrolujte, zda je infikovaná proměnná větší než samotná populace, v takovém případě ji nastavíme na populaci a nakonec jdeme zkontrolovat první položku seznamu časovačů, abychom zjistili, zda už není delší než 5 sekund, a pokud je to pravda, přepneme kostým na obnovený kostým, abychom nemohli nakazit, a poté položku z časovače odstraníme.
Doporučuje:
Modelování signálu EKG v LTspice: 7 kroků
Modelování signálu EKG v LTspice: EKG je velmi běžnou metodou pro měření elektrických signálů, které se vyskytují v srdci. Obecnou myšlenkou tohoto postupu je nalezení srdečních problémů, jako jsou arytmie, ischemická choroba srdeční nebo srdeční infarkt. Může být nutné, pokud je pacient
Detekce nemocí rostlin s Qualcomm Dragonboard 410c: 4 kroky
Detekce nemocí rostlin s Qualcomm Dragonboard 410c: Ahoj všichni, účastníme se soutěže Inventing the Future with Dragonboard 410c sponzorované společnostmi Embarcados, Linaro a Baita. Projekt AVoID (Agro View Disease) Naším cílem je vytvořit integrovaný systém schopný zachytit obraz, zpracovat a detekovat pos
Modelování vlaku WiFi ovládání pomocí MQTT: 9 kroků
Modelové ovládání WiFi pomocí MQTT: Když jsem měl starý modelový systém vlaku v měřítku TT, dostal jsem nápad, jak řídit lokomotivy jednotlivě. S ohledem na to jsem šel o krok dále a zjistil, co je potřeba nejen k ovládání vlaků ale mít nějaké další informace o
Očkovat nebo ne? projekt na sledování imunity stáda pomocí simulace nemocí: 15 kroků
Očkovat nebo ne? projekt na sledování imunity stáda simulací nemocí: Přehled projektu: Náš projekt zkoumá imunitu stáda a doufá, že povzbudí lidi k očkování, aby se snížila míra infekcí v našich komunitách. Náš program simuluje, jak nemoc nakazí populaci různým procentem očkování
Velmi jednoduché přesto velmi efektivní žert (počítačový žert): 3 kroky
Velmi jednoduché … přesto velmi efektivní žert (počítačový žert): Tento návod je VELMI jednoduchý, ale VELMI účinný! Co se stane, je: Skryjete všechny ikony na ploše oběti. Oběť vyděsí, když uvidí počítač poté, co provedete žert. Počítač to nemůže nijak poškodit