-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cell-communication.cece
63 lines (55 loc) · 2.45 KB
/
Cell-communication.cece
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Simulation definition -->
<!-- Parameters cannot be used in simulation element attributes due to historical reasons -->
<simulation world-size="20um 20um" dt="1s" iterations="5000">
<!-- Signal detection thresholds -->
<!--
Parameters can be changed by passing as additional arguments in command prompt:
`cece-cli -p DR "30um2/s" -p L 10 <simulation-file>`
-->
<parameter name="T1" value="0.15uM" />
<parameter name="T2" value="0.15uM" />
<parameter name="DR" value="50um2/s" />
<parameter name="L" value="5" />
<!-- Used plugins -->
<plugin name="diffusion" />
<plugin name="stochastic-reactions" />
<plugin name="cell" />
<!--
Define diffusion module.
Only defined signals are allowed to be used in diffusion.
-->
<module name="diffusion" grid="100" background="black">
<!-- Parameter value can be placed everywhere as attribute value in format '{$<parameter name>}' -->
<signal name="GFP" diffusion-rate="{$DR}" degradation-rate="0.001/s" color="green" saturation="1uM" />
<signal name="RFP" diffusion-rate="{$DR}" degradation-rate="0.001/s" color="red" saturation="1uM" />
<signal name="YFP" diffusion-rate="{$DR}" degradation-rate="0.001/s" color="yellow" saturation="1uM" />
</module>
<!-- Produce GFP constitutive -->
<program name="make-gfp" language="stochastic-reactions">
<![CDATA[
null > 50 > env GFP;
]]>
</program>
<!-- Produce RFP in proximity of YFP in environment -->
<program name="make-rfp" language="stochastic-reactions">
<![CDATA[
# Everything after hash is a comment until end of line.
# The expression `par T1` represents parameter value.
if env YFP > par T1: null > 50 > env RFP;
]]>
</program>
<!-- Produce YFP in proximity of GFP in environment -->
<program name="make-yfp" language="stochastic-reactions">
<![CDATA[
if env GFP > par T2: null > 50 > env YFP;
]]>
</program>
<!-- Create yeast cells -->
<!--
Parameter value expression is replaced in-place and the result is then processed.
-->
<object class="cell.Yeast" position="0 {$L}um" programs="make-rfp cell.store-molecules" />
<object class="cell.Yeast" position="0 0" programs="make-yfp cell.store-molecules" />
<object class="cell.Yeast" position="0 -{$L}um" programs="make-gfp cell.store-molecules" />
</simulation>