Gene Duplication

This iPython notebook illustrates how you can use gene duplication within StochPy's cell division module. We use an extended immigration-death model which consists of two different mRNAs that are both transcribed from a different part of the genome. Gene duplication doubles the transcription rate of the corresponding mRNA. Written by TR Maarleveld, Amsterdam, The Netherlands E-mail: [email protected] Last Change: August 10, 2015
In [1]:
import stochpy
# required for iPython Notebook inline plotting
%matplotlib inline 
#######################################################################
#                                                                     #
#            Welcome to the interactive StochPy environment           #
#                                                                     #
#######################################################################
#  StochPy: Stochastic modeling in Python                             #
#  http://stochpy.sourceforge.net                                     #
#  Copyright(C) T.R Maarleveld, B.G. Olivier, F.J Bruggeman 2010-2015 #
#  DOI: 10.1371/journal.pone.0079345                                  #
#  Email: [email protected]                                #
#  VU University, Amsterdam, Netherlands                              #
#  Centrum Wiskunde Informatica, Amsterdam, Netherlands               #
#  StochPy is distributed under the BSD licence.                      #
#######################################################################

Version 2.3.0
Output Directory: /home/timo/Stochpy
Model Directory: /home/timo/Stochpy/pscmodels
We start using this model without adding gene duplication. We set both genes as non-dividing species to ensure that the gene is passed from mother to daughter for each generation.
In [3]:
cmod = stochpy.CellDivision(IsQuiet=True)
cmod.Model("gene_duplication.psc")
cmod.SetGrowthFunction(0.1) 
cmod.SetNonDividingSpecies(["G1","G2"])
cmod.DoCellDivisionStochSim(end=3,method="direct") 
cmod.PlotSpeciesTimeSeries()
                                                   
In [5]:
cmod.DoCellDivisionStochSim(end=4000,mode="generations")
cmod.PrintSpeciesMeans()
G1	1.020
mRNA1	34.486
G2	1.020
mRNA2	34.558
We do not observe any significant changes between the mRNA copy number levels. This is expected because we use the same set immigration and death rate for mRNA1 and mRNA2. Now we add gene duplication for mRNA1 and mRNA2 which occur as 25% and 75% of the interdivision time, respectively. We expect that in steady state mRNA1 > mRNA2.
In [6]:
cmod.Model("gene_duplication.psc")
cmod.SetGrowthFunction(0.2)
cmod.SetGeneDuplications(["G1","G2"],[0.25,0.75]) # at 25% and 75% of the interdivision time
cmod.DoCellDivisionStochSim(end=3,method="direct")  
cmod.PlotSpeciesTimeSeries()
                                                   
In [8]:
cmod.DoCellDivisionStochSim(end=10000,mode="generations")
cmod.PrintSpeciesMeans()
G1	1.750
mRNA1	44.521
G2	1.284
mRNA2	31.396
In [9]:
cmod.PlotSpeciesOverview("mRNA1")
In [10]:
cmod.PlotSpeciesOverview("mRNA2")
In [ ]: