|
|
(26 intermediate revisions by 4 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 * */ |
| + | #FudanTSIBody li { list-style: none; } |
| .mjx-chtml { | | .mjx-chtml { |
| outline: 0; | | outline: 0; |
Line 22: |
Line 21: |
| overflow-y: hidden; } | | overflow-y: hidden; } |
| </style> | | </style> |
− | <title>2019 Team:Fudan-TSI Modeling</title> | + | <title>Modeling | 2019 iGEM Team:Fudan-TSI</title> |
| </head> | | </head> |
| <body> | | <body> |
Line 28: |
Line 27: |
| <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"> | | <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 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> | | <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 design</a></li> |
| + | </ul> |
| + | <ul id="dropdown2" class="dropdown-content"> |
| + | <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> |
| + | <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 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> |
| + | <ul id="dropdown5" class="dropdown-content"> |
| + | <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> |
| + | <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 48: |
Line 86: |
| <li class="onThisPageNav"><a href="#section8">References</a></li> | | <li class="onThisPageNav"><a href="#section8">References</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"><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 active"><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"><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 active"><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 64: |
Line 102: |
| </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" src="https://static.igem.org/mediawiki/2019/c/c4/T--Fudan-TSI--coverModel.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 gif 1st added" src="https://static.igem.org/mediawiki/2019/c/c4/T--Fudan-TSI--coverModel.gif" /></center></div> |
| </div> | | </div> |
| </div> | | </div> |
Line 73: |
Line 461: |
| <div class="container"> | | <div class="container"> |
| <!-- side navigator of page content --> | | <!-- side navigator of page content --> |
− | <ul id="pageContentNav" class="hide-on-med-and-down z-depth-0"> | + | <ul id="pageContentNav" class="hide-on-med-and-down z-depth-0"> |
| <li class="onThisPageNav"><a href="#section1">Overview</a></li> | | <li class="onThisPageNav"><a href="#section1">Overview</a></li> |
| <li class="onThisPageNav"><a href="#section2">Induced expression</a></li> | | <li class="onThisPageNav"><a href="#section2">Induced expression</a></li> |
Line 82: |
Line 470: |
| <li class="onThisPageNav"><a href="#section7">Appendix</a></li> | | <li class="onThisPageNav"><a href="#section7">Appendix</a></li> |
| <li class="onThisPageNav"><a href="#section8">References</a></li> | | <li class="onThisPageNav"><a href="#section8">References</a></li> |
− | <li><a href="/Team:Fudan-TSI/Model">Modeling</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 101: |
Line 488: |
| <div class="figureHolder" id="Fig1"> | | <div class="figureHolder" id="Fig1"> |
| <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/5/54/T--Fudan-TSI--Fig1.gif" /> | | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/5/54/T--Fudan-TSI--Fig1.gif" /> |
− | <p>Figure 1. Workflow of the model. | + | <p><b>Figure 1. Workflow of the model.</b><br/> |
| Three Grey boxes indicate three major reaction steps in R-Evolution. Arrows indicate the reaction that certain substance is involved. White arrows indicate the case in which substances that originally exist in <i>E. coli</i> act as inputs. Red arrows indicate the case in which intermediates, which are produced in the previous reaction, are generated or involved in next reaction process. The blue arrow indicates the final output that we would like to observe. Inducer – IPTG or aTc (anhydrotetracycline). RT – reverse transcriptase. Cre – Cre recombinase. cDNA – complementary DNA.</p> | | Three Grey boxes indicate three major reaction steps in R-Evolution. Arrows indicate the reaction that certain substance is involved. White arrows indicate the case in which substances that originally exist in <i>E. coli</i> act as inputs. Red arrows indicate the case in which intermediates, which are produced in the previous reaction, are generated or involved in next reaction process. The blue arrow indicates the final output that we would like to observe. Inducer – IPTG or aTc (anhydrotetracycline). RT – reverse transcriptase. Cre – Cre recombinase. cDNA – complementary DNA.</p> |
| </div> | | </div> |
Line 116: |
Line 503: |
| <div class="figureHolder" id="Fig2"> | | <div class="figureHolder" id="Fig2"> |
| <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/5/59/20191020044015%21T--Fudan-TSI--Fig2b%26c.gif" /> | | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/5/59/20191020044015%21T--Fudan-TSI--Fig2b%26c.gif" /> |
− | <p>Figure 2. Induced expression of RT and Cre. | + | <p><b>Figure 2. Induced expression of RT and Cre.</b><br/> |
| <b>a)</b> Schematic diagram of the model. <b>b)</b> Dynamics of target protein. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of protein (RT and Cre) within the system. RT and Cre are expressed under the same Lac operon. <b>c)</b> Dynamics of free lac operon. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of free lac operon, i.e. the lac operon unbound by tetR dimer, within the system. The vertical magenta line indicates the moment when 50μM is added to the system.</p> | | <b>a)</b> Schematic diagram of the model. <b>b)</b> Dynamics of target protein. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of protein (RT and Cre) within the system. RT and Cre are expressed under the same Lac operon. <b>c)</b> Dynamics of free lac operon. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of free lac operon, i.e. the lac operon unbound by tetR dimer, within the system. The vertical magenta line indicates the moment when 50μM is added to the system.</p> |
| </div> | | </div> |
Line 135: |
Line 522: |
| <div class="figureHolder" id="Fig3"> | | <div class="figureHolder" id="Fig3"> |
| <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/3/31/T--Fudan-TSI--Fig3.gif" /> | | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/3/31/T--Fudan-TSI--Fig3.gif" /> |
− | <p>Figure 3. Reverse transcription. | + | <p><b>Figure 3. Reverse transcription.</b><br/> |
| <b>a)</b> Schematic diagram of the model. <b>b)</b> Dynamics of cDNA. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of cDNA within the system.</p> | | <b>a)</b> Schematic diagram of the model. <b>b)</b> Dynamics of cDNA. Horizontal axis shows the length of time. Vertical axis demonstrates the amount of cDNA within the system.</p> |
| </div> | | </div> |
Line 157: |
Line 544: |
| <div class="figureHolder" id="Fig4"> | | <div class="figureHolder" id="Fig4"> |
| <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/d/d8/T--Fudan-TSI--Fig4.gif" /> | | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/d/d8/T--Fudan-TSI--Fig4.gif" /> |
− | <p>Figure 4. Cre recombination (deterministic). | + | <p><b>Figure 4. Cre recombination (deterministic).</b><br/> |
| <b>a)</b> Schematic diagram of the model. Ps, Un-recombined P<sub>target</sub>. Pp, Recombined P<sub>target</sub>. <b>b-c)</b> Recombination when Cre is expressed under Lac operon. Dynamics of the percentage of un-recombined/ recombined P<sub>target</sub> among all P<sub>target</sub>s is shown in <b>b</b>. Horizontal axis shows the length of time (8 hours, corresponding to R-Evolution’s function period). The distribution of the percentage of substances at the steady-state is shown in <b>c</b>. <b>d)</b> Yield of recombined P<sub>target</sub> at different initial number of cDNA and Cre. The yield of recombined P<sub>target</sub> is calculated as the percentage of recombined P<sub>target</sub> among all P<sub>target</sub>s. The horizontal white line corresponds to current situation where the initial number of cDNA is 5 molecules in one <i>E. coli</i>. <b>e)</b> Yield of recombined P<sub>target</sub> at different initial number of Cre when initial number of cDNA is 5 molecules. <b>f-g)</b> Recombination when Cre is expressed under different operon. Dynamics of the percentage of un-recombined/ recombined P<sub>target</sub> among all P<sub>target</sub>s is shown in <b>f</b>. The distribution of the percentage of substances at the steady-state is shown in <b>g</b>.</p> | | <b>a)</b> Schematic diagram of the model. Ps, Un-recombined P<sub>target</sub>. Pp, Recombined P<sub>target</sub>. <b>b-c)</b> Recombination when Cre is expressed under Lac operon. Dynamics of the percentage of un-recombined/ recombined P<sub>target</sub> among all P<sub>target</sub>s is shown in <b>b</b>. Horizontal axis shows the length of time (8 hours, corresponding to R-Evolution’s function period). The distribution of the percentage of substances at the steady-state is shown in <b>c</b>. <b>d)</b> Yield of recombined P<sub>target</sub> at different initial number of cDNA and Cre. The yield of recombined P<sub>target</sub> is calculated as the percentage of recombined P<sub>target</sub> among all P<sub>target</sub>s. The horizontal white line corresponds to current situation where the initial number of cDNA is 5 molecules in one <i>E. coli</i>. <b>e)</b> Yield of recombined P<sub>target</sub> at different initial number of Cre when initial number of cDNA is 5 molecules. <b>f-g)</b> Recombination when Cre is expressed under different operon. Dynamics of the percentage of un-recombined/ recombined P<sub>target</sub> among all P<sub>target</sub>s is shown in <b>f</b>. The distribution of the percentage of substances at the steady-state is shown in <b>g</b>.</p> |
| </div> | | </div> |
Line 184: |
Line 571: |
| <div class="figureHolder" id="Fig5"> | | <div class="figureHolder" id="Fig5"> |
| <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/5/5f/T--Fudan-TSI--Fig5bc.gif" /> | | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/5/5f/T--Fudan-TSI--Fig5bc.gif" /> |
− | <p>Figure 5. Cre recombination (stochastic). | + | <p><b>Figure 5. Cre recombination (stochastic).</b><br/> |
| Horizontal axis shows the length of time (20 min, corresponding to the duration of 1 <i>E. coli</i> replication cycle). Vertical axis demonstrates the number of recombined P<sub>target</sub>. The initial number of Cre is 2 molecules in <b>a</b>, 3228 molecules in <b>b</b>.</p> | | Horizontal axis shows the length of time (20 min, corresponding to the duration of 1 <i>E. coli</i> replication cycle). Vertical axis demonstrates the number of recombined P<sub>target</sub>. The initial number of Cre is 2 molecules in <b>a</b>, 3228 molecules in <b>b</b>.</p> |
| </div> | | </div> |
Line 207: |
Line 594: |
| | | |
| <div class="figureHolder" id="Fig6"> | | <div class="figureHolder" id="Fig6"> |
− | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/8/84/20191021161515%21T--Fudan-TSI--Fig6.gif" /> | + | <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/8/84/20191020042934%21T--Fudan-TSI--Fig6.gif" /> |
− | <p>Figure 6. Whole process simulation considering Cre degradation tag. | + | <p><b>Figure 6. Whole process simulation considering Cre degradation tag.</b><br/> |
| <b>a)</b> Chemical reactions involved in Cre induced expression. <b>b)</b> Yield of recombined P<sub>target</sub> at different Cre degradation rate and aTc dosage. The white line on the left corresponding to the case where the degradation rate of Cre is 0.2 min<sup>-1</sup>. The white line on the left corresponding to the case where the degradation rate of Cre is 0.69 min<sup>-1</sup>. <b>c)</b> Yield of recombined P<sub>target</sub> at different Cre degradation rate and aTc dosage (3D plot). The range of Cre degradation rate is 0.2~0.69 min<sup>-1</sup>. <b>d)</b> Dynamics of yield of recombined P<sub>target</sub> at the Cre degradation rate of 0.2 min<sup>-1</sup> and the initial 22 μM aTc dosage. <b>e)</b> Dynamics of yield of recombined P<sub>target</sub> at the Cre degradation rate of 0.2 min<sup>-1</sup> and the initial 22 μM aTc dosage.</p> | | <b>a)</b> Chemical reactions involved in Cre induced expression. <b>b)</b> Yield of recombined P<sub>target</sub> at different Cre degradation rate and aTc dosage. The white line on the left corresponding to the case where the degradation rate of Cre is 0.2 min<sup>-1</sup>. The white line on the left corresponding to the case where the degradation rate of Cre is 0.69 min<sup>-1</sup>. <b>c)</b> Yield of recombined P<sub>target</sub> at different Cre degradation rate and aTc dosage (3D plot). The range of Cre degradation rate is 0.2~0.69 min<sup>-1</sup>. <b>d)</b> Dynamics of yield of recombined P<sub>target</sub> at the Cre degradation rate of 0.2 min<sup>-1</sup> and the initial 22 μM aTc dosage. <b>e)</b> Dynamics of yield of recombined P<sub>target</sub> at the Cre degradation rate of 0.2 min<sup>-1</sup> and the initial 22 μM aTc dosage.</p> |
| </div> | | </div> |
Line 220: |
Line 607: |
| <div id="section7" class="section container scrolSpy"> | | <div id="section7" class="section container scrolSpy"> |
| <h2>Appendix</h2> | | <h2>Appendix</h2> |
| + | <p class="flow-text">You can access the Matlab codes of our models from <a href="https://github.com/kiyochou/2019-iGEM-Fudan-TSI" target="_blank">our Github repository</a>.</p> |
| <p class="flow-text">Please consult the following file for a clearer understanding of the formulation of the model.</p> | | <p class="flow-text">Please consult the following file for a clearer understanding of the formulation of the model.</p> |
− | <embed src="https://static.igem.org/mediawiki/2019/8/8c/T--Fudan-TSI--ModelApp.pdf" width="100%" height="400" type="application/pdf"> | + | <embed src="https://static.igem.org/mediawiki/2019/8/8c/T--Fudan-TSI--ModelApp.pdf" width="100%" height="600" type="application/pdf"> |
| + | <p>Here is <a target="_blank" href="https://static.igem.org/mediawiki/2019/8/8c/T--Fudan-TSI--ModelApp.pdf">the link</a> to download the file above.</p> |
| </div> | | </div> |
− |
| |
− |
| |
| | | |
| <div id="section8" class="section container scrolSpy"> | | <div id="section8" class="section container scrolSpy"> |
Line 240: |
Line 627: |
| 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;">Modeling by Team:Fudan-TSI</h5>
| |
− | <p class="flow-text" style="margin:0">In our modeling, we successfully simulated the function of our mutagenesis system, and contributed to improve our experimental setup. We divided our system into 3 sub-models: induced expression model, reverse transcription model and Cre recombination model. We utilized deterministic and stochastic techniques with parameters derived from our experiments or published papers. Our modeling established theoretical basis for our experiments: 1) The determination of simultaneous or separate expression of reverse transcriptase and Cre is guided by models revealing their different working concentration. 2) We estimated the optimal expression level and induction time needed to achieve maximal recombination efficiency. 3) We modeled the effect of Cre degradation on recombination. 4) We demonstrated that mutations accumulate accompanying <i>E. coli</i> growth. Modeling acted as a shortcut of answering questions concerning experimental setup and revealed new insights into our system. Thus, we believe that our modeling work is very competitive for the best modeling prize.
| |
− | </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"> <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 active"> <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"> </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"> <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 active"> <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"> </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 --> |
| | | |