Wolbachia

Wolbachia preview image

1 collaborator

Default-person Daniel Villela (Author)

Tags

biology 

Tagged by Daniel Villela almost 11 years ago

Visible to everyone | Changeable by the author
Model was written in NetLogo 5.0.4 • Viewed 488 times • Downloaded 48 times • Run 0 times
Download the 'Wolbachia' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

This model simulates the dynamics of a population of mosquitoes, in which a subset has the bacterial symbiont Wolbachia. The model shows how the population that has Wolbachia increases (or not) over time.

HOW IT WORKS

Female mosquitoes from species such as Aedes aegypti when carrying Wolbachia generally generate offspring that also have Wolbachia (vertical transmission).
Eggs from female mosquitoes that do not have Wolbachia fail to produce offspring when fertilized by male mosquitoes that do have Wolbachia due to cytoplasmic incompatibility.

It has been shown that a mosquito such as Aedes aegypti, when carrying Wolbachia, do not transmit, either partially or totally, pathogens of diseases such as dengue, chikungunya etc. Wolbachia may also decrease mosquito fitness, by reducing its breeding rate or its survival rate. For these reasons, efforts to generate Wolbachia-carrying mosquitoes are an important path for control of such diseases.

The model will show how the two subpopulations progress over time and, eventually, one population is supressed, depending on mosquito fitness and the initial frequency of population that carries Wolbachia.

The vertical transmission is assumed to be perfect, and cytoplasmic incompatibility is also assumed to happen in the case of crossings between males with Wolbachia and Wolbachia-free females.

HOW TO USE IT

Each "tick" represents a day in the time scale of this model.

The model starts with a population of nMosquitoes, each of which may have Wolbachia. The number of mosquitoes that have Wolbachia will depend on the frequency chosen by setting the freqInitWolbachia slider. The carrying capacity is set at maximum 4000.

Mosquitoes move randomly in the world. Red mosquitoes (shown as red dots) have Wolbachia and blue ones (blue dots) do not.

The average lifetime for Wolbachia-free mosquitoes is determined by normal-lifespan. A female mosquito that does not carry Wolbachia produces offspring at rate rateOffspring.

Conversely, the average lifetime for Wolbachia-carrying mosquitoes is determined by a fraction of normal-lifespan given by fracLifespanWolbachia. A female mosquito that carries Wolbachia produces offspring at rate given by a fraction of rateOffspring given by fracRateOffspWolbachia.

After setting parameters, press SETUP, then GO.

RELATED MODELS

This model has a setup and structure adapted from the Virus model (Uri Wilensky).

HOW TO CITE

If you mention this model in a publication, we ask that you include these citations for the model itself and for the NetLogo software:

  • Villela, D. (2013). NetLogo Wolbachia model. NetLogo Modeling Commons. Program for Scientific Computing, Oswaldo Cruz Foundation, Rio de Janeiro, Brazil.

  • Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.

COPYRIGHT AND LICENSE

Copyright 2013 Daniel Villela.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

;; Model for simulate mosquitoes infected with bacterial symbiont Wolbachia

turtles-own
  [ wolb?        ;; if true, the turtle has Wolbachia
    wolb-carrying-count   ;; how long the turtle has Wolbachia
    age          ;; how many weeks old the turtle is
    recover-prob ;; not really used (set to zero)
    x-pos
    y-pos
    ]

globals
[
  %infected            ;; percentage of the population has Wolbachia
  carrying-capacity    ;; the number of turtles that can be in the world at one time
  initialInfected
  avgWolb
  avgNorm
  lifespan-with-Wolbachia
;;  ndays-week
]

to setup
  clear-all
  setup-constants
  setup-turtles
  update-global-variables
  reset-ticks
end 

;; Create a variable number of mosquitoes (nMosquitoes) of which initialWolbachia is
;; the number of mosquitoes that start with Wolbachia

to setup-turtles
  set-default-shape turtles "dot"
  crt nMosquitoes
    [ 
      set x-pos random-xcor 
      set y-pos random-xcor
      setxy x-pos y-pos
      set age random normal-lifespan
      set wolb-carrying-count 0
      set recover-prob  0
      set size 0.5  ;; easier to see
      get-free ]
  ask n-of initialInfected turtles
    [ set age random lifespan-with-Wolbachia
;;      setxy ((random world-height/4)- world-height/8) ((random world-width/4)- world-width/8)
      setxy (x-pos / 4.0) (y-pos / 4.0)
      get-wolb ]
end 

to get-wolb ;; turtle procedure
  set wolb? true
  set color red
end 

to get-free ;; turtle procedure
  set wolb? false
  set wolb-carrying-count 0
  set color blue
end 

to setup-constants
  set carrying-capacity 4000
  set initialInfected freqInitWolbachia * nMosquitoes
;;  set ndays-week 7
  set avgNorm rateOffspring * normal-lifespan
  set lifespan-with-Wolbachia fracLifespanWolbachia * normal-lifespan
  set avgWolb (fracRateOffspWolbachia * rateOffspring) * lifespan-with-Wolbachia
end 

to go
  get-older
  move
  reproduce-wolbachia
  update-global-variables
  tick
end 

to update-global-variables
  if count turtles > 0
  [
    set %infected (count turtles with [wolb?]) / (count turtles) * 100
  ]
end 

;;Turtle counting variables are advanced.

to get-older
  ask turtles
  [
    set age age + 1
    if wolb?
      [ set wolb-carrying-count (wolb-carrying-count + 1) ]
    ;; Turtles die of old age once their age equals the
    ;; lifespan (set at 1500 in this model).
    ifelse wolb?
    [ if age > lifespan-with-Wolbachia
      [ die ]
    ]
    [
     if age > normal-lifespan
     [ die ]
    ]
  ]
end 

;;Turtles move about at random.

to move
  ask turtles
  [ rt random 100
    lt random 100
    fd 1 ]
end 

to reproduce-wolbachia
;;  ask turtles with [not sick?]
ask turtles
    [ if (count turtles) < carrying-capacity
       [ ifelse wolb? 
         ;; for sick the average offspring is set for a normal lifespan
         ;;          change to hatch a vqariable number b
         [ if (random lifespan-with-Wolbachia) < avgWolb
           [ hatch 1
             [ set age 1
               lt 45 fd 1
               get-wolb ] ] 
         ]
         [ if (random normal-lifespan) < avgNorm and (random 100) > %infected 
           [ hatch 1
             [set age 1
               lt 45 fd 1
               get-free]
             ]           
           
         ]
       ]
     ]    
end 


; Copyright 2013 Daniel Villela.
; See Info tab for full copyright and license.

There are 2 versions of this model.

Uploaded by When Description Download
Daniel Villela almost 11 years ago Update on Info Download this version
Daniel Villela almost 11 years ago Initial upload Download this version

Attached files

File Type Description Last updated
Wolbachia.png preview Preview for 'Wolbachia' almost 11 years ago, by Daniel Villela Download

This model does not have any ancestors.

This model does not have any descendants.