Spisu treści:
- Krok 1: Konfiguracja podstawowa
- Krok 2: Przygotowanie kodu dla podatnej populacji
- Krok 3: Konfigurowanie kodu dla zainfekowanego i usuniętego duszka
- Krok 4: Wypełnianie kodu podatnej populacji
- Krok 5: Uzupełnianie zainfekowanego/usuniętego kodu
Wideo: (Bardzo proste) Modelowanie choroby (przy użyciu Scratch): 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:26
Dzisiaj będziemy symulować wybuch choroby, przy czym będzie to jakakolwiek choroba, niekoniecznie COVID-19. Ta symulacja została zainspirowana filmem 3blue1brown, do którego podam link. Ponieważ jest to metoda przeciągania i upuszczania, nie możemy zrobić tyle, ile możemy z JS lub Python, ale są również korzyści z używania scratch, więc jeśli chcesz zobaczyć, jak modelować epidemię za pomocą JS, możesz wyświetlić moje artykuł, który napisałem na temat modelowania ognisk chorób tutaj. Teraz zacznijmy!
Uwaga: Powyższy obrazek pochodzi z symulacji przeprowadzonej przez quantum9innovation (nie użytkownika Instructables), którą możesz zobaczyć tutaj.
Kieszonkowe dzieci:
Będziesz potrzebował:
- Konto Scratch (możesz się zarejestrować tutaj
- Podstawowa wiedza na temat przeciągania i upuszczania (ale nadal przejdę przez kod)
- Komputer lub urządzenie, które możesz zaprogramować (które prawdopodobnie masz, ponieważ to czytasz)
- Opcjonalnie - obejrzyj film 3b1b, dzięki któremu dowiesz się, co programujemy.
Krok 1: Konfiguracja podstawowa
Najpierw stwórzmy projekt, nazwijmy go jak chcesz, a następnie usuńmy istniejącego duszka na kanwie. Możesz to zrobić, klikając przycisk kosza na duszku. Teraz mamy puste płótno i możesz zmienić kolor tła na dowolny.
Następnie utwórz nowego duszka i zamiast używać istniejącego duszka, namaluj własnego. Zrób z tego niebieską kropkę. Ten duszek reprezentuje podatną populację społeczności, będziemy też mieli populację odzyskaną/usuniętą i zainfekowaną, od której pochodzi nazwa modelu, SIR (podatny, zainfekowany, odzyskany/usunięty). Upewnij się, że nazwałeś duszka „niezainfekowany”.
Teraz utwórz nowego duszka (znowu) i nazwij go duszkiem1, którego również sami namalujemy. Nadaj mu nazwę „Sprite1” i utwórz 2 kostiumy, jeden powinien być czerwoną kropką, a drugi szarą kropką. Uczyń je odpowiednio kostiumem1 i kostiumem2. Te dwie reprezentują populacje zainfekowane (czerwona kropka) i odzyskane/usunięte (szara kropka).
Krok 2: Przygotowanie kodu dla podatnej populacji
Ustawiliśmy teraz kod populacji wrażliwej. Najpierw tworzymy 2 zmienne: ludzi i zainfekowanych. Zmienna „Ludzie” reprezentuje populację i może być zmieniana w zależności od tego, ile osób chcemy w naszej symulacji, a symulacja odpowiednio się zmieni. Tworzymy również zainfekowaną zmienną, która reprezentuje populację, która ma/miała chorobę. Obie te zmienne powinny być zmiennymi globalnymi, co oznacza, że mogą być używane we wszystkich duszkach.
Następnie skopiuj powyższy kod do niezainfekowanego duszka. Przejdźmy przez to, co robi. Kiedy program się uruchamia, duszek jest ukryty, dzięki czemu nie musimy umieszczać tego samego kodu dla klonów w samym duszku, co pomaga. Następnie ustawiamy dwie zmienne (zainfekowaną i ludzi) na takie, jakie chcemy, aby były, w tym przypadku ustawiamy zarażonych na 1, a ludzi na 100. Oznacza to, że zaczynamy od jednej osoby, która jest zarażona i łącznie 100 osób, nie wliczając osoby zakażonej. Następnie uruchamiamy pętlę, w której uruchamiamy kwotę, jaką zmienna people wynosi w tym przypadku 100. Przechodzimy do losowej pozycji, a następnie tworzymy klon duszka. Idziemy do losowej pozycji, ponieważ w ten sposób nie mamy linii kropek poruszających się w jednym kierunku, a zamiast tego odradzamy się w losowych pozycjach.
Krok 3: Konfigurowanie kodu dla zainfekowanego i usuniętego duszka
Teraz przełącz się na duszka „Sprite1”, a następnie skopiuj powyższy kod. Przejdźmy przez to. Gdy program się uruchamia, duszek jest ukrywany, a następnie uruchamia pętlę, aby ustalić wartość zainfekowania. Przechodzi do losowej pozycji i tworzy swojego klona.
Krok 4: Wypełnianie kodu podatnej populacji
Przejdźmy przez rzeczy, które musimy zrobić:
- Infekować
- Ruszaj się
Przełącz się na duszka Niezainfekowany, skopiuj powyższy kod i zobaczmy, jak kończy infekowanie i przenoszenie. Po pierwsze, chodzi o kostium pierwszy i naprawdę nie jest to konieczne, ale mamy go tam, więc jeśli zdecydujemy się dodać więcej, nie musimy się martwić, że zmienimy kostiumy na nowe, które dodaliśmy. Następnie pokazuje się. Jeśli pamiętasz, ukryliśmy oryginalnego duszka, więc i klony zostaną ukryte, czego nie chcemy. Następnie uruchamiamy pętlę w nieskończoność, która będzie uruchamiać cały program, dopóki ktoś nie kliknie znaku stop na zadrapaniu. Szybujemy do losowej pozycji przez 1 sekundę, a następnie sprawdzamy, czy jesteśmy na krawędzi, w takim przypadku odbijamy się od niej. Następnie, jeśli dotykamy koloru czerwonego, klonujemy Sprite1 (populację zainfekowaną/usuniętą) i zwiększamy zainfekowaną zmienną o 1, po czym usuwamy naszego duszka.
Krok 5: Uzupełnianie zainfekowanego/usuniętego kodu
Przełączając się do Sprite1, tworzymy nową listę, timer. Ta lista będzie śledzić, jak długo kropka jest zainfekowana, a po pewnym czasie albo umiera, albo wraca do zdrowia, staje się częścią usuniętej/odzyskanej populacji i jest reprezentowana przez szarą kropkę, której nie można ponownie zainfekować.
Skopiuj powyższy kod i przejdźmy przez to. Kiedy zaczynamy jako klon, wstawiamy łączną liczbę sekund, przez które program działał, na liście liczników czasu, a my sprawdzimy, jak długo był zainfekowany i odpowiednio zmienimy, aby został odzyskany. Ukrywamy listę timerów, a następnie na wszelki wypadek zmieniamy kostium klona na kostium zainfekowany, a następnie pokazujemy naszego duszka. Teraz uruchamiamy pętlę wieczną, w której dzieje się wiele rzeczy: mówimy klonowi, aby co sekundę przesuwał się do losowej pozycji, sprawdzamy, czy zainfekowana zmienna jest większa niż sama populacja, w takim przypadku ustawiamy ją na populację i na koniec sprawdzamy pierwszy element na liście timera, aby zobaczyć, czy minęło więcej niż 5 sekund, a jeśli to prawda, zmieniamy kostium na odzyskany, aby nie móc zainfekować, a następnie usuwamy element z timera.
Zalecana:
Jak stworzyć swoje pierwsze proste oprogramowanie przy użyciu Pythona: 6 kroków
Jak zrobić swoje pierwsze proste oprogramowanie przy użyciu Pythona: Cześć, witaj w tej instrukcji. Tutaj opowiem jak stworzyć własne oprogramowanie. Tak, jeśli masz pomysł… ale wiesz, jak wdrożyć lub jesteś zainteresowany tworzeniem nowych rzeczy, to jest dla Ciebie… Wymagania wstępne: Powinieneś mieć podstawową wiedzę z
Jak stworzyć Arduino Shield bardzo łatwo (przy użyciu EasyEDA): 4 kroki
Jak stworzyć Arduino Shield Bardzo łatwo (przy użyciu EasyEDA): W tym instruktażowym nauczę Cię, jak bardzo łatwo stworzyć Arduino Uno Shield. zagłębić się w temat korzystania z oprogramowania. Korzystam z aplikacji internetowej EasyEDA, odkąd
Bardzo jasne światło rowerowe przy użyciu niestandardowych płytek PCB panelu świetlnego: 8 kroków (ze zdjęciami)
Bardzo jasne światło rowerowe wykorzystujące niestandardowe płytki PCB panelu świetlnego: Jeśli posiadasz rower, wiesz, jak nieprzyjemne mogą być dziury na oponach i ciele. Miałem dość dmuchania opon, więc postanowiłem zaprojektować swój własny panel ledowy z zamiarem wykorzystania go jako światła rowerowego. Taki, który skupia się na byciu E
Neopixel Ws2812 Rainbow LED Glow z M5stick-C - Uruchamianie Rainbow na Neopixel Ws2812 przy użyciu M5stack M5stick C przy użyciu Arduino IDE: 5 kroków
Neopixel Ws2812 Rainbow LED Glow z M5stick-C | Uruchamianie Rainbow na Neopixel Ws2812 Używając M5stack M5stick C Używając Arduino IDE: Cześć chłopaki, w tej instrukcji dowiemy się, jak używać neopikselowych ws2812 LED lub taśmy LED lub matrycy LED lub pierścienia LED z płytką rozwojową m5stack m5stick-C z Arduino IDE i zrobimy wzór tęczy z nim
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: 18 kroków (ze zdjęciami)
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: to moja pierwsza publikacja eva artykułu o majsterkowaniu w Internecie. Więc przepraszam za literówki, protokoły itp. Poniższe instrukcje pokazują, jak zrobić PRACOWĄ lutownicę na gorące powietrze odpowiednią do WSZYSTKICH zastosowań wymagających lutowania. To lutowanie gorącym powietrzem