Wolbachia-Release

Wolbachia-Release preview image

1 collaborator

Default-person Daniel Villela (Author)

Tags

biology 

Tagged by Daniel Villela over 6 years ago

Visible to everyone | Changeable by everyone
Model was written in NetLogo 5.0.4 • Viewed 233 times • Downloaded 9 times • Run 0 times
Download the 'Wolbachia-Release' 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 releasing of mosquitoes carrying Wolbachia into an area in which mosquitoes are not infected with Wolbachia. The model permits us to observe the dynamics of the two populations 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 and the impact of the number of releases and the number of mosquitoes released.

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.

This model evolves from a previous version considering that a number of releases of mosquitoes infected with Wolbachia occur on a weekly basis.

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.
There is an initial release of nWolbMosquitoes at setup, and there will be weekly releases up to a number determined by nReleasesTotal. The carrying capacity is set at maximum 4000.

Mosquitoes move randomly in the world. Red mosquitoes have Wolbachia, whereas blue ones 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 original Wolbachia model (Villela 2013).

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., Garcia, G.A. (2014). NetLogo Wolbachia-Release model. NetLogo Modeling Commons. 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 2014 D. Villela & G. Garcia

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
  nRelCur
;;  ndays-week
]

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

;; Create a variable number of mosquitoes (nMosquitoes) 

to setup-turtles
  set-default-shape turtles "butterfly"
  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 ]
    
;; Create a variable number of mosquitoes with wolbachia (nWolbMosqutioes) that are release weekly  
  
  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)
      set x-pos random-xcor 
      set y-pos random-xcor
      setxy (x-pos / 4.0) (y-pos / 4.0)
;;      setxy x-pos y-pos
      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 nRelCur 1
  set initialInfected nWolbMosquitoes 
;;  set 1days per week 7
  set avgNorm rateOffspring * normal-lifespan
  set lifespan-with-Wolbachia fracLifespanWolbachia * normal-lifespan
  set avgWolb (fracRateOffspWolbachia * rateOffspring) * lifespan-with-Wolbachia
  set ndays 1 
end 

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

to release
  if (ndays mod 7)= 0 and (nRelCur < nReleasesTotal)
  [ 
    crt nWolbMosquitoes [
       set age random lifespan-with-Wolbachia
;;      setxy ((random world-height/4)- world-height/8) ((random world-width/4)- world-width/8)
      set x-pos random-xcor 
      set y-pos random-xcor
;      setxy x-pos y-pos
      setxy (x-pos / 4.0) (y-pos / 4.0)
      get-wolb      
    ]
    set nRelCur (nRelCur + 1)
  ] 
end  

to update-global-variables
  if count turtles > 0
  [
    set %infected (count turtles with [wolb?]) / (count turtles) * 100 
  ]
  set ndays (ndays + 1)
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 & Gabriela de Azambuja Garcia.
; See Info tab for full copyright and license.

There is only one version of this model, created over 6 years ago by Daniel Villela.

Attached files

File Type Description Last updated
Wolbachia-Release.png preview Preview for 'Wolbachia-Release' over 6 years ago, by Daniel Villela Download

This model does not have any ancestors.

This model does not have any descendants.