Мазмұны:
- 1 -қадам: Негізгі орнату
- 2 -қадам: Халықтың сезімталдығы үшін кодты орнату
- 3 -қадам: жұқтырылған және жойылған Sprite кодын орнату
- 4 -қадам: Халықтың сезімталдық кодын толтыру
- 5 -қадам: жұқтырылған/жойылған кодты толтыру
Бейне: (Өте қарапайым) ауруларды модельдеу (Скретч көмегімен): 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Бүгін біз аурудың өршуін модельдейміз, бұл кез келген ауру, міндетті түрде COVID-19 емес. Бұл модельдеу сілтеме болатын 3blue1brown бейнеден шабыттандырылды. Бұл апарып тастау болғандықтан, біз JS немесе Python -мен мүмкіндігінше көп нәрсені жасай алмаймыз, бірақ тырнауды қолданудың артықшылықтары бар, сондықтан, егер сіз JS -пен өршуді қалай модельдеу керектігін білгіңіз келсе, менің Мен мақалада аурудың өршуін модельдеу туралы жаздым. Енді, бастайық!
Ескертпе: жоғарыдағы сурет кванттық9иновация модельдеуінен алынған (Instructables қолданушысы емес), оны сіз мұнда көре аласыз.
Жабдықтар:
Сізге қажет:
- Скретч шоты (мұнда тіркеле аласыз
- Апарып тастау туралы негізгі білім (бірақ мен әлі де кодты өтемін)
- Сіз бағдарламалай алатын компьютер немесе құрылғы
- Қосымша - 3b1b бейнесін қараңыз, ол сізге біз бағдарламалап отырған нәрсе туралы түсінік береді.
1 -қадам: Негізгі орнату
Алдымен, жоба жасайық, оны қалағаныңызша атаңыз, содан кейін кенепте бар спрайтты жойайық. Мұны спрайттағы қоқыс түймесін басу арқылы жасауға болады. Енді бізде бос кенеп бар, сіз өң түсін қалағаныңызша өзгерте аласыз.
Содан кейін жаңа спрайт жасаңыз және қолданыстағы спрайтты пайдаланудың орнына өзіңіздің бояуыңызды салыңыз. Оны көк нүктеге айналдырыңыз. Бұл спрайт қауымдастықтың сезімтал халқын білдіреді, сонымен қатар бізде қалпына келтірілген/жойылған және жұқтырған популяция болады, онда модельдің атауы SIR (сезімтал, жұқтырған, қалпына келтірілген/жойылған) шыққан. Спрайтқа «жұқтырылмаған» атау беріңіз.
Енді жаңа спрайт жасаңыз (қайтадан) және оны sprite1 деп атаңыз, біз оны өзіміз бояймыз. Оны «Sprite1» деп атаңыз және 2 костюм жасаңыз, олардың біреуі қызыл нүкте, екіншісі сұр нүкте болуы керек. Оларды сәйкесінше костюм1 мен костюм2 жасаңыз. Бұл екеуі жұқтырған (қызыл нүкте) және қалпына келтірілген/жойылған (сұр нүкте) популяцияны білдіреді.
2 -қадам: Халықтың сезімталдығы үшін кодты орнату
Біз қазір сезімтал халық кодын орнаттық. Біз алдымен 2 айнымалы құрамыз: адамдар мен жұқтырғандар. «Адамдар» айнымалысы халықты білдіреді және біздің модельдеуде қанша адам қалайтындығымызға қарай өзгертілуі мүмкін, ал имитация сәйкесінше өзгереді. Біз сондай -ақ жұқтырған айнымалы құрамыз, және бұл ауруға шалдыққан/бар популяцияны білдіреді. Бұл айнымалылардың екеуі де жаһандық айнымалы болуы керек, яғни оларды барлық спрайттарда қолдануға болады.
Содан кейін жоғарыдағы кодты жұқтырылмаған спрайтқа көшіріңіз. Ол не істейтінін қарастырайық. Бағдарлама басталған кезде спрайт жасырылады, сондықтан біз клондардың кодын спрайттың өзіне енгізудің қажеті жоқ, бұл көмектеседі. Содан кейін біз екі айнымалыны (жұқтырғандар мен адамдар) қалағанымызша қоямыз, бұл жағдайда біз жұқтырғандарды 1 -ге, ал адамдарды 100 -ге қоямыз. Бұл дегеніміз - біз жұқтырған бір адамнан және 100 адамнан бастаймыз. жұқтырған адамды қоспағанда. Біз циклды іске қосамыз, бұл адамдар айнымалысы болатын соманы құрайды, бұл жағдайда 100. Біз кездейсоқ позицияға барамыз, содан кейін спрайт клонын жасаймыз. Біз кездейсоқ позицияға барамыз, өйткені осылайша бізде бір бағытта қозғалатын нүкте сызығы болмайды және оның орнына кездейсоқ позицияларда уылдырық шашылады.
3 -қадам: жұқтырылған және жойылған Sprite кодын орнату
Енді «Sprite1» спрайтына ауысыңыз, содан кейін жоғарыдағы кодты көшіріңіз. Одан өтейік. Бағдарлама басталған кезде спрайт жасырылады, содан кейін вирус жұққан сомаға цикл іске қосылады. Ол кездейсоқ позицияға өтеді және өзінің клонын жасайды.
4 -қадам: Халықтың сезімталдық кодын толтыру
Келу керек нәрселерді қарастырайық:
- Жұқтыру
- Жылжыту
Жұқтырылмаған спрайтқа ауысыңыз, жоғарыдағы кодты көшіріңіз және оның инфекция мен қозғалуды қалай аяқтағанын қарастырайық. Біріншіден, бұл костюмнің біреуі, және бұл өте қажет емес, бірақ бізде бар, сондықтан егер біз қосымша қосуды шешсек, костюмдерді жаңасына ауыстыру туралы алаңдамаймыз. Әрі қарай, ол өзін көрсетеді. Естеріңізде болса, біз түпнұсқалық спрайтты жасырдық, сондықтан клондар да жасырылады, біз қаламаймыз. Содан кейін біз мәңгілік циклды іске қосамыз, ол біреу тоқтату белгісін басқанға дейін бүкіл бағдарламаны іске қосады. Біз кездейсоқ позицияға 1 секундқа сырғып, содан кейін шетімізде екенімізді тексереміз, бұл жағдайда біз одан секіреміз. Әрі қарай, егер біз қызыл түске тиетін болсақ, онда біз Sprite1 клонын (жұқтырылған/жойылған популяцияны) және жұқтырылған айнымалы мәнді 1 -ге арттырамыз, содан кейін біздің спрайтты жоямыз.
5 -қадам: жұқтырылған/жойылған кодты толтыру
Sprite1 -ге ауыса отырып, біз жаңа тізім, таймер жасаймыз. Бұл тізім нүктенің қанша уақытқа дейін жұқтырылғанын бақылап отырады және белгілі бір уақыт өткеннен кейін ол не өледі, не қалпына келеді, жойылған/қалпына келтірілген популяцияның бір бөлігіне айналады және қайта инфекцияланбайтын сұр нүктемен ұсынылған.
Жоғарыдағы кодты көшіріп алыңыз және оны қарастырайық. Біз клон ретінде бастаған кезде, біз бағдарламаның қанша секунд жұмыс істейтінін таймер тізіміне енгіземіз, және біз оны қанша уақыт жұқтырғанын білу үшін тексереміз және оны қалпына келтіру үшін өзгертеміз. Біз таймер тізімін жасырамыз, содан кейін клон костюмін жұқтырылған костюмге ауыстырамыз, содан кейін біздің спрайтты көрсетеміз. Біз қазір мәңгілік циклды жүргіземіз, онда бірнеше нәрсе болады: клонға әр секунд сайын кездейсоқ позицияға жылжуын айтамыз, жұқтырылған айнымалысы популяциядан үлкен екенін тексереміз, бұл жағдайда біз оны популяцияға орнатамыз және Ақырында, біз барып, таймер тізімінің бірінші тармағын тексеріп, оның 5 секундтан асқанын тексереміз, ал егер рас болса, біз костюмді қалпына келтірілген костюмге ауыстырамыз, сондықтан жұқтыра алмаймыз, содан кейін элементті таймерден өшіреміз.
Ұсынылған:
Servo моторды Arduino көмегімен басқарудың өте қарапайым әдісі: 8 қадам
Servo моторды Arduino көмегімен басқарудың өте оңай әдісі: Бұл оқулықта біз Servo Motor мен Arduino UNO, және Visuino сервопотордың дәрежесін тек бірнеше компоненттер арқылы басқарамыз, осылайша бұл жобаны Super Simple етеді
Вакцинациялау керек пе, жоқ па? Ауруларды имитациялау арқылы табынның иммунитетін бақылау жөніндегі жоба: 15 қадам
Вакцинациялау керек пе, жоқ па? Ауруларды имитациялау арқылы табынның иммунитетін байқау жобасы: Жобаға шолу: Біздің жоба табындардың иммунитетін зерттейді және біздің қауымдастықтардағы инфекция деңгейін төмендету үшін адамдарды вакцинациялауға шақырады. Біздің бағдарлама аурудың әр түрлі пайыздық вакцинасы бар халықты қалай жұқтыратынын модельдейді
Өте қарапайым " Жұмыртқа өте жақсы " Түнгі жарық: 5 қадам
Өте қарапайым " Жұмыртқа өте жақсы " Түнгі жарық: Бұл Eggcellent түнгі жарықтың өте қарапайым нұсқасы!. Егер сіз бұл нұсқаулықты көрмесеңіз, мен сізге оны қарауды ұсынамын. Мен бұған қол жеткізгім келді, бірақ шыдамым жетпеді. Сондықтан мен оны жасаудың оңай жолын таптым. Мұны тексеріңіз
Өте қарапайым Дегенмен өте тиімді пранк (компьютерлік пранк): 3 қадам
Өте қарапайым … Дегенмен өте тиімді пранк (компьютерлік пранк): Бұл нұсқаулық өте қарапайым, бірақ өте тиімді! Не болады: Сіз жәбірленушінің жұмыс үстеліндегі барлық белгішелерді жасырасыз. Сіз пранк жасағаннан кейін компьютерді көргенде жәбірленуші шошып кетеді. Бұл компьютерге ешқандай зиян келтіре алмайды
Өте портативті, өте қатты, ұзақ қызмет ететін, батареямен жұмыс істейтін динамиктер: 9 қадам (суреттермен)
Супер портативті, супер қатты, ұзақ қызмет ететін, батареямен жұмыс істейтін динамиктер: бақша кештері/далалық ойын -сауықтар үшін қуатты динамик жүйесі болғанын қалаған. Көптеген адамдар бұл нұсқаулықтың артық екенін айтады, өйткені арзан күндердегі көптеген боббокс стиліндегі радиостанциялар немесе ipod стиліндегі mp3 д