Contagion/ Social Influence- Jiawei Fu- Version 2
Model was written in NetLogo 5.2.0
•
Viewed 390 times
•
Downloaded 25 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Info tab cannot be displayed because of an encoding error
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
;;;;;;;;;;;;;;;;;;;;;;;; ;;; Setup Procedures ;;; ;;;;;;;;;;;;;;;;;;;;;;;; globals[N] extensions[nw] to setup clear-all set-default-shape turtles "circle" nw:set-context turtles links ;; make the initial network of two turtles and an edge make-node nobody ;; first node, unattached make-node turtle 0 ;; second node, attached to first node reset-ticks end ;;;;;;;;;;;;;;;;;;;;;;; ;;; Main Procedures ;;; ;;;;;;;;;;;;;;;;;;;;;;; to go ;; new edge is green, old edges are gray while [N < number-of-links] [ ask links [ set color gray ] make-node find-partner ;; find partner & use it as attachment ;; point for new node tick if layout? [ layout ] ] ask one-of turtles [set color green] if any? turtles with [color = red] [ ask turtles with [color = green] [ ask link-neighbors [if random 100 <= probability-linked-affected [set color green] ask other turtles [ if random 100 < probability-other-affected [set color green]] ] ] ] end ;; used for creating a new node to make-node [old-node] crt 1 [ set color red if old-node != nobody [ create-link-with old-node [ set color green ] ;; position the new node near its partner move-to old-node fd 8 set N N + 1 ] ] end to-report find-partner report [one-of both-ends] of one-of links end ;;;;;;;;;;;;;; ;;; Layout ;;; ;;;;;;;;;;;;;; ;; resize-nodes, change back and forth from size based on degree to a size of 1 to resize-nodes ifelse all? turtles [size <= 1] [ ;; a node is a circle with diameter determined by ;; the SIZE variable; using SQRT makes the circle's ;; area proportional to its degree ask turtles [ set size sqrt count link-neighbors ] ] [ ask turtles [ set size 1 ] ] end to layout ;; the number 3 here is arbitrary; more repetitions slows down the ;; model, but too few gives poor layouts repeat 3 [ ;; the more turtles we have to fit into the same amount of space, ;; the smaller the inputs to layout-spring we'll need to use let factor sqrt count turtles ;; numbers here are arbitrarily chosen for pleasing appearance layout-spring turtles links (1 / factor) (7 / factor) (1 / factor) display ;; for smooth animation ] ;; don't bump the edges of the world let x-offset max [xcor] of turtles + min [xcor] of turtles let y-offset max [ycor] of turtles + min [ycor] of turtles ;; big jumps look funny, so only adjust a little each time set x-offset limit-magnitude x-offset 0.1 set y-offset limit-magnitude y-offset 0.1 ask turtles [ setxy (xcor - x-offset / 2) (ycor - y-offset / 2) ] end to-report limit-magnitude [number limit] if number > limit [ report limit ] if number < (- limit) [ report (- limit) ] report number end
There is only one version of this model, created over 9 years ago by Jiawei Fu.
This model does not have any ancestors.
This model does not have any descendants.