Skip to contents

Software Introduction

Articles which describe key mathematical points and features of the MGDrivE simulation.

MGDrivE
MGDrivE: Mosquito Gene Drive Explorer
MGDrivE-Model
MGDrivE: Model's Mathematical Description
MGDrivE-Cube
MGDrivE: Inheritance Cube

Inheritance Cubes

A description of the available inheritance cubes for simulation, and some associated helper functions.

cubeAlleleSail()
Inheritance Cube: 3-Piece Allele Sail
cubeASmidler()
Inheritance Cube: Split-Drive for Andrea Smidler
cubeCLEAVRMF()
Inheritance Cube: CLEAVR - Cleave and Rescue
cubeCLEAVRX()
Inheritance Cube: CLEAVR - Cleave and Rescue
cubeClvR()
Inheritance Cube: ClvR (Cleave and Rescue)
cubeClvR2()
Inheritance Cube: 2-Locus ClvR (Cleave and Rescue)
cubeConfinableHoming()
Inheritance Cube: Confinable Homing
cubeConfinableHomingX()
Inheritance Cube: Confinable Homing, X-Linked
cubeConfinableHomingJOHN()
Inheritance Cube: Confinable Homing Drive, John
cubeECHACR()
Inheritance Cube: ECHACR
cubeECHACRX()
Inheritance Cube: ECHACRX
cubeHoming1RA()
Inheritance Cube: Homing Drive with 1 Resistance Allele
cubeHomingDrive()
Inheritance Cube: CRISPR (Clustered Regularly Interspaced Short Palindromic Repeats) with 2 Resistance Alleles and maternal deposition
cubeHomingDriveSM()
Inheritance Cube: CRISPR-SM (Clustered Regularly Interspaced Short Palindromic Repeats) with Small-Molecule Induction and 1 Resistance Allele and Maternal Deposition
cubeXHomingDeposition()
Inheritance Cube: CRISPR (Clustered Regularly Interspaced Short Palindromic Repeats) X-linked with 2 Resistance Allele and Maternal Deposition
cubeImmunizingReversalMF()
Inheritance Cube: Immunizing Reversal/Basic Reversal
cubeImmunizingReversalX()
Inheritance Cube: Immunizing Reversal
cubeKillerRescue()
Inheritance Cube: Killer-Rescue System
cubeMEDEA()
Inheritance Cube: MEDEA (Maternal Effect Dominant Embryonic Arrest)
cubeMendelian()
Inheritance Cube: Mendelian
cubeReciprocalTranslocations()
Inheritance Cube: Reciprocal Translocation
cubeRIDL()
Inheritance Cube: RIDL (Release of Insects with Dominant Lethality)
cubeSplitDrive()
Inheritance Cube: Split CRISPR Drive with 2 Resistance Alleles and male/female specific homing
cubeSplitDriveX()
Inheritance Cube: X-linked Split CRISPR Drive with 2 Resistance Alleles and male/female specific homing
cubeSplitDriveY()
Inheritance Cube: Y-linked Split CRISPR Drive with 2 Resistance Alleles
cubeOneLocusTA()
Inheritance Cube: 1 Locus Maternal-Toxin/Zygotic-Antidote System
cubeTwoLocusTA()
Inheritance Cube: 2 Locus Maternal-Toxin/Zygotic-Antidote System
cubeTGD()
Inheritance Cube: tGD
cubeTGDX()
Inheritance Cube: tGDX
cubeWolbachia()
Inheritance Cube: Wolbachia
cubeXShredderMF()
Inheritance Cube: Autosomal X-Shredder
cubeXShredderY()
Inheritance Cube: Y-Linked X-Shredder
cube2csv()
Export a Cube to .csv

Kernel & Geographic Distance

Functions to generate movement matrices based on parameteric dispersal kernels and function to calculate distance matrices between latitude/longitude pairs of points.

calcCos()
Calculate Geodesic Distance - Cosine Method
calcHaversine()
Calculate Geodesic Distance - Haversine Method
calcVinSph()
Calculate Geodesic Distance - Vincenty Sphere Method
calcVinEll()
Calculate Geodesic Distance - Vincenty Ellipsoid Method
calcZeroInflation()
Calculates the zero-inflation part of a hurdle exponential kernel.
calcLognormalKernel()
Calculate Lognormal Stochastic Matrix
calcGammaKernel()
Calculate Gamma Stochastic Matrix
calcExpKernel()
Calculate Exponential Stochastic Matrix
calcHurdleExpKernel()
Calculate Zero-inflated Exponential Stochastic Matrix

Population Dynamics Parameters

A description of model parameters governing population dynamics, not including inheritance, which is described in its own section. This section also includes functions that generate mosquito release events and set up probabilities for batch migration, and the functions which select between deterministic or stochastic simulation.

calcOmega()
Solve for Omega (additional genotype-specific mortality)
parameterizeMGDrivE()
parameterizeMGDrivE
generateReleaseVector()
Make List of Modified Mosquito Releases
basicRepeatedReleases()
Make List of Modified Mosquito Releases
basicBatchMigration()
Make List of Batch Migration Parameters
setupMGDrivE()
Setup MGDrivE

Data

Data files included in MGDrivE, contains fitted parameters for parameteric mosquito dispersal kernels and movement matrices for illustrative simulations.

kernels
Kernels Parameters
moveMatAll2
Movement Matrix: All 2
moveMatCascade3
Movement Matrix: Cascade 3
moveMatDiag
Movement Matrix: Diagonal
moveMatDiagOneCity
Movement Matrix: Diagonal One City
moveMatDie
Movement Matrix: Die
moveMatIndependent3
Movement Matrix: Independent 3
moveMatMixedSpil
Movement Matrix: Mixed Spill
moveMatTaleOfTwoCities
Movement Matrix: Tale of Two Cities
moveMatTriDiagonal
Movement Matrix: Tri-diagonal
moveMatTriple
Movement Matrix: Triple

Analysis of Output

Functions that allow the output to be summarized and plotted.

eraseDirectory()
Erase all files in a directory
retrieveOutput()
Retrieve Output
splitOutput()
Split Output by Patch
aggregateFemales()
Aggregate Female Output by Genotype
aggregateOutput()
Aggregate Output Over Landscape
calcQuantiles()
Summary Statistics for Stochastic MGDrivE
plotMGDrivESingle()
Plot
plotMGDrivEMult()
Plot

Network Class

The Network object class which is the main object with which to interact with the MGDrivE simulation, and manages the metapopulation dynamics upon which the simulation runs.

Network
Network Class Definition
oneRun_Network()
Run Simulation
multRun_Network()
Run Simulation
reset_Network()
Reset Network

Patch Class

A Patch is a single well-mixed population that is the smallest unit of simulation for MGDrivE.

Patch
Patch Class Definition