📄 xxx-aids.nlogo
字号:
globals [ weeks infection-chance symptoms-show slider-check-1 slider-check-2 slider-check-3 slider-check-4]turtles-own [ infected? known? infection-length coupled? couple-length commitment coupling-tendency condom-use test-frequency partner ]to setup ca setup-globals setup-people setup-plot update-plotendto setup-globals set weeks 0 set infection-chance 50 set symptoms-show 200.0 set slider-check-1 povprecno-trajanje-zveze set slider-check-2 povprecna-spolna-aktivnost set slider-check-3 povprecno-st-uporabnikov-kondoma set slider-check-4 frekvenca-testiranjaendto setup-people cct zacetna-populacija [ setxy (random-float screen-size-x) (random-float screen-size-y) set known? false set coupled? false set partner nobody ifelse random 2 = 0 [ set shape "person righty" ] [ set shape "person lefty" ] set infected? (who < zacetna-populacija * 0.025) if infected? [ set infection-length random-float symptoms-show ] assign-commitment assign-coupling-tendency assign-condom-use assign-test-frequency assign-color ]endto assign-color ifelse not infected? [ set color green ] [ ifelse known? [ set color red ] [ set color blue ] ]endto assign-commitment set commitment random-near povprecno-trajanje-zvezeendto assign-coupling-tendency set coupling-tendency random-near povprecna-spolna-aktivnostendto assign-condom-use set condom-use random-near povprecno-st-uporabnikov-kondomaendto assign-test-frequency set test-frequency random-near frekvenca-testiranjaendto-report random-near [center] let result 0 repeat 40 [ set result (result + random-float center) ] report result / 20endto go if (not any? turtles with [not known?]) [ stop ] check-sliders set weeks (weeks + 1) ask turtles [ if infected? [ set infection-length infection-length + 1 ] if coupled? [ set couple-length couple-length + 1 ] ] ask turtles [ if not coupled? [ move ] ] ask turtles [ if not coupled? and shape = "person righty" and (random-float 10.0 < coupling-tendency) [ couple ] ] ask turtles [ uncouple ] ask turtles [ infect ] ask turtles [ test ] ask turtles [ assign-color ] update-plotendto check-sliders if (slider-check-1 != povprecno-trajanje-zveze) [ ask turtles [ assign-commitment ] set slider-check-1 povprecno-trajanje-zveze ] if (slider-check-2 != povprecna-spolna-aktivnost) [ ask turtles [ assign-coupling-tendency ] set slider-check-2 povprecna-spolna-aktivnost ] if (slider-check-3 != povprecno-st-uporabnikov-kondoma) [ ask turtles [ assign-condom-use ] set slider-check-3 povprecno-st-uporabnikov-kondoma ] if (slider-check-4 != frekvenca-testiranja ) [ ask turtles [ assign-test-frequency ] set slider-check-4 frekvenca-testiranja ]endto move rt random-float 360 fd 1endto couple let potential-partner random-one-of (turtles-at -1 0) with [not coupled? and shape = "person lefty"] if potential-partner != nobody [ if random-float 10.0 < coupling-tendency-of potential-partner [ without-interruption [ set partner potential-partner set coupled? true set coupled?-of partner true set (partner-of partner) self setxy pxcor pycor ask partner [ setxy pxcor pycor ] set pcolor gray set pcolor-of (patch-at -1 0) gray ] ] ]endto uncouple if coupled? and (shape = "person righty") [ if (couple-length > commitment) or (couple-length-of partner) > (commitment-of partner) [ without-interruption [ set coupled? false set couple-length 0 set (couple-length-of partner) 0 set pcolor black set pcolor-of (patch-at -1 0) black set (partner-of partner) nobody set (coupled?-of partner) false set partner nobody ] ] ]endto infect if coupled? and infected? and not known? [ if random-float 11 > condom-use or random-float 11 > (condom-use-of partner) [ if random-float 100 < infection-chance [ set (infected?-of partner) true ] ] ]endto test if random-float 52 < test-frequency [ if infected? [ set known? true ] ] if infection-length > symptoms-show [ if random-float 100 < 5 [ set known? true ] ]endto setup-plot set-current-plot "Populacija" set-plot-y-range 0 (zacetna-populacija + 50)endto update-plot set-current-plot "Populacija" set-current-plot-pen "HIV-" plot count turtles with [not infected?] set-current-plot-pen "HIV?" plot count turtles with [infected?] - count turtles with [known?] set-current-plot-pen "HIV+" plot count turtles with [known?]endto-report %infected ifelse any? turtles [ report (count turtles with [infected?] / count turtles) * 100 ] [ report 0 ]end; *** Obvestilo o avtorskih pravicah NetLogo modela ***;; Model je bil narejen kot del projekta: CONNECTED MATHEMATICS:; MAKING SENSE OF COMPLEX PHENOMENA THROUGH BUILDING OBJECT-BASED PARALLEL; MODELS (OBPML). Projekt se zahvaljuje za podporo fundaciji; National Science Foundation (Applications of Advanced Technologies; Program) -- 歵evilka subvencije RED #9552950 and REC #9632612.;; Avtorske pravice 1998 - Uri Wilensky. Vse pravice pridr瀉ne.;; Dovoljeno je uporabljati, spreminjati in ponovno distributirati ta model,; kadar sta izpolnjeni naslednji dve zahtevi:; a) ta navedba avtorskih pravic je vsebovana;; b) ta model se ne sme distributirati proti pla鑙lu brez dovoljenja in dogovora o licenciranju z avtorjem g. Uri Wilensky.;; Ta model je bil spremenjen v NetLogo kot del projekta:; PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN; CLASSROOMS. Projekt se zahvaljuje za podporo fundaciji; National Science Foundation (REPP program) -- 歵evilka subvencije REC #9814682.; spremenjen iz StarLogoT v NetLogo, 2001. Popravljen 2002.;; Za sklicevanje na ta model v akademskih krogih, prosimo uporabite:; Wilensky, U. (1998). NetLogo AIDS model.; http://ccl.northwestern.edu/netlogo/models/AIDS.; Center for Connected Learning and Computer-Based Modeling,; Northwestern University, Evanston, IL.;; V ostalih publikacijah, prosimo uporabite:; Copyright 1998 by Uri Wilensky. Vse pravice pridr瀉ne. Poglejte; http://ccl.northwestern.edu/netlogo/models/AIDS; za pravice nadaljne uporabe.;; *** Konec obvestila o avtorskih pravicah NetLogo modela ***@#$#@#$#@GRAPHICS-WINDOW36210747416121215.01101110111CC-WINDOW5430756525Command Center0BUTTON4429375nastavitvesetupNIL1TOBSERVERTNILBUTTON47687109izvajajgoT1TOBSERVERTNILMONITOR411687165%oku瀍nih%infected21MONITOR416687215letaweeks / 5211SLIDER904235975zacetna-populacijazacetna-populacija5050010011NILSLIDER90112359145povprecno-trajanje-zvezepovprecno-trajanje-zveze1.0200.013.011tednovSLIDER9077359110povprecna-spolna-aktivnostpovprecna-spolna-aktivnost0.010.09.01.01NILSLIDER90147359180povprecno-st-uporabnikov-kondomapovprecno-st-uporabnikov-kondoma0.010.00.01.01NILSLIDER90182359215frekvenca-testiranjafrekvenca-testiranja0.020.130.011krat/letoPLOT4217359416Populacijatedniljudje0.052.00.0350.0truetruePENS"HIV-" 1.0 0 -10899396 true"HIV+" 1.0 0 -2674135 true"HIV?" 1.0 0 -13345367 true@#$#@#$#@KAJ DELA? Ta model simulira 歩rjenje 鑜oveku nevarnega virusa (HIV), ki se prena歛 s spolnimi odnosi v mali izolirani 鑜ove歬i populaciji, ki jo opazujemo ter prikazuje posledice njihove spolne aktivnosti.Kot vemo, se virus HIV 歩ri na razli鑞e na鑙ne: - z neza氳itenimi spolnimi odnosi, - preko posojanja oku瀍ne igle narkomanov, - pri transfuziji z oku瀍no krvjo, - preko oku瀍ne matere na otroka, - ... Na
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -