Notebook on nbviewer (original) (raw)
Notebook
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: tmd200@users.sourceforge.net 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: tmd200@users.sourceforge.net
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")