Difference between revisions of "Team:Fudan-TSI/Measurement"

(LC2)
m
 
(14 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Fudan-TSI}}
+
{{Fudan-TSI}}<!-- jquery loaded by HQ 1.12.4 -->
<html lang="en">
+
<html></p></div></div></div><meta name="viewport" content="width=device-width, initial-scale=1"><meta charset="UTF-8">
<head>
+
  <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1">
+
 
   <link rel="stylesheet" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/materialize.css&action=raw&ctype=text/css">
 
   <link rel="stylesheet" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/materialize.css&action=raw&ctype=text/css">
 
   <link rel="stylesheet" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/Fudan-font-awesome.css&action=raw&ctype=text/css" />
 
   <link rel="stylesheet" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/Fudan-font-awesome.css&action=raw&ctype=text/css" />
 
   <link rel="stylesheet" type="text/css" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/Fudan-css.css&action=raw&ctype=text/css" />
 
   <link rel="stylesheet" type="text/css" href="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/Fudan-css.css&action=raw&ctype=text/css" />
  <style>
+
<style>
 
/*****************************************************************************/
 
/*****************************************************************************/
 
/* DEFAULT WIKI SETTINGS */
 
/* DEFAULT WIKI SETTINGS */
Line 14: Line 12:
 
   #content { margin-left: 0; padding:0px; width:100%;}
 
   #content { margin-left: 0; padding:0px; width:100%;}
 
   .judges-will-not-evaluate { border: 4px solid #e4dede; padding: 2% !important; width: 92%!important; }
 
   .judges-will-not-evaluate { border: 4px solid #e4dede; padding: 2% !important; width: 92%!important; }
   *{margin:0;padding:0;list-style:none}blockquote,body,button,dd,dl,dt,fieldset,form,h1,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0}address,cite,dfn,em,var{font-style:normal}code,kbd,pre,samp{font-family:courier new,courier,monospace}ol,ul{list-style:none}a{text-decoration:none}a:hover{text-decoration:underline}legend{color:#000}fieldset,img{border:0}button,input,select,textarea{font-size:100%}table{border-collapse:collapse;border-spacing:0}
+
/* css clean * */
  #section1 td, #section2 td, #section3 td {padding-bottom:1em;line-height:1.5em}
+
   #FudanTSIBody li { list-style: none; }
 
     </style>
 
     </style>
     <title>2019 Team:Fudan-TSI Measurement</title>
+
     <title>Measurement | 2019 iGEM Team:Fudan-TSI</title>
 
</head>
 
</head>
 
<body>
 
<body>
 
<div id="FudanTSIdivWrapper"><div id="FudanTSIBody">
 
<div id="FudanTSIdivWrapper"><div id="FudanTSIBody">
 
   <header>
 
   <header>
   <div id="emptyBar" style="position:relative;width: 100%;"></div><nav id="topNav" class="black z-depth-0_5"><div class="nav-wrapper"><div id="teamLogo" class="brand-logo"> <a href="/Team:Fudan-TSI" target="_self"><img alt="2019 team logo" src="https://static.igem.org/mediawiki/2019/d/d3/T--Fudan-TSI--HomepageLogo.gif"></a></div><ul id="nav-mobile" class="right"><!-- @@ --><li> <a id="navList" data-target="slide-out" class="waves-effect waves-light sidenav-trigger right"> <i class="fa fa-navicon" style="font-size: 24px"></i> </a></li></ul></div> </nav>
+
   <div id="emptyBar" style="position:relative;width: 100%;"></div><nav id="topNav" class="black z-depth-0_5"><div class="nav-wrapper"><div id="teamLogo" class="brand-logo"> <a href="/Team:Fudan-TSI" target="_self"><img alt="2019 team logo" src="https://static.igem.org/mediawiki/2019/d/d3/T--Fudan-TSI--HomepageLogo.gif"></a></div><ul id="nav-mobile" class="right">
 +
    <li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown1">Project</a></li><li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown2">Results</a></li><li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown3">Model</a></li><li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown4">Parts</a></li><li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown5">Human&nbsp;practices</a></li><li class="hide-on-med-and-down"><a class="dropdown-trigger" data-target="dropdown6">Team</a></li>
 +
    <li class="hide-on-med-and-down"><a href="/Team:Fudan-TSI/Judging">Judging</a></li>
 +
    <li> <a id="navList" data-target="slide-out" class="waves-effect waves-light sidenav-trigger right"> <i class="fa fa-navicon" style="font-size: 24px"></i> </a></li></ul></div> </nav>
 
   <!-- Dropdown and List elements in navigation bar -->
 
   <!-- Dropdown and List elements in navigation bar -->
 +
  <ul id="dropdown1" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Description">Background</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Design">Design</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Experiments">Experiments</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Applied_Design">Applied&nbsp;design</a></li>
 +
  </ul>
 +
  <ul id="dropdown2" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse&nbsp;transcription</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Notebook">Notebook</a></li>
 +
  </ul>
 +
  <ul id="dropdown3" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Model">Modeling</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Software">Software</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Hardware">Hardware</a></li>
 +
  </ul>
 +
  <ul id="dropdown4" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Basic_Part">Basic&nbsp;parts</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Composite_Part">Composite&nbsp;parts</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Improve">Part&nbsp;improvement</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Part_Collection">Part&nbsp;collection</a></li>
 +
  </ul>
 +
  <ul id="dropdown5" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Public_Engagement">Public&nbsp;engagement</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated&nbsp;HP</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Safety">Safety</a></li>
 +
  </ul>
 +
  <ul id="dropdown6" class="dropdown-content">
 +
      <li><a href="/Team:Fudan-TSI/Team">Members</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Attributions">Attributions</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Team#Acknowledge">Acknowledge</a></li>
 +
      <li><a href="/Team:Fudan-TSI/Heritage">Heritage</a></li>
 +
  </ul>
 +
  
 
   <ul id="slide-out" class="sidenav">
 
   <ul id="slide-out" class="sidenav">
Line 39: Line 77:
 
         <li class="onThisPageNav"><a href="#section5">SDS-PAGE</a></li>
 
         <li class="onThisPageNav"><a href="#section5">SDS-PAGE</a></li>
  
         <li><span class="pageSidebar">Team: Fudan-TSI</span></li><li><div class="collapsible-header"><span class="pageSidebar">Project</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Description">Background</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Design">Design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div></li><li><div class="collapsible-header active"><span class="pageSidebar">Results</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Model</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Software">Software</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Parts</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Human practices</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Team</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Team">Members</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a class="pageSidebar" href="https://2018.igem.org/Team:Fudan/Heritage" target=_blank>Heritage</a></li></ul></div></li>
+
         <li><span class="pageSidebar">Team: Fudan-TSI</span></li><li><div class="collapsible-header"><span class="pageSidebar">Project</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Description">Background</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Design">Design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div></li><li><div class="collapsible-header active"><span class="pageSidebar">Results</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Model</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Software">Software</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Parts</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Human practices</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Team</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Team">Members</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div></li>
 
       </ul><!-- .expandable -->
 
       </ul><!-- .expandable -->
 
     </li>
 
     </li>
Line 55: Line 93:
 
           </div>
 
           </div>
 
           <div class="hide-on-small-only">
 
           <div class="hide-on-small-only">
              <div style="text-align:center;padding-top:80px"><center><img style="height:120px;width:auto" alt="cover measurement" src="https://static.igem.org/mediawiki/2019/c/c6/T--Fudan-TSI--coverMeasurement.gif" /></center></div>
+
<style>
 +
#demo {width:100%;height:100%;position:relative;z-index:-100;}
 +
#demo svg {width:100%;height:100%;position:fixed;}
 +
#demo svg g {mix-blend-mode:lighten;}
 +
#demo svg polygon {stroke:none;fill:white;}
 +
</style>
 +
<div id="pageCover">
 +
  <svg id="demo" viewBox="0 0 1600 600" preserveAspectRatio="xMidYMid slice">
 +
        <defs>
 +
        <linearGradient id="grad1" x1="0" y1="0" x2="1" y2="0" color-interpolation="sRGB">
 +
          <stop id="stop1a" offset="0%" stop-color="#12a3b4"></stop>
 +
          <stop id="stop1b" offset="100%" stop-color="#ff509e"></stop>
 +
        </linearGradient>
 +
        <linearGradient id="grad2" x1="0" y1="0" x2="1" y2="0" color-interpolation="sRGB">
 +
          <stop id="stop2a" offset="0%" stop-color="#e3bc13"></stop>
 +
          <stop id="stop2b" offset="100%" stop-color="#00a78f"></stop>
 +
        </linearGradient>
 +
        </defs>
 +
        <rect id="rect1" x="0" y="0" width="1600" height="600" stroke="none" fill="url(#grad1)"></rect>
 +
        <rect id="rect2" x="0" y="0" width="1600" height="600" stroke="none" fill="url(#grad2)"></rect>
 +
  </svg>
 +
</div><!-- #pageCover -->
 +
<script src="https://2019.igem.org/wiki/index.php?title=Template:Fudan-TSI/bkg&action=raw&ctype=text/javascript"></script>
 +
        <script>
 +
      //////////////////////////////
 +
      // Demo Functions
 +
      //////////////////////////////
 +
      function bkgFunction(showStats) {
 +
        // stats
 +
        if (showStats) {
 +
        var stats = new Stats();
 +
        stats.domElement.style.position = 'absolute';
 +
        stats.domElement.style.left = '0';
 +
        stats.domElement.style.top = '0';
 +
        document.body.appendChild(stats.domElement);
 +
        requestAnimationFrame(function updateStats(){
 +
          stats.update();
 +
          requestAnimationFrame(updateStats);
 +
        });
 +
        }
 +
        // init
 +
        var svg = document.getElementById('demo');
 +
        tesselation.setup(svg);
 +
        gradients.setup();
 +
        var lastTransitionAt, transitionDelay = 10000, transitionDuration = 3000;
 +
        function playNextTransition() {
 +
        tesselation.next(transitionDuration);
 +
        gradients.next(transitionDuration);
 +
        };
 +
        function tick(time) {
 +
        if (!lastTransitionAt || time - lastTransitionAt > transitionDelay) {
 +
          lastTransitionAt = time;
 +
          playNextTransition();
 +
        }
 +
        window.requestAnimationFrame(tick);
 +
        }
 +
        window.requestAnimationFrame(tick);
 +
      }
 +
      //////////////////////////////
 +
      // Delaunay Triangulation
 +
      //////////////////////////////
 +
      var calcDelaunayTriangulation = (function() {
 +
        var EPSILON = 1.0 / 1048576.0;
 +
        function getSuperT(vertices) {
 +
        var xMin = Number.POSITIVE_INFINITY, yMin = Number.POSITIVE_INFINITY,
 +
          xMax = Number.NEGATIVE_INFINITY, yMax = Number.NEGATIVE_INFINITY,
 +
          i, xDiff, yDiff, maxDiff, xCenter, yCenter;
 +
        for(i = vertices.length; i--; ) {
 +
          if(vertices[i][0] < xMin) xMin = vertices[i][0];
 +
          if(vertices[i][0] > xMax) xMax = vertices[i][0];
 +
          if(vertices[i][1] < yMin) yMin = vertices[i][1];
 +
          if(vertices[i][1] > yMax) yMax = vertices[i][1];
 +
        }
 +
        xDiff = xMax - xMin;
 +
        yDiff = yMax - yMin;
 +
        maxDiff = Math.max(xDiff, yDiff);
 +
        xCenter = xMin + xDiff * 0.5;
 +
        yCenter = yMin + yDiff * 0.5;
 +
        return [
 +
          [xCenter - 20 * maxDiff, yCenter - maxDiff],
 +
          [xCenter, yCenter + 20 * maxDiff],
 +
          [xCenter + 20 * maxDiff, yCenter - maxDiff]
 +
        ];
 +
        }
 +
        function circumcircle(vertices, i, j, k) {
 +
        var xI = vertices[i][0], yI = vertices[i][1],
 +
          xJ = vertices[j][0], yJ = vertices[j][1],
 +
          xK = vertices[k][0], yK = vertices[k][1],
 +
          yDiffIJ = Math.abs(yI - yJ), yDiffJK = Math.abs(yJ - yK),
 +
          xCenter, yCenter, m1, m2, xMidIJ, xMidJK, yMidIJ, yMidJK, xDiff, yDiff;
 +
        // bail condition
 +
        if(yDiffIJ < EPSILON){
 +
          if (yDiffJK < EPSILON){
 +
            throw new Error("Can't get circumcircle since all 3 points are y-aligned");
 +
          }
 +
        }
 +
 
 +
 
 +
        // calc circumcircle center x/y, radius
 +
        m1  = -((xJ - xI) / (yJ - yI));
 +
        m2  = -((xK - xJ) / (yK - yJ));
 +
        xMidIJ = (xI + xJ) / 2.0;
 +
        xMidJK = (xJ + xK) / 2.0;
 +
        yMidIJ = (yI + yJ) / 2.0;
 +
        yMidJK = (yJ + yK) / 2.0;
 +
        xCenter = (yDiffIJ < EPSILON) ? xMidIJ :
 +
          (yDiffJK < EPSILON) ? xMidJK :
 +
          (m1 * xMidIJ - m2 * xMidJK + yMidJK - yMidIJ) / (m1 - m2);
 +
        yCenter  = (yDiffIJ > yDiffJK) ?
 +
          m1 * (xCenter - xMidIJ) + yMidIJ :
 +
          m2 * (xCenter - xMidJK) + yMidJK;
 +
        xDiff = xJ - xCenter;
 +
        yDiff = yJ - yCenter;
 +
        // return
 +
        return {i: i, j: j, k: k, x: xCenter, y: yCenter, r: xDiff * xDiff + yDiff * yDiff};
 +
        }
 +
        function dedupeEdges(edges) {
 +
        var i, j, a, b, m, n;
 +
        for(j = edges.length; j; ) {
 +
          b = edges[--j]; a = edges[--j];
 +
          for(i = j; i; ) {
 +
          n = edges[--i]; m = edges[--i];
 +
          if(a === m){
 +
            if (b===n){
 +
              edges.splice(j, 2); edges.splice(i, 2);
 +
              break;
 +
            }
 +
          }
 +
          if(a === n){
 +
            if (b===m){
 +
              edges.splice(j, 2); edges.splice(i, 2);
 +
              break;
 +
            }
 +
          }
 +
          }
 +
        }
 +
        }
 +
        return function(vertices) {
 +
        var n = vertices.length,
 +
          i, j, indices, st, candidates, locked, edges, dx, dy, a, b, c;
 +
        // bail if too few / too many verts
 +
        if(n < 3 || n > 2000)
 +
          return [];
 +
        // copy verts and sort indices by x-position
 +
        vertices = vertices.slice(0);
 +
        indices = new Array(n);
 +
        for(i = n; i--; )
 +
          indices[i] = i;
 +
        indices.sort(function(i, j) {
 +
          return vertices[j][0] - vertices[i][0];
 +
        });
 +
        // supertriangle
 +
        st = getSuperT(vertices);
 +
        vertices.push(st[0], st[1], st[2]);
 +
        // init candidates/locked tris list
 +
        candidates = [circumcircle(vertices, n + 0, n + 1, n + 2)];
 +
        locked = [];
 +
        edges = [];
 +
        // scan left to right
 +
        for(i = indices.length; i--; edges.length = 0) {
 +
          c = indices[i];
 +
          // check candidates tris against point
 +
          for(j = candidates.length; j--; ) {
 +
          // lock tri if point to right of circumcirc
 +
          dx = vertices[c][0] - candidates[j].x;
 +
          if (dx > 0.0){
 +
            if(dx * dx > candidates[j].r){
 +
              locked.push(candidates[j]);
 +
            candidates.splice(j, 1);
 +
            continue;
 +
            }
 +
          }
 +
 
 +
 
 +
          // point outside circumcirc = leave candidates
 +
          dy = vertices[c][1] - candidates[j].y;
 +
          if(dx * dx + dy * dy - candidates[j].r > EPSILON)
 +
            continue;
 +
          // point inside circumcirc = break apart, save edges
 +
          edges.push(
 +
            candidates[j].i, candidates[j].j,
 +
            candidates[j].j, candidates[j].k,
 +
            candidates[j].k, candidates[j].i
 +
          );
 +
          candidates.splice(j, 1);
 +
          }
 +
          // new candidates from broken edges
 +
          dedupeEdges(edges);
 +
          for(j = edges.length; j; ) {
 +
          b = edges[--j];
 +
          a = edges[--j];
 +
          candidates.push(circumcircle(vertices, a, b, c));
 +
          }
 +
        }
 +
        // close candidates tris, remove tris touching supertri verts
 +
        for(i = candidates.length; i--; )
 +
          locked.push(candidates[i]);
 +
        candidates.length = 0;
 +
        for(i = locked.length; i--; )
 +
          if(locked[i].i < n){
 +
            if(locked[i].j < n){
 +
              if(locked[i].k < n){
 +
                candidates.push(locked[i].i, locked[i].j, locked[i].k);
 +
              }
 +
            }
 +
          }
 +
 
 +
 
 +
        // done
 +
        return candidates;
 +
        };
 +
      })();
 +
      var tesselation = (function() {
 +
        var svg, svgW, svgH, prevGroup;
 +
        function createRandomTesselation() {
 +
        var wW = window.innerWidth;
 +
        var wH = window.innerHeight;
 +
        var gridSpacing = 250, scatterAmount = 0.75;
 +
        var gridSize, i, x, y;
 +
        if (wW / wH > svgW / svgH) { // window wider than svg = use width for gridSize
 +
          gridSize = gridSpacing * svgW / wW;
 +
        } else { // window taller than svg = use height for gridSize
 +
          gridSize = gridSpacing * svgH / wH;
 +
        }
 +
        var vertices = [];
 +
        var xOffset = (svgW % gridSize) / 2, yOffset = (svgH % gridSize) / 2;
 +
        for (x = Math.floor(svgW/gridSize) + 1; x >= -1; x--) {
 +
          for (y = Math.floor(svgH/gridSize) + 1; y >= -1; y--) {
 +
          vertices.push(
 +
            [
 +
            xOffset + gridSize * (x + scatterAmount * (Math.random() - 0.5)),
 +
            yOffset + gridSize * (y + scatterAmount * (Math.random() - 0.5))
 +
            ]
 +
          );
 +
          }
 +
        }
 +
        var triangles = calcDelaunayTriangulation(vertices);
 +
        var group = document.createElementNS('http://www.w3.org/2000/svg','g');
 +
        var polygon;
 +
        for(i = triangles.length; i; ) {
 +
          polygon = document.createElementNS('http://www.w3.org/2000/svg','polygon');
 +
          polygon.setAttribute('points',
 +
          vertices[triangles[--i]][0] + ',' + vertices[triangles[i]][1] + ' ' +
 +
          vertices[triangles[--i]][0] + ',' + vertices[triangles[i]][1] + ' ' +
 +
          vertices[triangles[--i]][0] + ',' + vertices[triangles[i]][1]
 +
          );
 +
          group.appendChild(polygon);
 +
        }
 +
        return group;
 +
        }
 +
        return {
 +
        setup: function(svgElement) {
 +
          svg = svgElement;
 +
          var vb = svg.getAttribute('viewBox').split(/\D/g);
 +
          svgW = vb[2];
 +
          svgH = vb[3];
 +
        },
 +
        next: function(t) {
 +
          var toRemove, i, n;
 +
          t /= 1000;
 +
          if(prevGroup){
 +
            if(prevGroup.children){
 +
              if(prevGroup.children.length){
 +
                toRemove = prevGroup;
 +
                n = toRemove.children.length;
 +
                for (i = n; i--; ) {
 +
                  TweenMax.to(toRemove.children[i], t*0.4, {opacity: 0, delay: t*(0.3*i/n)});
 +
                }
 +
                TweenMax.delayedCall(t * (0.7 + 0.05), function(group) { svg.removeChild(group); }, [toRemove], this);
 +
              }
 +
            }
 +
          }
 +
 
 +
          var g = createRandomTesselation();
 +
          n = g.children.length;
 +
          for (i = n; i--; ) {
 +
          TweenMax.fromTo(g.children[i], t*0.4, {opacity: 0}, {opacity: 0.3 + 0.25 * Math.random(), delay: t*(0.3*i/n + 0.3), ease: Back.easeOut});
 +
          }
 +
          svg.appendChild(g);
 +
          prevGroup = g;
 +
        }
 +
        }
 +
      })();
 +
      //////////////////////////////
 +
      // Gradients
 +
      //////////////////////////////
 +
      var gradients = (function() {
 +
        var grad1, grad2, showingGrad1;
 +
        // using colors from IBM Design Colors this time
 +
        var colors = [ // 14 colors - use 3-5 span
 +
        '#3c6df0', // ultramarine50
 +
        '#12a3b4', // aqua40
 +
        '#00a78f', // teal40
 +
        '#00aa5e', // green40
 +
        '#81b532', // lime30
 +
        '#e3bc13', // yellow20
 +
        '#ffb000', // gold20
 +
        '#fe8500', // orange30
 +
        '#fe6100', // peach40
 +
        '#e62325', // red50
 +
        '#dc267f', // magenta50
 +
        '#c22dd5', // purple50
 +
        '#9753e1', // violet50
 +
        '#5a3ec8'  // indigo60
 +
        ];
 +
        function assignRandomColors(gradObj) {
 +
        var rA = Math.floor(colors.length * Math.random());
 +
        var rB = Math.floor(Math.random() * 3) + 3; // [3 - 5]
 +
        rB = (rA + (rB * (Math.random() < 0.5 ? -1 : 1)) + colors.length) % colors.length;
 +
        gradObj.stopA.setAttribute('stop-color', colors[rA]);
 +
        gradObj.stopB.setAttribute('stop-color', colors[rB]);
 +
        }
 +
        return {
 +
        setup: function() {
 +
          showingGrad1 = false;
 +
          grad1 = {
 +
          stopA: document.getElementById('stop1a'),
 +
          stopB: document.getElementById('stop1b'),
 +
          rect:  document.getElementById('rect1')
 +
          };
 +
          grad2 = {
 +
          stopA: document.getElementById('stop2a'),
 +
          stopB: document.getElementById('stop2b'),
 +
          rect:  document.getElementById('rect2')
 +
          };
 +
          grad1.rect.style.opacity = 0;
 +
          grad2.rect.style.opacity = 0;
 +
        },
 +
        next: function(t) {
 +
          t /= 1000;
 +
          var show, hide;
 +
          if (showingGrad1) {
 +
          hide = grad1;
 +
          show = grad2;
 +
          } else {
 +
          hide = grad2;
 +
          show = grad1;
 +
          }
 +
          showingGrad1 = !showingGrad1;
 +
          TweenMax.to(hide.rect, 0.55*t, {opacity: 0, delay: 0.2*t, ease: Sine.easeOut});
 +
          assignRandomColors(show);
 +
          TweenMax.to(show.rect, 0.65*t, {opacity: 1, ease: Sine.easeIn});
 +
        }
 +
        };
 +
      })();
 +
      //////////////////////////////
 +
      // Start
 +
      //////////////////////////////
 +
      bkgFunction();
 +
    </script>
 +
              <div style="position:absolute;top:100px;left:9%"><center><img style="height:120px;width:auto" alt="cover measurement" src="https://static.igem.org/mediawiki/2019/c/c6/T--Fudan-TSI--coverMeasurement.gif" /></center></div>
 
           </div>
 
           </div>
 
       </div>
 
       </div>
Line 70: Line 458:
 
               <li class="onThisPageNav"><a href="#section4">The&nbsp;kit</a></li>
 
               <li class="onThisPageNav"><a href="#section4">The&nbsp;kit</a></li>
 
               <li class="onThisPageNav"><a href="#section5">SDS-PAGE</a></li>
 
               <li class="onThisPageNav"><a href="#section5">SDS-PAGE</a></li>
              <li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li>
 
 
           </ul>
 
           </ul>
 
           <!-- main content of the page -->
 
           <!-- main content of the page -->
           <main>
+
           <main><article>
  
 
<div id="section1" class="section container scrolSpy">
 
<div id="section1" class="section container scrolSpy">
Line 88: Line 475:
 
   <h4>Naked eye examination</h4>
 
   <h4>Naked eye examination</h4>
 
   <div class="figureHolder" id="Fig1">
 
   <div class="figureHolder" id="Fig1">
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/6/65/T--Fudan-TSI--Education_kids1.gif" />
+
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/3/32/T--Fudan-TSI--Measurement_Fig1.jpeg" />
 +
    <p><b>Figure 1. Cell colonies expressing green fluorescence can be detected by naked eyes under UV light.</b></p>
 +
  </div>
 +
 
 +
  <p class="flow-text">Single colony of <i>Escherichia coli</i> (BL21) transformed with plasmid containing EGFP is picked and cultured in liquid medium (2*YT). After overnight 37 degree culture, we transferred the liquid into an empty petri dish, and observed its fluorescence under a fluorescence microscope. Green fluorescence can be detected at the place of the bacteria solution while the rest of the plate is dark as we expected <a href="#Fig2">(Figure 2)</a>.</p>
 +
  <div class="figureHolder" id="Fig2">
 +
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/6/68/T--Fudan-TSI--Measurement_Fig2.png" />
 +
    <p><b>Figure 2. Fluorescence can be detected under fluorescence microscopy.</b><br/>
 +
    Green fluorescence can be detected from liquid culture under fluorescence microscopy (emission wavelength 488 nm). The line in the middle shows the boundary between culture and empty control from the same petri dish (divided).</p>
 
   </div>
 
   </div>
  <p class="flow-text">Single colony of <i>Escherichia coli</i> (BL21) transformed with plasmid containing EGFP is picked and cultured in liquid medium (2*YT). After overnight 37 degree culture, we transferred the liquid into an empty petri dish, and observed its fluorescence under a fluorescence microscope. Green fluorescence can be detected at the place of the bacteria solution while the rest of the plate as we expected <a href="#Fig1">(Figure 1)</a>.</p>
 
 
</div>
 
</div>
  
 
<div id="section3" class="section container scrolSpy">
 
<div id="section3" class="section container scrolSpy">
 
   <h4>PCR verification</h4>
 
   <h4>PCR verification</h4>
   <p class="flow-text">We designed a set of primers which cannot amplify the nonsense mutant but is able to amplify the recovered EGFP. After PCR reaction, electrophoresis is performed and the recovered EGFP band is visibly bright while the mutant band does not appear <a href="#Fig2">(Figure 2)</a>.</p>
+
   <p class="flow-text">We designed a set of primers which cannot amplify the nonsense mutant but is able to amplify the recovered EGFP. After PCR reaction, electrophoresis is performed and the recovered EGFP band is visibly bright while the mutant band does not appear <a href="#Fig3">(Figure 3)</a>.</p>
   <div class="figureHolder" id="Fig2">
+
   <div class="figureHolder" id="Fig3">
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/6/65/T--Fudan-TSI--Education_kids1.gif" />
+
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/7/7f/T--Fudan-TSI--Measurement_Fig3.png" />
 +
    <p><b>Figure 3. EGFP can be amplified through PCR while its nonsense mutant could not.</b><br/>
 +
    The primer is specifically designed at the site of mutation to only amplify the EGFP (sequence: CATGGCCGACAAGCAG). The expected product length should be 410 bp as the arrow shows, which correlates with the band. When the annealing temperature is set at 64 degree, only the full-length EGFP can be amplified. Control is a nonrelevant plasmid.</p>
 
   </div>
 
   </div>
 
</div>
 
</div>
Line 103: Line 499:
 
<div id="section4" class="section container scrolSpy">
 
<div id="section4" class="section container scrolSpy">
 
   <h2>Fluorescence quantification through the measurement kit</h2>
 
   <h2>Fluorescence quantification through the measurement kit</h2>
   <p class="flow-text">After being sure that the fluorescence it recovered, we quantified its intensity with a microplate reader and the standard samples from distributed measurement kit. We followed the calibration protocol from measurement community.</p>
+
   <p class="flow-text">After being sure that the fluorescence it recovered, we quantified its intensity with a microplate reader and the standard samples from distributed measurement kit. We followed the calibration protocol from measurement community. <a target="_blank" href="https://static.igem.org/mediawiki/2019/b/be/T--Fudan-TSI--2019StandardCurvesSamples.zip">Sample standard curves are available for download.</a></p>
  
 
   <div class="figureHolder" id="Fig4">
 
   <div class="figureHolder" id="Fig4">
Line 112: Line 508:
 
   <p class="flow-text">For OD600 measurement, we use the silica beads in 2019 iGEM measurement kit as a standard substance.</p>
 
   <p class="flow-text">For OD600 measurement, we use the silica beads in 2019 iGEM measurement kit as a standard substance.</p>
  
  <div class="figureHolder" id="Fig3">
+
   <p class="flow-text">As a preparation, we have measured a particle standard curve of the silica beads from maximum concentration to 0 (pure ddH<sub>2</sub>O) and used iGEM official data processing excel to generate the particle standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig4">(Figure 4a)</a>. Before each time we measure our samples, we will first measure the OD600 of the silica beads samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 300,000,000/100μl to 18,750,000/100μl for calibration of the particle standard curve. After measuring the bacteria liquid culture samples, we will change the OD600 to the number of particles according to the calibrated standard curve.</p>
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/f/f7/T--Fudan-TSI--3mgv.gif"s />
+
    <p><b>Figure 3. Crystal structure of Cre recombinase bound to a loxP holliday junction (PDB:3MGV).</b></p>
+
  </div>
+
 
+
   <p class="flow-text">As a preparation, we have measured a particle standard curve of the silica beads from maximum concentration to 0 (pure ddH2O) and used iGEM official data processing excel to generate the particle standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig3">(Figure 3)</a>. Before each time we measure our samples, we will first measure the OD600 of the silica beads samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 300,000,000/100μl to 18,750,000/100μl for calibration of the particle standard curve. After measuring the bacteria liquid culture samples, we will change the OD600 to the number of particles according to the calibrated standard curve.</p>
+
  
 
   <h4>Fluorescence</h4>
 
   <h4>Fluorescence</h4>
Line 123: Line 514:
  
 
   <div class="figureHolder" id="Fig4">
 
   <div class="figureHolder" id="Fig4">
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/f/f7/T--Fudan-TSI--3mgv.gif"s />
+
     <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/8/80/T--Fudan-TSI--Measurement_Fig4.png" />
     <p><b>Figure 4. Crystal structure of Cre recombinase bound to a loxP holliday junction (PDB:3MGV).</b></p>
+
     <p><b>Figure 4. Standard line for fluorescence and cell quantity quantification.</b><br/>
 +
    The vertical axis stands for the abstract value measured by our microplate reader. Fluorescence is quantified by fluorescein (a) while cell quantity is quantified by silico beads (b). Both are from iGEM distributed measurement kit. For green fluorescence measurement, excitation wavelength is 485 nm; detection wavelength is 528 nm.</p>
 
   </div>
 
   </div>
  
   <p class="flow-text">As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig4">(Figure 4)</a>. Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.</p>
+
   <p class="flow-text">As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig4">(Figure 4b)</a>. Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.</p>
  
 
   <h4>Normalization</h4>
 
   <h4>Normalization</h4>
   <p class="flow-text">Finally, we would divide the fluorescein salt concentration by the number of silica beads for our final quantified fluorescence intensity which is <b>c[fluorescein salt]/n[silica beads]</b> and has a unit of <b>μM/(pcs per 100 μl)</b>.</p>
+
   <p class="flow-text">Finally, we would divide the fluorescein salt concentration by the number of silica beads for our final quantified fluorescence intensity which is <b>c[fluorescein salt]/n[silica beads]</b> and has a unit of <b>μM/(pcs per 100 μl)</b>. Quantified result for EGFP and its mutant please visit our <a href="/Team:Fudan-TSI/Demonstrate">Results</a> page.</p>
  
 
   <p class="flow-text">As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig4">(Figure 4)</a>. Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.</p>
 
   <p class="flow-text">As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 <a href="#Fig4">(Figure 4)</a>. Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.</p>
Line 137: Line 529:
 
<div id="section5" class="section container scrolSpy">
 
<div id="section5" class="section container scrolSpy">
 
   <h2>SDS-PAGE</h2>
 
   <h2>SDS-PAGE</h2>
 +
  <div class="figureHolder" id="Fig5">
 +
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/f/f9/T--Fudan-TSI--Measurement_Fig5.png" />
 +
    <p><b>Figure 5. EGFP and EGFP mutant are of different length on the PAGE gel.</b><br/>
 +
    Full-length EGFP has a brighter band at 26.9 kDa, while its two mutants have brighter bands at 17.8 kDa. SDS-PAGE is performed on whole-cell lysis, which makes the band obscure.</p>
 +
  </div>
 
   <p class="flow-text">The EGFP nonsense mutant can only express a truncated peptide of 17.8 kD, while the full-length EGFP protein is 26.9 kD, the difference between their molecular weight could be visualized through SDS-PAGE <a href="#Fig5">(Figure 5)</a>.</p>
 
   <p class="flow-text">The EGFP nonsense mutant can only express a truncated peptide of 17.8 kD, while the full-length EGFP protein is 26.9 kD, the difference between their molecular weight could be visualized through SDS-PAGE <a href="#Fig5">(Figure 5)</a>.</p>
 
</div>
 
</div>
Line 143: Line 540:
 
       do not edit below, if must BE CAREFUL
 
       do not edit below, if must BE CAREFUL
 
   //////////////////////////////////////////////////////-->
 
   //////////////////////////////////////////////////////-->
       </main></div><!-- end of side navigator and main of the page -->
+
       </article></main></div><!-- end of side navigator and main of the page -->
  
<!--Abstract on content page-->
 
      <div id="abstractContent" class="z-depth-2">
 
          <a href="#!"><img alt="project summary" src="https://static.igem.org/mediawiki/2018/9/96/T--Fudan--X.svg"></a>
 
          <div class="container">
 
              <h5 style="margin:0;padding:10px 0;">Project by Team:Fudan-TSI</h5>
 
              <p class="flow-text" style="margin:0">Mutation library generation is critical for biological and medical research, but current methods cannot mutate a specific sequence continuously without manual intervention. We hereby present a toolbox for <i>in vivo</i> continuous mutation library construction. First, the target DNA is transcribed into RNA. Next, our reverse transcriptase (RT) reverts RNA into cDNA, during which the target is randomly mutated by our RT's enhanced error-prone ability. Finally, the mutated version replaces the original sequence through recombination. These steps will be carried out iteratively, generating a random mutation library of the target with high efficiency as mutations accumulate along with bacterial growth. Our toolbox is orthogonal and provides a wide range of applications among various species. R-Evolution could mutate coding sequences and regulatory sequences, which enables the evolution of individual proteins or multiple targets at a time, promotes high-throughput research, and serves as a foundational advance to synthetic biology.
 
              </p>
 
          </div>
 
      </div>
 
 
<!-- Floating Btns, Footer with sponsors -->
 
<!-- Floating Btns, Footer with sponsors -->
       <div class="floatingBtn"> <a href="#!" id="abstractBtn" class="btn"> <i class="fa fa-sticky-note" style="font-size:30px;line-height:50px"></i> </a> <a href="#FudanTSIdivWrapper" class="btn"> <i class="fa fa-angle-up" style="font-size:48px;line-height:45px"></i> </a></div> <footer id="FudanTSIfooter" class="page-footer blue-grey darken-1"><div class="container"><div class="row"><div id="sponsor" class="col m3 s12 row"> <a href="https://2019.igem.org/Team:Fudan-TSI"><img alt="2019 Team:Fudan-TSI logo white" class="col s3 m6 l3" style="position:relative; padding: 0.45em 0.3rem; margin:-0.15rem 0; left: -0.45rem;" src="https://static.igem.org/mediawiki/2019/0/0f/T--Fudan-TSI--LogoGrey.gif"> </a><a href="http://www.fudan.edu.cn/en/" target="_blank"><img class="col s3 m6 l3" alt="Fudan University" src="https://static.igem.org/mediawiki/2018/f/f7/T--Fudan--schoolLogo.png"> </a><a href="http://life.fudan.edu.cn/" target="_blank"><img class="col s3 m6 l3" style="margin-bottom: 4%;/* 该图比其他小一点,排版需要 */" alt="School of Life Sciences, Fudan University" src="https://static.igem.org/mediawiki/2018/1/1d/T--Fudan--schoolOfLifeSciencesIcon.png"> </a><a href="http://www.yfc.cn/en/" target="_blank"><img class="col s3 m6 l3" style="padding: 0.15rem 0.9rem;" alt="Yunfeng Capital" src="https://static.igem.org/mediawiki/2018/e/e2/T--Fudan--yunfengLogo.png"> </a><h3 class="col s12" style="text-align:left;font-size:12.5px">R-Evolution: an <i>in vivo</i> sequence-specific toolbox for continuous mutagenesis</h3></div><div id="footerNavList" class="col m9 s12 row"><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Description">Project</a></span><ul><li><a href="/Team:Fudan-TSI/Description">Background</a></li><li><a href="/Team:Fudan-TSI/Design">Design</a></li><li><a href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div><div class="col s12 m4 active"> <span><a href="/Team:Fudan-TSI/Demonstrate">Results</a></span><ul><li><a href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Model">Model</a></span><ul><li><a href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a href="/Team:Fudan-TSI/Software">Software</a></li><li><a href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></div><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Parts">Parts</a></span><ul><li><a href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Human_Practices">Outreach</a></span><ul><li><a href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Team">Team</a></span><ul><li><a href="/Team:Fudan-TSI/Team">Members</a></li><li><a href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a href="https://2018.igem.org/Team:Fudan/Heritage" target=_blank>Heritage</a></li></ul></div><div class="col s12 m4">&nbsp;</div></div></div></div></div><div class="footer-copyright"><div class="container"><div class="contactUS row"><div class="col s12 m6 l4"><i class="fa fa-location-arrow"></i> Life Sci Bldg, 2005 Songhu Rd, Shanghai</div><div class="col s12 m6 l2"><i class="fa fa-fax"></i> +86-21-31246727</div><div class="col s12 m6 l2"><i class="fa fa-envelope-o"></i> igem@fudan.edu.cn</div><div class="col s12 m6 l4"><i class="fa fa-twitter"></i> <i class="fa fa-wechat"></i> Fudan_iGEM</div></div></div></div> </footer>
+
       <div class="floatingBtn"> <a href="#FudanTSIdivWrapper" class="btn"> <i class="fa fa-angle-up" style="font-size:48px;line-height:45px"></i> </a></div> <footer id="FudanTSIfooter" class="page-footer blue-grey darken-1"><div class="container"><div class="row"><div id="sponsor" class="col m3 s12 row"> <a href="https://2019.igem.org/Team:Fudan-TSI"><img alt="2019 Team:Fudan-TSI logo white" class="col s3 m6 l3" style="position:relative; padding: 0.45em 0.3rem; margin:-0.15rem 0; left: -0.45rem;" src="https://static.igem.org/mediawiki/2019/0/0f/T--Fudan-TSI--LogoGrey.gif"> </a><a href="http://www.fudan.edu.cn/en/" target="_blank"><img class="col s3 m6 l3" alt="Fudan University" src="https://static.igem.org/mediawiki/2018/f/f7/T--Fudan--schoolLogo.png"> </a><a href="http://life.fudan.edu.cn/" target="_blank"><img class="col s3 m6 l3" style="margin-bottom: 4%;/* fig should be smaller, 2018 ht */" alt="School of Life Sciences, Fudan University" src="https://static.igem.org/mediawiki/2018/1/1d/T--Fudan--schoolOfLifeSciencesIcon.png"> </a><a href="http://www.yfc.cn/en/" target="_blank"><img class="col s3 m6 l3" style="padding: 0.15rem 0.9rem;" alt="Yunfeng Capital" src="https://static.igem.org/mediawiki/2018/e/e2/T--Fudan--yunfengLogo.png"> </a><h3 class="col s12" style="text-align:left;font-size:12.5px">R-Evolution: an <i>in vivo</i> sequence-specific toolbox for continuous mutagenesis</h3></div><div id="footerNavList" class="col m9 s12 row"><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Description">Project</a></span><ul><li><a href="/Team:Fudan-TSI/Description">Background</a></li><li><a href="/Team:Fudan-TSI/Design">Design</a></li><li><a href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div><div class="col s12 m4 active"> <span><a href="/Team:Fudan-TSI/Demonstrate">Results</a></span><ul><li><a href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Model">Model</a></span><ul><li><a href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a href="/Team:Fudan-TSI/Software">Software</a></li><li><a href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></div><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Parts">Parts</a></span><ul><li><a href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Human_Practices">Outreach</a></span><ul><li><a href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Team">Team</a></span><ul><li><a href="/Team:Fudan-TSI/Team">Members</a></li><li><a href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a href="/Team:Fudan-TSI/Team#Acknowledge">Acknowledge</a></li><li><a href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div><div class="col s12 m4">&nbsp;</div></div></div></div></div><div class="footer-copyright"><div class="container"><div class="contactUS row"><div class="col s12 m6 l4"><i class="fa fa-location-arrow"></i> Life Sci Bldg, 2005 Songhu Rd, Shanghai</div><div class="col s12 m6 l2"><i class="fa fa-fax"></i> +86-21-31246727</div><div class="col s12 m6 l2"><i class="fa fa-envelope-o"></i> igem@fudan.edu.cn</div><div class="col s12 m6 l4"><i class="fa fa-twitter"></i> <i class="fa fa-wechat"></i> Fudan_iGEM</div></div></div></div> </footer>
 
</div></div></div><!-- #pageContent #FudanTSIBody #FudanTSIdivWrapper -->
 
</div></div></div><!-- #pageContent #FudanTSIBody #FudanTSIdivWrapper -->
  

Latest revision as of 05:56, 16 November 2019

Measurement | 2019 iGEM Team:Fudan-TSI


Measurement

We focused our measurement on characterizing the fluorescence recovery of EGFP from its nonsense mutation in 4 ways. We used multiple methods to ensure that EGFP is truly recovered from its nonsense mutation.

cover measurement

Recovered EGFP

We focused our measurement on characterizing the fluorescence recovery of EGFP from its nonsense mutation in the following 4 ways.

1) Green fluorescence could be seen on the plate under UV light through naked eyes and recorded by a cellphone camera. Liquid culture could be placed in a culture dish and fluorescence is easily detectable under fluorescent microscopy.

2) We designed PCR primers to only amplify the recovered EGFP sequence but not the mutated version. The amplified band could be easily visualized after electrophoresis.

3) Fluorescence level was quantified through microplate reader according to fluorescein solutions and silicon beads, both standard samples are from the distributed measurement kit.

4) We ran PAGE gel of IPTG induced bacterial lysates. The mutated version produced a truncated protein at 17.8 kD, while the recovered EGFP is 26.9 kD.

We used multiple methods to ensure that EGFP is truly recovered from its nonsense mutation.

Naked eye examination

Figure 1. Cell colonies expressing green fluorescence can be detected by naked eyes under UV light.

Single colony of Escherichia coli (BL21) transformed with plasmid containing EGFP is picked and cultured in liquid medium (2*YT). After overnight 37 degree culture, we transferred the liquid into an empty petri dish, and observed its fluorescence under a fluorescence microscope. Green fluorescence can be detected at the place of the bacteria solution while the rest of the plate is dark as we expected (Figure 2).

Figure 2. Fluorescence can be detected under fluorescence microscopy.
Green fluorescence can be detected from liquid culture under fluorescence microscopy (emission wavelength 488 nm). The line in the middle shows the boundary between culture and empty control from the same petri dish (divided).

PCR verification

We designed a set of primers which cannot amplify the nonsense mutant but is able to amplify the recovered EGFP. After PCR reaction, electrophoresis is performed and the recovered EGFP band is visibly bright while the mutant band does not appear (Figure 3).

Figure 3. EGFP can be amplified through PCR while its nonsense mutant could not.
The primer is specifically designed at the site of mutation to only amplify the EGFP (sequence: CATGGCCGACAAGCAG). The expected product length should be 410 bp as the arrow shows, which correlates with the band. When the annealing temperature is set at 64 degree, only the full-length EGFP can be amplified. Control is a nonrelevant plasmid.

Fluorescence quantification through the measurement kit

After being sure that the fluorescence it recovered, we quantified its intensity with a microplate reader and the standard samples from distributed measurement kit. We followed the calibration protocol from measurement community. Sample standard curves are available for download.

Cell quantity

For OD600 measurement, we use the silica beads in 2019 iGEM measurement kit as a standard substance.

As a preparation, we have measured a particle standard curve of the silica beads from maximum concentration to 0 (pure ddH2O) and used iGEM official data processing excel to generate the particle standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 (Figure 4a). Before each time we measure our samples, we will first measure the OD600 of the silica beads samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 300,000,000/100μl to 18,750,000/100μl for calibration of the particle standard curve. After measuring the bacteria liquid culture samples, we will change the OD600 to the number of particles according to the calibrated standard curve.

Fluorescence

For fluorescence quantification, we use the fluorescein salt provided in 2019 iGEM measurement kit as a standard substance.

Figure 4. Standard line for fluorescence and cell quantity quantification.
The vertical axis stands for the abstract value measured by our microplate reader. Fluorescence is quantified by fluorescein (a) while cell quantity is quantified by silico beads (b). Both are from iGEM distributed measurement kit. For green fluorescence measurement, excitation wavelength is 485 nm; detection wavelength is 528 nm.

As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 (Figure 4b). Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.

Normalization

Finally, we would divide the fluorescein salt concentration by the number of silica beads for our final quantified fluorescence intensity which is c[fluorescein salt]/n[silica beads] and has a unit of μM/(pcs per 100 μl). Quantified result for EGFP and its mutant please visit our Results page.

As a preparation, we have measured a fluorescence standard curve of the fluorescein salt from maximum concentration to 0 (pure PBS) and used iGEM official data processing excel to generate the fluorescence standard curve. Then, we determined the best-fitted linear region with maximum correlation coefficient R2 (Figure 4). Before each time we measure our samples, we will first measure the fluorescence intensity of the fluorescein salt samples whose concentration are at both ends of the best-fitted linear region, which in our case, is from 10 μM to 0.039 μM for calibration of the fluorescence standard curve. After measuring the bacteria liquid culture samples, we have changed the fluorescence intensity to the concentration of fluorescein salt according to the calibrated standard curve.

SDS-PAGE

Figure 5. EGFP and EGFP mutant are of different length on the PAGE gel.
Full-length EGFP has a brighter band at 26.9 kDa, while its two mutants have brighter bands at 17.8 kDa. SDS-PAGE is performed on whole-cell lysis, which makes the band obscure.

The EGFP nonsense mutant can only express a truncated peptide of 17.8 kD, while the full-length EGFP protein is 26.9 kD, the difference between their molecular weight could be visualized through SDS-PAGE (Figure 5).