|
|
Line 1: |
Line 1: |
− | {{Heidelberg/header}}
| |
| | | |
− | {{#tag:html|
| |
− | <script>
| |
− | {{Heidelberg/title|Phage Titer}}
| |
− | </script>
| |
− | }}
| |
− |
| |
− | {{Heidelberg/navbar
| |
− | }}
| |
− | {{Heidelberg/main|
| |
− | Modeling|
| |
− | Phage Titer|
| |
− | https://static.igem.org/mediawiki/2017/3/38/T--Heidelberg--2017_Background_Owl.jpg|blue|
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | While developing <a href="https://2017.igem.org/Team:Heidelberg/Predcel">PREDCEL</a> in the lab, we simultaneously developed it <i>in silico</i> so that both sides could benefit from each other. One of the most important parameter of phage assisted directed evolution experiments like PREDCEL and PACE is the phage titer itself. If the phage titer drops washout can occur and the experiment has to be restarted with the disadvantage of loosing library complexity. If the phage titer increases too much, the multiplicity of infection (MOI), that means the amount of phage relative the the amount of <i>E. coli</i> rises too. If fore example the MOI is 10 and an <i>E. coli</i> can only be infected by one phage, nine out of ten phages will not infect an <i>E. coli</i> and thus will not evolve, but still make up most of the phage population.
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/c/cd/T--Heidelberg--2017_phage_titer_fig1.png|{{#tag:html|Figure 1: Basic logarithmic phage and <i>E. coli</i> titer plot with 20 % wildtype fitness}}|{{#tag:html| The blue lines correspond to the different <i>E. coli</i> populations. Exponential growth of <i>E. coli</i> and constant fitness of 20% of the wildtype, equal in all phages was assumed. After ten minutes infected <i>E. coli</i> start producing phage, corresponding to a stagnation in infected <i>E. coli</i> and an increase in phage concentration.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/3/38/T--Heidelberg--2017_phage_titer_fig2.png|{{#tag:html|Figure 2: Basic logarithmic phage and <i>E. coli</i> titer plot with 100 % wildtype fitness.}}|{{#tag:html| The blue lines correspond to the different <i>E. coli</i> populations. Exponential growth of <i>E. coli</i> and constant fitness of 100% of the wildtype, equal in all phages was assumed. After ten minutes infected <i>E. coli</i> start producing phage, corresponding to a stagnation in infected <i>E. coli</i> and an increase in phage concentration.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | Comparing the plots for 20 % and 100 % fitness show that a higher fitness increases the final phage titer and decreases the amount of uninfected <i>E. coli</i> earlier.
| |
− | <h1>Modeling concentrations in one Lagoon</h1>
| |
− | Here the concentrations \(c\) of uninfected <i>E. coli</i>, infected <i>E. coli</i> and phage producing <i>E. coli</i> as well as the <i>M13</i> phage are modeled. They are denoted with the subscripts \(_{u}\), \(_{i}\), \(_{p}\) and \(_{P}\). If the whole <i>E. coli</i> population is referred to, \(c_{E}\) is used. If an arbitrary <i> E. coli</i> population is meant, the subscript \(_{e}\) is used. The phage concentration \(c_{P}\) refers to the free phage only, phage that are contained in an <i>E. coli</i> they infected are not included.
| |
− | The used parameters include the time \(t\), the affinity of phage for <i>E. coli</i> \(k\), the duration between infection of an <i>E. coli</i> and the first phage leaving the <i>E. coli</i> \(t_{P}\). The three different <i>E. coli</i> populations each have a generation time \(t\) that is denoted with their subscript. The fitness of a phage population is \(f\).
| |
− |
| |
− | {{Heidelberg/templateus/Tablebox|
| |
− | Table X: Title |
| |
− | {{#tag:html|
| |
− | <table class="table table-bordered mdl-shadow--4dp" XSSCleaned="overflow-x: scroll !important">
| |
− | <thead> <tr>
| |
− | <th>TIme</th> <th>Date</th> <th>Operator</th> <th>Sample</th> <th>Action</th> <th>DONE ToDo:</th> <th>OD Turbidostat 2</th> <th>Stock ID</th> <th>TO DOs:</th> </tr>
| |
− | </thead><tbody> <tr>
| |
− | <td>12:00</td> <td>24/10/2017</td> <td>MP</td> <td>-</td> <td>Started filling the turbidostat (T2) with medium </td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>13:30</td> <td>24/10/2017</td> <td>MP</td> <td>-</td> <td>Inoculation of turbidostat 2 with 50 ml Stock culture </td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>14:00</td> <td>24/10/2017</td> <td>MP</td> <td>-</td> <td>Measured OD</td> <td></td> <td>"0</td> <td>18"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>15:00</td> <td>24/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>16:00</td> <td>24/10/2017</td> <td>MP</td> <td>-</td> <td>Measured OD</td> <td></td> <td>"0</td> <td>511"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>17:00</td> <td>24/10/2017</td> <td>MP</td> <td></td> <td>"Measured OD</td> <td> started filling the lagoon and the arabinose pump"</td> <td></td> <td>"0</td> <td>548"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>18:00</td> <td>24/10/2017</td> <td>MP</td> <td>1</td> <td>Inoculation with 1 ml phage supernatant</td> <td></td> <td>"0</td> <td>514"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>19:00</td> <td>24/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>20:00</td> <td>24/10/2017</td> <td>MS</td> <td>1</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 1"</td> <td></td> <td>"0</td> <td>637"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>21:00</td> <td>24/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>22:00</td> <td>24/10/2017</td> <td>MP</td> <td></td> <td>"Measured OD</td> <td> Flow rate for lagoon was to high from previous filling ( 7 ml/min in contrast to 1</td> <td>666 ml/min) - potential washout "</td> <td></td> <td>"0</td> <td>791"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>23:00</td> <td>24/10/2017</td> <td>MP</td> <td></td> <td>"Lagoon was infected with 0</td> <td>8 ml 10^8 PFU/ml phages to counteract the potential washout "</td> <td></td> <td>"0</td> <td>818"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>00:00</td> <td>25/10/2017</td> <td>MP</td> <td>2</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 2"</td> <td></td> <td>"0</td> <td>833"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>01:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>02:00</td> <td>25/10/2017</td> <td>MS</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>789"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>03:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>04:00</td> <td>25/10/2017</td> <td>MS</td> <td>3</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 3"</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>05:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td>"0</td> <td>792"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>06:00</td> <td>25/10/2017</td> <td>MS</td> <td></td> <td>Measured OD</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>07:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td>"0</td> <td>817"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>08:00</td> <td>25/10/2017</td> <td>TB</td> <td>4</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 4"</td> <td>Took samples</td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>09:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>10:00</td> <td>25/10/2017</td> <td>TB</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>816"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>11:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>12:00</td> <td>25/10/2017</td> <td>TB</td> <td></td> <td>Measured OD</td> <td>Done PCR</td> <td>"0</td> <td>81"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>13:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>14:00</td> <td>25/10/2017</td> <td>PP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>843"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>15:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td>inoculated growth for plaque assay</td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>16:00</td> <td>25/10/2017</td> <td>PP</td> <td>5</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 5"</td> <td></td> <td>"0</td> <td>833"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>17:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>18:00</td> <td>25/10/2017</td> <td>PP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>836"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>19:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>20:00</td> <td>25/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>862"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Plaque Assay</td> </tr>
| |
− | <tr>
| |
− | <td>21:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>22:00</td> <td>25/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>81"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>23:00</td> <td>25/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>00:00</td> <td>26/10/2017</td> <td>LP</td> <td>6</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 6"</td> <td>Done PCR</td> <td>"0</td> <td>809"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>01:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>02:00</td> <td>26/10/2017</td> <td>CG</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>845"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>03:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>04:00</td> <td>26/10/2017</td> <td>CG</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>864"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>05:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>06:00</td> <td>26/10/2017</td> <td>CG</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>836"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>07:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>08:00</td> <td>26/10/2017</td> <td>TB</td> <td>7</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 7"</td> <td></td> <td>"0</td> <td>831"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>09:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>10:00</td> <td>26/10/2017</td> <td>TB</td> <td></td> <td>Measured OD</td> <td> </td> <td>"0</td> <td>827"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>11:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>12:00</td> <td>26/10/2017</td> <td>TB</td> <td></td> <td>Measured OD</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>13:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>14:00</td> <td>26/10/2017</td> <td>TB</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>738"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>15:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>16:00</td> <td>26/10/2017</td> <td>TB</td> <td>8</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 8"</td> <td>"Took samples L1</td> <td> T1"</td> <td>"0</td> <td>652"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>17:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>18:00</td> <td>26/10/2017</td> <td></td> <td></td> <td>Measured OD</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>19:00</td> <td>26/10/2017</td> <td>MS</td> <td></td> <td></td> <td></td> <td>"0</td> <td>582"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>20:00</td> <td>26/10/2017</td> <td></td> <td></td> <td>Measured OD</td> <td>Plaque assay was performed successfully </td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Plaque Assay</td> </tr>
| |
− | <tr>
| |
− | <td>21:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>22:00</td> <td>26/10/2017</td> <td>MS</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>633"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>23:00</td> <td>26/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>00:00</td> <td>27/10/2017</td> <td>PP</td> <td>9</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 9"</td> <td></td> <td>"0</td> <td>511"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>01:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>02:00</td> <td>27/10/2017</td> <td>MS</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>692"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>03:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>04:00</td> <td>27/10/2017</td> <td>MS</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>937"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>05:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td>"0</td> <td>945"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>06:00</td> <td>27/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td>"could not be measured</td> <td> as lagoon medium level was too high and therefore pump where set off for a short time "</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>07:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>08:00</td> <td>27/10/2017</td> <td>MS</td> <td>10</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 10"</td> <td>"Phage detection PCR with samples 8</td> <td>9 and 10 for Dickinson-Phage and PI-Phage"</td> <td>"0</td> <td>912"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>09:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>10:00</td> <td>27/10/2017</td> <td>PP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>903"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>11:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>12:00</td> <td>27/10/2017</td> <td>LP</td> <td></td> <td>Measured OD</td> <td>see above</td> <td>"0</td> <td>924"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>13:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>14:00</td> <td>27/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>942"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>15:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>16:00</td> <td>27/10/2017</td> <td>PP</td> <td>11</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 11"</td> <td>took samples</td> <td>"0</td> <td>942"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>17:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>18:00</td> <td>27/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>822"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>19:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>20:00</td> <td>27/10/2017</td> <td>MK</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>59"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Plaque Assay</td> </tr>
| |
− | <tr>
| |
− | <td>21:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>22:00</td> <td>27/10/2017</td> <td>CG</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>61"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>23:00</td> <td>27/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>00:00</td> <td>28/10/2017</td> <td>MP</td> <td>12</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 12"</td> <td>Phage detection PCR with sample 11</td> <td>"0</td> <td>664"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>01:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>02:00</td> <td>28/10/2017</td> <td>CG</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>809"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>03:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>04:00</td> <td>28/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td>PCR: negative - phage washout</td> <td>"0</td> <td>820"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>05:00</td> <td>28/10/2017</td> <td></td> <td></td> <td>"Flow rate was adjusted: 1 ml/min </td> <td> lagoon was infected by pooled samples 6</td> <td> 7 and 8 "</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>06:00</td> <td>28/10/2017</td> <td>MP</td> <td></td> <td>Measured OD</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>07:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>08:00</td> <td>28/10/2017</td> <td>MP</td> <td>13</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 13"</td> <td></td> <td>"0</td> <td>667"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>09:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>10:00</td> <td>28/10/2017</td> <td>PP</td> <td></td> <td>Measured OD</td> <td></td> <td>"0</td> <td>62"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>11:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>12:00</td> <td>28/10/2017</td> <td>PP</td> <td></td> <td>Measured OD </td> <td>Phage PCR was performed </td> <td>"0</td> <td>768"</td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td>TO DO: Phage-PCR</td> </tr>
| |
− | <tr>
| |
− | <td>13:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>14:00</td> <td>28/10/2017</td> <td>PP</td> <td></td> <td>Measured OD</td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>15:00</td> <td>28/10/2017</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>199 (pMax69 aka AP-SplitT7 + GenIII+YFP + MP4)</td> <td></td> </tr>
| |
− | <tr>
| |
− | <td>16:00</td> <td>28/10/2017</td> <td>PP</td> <td>14</td> <td>"Measured OD</td> <td> Took samples L1</td> <td> T1 - 14"</td> <td>FINAL PROBES</td> <td></td> <td></td> <td></td> </tr>
| |
− | </tbody></table>
| |
− |
| |
− |
| |
− | }}|Subtitle}}
| |
− |
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Bacterial Growth</h2>
| |
− | Each term describing the change of an <i>E. coli</i> concentration contains its growth, \(g_{e}\). The growth rate of an <i>E. coli</i> population can be modeled by exponential growth or by logistic growth. Especially, when long durations per lagoon are modeled, the logistic growth model is more exact. [source].
| |
− | In the exponential case the growth rate \(g_{e}\) is modeled as
| |
− | $$
| |
− | g_{e} (t_{e}) = c_{e} \cdot \frac{log(2)}{t_{e} }
| |
− | $$
| |
− | Note that the growth rate in the model increases over time, while in the modeled culture, the nutrient concentration decreases.
| |
− |
| |
− | That makes the logistic model more plausible, it models \(g_{e}\) as
| |
− | $$
| |
− | g_{e} (t_{e}, \: c_{e}(t), \: c_{c}) = \frac{c_{c} - c_{e} (t)}{c_{c} } \cdot \frac{log(2)}{t_{e} }
| |
− | $$
| |
− | In this case the learning rate decreases as the current concentration \(c_{e}\) approaches the maximum capacity for <i>E. coli</i> in the given setup \(c_{c}\). With this model \(c_{e} \leq c_{c}\) is true for any point in time.
| |
− |
| |
− | <h2>Transitions between uninfected, infected and phage-producing</h2>
| |
− | <b>Change of concentration of uninfected <i>E. coli</i>, \(\frac{\partial c_{u} }{\partial t} \: [cfu/min]\)</b>
| |
− | $$
| |
− | \frac{\partial c_{u} }{\partial t}(t) = g_{u} (t_{u}, \: c_{u}(t), \: c_{c})
| |
− | - k \cdot c_{u}(t) \cdot c_{p}(t)
| |
− | $$
| |
− | In addition to the growth term, the concentration of uninfected <i>E. coli</i> is described by a term for infection that takes into account the concentration of uninfected <i>E. coli</i> and the concentration of free phage and reduces the conentration of uninfected <i>E. coli</i>.
| |
− |
| |
− | <b>Change of concentration of uninfected <i>E. coli</i>, \(\frac{\partial c_{i} }{\partial t} \: [cfu/min]\)</b>
| |
− | $$
| |
− | \frac{\partial c_{i} }{\partial t}(t) = \begin{cases}
| |
− | g_{i} (t_{i}, \: c_{i}(t), \:c_{c})
| |
− | + k \cdot c_{i}(t) \cdot c_{p}(t)
| |
− | - c_{i}(t - t_{P}),
| |
− | \quad \text{for} \: t > t_{P} \\
| |
− | g_{i} (t_{i}, \: c_{i}(t), \: c_{c})
| |
− | + k \cdot c_{i}(t) \cdot c_{p}(t),
| |
− | \quad \text{otherwise}
| |
− | \end{cases}
| |
− | $$
| |
− | Until \(t > t_{P}\) the concentration of infected <i>E. coli</i> increases by growth and infection of previouly uninfected <i>E. coli</i>. When \(t > t_{P}\), a third term describing that infected <i>E. coli</i> turn into phage-producing <i>E. coli</i> is subtracted.
| |
− |
| |
− | <b>Change of concentration of phage producing <i>E. coli</i>, \(\frac{\partial c_{p} }{\partial t} \: [cfu/min]\)</b>
| |
− |
| |
− | $$
| |
− | \frac{\partial c_{p} }{\partial t}(t) = \begin{cases}
| |
− | g_{p} (t_{p}, \: c_{p}(t), \: c_{c}) -
| |
− | c_{i}(t - t_{P}),
| |
− | \quad \text{for} \: t > t_{P} \\
| |
− | g_{p} (t_{p}, \: c_{p}(t), \: c_{c}),
| |
− | \quad \text{otherwise}
| |
− | \end{cases}
| |
− | $$
| |
− | The population of phage producing E. coli only increases by growth until \(t > t_{P}\). When infected <i>E. coli</i> drop their first phage they turn into producing <i>E. coli</i> as described by the second term.
| |
− |
| |
− | <h2>Phage propagation</h2>
| |
− | <b>Change of concentration of <i>M13</i> phage, \(\frac{\partial c_{P} }{\partial t} \: [cpu/min]\)</b>
| |
− |
| |
− | $$
| |
− | \frac{\partial c_{P} }{\partial t}(t) = c_{P}(t) \cdot \mu_{max} \cdot f - k \cdot c_{u}(t)\cdot c_{P}(t)
| |
− | $$
| |
− | The phage concentration is only increased by phage that leave phage-producing <i>E. coli</i>, which happens at a rate of \(f \cdot \mu_{max}\) per time unit, with f being the fitness, a value between 0 and 1, equal to the share of the wildtype <i>M13</i> phages fitness and \(\mu_{max}\) being the wildtype phages production rate. We assume that the only negative influence on the free phage titer is phage infecting <i>E. coli</i>, which depends on both the phage titer \(c_{P}\) and the titer of uninfected <i>E. coli</i>, \(c_{i}\).
| |
− |
| |
− | When the fitness is assumed to be the same for all phages, it is modeled to be constant during the time in one lagoon.
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Numeric solutions</h2>
| |
− |
| |
− | The problem described above is a system of four differential equations, of which two ( \(\frac{\partial c_{i} }{\partial t} \:, \: \frac{\partial c_{p} }{\partial t}\) ) are so called delayed differential equations. They contain a term that needs to be evaluated at a timepoint in the past \(t - t_{P}\). A python script was used to solve the problem numerically, using the explicit Euler method.
| |
− | The basic idea is that from a point in time with all values and all derivatives values given, the next point in time can be calculated by assuming a linear progress between the two points.
| |
− | $$
| |
− | f(t_{n+1}) = f(t_{n}) + (t_{n+1} - t_{n}) \cdot f'(t_{n})
| |
− | $$
| |
− | This is performed for \(c_{u}(t)\), \(c_{i}(t)\), \(c_{p}(t)\) and \(c_{P}(t)\) rotatory, to always have the needed values from \(t_{n}\) ready for \(t_{n+1}\).
| |
− | }}
| |
− | {{Heidelberg/templateus/Tablebox|
| |
− | Table 2: Additional Variables and Parameters used in the numeric solution of the model |
| |
− | {{#tag:html|
| |
− | <table class="table table-bordered mdl-shadow--4dp" XSSCleaned="overflow-x: scroll !important">
| |
− | <thead>
| |
− | <tr>
| |
− | <th>Symbol</th>
| |
− | <th>Name in Source code</th>
| |
− | <th>Value and Unit</th>
| |
− | <th>Explanation</th>
| |
− |
| |
− | </tr>
| |
− | </thead>
| |
− | <tbody>
| |
− | <tr>
| |
− | <td>\(v_{l}\)</td>
| |
− | <td><code class="python">vl</code></td>
| |
− | <td>[ml]</td>
| |
− | <td>Volume of lagoon</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(t_{l} \)</td>
| |
− | <td><code class="python">tl</code></td>
| |
− | <td>[min]</td>
| |
− | <td>Duration until transfer to the next lagoon</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(c_{u}(t_{0})\)</td>
| |
− | <td><code class="python">ceu0</code></td>
| |
− | <td>[cfu]</td>
| |
− | <td>Concentration of <i>E. coli</i> in a lagoon when M13 phages are transfered to it</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(c_{P}(t_{0})\)</td>
| |
− | <td><code class="python">cp0</code></td>
| |
− | <td>[pfu]</td>
| |
− | <td>Initial concentration of M13 phage in the first lagoon</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(n\)</td>
| |
− | <td><code class="python">epochs</code></td>
| |
− | <td>-</td>
| |
− | <td>Number of epochs that are modeled, one epoch being everything that happens in one particular lagoon</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(s\)</td>
| |
− | <td><code class="python">tsteps</code></td>
| |
− | <td>-</td>
| |
− | <td>Number of time steps for which numeric solutions are calculated, counted per epoch</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(c_{P}^{min}\)</td>
| |
− | <td><code class="python">min_cp</code></td>
| |
− | <td>[pfu]</td>
| |
− | <td>Lower threshold for valid phage titers</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>\(c_{P}^{max}\)</td>
| |
− | <td><code class="python">max_cp</code></td>
| |
− | <td>[pfu]</td>
| |
− | <td>Upper threshold for valid phage titers</td>
| |
− | </tr>
| |
− | </tbody>
| |
− | </table>
| |
− | }}|
| |
− | List of all additional paramters and variables used in the numeric solution of this model. When possible values are given.
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Fitness distributions</h2>
| |
− | If a fitness distribution is assumed, the fitness does not necessarily stay constant in one lagoon. The distribution is initialized with 100 % of the phages having the starting fitness. First changes in the fitness distribution occur after the first <i>E. coli</i> start to release phages.
| |
− | <br>
| |
− | The fitness distribution is modeled to change by mutation and selection. The <b>selection</b> is implemented in the following equation:
| |
− |
| |
− | $$
| |
− | s_{i}(t_{n + 1}) = f_{i}(t_{n}) \cdot s_{i}(t_{n})
| |
− | $$
| |
− |
| |
− |
| |
− | \(f_{i}\) is one of \(N\) fitness values, \(s_{i}\) is the share of phages with that fitness value relative to the total phage population. Since the fitness is interpreted as a percentage of the wildtype fitness in this model, the new shares can be calculated als the product of the fitness value \(f_{i}\) and its old share \(s_{i}(t_{n})\). The resulting values are then normalized by divsion with
| |
− |
| |
− | $$
| |
− | \sum_{i = 0}^{N} f_{i}(t_{n + 1})
| |
− | $$
| |
− |
| |
− | in order to always have shares that sum up to 1.
| |
− | <br>
| |
− | The <b>mutation</b> is implemented as a function that manipulates the fitness shares and applied to the fitness shares after selection.
| |
− | Here, \(r_{M}\) is the mutation rate, that means the amount of the fitness share \(i\) that changed during the mutation. \(w\) is the width of a fitness bin:
| |
− |
| |
− | $$
| |
− | w = \frac{1}{N - 1}
| |
− | $$
| |
− |
| |
− | The new shares are calculated as
| |
− |
| |
− | $$
| |
− | s_{i}(t_{n + 1}) = \big(1 - r_{M}\big) \cdot s_{i}(t_{n}) + r_{M} \sum_{i = 0}^{N} \int_{f_{i} - \frac{1}{2} \cdot w}^{f_{i} + \frac{1}{2} \cdot w} \mathcal{N}_{\mu=f_{i}, \: \sigma}(x) \: dx
| |
− | $$
| |
− |
| |
− | <b>Special cases:</b><br>
| |
− | For \(f_{0}\) the integral is changed to
| |
− |
| |
− | $$
| |
− | \int_{- \infty }^{f_{0} + \frac{1}{2} \cdot w} \mathcal{N}_{\mu=f_{i}, \: \sigma}(x) \: dx
| |
− | $$
| |
− |
| |
− | For \(f_{0}\) the integral is changed to
| |
− |
| |
− | $$
| |
− | \int_{f_{N} - \frac{1}{2} \cdot w}^{\infty} \mathcal{N}_{\mu=f_{i}, \: \sigma}(x) \: dx
| |
− | $$
| |
− |
| |
− | to have the integrals over the normal distribution add up to 1.
| |
− |
| |
− | The normal distribution \(\mathcal{N}\) is used to model that many mutations have only small effects on the fitness, while some have a larger effect. \(\sigma\) is a parameter of the model that influences how much the new scores differ from the previous ones. In this model it is theoretically possible that mutation turns any given fitness into any other fitness, however small values for can \(\sigma\) prevent this.
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/0/02/T--Heidelberg--2017_phage_titer_fig3.png|{{#tag:html|Figure 3: Constant fitness assumed to be equal for all phages in the lagoon}}|{{#tag:html|The color indicates the share of phages that have a specific fitness (y-axis) at a given time (x-axis). With the constant non-distributional mode the complete phage population has the initial fitness for the whole time.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/7/7d/T--Heidelberg--2017_phage_titer_fig4.png|{{#tag:html|Figure 4: A distribution of fitness assumed with 10 % of new phages being subjected to changes in fitness.}}|{{#tag:html|The color indicates the share of phages that have a specific fitness (y-axis) at a given time (x-axis). With the distributional fitness mode after 10 minutes variants with a higher fitness occur.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | When the the concentrations are modeled over a longer period of time the fitness of the wildtype is reached. To more accurate model evolution in which the wildtype fitness is never reached, \(\mu_{max}\) can be set to a smaller value. This value will be reached by most of the phages, if enough time is given. Finally almost no phages with the lowest fitness can be found in the lagoon.
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/b/be/T--Heidelberg--2017_phage_titer_fig5.png|{{#tag:html|Figure 5: <i>E. coli</i> and phage titer modled over 6.5 h with a normal distribution based fitness distribution.}}|{{#tag:html|Blue lines correspond to <i>E. coli</i> titers, the red line is the total phage titer.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/5/55/T--Heidelberg--2017_phage_titer_fig6.png|{{#tag:html|Figure 6: A distribution of fitness is assumed with 10 % of new phages being subjected to changes in fitness over 6.5 h.}}|{{#tag:html|The color indicates the share of phages that have a specific fitness (y-axis) at a given time (x-axis). After 4 h the system goes in a steay state where mutation and selection cancel each other out.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/a/ac/T--Heidelberg--2017_phage_titer_fig7.png|{{#tag:html|Figure 7: Shares of the phage-producing <i>E. coli</i> producing phages with different fitness values.}}|{{#tag:html|Modelled with normal distribution based mutation. 'cep(f=x)' denotes the concentration of phage-producing <i>E. coli</i> that produce phage with fitness x. Initially all phage-producing <i>E. coli</i> produce phage with 20 % of the wildtype fitness, they make up the largest share for 1 h after which fitter phage-producing <i>E. coli</i> take over the lagoon.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | Since most mutations decrease fitness in reality, a symmetric function like the normal distributions density function may not be the best choice. Consequently we also implemented a mutation function with a skew normal distribution \(\mathcal{S}\), that replaces \(\mathcal{N}\). It has an additional parameter \(\alpha\) that modulates the skewness.
| |
− |
| |
− | $$
| |
− | s_{i}(t_{n + 1}) = \big(1 - r_{M}\big) \cdot s_{i}(t_{n}) + r_{M} \sum_{i = 0}^{N} \int_{f_{i} - \frac{1}{2} \cdot w}^{f_{i} + \frac{1}{2} \cdot w} \mathcal{S}_{\mu=f_{i}, \: \sigma, \: \alpha}(x) \: dx
| |
− | $$
| |
− |
| |
− |
| |
− | <b>Special cases:</b><br>
| |
− | For \(f_{0}\) the integral is changed to
| |
− |
| |
− | $$
| |
− | \int_{- \infty }^{f_{0} + \frac{1}{2} \cdot w} \mathcal{S}_{\mu=f_{i}, \: \sigma, \: \alpha}(x) \: dx
| |
− | $$
| |
− |
| |
− | For \(f_{0}\) the integral is changed to
| |
− |
| |
− | $$
| |
− | \int_{f_{N} - \frac{1}{2} \cdot w}^{\infty} \mathcal{S}_{\mu=f_{i}, \: \sigma, \: \alpha}(x) \: dx
| |
− | $$
| |
− |
| |
− | to have the integrals over the normal distribution add up to 1.
| |
− | <br>
| |
− |
| |
− | The equation for \(\frac{\partial c_{P} (t)}{\partial t}\) is changed into the following to incorporate the distributed fitness.
| |
− |
| |
− | $$
| |
− | \frac{\partial c_{P} (t)}{\partial t} = -k \cdot c_{u}(t) \cdot c_{P} (t)
| |
− | + \sum_{i = 0}^N f_{i} \cdot s_{i} \cdot \mu \cdot c_{p} (t)
| |
− | $$
| |
− |
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/c/cc/T--Heidelberg--2017_phage_titer_fig8.png|{{#tag:html|Figure 8: Shares of the phage-producing <i>E. coli</i> producing phages with different fitness values.}}|{{#tag:html|Modeled with skew normal distribution based mutation biased towards lower fitness scores. Initially all phage-producing <i>E. coli</i> produce phage with 20 % of the wildtype fitness, they make up the largest share for 1 h after which fitter phage-producing <i>E. coli</i> take over the lagoon.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− |
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/c/c6/T--Heidelberg--2017_phage_titer_fig9.png|{{#tag:html|Figure 9: Effect of missing selection}}|{{#tag:html|Without selection fitness does not show a clear trend until the boundary values show higher shares. This is most likely due to the equation that gives the boundary values fitness that leaves the interval [0, 1]. The color indicates the share of phages that have a specific fitness (y-axis) at a given time (x-axis).
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | Other assumptions for the mutation function are possible, for example a function that randomly samples from a normal distribution but is biased towards mutations that decrease fitness.
| |
− | <br>
| |
− | Since this model of fitness and mutation is heavily abstracted it is most likely limeted to qualitative statements. Still it provides an intuitive understanding on how directed evolution can work and illustrates the role of selection and mutation. If the model without mutation (Fig. 3) is compared to one with mutation and selection (Fig. 6) role of mutation, diversificating the pool of phages can be seen. When comparing a model without selection (Fig. 9) to the one with mutation and selection (Fig. 6) the role of selection can be described as channeling the variants caused by mutation into a specific direction.
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Effects of noise</h2>
| |
− | Errors in the parameters of the model can be due discrepancies of the modeled experiments conditions and the conditions under which parameters were determined. To estimate how problematic the resulting errors of the model are, we compared the model to data that was obtained from our other experiments.
| |
− |
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/0/09/T--Heidelberg--2017_phage_titer_fig10.png|{{#tag:html|Figure 10: Comparison of different noise levels effects on predicted phage and <i>E. coli</i> titer.}}|{{#tag:html|Gaussian noise was added to all parameters relative to each parameter with a sigma of A: 0 %, B: 20 %, C: 50 %, D: 100 %. The overall behavior of the different titers stays the is the same, even when gaussian noise with a sigma of 100 % of the value is introduced. The strongest discrepancy between the noise free version (A) and the noisiest (B) is that the titer of uninfectd <i>E. coli</i> decreases below 1e3 multiple times.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− |
| |
− | To make general statements on how sensitive the model reacts to noise in its parameters, a function was introduced that adds adjustable gaussian noise to all parameters. It was scaled relative to each parameters value. The function \(n(v)\) returns the noisy value of \(v\), the random argument \(r\) is sampled from a uniform distribution over \([0, 1]\).
| |
− |
| |
− | $$
| |
− | n(v) = v + \big(1 - 2r\big) \cdot \sigma_{G} \cdot \sigma_{v} \cdot v, \quad r \in [0, 1]
| |
− | $$
| |
− |
| |
− | \(\sigma_{G}\) is a global factor that is the same for all \(v\), \(\sigma_{v}\) is specific for \(v\). This makes it possible to have one parameter being noisier than another, while being able to tune the noise globally.
| |
− | <br>
| |
− | When different levels of noise are added to the same model (Fig. 10), the comparison of predicted phage titer shows almost no difference. While the predicted <i>E. coli</i> titers show some differences, the total <i>E. coli</i> titer is similar between the different versions. That can hint at errors in the <i>E. coli</i> concentrations cancelling each other out.
| |
− | <br>
| |
− | The model seems to be sufficiently robust against random errors. However systematic errors in the parameters can still have a large effect on predicted phage and <i>E. coli</i> titers.
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Modeling concentrations over multiple Lagoons</h2>
| |
− | PREDCEL is based on transferring phage from one lagoon into the next. This substitutes the constant supply with fresh medium, fresh <i>E. coli</i> and the constant dilution by a turbidostat.
| |
− | Because transferring decreases the phage by the relation of the transfer volume \(V_{t}\) to the lagoon volume \(v_{L}\), there is an increased risk of washout.
| |
− | This model is partly motivated by the goal to minimize that risk. The basic idea is to enable the user to react to a diminishig phage titer early enough while maintaining a reasonable level of monitoring.
| |
− | <br>
| |
− | <b>In all following model versions, a distributional fitness, transfer of phage and <i>E. coli</i> and logistic growth are assumed. Due to their lower plausibility the alternatives are not shown, but are available as functions in the script.</b>
| |
− | <br>
| |
− | When transfer from one volume to the next is performed, the new lagoon can be modeled with starting values calculated from the last lagoons end values.
| |
− | For each concentration from the previous lagoon \(c_{t}\), the concentration in the next lagoon \(c_{t+1}\) is calculated as
| |
− |
| |
− | $$
| |
− | c_{t+1} = \frac{v_{t} }{v_{l} } \cdot c_{t}
| |
− | $$
| |
− |
| |
− | with \(v_{L}\), the volume of a lagoon and \(v_{t}\), the volume that is transferred.
| |
− |
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/d/dd/T--Heidelberg--2017_phage_titer_fig12.png|Figure 11: Different phage titer trends|{{#tag:html|In A the phage titer just before the transfer is constant, that corresponds with a constant MOI that can be set by choosing the initial phage titer. In B washout occurs, after the fifth transfer no phage will be left. C shows an increase in phage titer, D a decrease
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− |
| |
− | If the transfered volume is spinned down before it is added to the new lagoon, the initial value for \(c_{P}\) is calculated this way. The initial concentration of uninfected <i>E. coli</i> is set to the initial cell density. Initial concentrations of infected and phage-producing <i>E. coli</i> are set to zero, because before the transfer, no phages are present in the new lagoon.
| |
− | If the transfer volume is not spinned down, the concentration of infected and phage-producing <i>E. coli</i> are calculated, using the above formula. The initial concentration of uninfected <i>E. coli</i> is the calculated the same way, but the initial cell density is added.
| |
− |
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/b/be/T--Heidelberg--2017_phage_titer_fig11.png|{{#tag:html|Figure 12: Effect of transferring phage only}}|{{#tag:html|Plots A and C are from the same model, as well as B and D. 'cep(f=x)' denotes the concentration of phage-producing <i>E. coli</i> that produce phage with fitness x. When only phage is transferred, the phage-producing <i>E. coli</i> population has to be rebuilt after each transfer, seen as the decreases to zero in A. If only phage is transferred, variants with a low fitness score are washed out earlier than if the phage-producing <i>E. coli</i> are transferred too.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2 id="cyp_model">Comparison to data from <a href="https://2017.igem.org/Team:Heidelberg/Cytochrome_Engineering">CYP1A2-PREDCEL</a></h2>
| |
− | {{Heidelberg/templateus/Imagesection|https://static.igem.org/mediawiki/2017/9/97/T--Heidelberg--Team_Heidelberg_2017_phage_titer_fig12.png|{{#tag:html|Figure 13: Phage titer modeled in two setups compared to two rounds of <a href="https://2017.igem.org/Team:Heidelberg/Cytochrome_Engineering">CYP1A2-PREDCEL</a>}}|{{#tag:html|The two rounds of PREDCEL each consisted of one transfer, in between the phage was amplificated without selection pressure on the CYP1A2. The model was only adjusted in the assumed fitness in between the two rounds of PREDCEL.
| |
− | <br>
| |
− | <a href="#parameters">See the full list of parameters.</a>
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | To asses the model in comparison with real data, phage titers from CYP1A2-PREDCEL were modeled with different values for the unkown parameters and the set of parameters that described the data best was chosen.
| |
− | <br>
| |
− | The phage titer data consists of two sets, a first round of PREDCEL with 1 transfer, followed by amplification of the resulting library on a strain that allows the phage to propagate independent of the performance of their CYP1A2 sequence. Then a second round of PREDCEL with one transfer was done.
| |
− | The time between two transfers \(t_{L}\) was 3 h, the lagoon volume \(v_{L}\) 20 ml and the transferred volume \(v_{T}\) 3 ml. Unknown parameters are the initial fitness, how the fitness changes and the phage degradation rate \(r_{D}\).
| |
− | <br>
| |
− | Both round were best described an initial fitness of \(f(t_{0}) = 0.001\), and a degration rate of \(r_{D} = 0.075\).
| |
− | For the first round constant fitness was assumed, since the initial library complexity is 1 and a sufficiently sized library is a maijor requirement for fitness to rise. For the second round the starting fitness was assumed to be identical to the fitness of the first round, then increasing to \(f(t_{0}) = 0.025\) after the transfer.
| |
− | <br>
| |
− | The initial phage titers for both rounds were given in the data.
| |
− | <a href="#parameters"> The full conditions for both models and the full data is available below.</a>
| |
− |
| |
− |
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h2>Finding Parameters</h2>
| |
− |
| |
− | Combinations of parameters that result in maintaing an acceptable phage titer most easily be found by calculating the phage titers for different sets parameters systematically. For this purpose a function was implemented that systematically tries all combinations of a given number \(n\) different values for the initial fitness \(f_{0}\), the time in one lagoon \(t_{L}\) and the transferred volume \(v_{t}\). A tunable parameter \(\delta\) defines how the range over wich the \(n\) values for one of the parameters are spread relative to the value of the parameter.
| |
− | For each parameter \(p\) the tried values are in
| |
− |
| |
− | $$
| |
− | \Big\{p + \big(1 - \delta \big) + i \frac{2 \delta}{n - 1} \cdot p \: \Big\vert \: i = 0, ..., (n - 1)\Big\}
| |
− | $$
| |
− | }}
| |
− | }}
| |
− |
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− |
| |
− | In directed evolution the fitness should increase over time. A linear increase in fitness between to given values was implemented to show this. The problem with this approach is its basic assumption being that all phage-producing <i>E. coli</i> are infected by phages with the same fitness.
| |
− | To make the model more plausible, a distribution of fitness was introduced. For a set of discrete fitness values each fitness values share of the phage-producing <i>E. coli</i> population is calculated.
| |
− | That changes the equation for the change in the concentration of phage-producing <i>E. coli</i> to
| |
− |
| |
− | The calculation is for \(N\) different fitness values \(f_{i}\) and their share of the total phage-producing <i>E. coli</i> population \(s_{i}\).
| |
− |
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/templateus/Contentsection|
| |
− | {{#tag:html|
| |
− | <h1 id="parameters">Parameters used for the figures</h1>
| |
− | {{Heidelberg/accpanel|#005493|
| |
− | {{Heidelberg/accord|Figure 1, 3 - 20 % fitness|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.0,
| |
− | 'skewness': 1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 60,
| |
− | 'to_mutate': 0.0,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 100,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig1}}
| |
− | {{Heidelberg/accord|Figure 2 - 100 % fitness|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 1.0,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'const',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'False',
| |
− | 'sigma': 0.001,
| |
− | 'skewness': 1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 60,
| |
− | 'to_mutate': 0.0,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 100,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig2}}
| |
− | {{Heidelberg/accord|Figure 4 - Distributional fitness 1 h|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.0,
| |
− | 'skewness': 1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 60,
| |
− | 'to_mutate': 0.0,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 100,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig4}}
| |
− | {{Heidelberg/accord|Figure 5, 6, 7 - Distributional fitness 6.5 h|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.1,
| |
− | 'skewness': 1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 400,
| |
− | 'to_mutate': 0.1,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 2000,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig5_6_7}}
| |
− | {{Heidelberg/accord|Figure 8 - Distributional fitness skew |{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'skew',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.1,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 400,
| |
− | 'to_mutate': 0.1,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 2000,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig8}}
| |
− | {{Heidelberg/accord|Figure 9 - Distributional fitness without selection|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.1,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 400,
| |
− | 'to_mutate': 0.1,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 500,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig9}}
| |
− | {{Heidelberg/accord|Figure 10 - Effects of different noise levels|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'skew',
| |
− | 'noisy': 0.05, # or 0.1, 0.2, 0.5
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.1,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 60,
| |
− | 'to_mutate': 0.1,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 500,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig11a}}
| |
− | {{Heidelberg/accord|Figure 11A - Constant Phage Titer|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 1000000.0,
| |
− | 'epochs': 5,
| |
− | 'f0': 0.1,
| |
− | 'f_prec': 11,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'False',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.025,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 45,
| |
− | 'to_mutate': 0.025,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 200,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 0.5
| |
− | </pre>}}
| |
− | |fig11a}}
| |
− | {{Heidelberg/accord|Figure 11B - Washout|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 1000000.0,
| |
− | 'epochs': 5,
| |
− | 'f0': 0.1,
| |
− | 'f_prec': 11,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'False',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.025,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 20,
| |
− | 'to_mutate': 0.025,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 200,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 0.5
| |
− | </pre>}}
| |
− | |fig11b}}
| |
− | {{Heidelberg/accord|Figure 11C - Increase in Phage Titer|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 1000000.0,
| |
− | 'epochs': 5,
| |
− | 'f0': 0.1,
| |
− | 'f_prec': 11,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'False',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.025,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 45,
| |
− | 'to_mutate': 0.025,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 200,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 3
| |
− | </pre>}}
| |
− | |fig11c}}
| |
− | {{Heidelberg/accord|Figure 11D - Decrease in Phage Titer|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 100000000.0,
| |
− | 'epochs': 1,
| |
− | 'f0': 0.2,
| |
− | 'f_prec': 21,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'skew',
| |
− | 'noisy': 0.05, # or 0.1, 0.2, 0.5
| |
− | 'phageonly': 'True',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.1,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 60,
| |
− | 'to_mutate': 0.1,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 500,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 1
| |
− | </pre>}}
| |
− | |fig11d}}
| |
− | {{Heidelberg/accord|Figure 12 - Effects of transferring phage only|{{#tag:html|<pre>
| |
− | 'capacity': 1000000000.0,
| |
− | 'ceu0': 100000000.0,
| |
− | 'cp0': 1000000.0,
| |
− | 'epochs': 5,
| |
− | 'f0': 0.1,
| |
− | 'f_prec': 11,
| |
− | 'fend': 1.0,
| |
− | 'fitnessmode': 'dist',
| |
− | 'ftype': 'const',
| |
− | 'growth_mode': 'logistic',
| |
− | 'k': 3e-11,
| |
− | 'max_cp': 2000000000.0,
| |
− | 'min_cp': 100000.0,
| |
− | 'mumax': 16.667,
| |
− | 'mutation_dist': 'norm',
| |
− | 'noisy': 0.0,
| |
− | 'phageonly': 'False',
| |
− | 'plot_dist': 'True',
| |
− | 'sigma': 0.025,
| |
− | 'skewness': -1.0,
| |
− | 'ti': 30,
| |
− | 'tl': 30,
| |
− | 'to_mutate': 0.025,
| |
− | 'tp': 40,
| |
− | 'tpp': 10,
| |
− | 'tsteps': 200,
| |
− | 'tu': 20,
| |
− | 'vl': 20,
| |
− | 'vt': 0.5
| |
− | </pre>}}
| |
− | |fig12}}
| |
− | {{Heidelberg/accord|Figure 13 - Comparison modeled and real Phage Titers|{{#tag:html|
| |
− | <h3>First Round Model</h3><pre>
| |
− | {
| |
− | 'vl': 20,
| |
− | 'tl': 180,
| |
− | 'vt': 3,
| |
− | 'ceu0': 1e8,
| |
− | 'cp0': 3e8,
| |
− | 'k': 3e-11,
| |
− | 'tu': 20,
| |
− | 'ti': 30,
| |
− | 'tp': 40,
| |
− | 'mumax': 16.667,
| |
− | 'tpp': 10,
| |
− | 'f0': 0.001,
| |
− | 'fend': 0.6,
| |
− | 'tsteps': 180,
| |
− | 'epochs': 5,
| |
− | 'capacity': 1e9,
| |
− | 'min_cp': 1e7,
| |
− | 'max_cp': 1e9,
| |
− | 'growth_mode': 'logistic',
| |
− | 'phageonly': 'True',
| |
− | 'noisy': 0.0,
| |
− | 'f_prec': 21,
| |
− | 'fitnessmode': 'const',
| |
− | 'to_mutate': 0.0,
| |
− | 'sigma': 0.01,
| |
− | 'mutation_dist': 'norm',
| |
− | 'skewness': -1.0,
| |
− | 'plot_dist': 'False',
| |
− | 'phage_degradation': 0.075
| |
− | }
| |
− | </pre>
| |
− | <h3>Second Round Model</h3><pre>
| |
− | {
| |
− | 'vl': 20,
| |
− | 'tl': 180,
| |
− | 'vt': 3,
| |
− | 'ceu0': 1e8,
| |
− | 'cp0': 6e8,
| |
− | 'k': 3e-11,
| |
− | 'tu': 20,
| |
− | 'ti': 30,
| |
− | 'tp': 40,
| |
− | 'mumax': 16.667,
| |
− | 'tpp': 10,
| |
− | 'f0': 0.001,
| |
− | 'fend': 0.025,
| |
− | 'tsteps': 180,
| |
− | 'epochs': 2,
| |
− | 'capacity': 1e9,
| |
− | 'min_cp': 1e7,
| |
− | 'max_cp': 1e9,
| |
− | 'growth_mode': 'logistic',
| |
− | 'phageonly': 'True',
| |
− | 'noisy': 0.0,
| |
− | 'f_prec': 21,
| |
− | 'fitnessmode': 'lin',
| |
− | 'to_mutate': 0.0,
| |
− | 'sigma': 0.01,
| |
− | 'mutation_dist': 'norm',
| |
− | 'skewness': -1.0,
| |
− | 'plot_dist': 'False',
| |
− | 'phage_degradation': 0.075
| |
− | }
| |
− | </pre>
| |
− | <h3>Plottet Comma-Separated File</h3>
| |
− | <pre>
| |
− | t; Theophylline 1; Theophylline 2\n
| |
− | 0; 3.0e8; NaN
| |
− | 180; 1.5e5; NaN
| |
− | 360; 2.35e4; NaN
| |
− | 540; NaN; 6.0e8
| |
− | 720; NaN; 2.0e7
| |
− | 900; NaN; 2.55e7
| |
− | </pre>
| |
− | }}
| |
− | |fig13}}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | }}
| |
− | {{Heidelberg/references2
| |
− | }}
| |
− | {{Heidelberg/footer
| |
− | }}
| |