Difference between revisions of "Team:Heidelberg/internal tools"

(Blanked the page)
 
(32 intermediate revisions by the same user not shown)
Line 1: Line 1:
<html lang="en" dir="ltr" class="client-nojs">
 
<head>
 
<meta charset="UTF-8" />
 
<title>Team:Heidelberg/internal tools - 2017.igem.org</title>
 
<meta name="generator" content="MediaWiki 1.24.1" />
 
<meta name="viewport" content="with=device-with, initial-scale=1.0"/>
 
<link rel="alternate" type="application/x-wiki" title="Edit" href="/wiki/index.php?title=Team:Heidelberg/internal_tools&amp;action=edit" />
 
<link rel="edit" title="Edit" href="/wiki/index.php?title=Team:Heidelberg/internal_tools&amp;action=edit" />
 
<link rel="shortcut icon" href="/favicon.ico" />
 
<link rel="search" type="application/opensearchdescription+xml" href="/wiki/opensearch_desc.php" title="2017.igem.org (en)" />
 
<link rel="EditURI" type="application/rsd+xml" href="https://2017.igem.org/wiki/api.php?action=rsd" />
 
<link rel="alternate" hreflang="x-default" href="/Team:Heidelberg/internal_tools" />
 
<link rel="copyright" href="http://creativecommons.org/licenses/by/3.0/" />
 
<link rel="alternate" type="application/atom+xml" title="2017.igem.org Atom feed" href="/wiki/index.php?title=Special:RecentChanges&amp;feed=atom" />
 
<link rel="stylesheet" href="https://2017.igem.org/wiki/load.php?debug=false&amp;lang=en&amp;modules=mediawiki.legacy.commonPrint%2Cshared%7Cmediawiki.skinning.content.externallinks%7Cmediawiki.skinning.interface%7Cmediawiki.ui.button%7Cskins.igem.styles&amp;only=styles&amp;skin=igem&amp;*" />
 
<!--[if IE 6]><link rel="stylesheet" href="/wiki/skins/Igem/IE60Fixes.css?303" media="screen" /><![endif]-->
 
<!--[if IE 7]><link rel="stylesheet" href="/wiki/skins/Igem/IE70Fixes.css?303" media="screen" /><![endif]--><meta name="ResourceLoaderDynamicStyles" content="" />
 
<style>a:lang(ar),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}
 
/* cache key: 2017_igem_org:resourceloader:filter:minify-css:7:faeec198b704588e6c9afc1a44274438 */</style>
 
<script src="https://2017.igem.org/wiki/load.php?debug=false&amp;lang=en&amp;modules=startup&amp;only=scripts&amp;skin=igem&amp;*"></script>
 
<script>if(window.mw){
 
mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Team:Heidelberg/internal_tools","wgTitle":"Team:Heidelberg/internal tools","wgCurRevisionId":131201,"wgRevisionId":131201,"wgArticleId":19802,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":"Juzb","wgUserGroups":["*","user","autoconfirmed"],"wgCategories":[],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgMonthNamesShort":["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgRelevantPageName":"Team:Heidelberg/internal_tools","wgUserId":915,"wgUserEditCount":27,"wgUserRegistration":1492081568000,"wgUserNewMsgRevisionId":null,"wgIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgWikiEditorEnabledModules":{"toolbar":false,"dialogs":false,"hidesig":true,"preview":false,"previewDialog":false,"publish":false}});
 
}</script><script>if(window.mw){
 
mw.loader.implement("user.options",function($,jQuery){mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"editfont":"default","editondblclick":0,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":1,"extendwatchlist":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"imagesize":2,"math":1,"minordefault":0,"newpageshidepatrolled":0,"nickname":"","norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"rcdays":7,"rclimit":50,"rows":25,"showhiddencats":0,"shownumberswatching":1,"showtoolbar":1,"skin":"igem","stubthreshold":0,"thumbsize":5,"underline":2,"uselivepreview":0,"usenewrc":1,"watchcreations":1,"watchdefault":1,"watchdeletion":0,"watchlistdays":3,"watchlisthideanons":0,"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"watchrollback":0,
 
"wllimit":250,"useeditwarning":1,"prefershttps":1,"language":"en","variant-gan":"gan","variant-iu":"iu","variant-kk":"kk","variant-ku":"ku","variant-shi":"shi","variant-sr":"sr","variant-tg":"tg","variant-uz":"uz","variant-zh":"zh","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":false,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false});},{},{});mw.loader.implement("user.tokens",function($,jQuery){mw.user.tokens.set({"editToken":"29b8dd8475ab9ce369f1eaa3b62557e9+\\","patrolToken":"9b15ea2f11dbe71fc465e1579a511670+\\","watchToken":"c9c576d4bfe983ce3d6431645a6d7d83+\\"});},{},{});
 
/* cache key: 2017_igem_org:resourceloader:filter:minify-js:7:1b1539751622cf633e0bbde0db35ebde */
 
}</script>
 
<script>if(window.mw){
 
mw.loader.load(["mediawiki.page.startup","mediawiki.legacy.wikibits","mediawiki.legacy.ajax"]);
 
}</script>
 
</head>
 
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-Team_Heidelberg_internal_tools skin-igem action-view">
 
  
        <script type='text/javascript'        src ='/common/tablesorter/jquery.tablesorter.min.js'></script>
 
        <link rel='stylesheet' type='text/css' href='/common/tablesorter/themes/groupparts/style.css' />
 
        <link rel='stylesheet' type='text/css' href='/common/table_styles.css' />
 
 
        <script type='text/javascript'        src ='/wiki/skins/Igem/resources/2017_skin.js'></script>
 
 
 
    <div id='globalWrapper'>
 
        <div id='top_menu_under' class='noprint'></div>
 
        <div id='top_menu_14' class='noprint'></div> <!-- Will be replaced with the jQuery.load -->
 
                <script>jQuery('#top_menu_14').load('https://2017.igem.org/cgi/top_menu_14/menubar_reply.cgi',
 
                                                    {  t:"Team%3AHeidelberg%2Finternal%20tools",
 
                                                        a:"View+%2FTeam%3AHeidelberg%2Finternal_tools++Edit+%2Fwiki%2Findex.php%3Ftitle%3DTeam%3AHeidelberg%2Finternal_tools%26action%3Dedit++History+%2Fwiki%2Findex.php%3Ftitle%3DTeam%3AHeidelberg%2Finternal_tools%26action%3Dhistory++Move+%2FSpecial%3AMovePage%2FTeam%3AHeidelberg%2Finternal_tools++Unwatch+%2Fwiki%2Findex.php%3Ftitle%3DTeam%3AHeidelberg%2Finternal_tools%26action%3Dunwatch%26token%3D9de7174bd4c84ca9683628fb5dd345bb%252B%255C++Page+%2FTeam%3AHeidelberg%2Finternal_tools++Discussion+%2Fwiki%2Findex.php%3Ftitle%3DTalk%3ATeam%3AHeidelberg%2Finternal_tools%26action%3Dedit%26redlink%3D1++" });
 
                </script>
 
 
        <!-- Content div contains HQ_page for HQ styles, Logo and title div, and USER CONTENT -->
 
                <div id="content" class="mw-body" role="main">
 
                    <a id="top"></a>
 
 
            <div id="top_title">
 
                <div class="logo_2017">
 
                    <a href="https://2017.igem.org">
 
                    <img src="https://static.igem.org/mediawiki/2017/8/8b/HQ_page_logo.jpg" width="100px">
 
                    </a>
 
                </div>
 
 
                        <h1 id="firstHeading" class="firstHeading">
 
                            <span dir="auto">Team:Heidelberg/internal tools</span>
 
                        </h1>
 
            </div>
 
 
            <div id="HQ_page">
 
                <div id="bodyContent">
 
                            <div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><p>
 
        <head>
 
                <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 
                <meta name="generator" content="MediaWiki 1.16.5" />
 
<link rel="shortcut icon" href="/favicon.ico" />
 
<link rel="search" type="application/opensearchdescription+xml" href="/wiki/opensearch_desc.php" title="2014.igem.org (en)" />
 
<link title="Creative Commons" type="application/rdf+xml" href="/wiki/index.php?title=WikitemplateA_home&amp;action=creativecommons" rel="meta" />
 
<link rel="copyright" href="http://creativecommons.org/licenses/by/3.0/" />
 
<link rel="alternate" type="application/atom+xml" title="2014.igem.org Atom feed" href="/wiki/index.php?title=Special:RecentChanges&amp;feed=atom" />          <title>WikitemplateA home - 2014.igem.org</title>
 
                <style type="text/css" media="screen, projection">/*<![CDATA[*/
 
                        @import "/wiki/skins/common/shared.css?270";
 
                        @import "/wiki/skins/igem/main.css?270";
 
                /*]]>*/</style>
 
                <link rel="stylesheet" type="text/css" media="print" href="/wiki/skins/common/commonPrint.css?270" />
 
                <!--[if lt IE 5.5000]><style type="text/css">@import "/wiki/skins/igem/IE50Fixes.css?270";</style><![endif]-->
 
                <!--[if IE 5.5000]><style type="text/css">@import "/wiki/skins/igem/IE55Fixes.css?270";</style><![endif]-->
 
                <!--[if IE 6]><style type="text/css">@import "/wiki/skins/igem/IE60Fixes.css?270";</style><![endif]-->
 
                <!--[if IE 7]><style type="text/css">@import "/wiki/skins/igem/IE70Fixes.css?270";</style><![endif]-->
 
                <!--[if lt IE 7]><script type="text/javascript" src="/wiki/skins/common/IEFixes.js?270"></script>
 
                <meta http-equiv="imagetoolbar" content="no" /><![endif]-->
 
 
                <script type="text/javascript" src="/wiki/skins/common/wikibits.js?270"><!-- wikibits js --></script>
 
                <!-- Head Scripts -->
 
<script src="/wiki/skins/common/ajax.js?270"></script>
 
<script src="/wiki/skins/common/mwsuggest.js?270"></script>
 
                <script type="text/javascript" src="/wiki/index.php?title=-&amp;action=raw&amp;gen=js&amp;useskin=igem"><!-- site js --></script>
 
        <!-- jQuery Javascript -->
 
        <script type='text/javascript'        src ='/common/jquery-latest.min.js'></script>
 
        <script type='text/javascript'        src ='/common/tablesorter/jquery.tablesorter.min.js'></script>
 
        <link rel='stylesheet' type='text/css' href='/common/tablesorter/themes/groupparts/style.css' />
 
        <link rel='stylesheet' type='text/css' href='/common/table_styles.css' />
 
        <link rel='stylesheet' type='text/css' href='/forum/forum_styles.css' />
 
        <script type='text/javascript'        src ='/forum/forum_scripts.js'></script>
 
 
<script type="text/javascript" src="https://2015.igem.org/Team:Heidelberg/js/bibtexParse?action=raw&amp;ctype=text/javascript"></script>
 
<script type="text/javascript" src="https://2015.igem.org/Team:Heidelberg/js/zitator?action=raw&amp;ctype=text/javascript"></script>
 
<script type="text/javascript">
 
var bibfile = "https://static.igem.org/mediawiki/2017/7/70/T--Heidelberg--Team_Heidelberg_2017_citation.txt";
 
$(function (){new Zitator(".basictext",bibfile).zitiere();});
 
</script>
 
 
</head>
 
 
<body>
 
 
 
    <div id="top-section">
 
 
        <script type="text/javascript"> if (window.isMSIE55) fixalpha(); </script>
 
 
 
 
 
 
        <div class="right-menu noprint" id="menubar">
 
            <ul>
 
                                                <li id="pt-login"><a href="/wiki/index.php?title=Special:UserLogin&amp;returnto=WikitemplateA_home" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o">Log in</a></li>            </ul>
 
        </div><!-- end right menubar -->
 
 
        <div id="search-controls" class="noprint">
 
                <form action="/Special:Search" id="searchform">
 
                <input id="searchInput" name="search" type="text" title="Search 2014.igem.org [f]" accesskey="f" value="" />
 
                        <input type='submit' name="go" class="searchButton" id="searchGoButton"        value="Go" title="Go to a page with this exact name if exists" />&#160;
 
                      <input type='submit' name="fulltext" class="searchButton" id="mw-searchButton" value="Search" title="Search the pages for this text" />
 
                </form>
 
        </div> <!-- close search controls -->
 
    </div> <!-- close top-section-->
 
    <div id="content">
 
                <a name="top" id="top"></a>
 
                                <h1 class="firstHeading">WikitemplateA home</h1>
 
                <div id="bodyContent">
 
                        <h3 id="siteSub" class='noprint'>From 2014.igem.org</h3>
 
                        <div id="contentSub"></div>
 
                                                <!--
 
                        <div id="jump-to-nav">Jump to:                        <a href="#column-one">navigation</a>, <a href="#searchInput">search</a></div>-->
 
                        <!-- start content -->
 
                        <p>
 
 
 
<!-- this section changes the default wiki template to a
 
white full width background -->
 
 
<style type="text/css">
 
#contentSub, #footer-box, #catlinks, #search-controls, #p-
 
 
logo, #sideMenu, #menubar, .logo_2017, .printfooter, .firstHeading,.visualClear {display:
 
 
none;} /*-- hides default wiki settings --*/
 
 
#top-section { /*-- styling for default menu bar (edit, page,
 
 
history, etc.) --*/
 
 
        border: 0 none;
 
        height: 14px;
 
        z-index: 100;
 
        top: 0;
 
        position: fixed;
 
        width: 975px;
 
        left: 50%;
 
        margin-left: -487px;
 
}
 
 
#globalWrapper, #content { /*-- changes default wiki settings
 
 
--*/
 
        width: 100%;
 
        height: 100%;
 
        border: 0px;
 
        background-color: transparent;
 
        margin: 0px;
 
        padding: 0px;
 
}
 
 
html, body, .wrapper { /*-- changes default wiki settings --
 
 
*/
 
        width: 100%;
 
        height: 100%;
 
        background-color: transparent;
 
}
 
</style>
 
 
<!-- Assets -->
 
<link rel="stylesheet" href="http://static.tildacdn.com/css/tilda-grid-3.0.min.css" type="text/css" media="all" />
 
 
<link rel="stylesheet" href="http://static.tildacdn.com/css/tilda-zoom-1.0.min.css" type="text/css" media="all" />
 
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Josefin+Sans:300,400|Roboto:300,400,500">
 
<link rel="stylesheet" href="http://azmind.com/demo/bootstrap-navbar-menu/layout-3/assets/bootstrap/css/bootstrap.min.css">
 
<script src="http://azmind.com/demo/bootstrap-navbar-menu/layout-3/assets/bootstrap/js/bootstrap.min.js"></script>
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css?action=raw&amp;ctype=text/css" type="text/css" rel="stylesheet">
 
<link rel="stylesheet" href="http://azmind.com/demo/bootstrap-navbar-menu/layout-3/assets/font-awesome/css/font-awesome.min.css">
 
 
<style>
 
 
 
p {
 
    font-family: 'Roboto', sans-serif;
 
    font-size: 20px;
 
    font-weight: 300;
 
 
 
    overflow-x: hidden;
 
    text-align: center;
 
}
 
 
strong { font-weight: 500; }
 
 
a, a:hover, a:focus {
 
        color: black; text-decoration: none;
 
    -o-transition: all .3s; -moz-transition: all .3s; -webkit-transition: all .3s; -ms-transition: all .3s; transition: all .3s;
 
}
 
 
 
h2 { margin-top: 10px; font-family: 'Josefin Sans', sans-serif; font-size: 48px; font-weight: 300; color: #393939; line-height: 56px; opacity: 0.9; text-align:center}
 
h3 { font-family: 'Josefin Sans', sans-serif; font-size: 22px; font-weight: 300; color: #555; line-height: 40px; }
 
 
 
img { max-width: 100%; }
 
 
.medium-paragraph { font-size: 18px; line-height: 34px; }
 
 
.colored { color: #df6482; }
 
 
::-moz-selection { background: #df6482; color: #fff; text-shadow: none; }
 
::selection { background: #df6482; color: #fff; text-shadow: none; }
 
 
/***** General style, all sections *****/
 
 
.section-container { margin: 0 auto; padding-bottom: 80px; }
 
.section-description { margin-top: 60px; padding-bottom: 10px; }
 
.section-description p { margin-top: 20px; padding: 0 120px; }
 
 
/***** Divider *****/
 
 
.divider-1 { padding: 25px 0 15px 0; }
 
.divider-1 .line { width: 160px; margin: 0 auto; border-bottom: 1px dashed #ccc; }
 
 
/***** Top menu *****/
 
.navbar {
 
        margin-bottom: 0;
 
    position: fixed;
 
 
        background: white;
 
        border-bottom: 1px solid white;
 
    box-shadow: 2px 0px 30px black ;
 
        -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
 
        -o-transition: all .6s; -moz-transition: all .6s; -webkit-transition: all .6s; -ms-transition: all .6s; transition: all .6s;
 
}
 
 
.navbar-no-bg { padding-top: 10px; background: white; }
 
 
ul.navbar-nav {
 
        padding-top: 10px;
 
        font-family: 'Josefin Sans', sans-serif;
 
        font-size: 14px;
 
        color: #fff;
 
        font-weight: 400;
 
        text-transform: uppercase;
 
}
 
.navbar-inverse ul.navbar-nav li a { color: grey; border: 0; }
 
.navbar-inverse ul.navbar-nav li a:hover { color: #000; border: 0; }
 
.navbar-inverse ul.navbar-nav li a:focus { color: #000; outline: 0; border: 0; }
 
 
 
.navbar-brand {
 
        width: 100%;
 
    position: absolute;
 
    top: -10px;
 
}
 
 
 
 
.navbar>.container .navbar-brand, .navbar>.container-fluid .navbar-brand { margin-left: 0; }
 
 
.dropdown:hover .dropdown-menu {
 
    display: block;
 
    background-color: white;
 
    font-family: 'Josefin Sans', sans-serif;
 
        font-size: 14px;
 
        font-weight: 400;
 
        text-transform: uppercase;
 
    border-top: none;
 
}
 
.dropdown-menu>li>a {
 
    color: grey;
 
}
 
 
/* Animate */
 
 
 
 
.top-content .text h1 { color: #393939; }
 
 
.top-content .description { margin: 30px 0 10px 0; }
 
.top-content .description p { opacity: 0.8; }
 
.top-content .description a { color: #fff; border-bottom: 1px dotted #fff; }
 
.top-content .description a:hover, .top-content .description a:focus { color: #fff; border: 0; }
 
 
 
/***** Features *****/
 
 
.features-box { margin-top: 30px; text-align: left; }
 
.features-box .features-box-icon { font-size: 60px; color: #df6482; line-height: 60px; text-align: center; }
 
.features-box h3 { margin-top: 0; padding: 0 0 10px 0; }
 
 
 
#footer-sec {
 
    position: relative;
 
    background-color: #393939;
 
font-family: 'Josefin Sans', sans-serif;
 
}
 
#footer-sec h4 {
 
color: white;
 
 
}
 
#footer-sec  li > a {
 
color: grey;
 
font-size: 16x;
 
}
 
#footer-sec  span {
 
font-family: 'Josefin Sans', sans-serif;
 
color: grey;
 
font-size: 16px;
 
}
 
 
#footer-sec  li {
 
color: grey;
 
font-size: 16px;
 
list-style: none;
 
    padding-bottom: 2px;
 
}
 
 
 
#footer-sec li > a:hover{
 
    color: white;
 
    text-decoration: none;
 
    transition-delay: 0.1s;
 
    -webkit-transition: color 1s; /* Safari */
 
    transition: color 1s;
 
}
 
#facebook, #twitter {
 
color: grey
 
}
 
#facebook:hover,#twitter:hover {
 
    color: white;
 
    transition-delay: 0.1s;
 
    -webkit-transition: color 1s; /* Safari */
 
    transition: color 1s;
 
}
 
 
 
/***** MEDIA QUERIES *****/
 
 
 
@media (min-width: 992px) and (max-width: 1199px) {}
 
 
@media (min-width: 768px) and (max-width: 991px) {
 
 
        .section-description p { padding: 0; }
 
 
        .features-box .features-box-icon { font-size: 50px; line-height: 50px; }
 
 
}
 
 
@media (max-width: 767px) {
 
 
        .navbar { padding-top: 0; background: #444; }
 
        .navbar>.container .navbar-brand, .navbar>.container-fluid .navbar-brand { margin-left: 15px; }
 
        .navbar-collapse { border: 0; }
 
        .navbar-inverse .navbar-toggle { border-color: transparent; }
 
        .navbar-inverse ul.navbar-nav li a.btn-link-3 { margin: 10px; }
 
 
        .section-description p { padding: 0; }
 
 
        .top-content { padding: 40px 0 60px 0; }
 
 
        .features-box { text-align: center; }
 
        .features-box h3 { margin-top: 5px; padding-top: 10px; }
 
 
}
 
 
@media (max-width: 415px) {
 
 
        h1, h2 { font-size: 36px; }
 
 
}
 
 
 
/* Retina-ize images/icons */
 
 
@media
 
only screen and (-webkit-min-device-pixel-ratio: 2),
 
only screen and (  min--moz-device-pixel-ratio: 2),
 
only screen and (    -o-min-device-pixel-ratio: 2/1),
 
only screen and (        min-device-pixel-ratio: 2),
 
only screen and (                min-resolution: 192dpi),
 
only screen and (                min-resolution: 2dppx) {
 
 
        /* logo */
 
    .navbar-brand {
 
        background-image: url(../img/logo@2x.png) !important; background-repeat: no-repeat !important; background-size: 102px 32px !important;
 
    }
 
 
}
 
 
 
 
#circle {
 
    position: relative;
 
    top: 15px;
 
    height: 100px;
 
    width: 100px;
 
 
    border-radius: 50%;
 
    box-shadow: 2px 0px 30px black ;
 
 
}
 
 
#circle:before{
 
    position: absolute;
 
    content: "";
 
    width: 160%;
 
    height: 60%;
 
    left: -25%;
 
    top: -4%;
 
    background: white;
 
}
 
 
 
#circle:after{
 
    position: absolute;
 
    content: "";
 
    width: 100%;
 
    height: 100%;
 
    left: 0;
 
    top: 0;
 
    background: white;
 
    border-radius: 50%;
 
    background-image: url('https://static.igem.org/mediawiki/2017/8/8f/Heidelberg_2017_phage_logo.svg');
 
    background-size: 70px 70px;
 
    background-repeat: no-repeat;
 
    background-position: center;
 
}
 
 
#container1 h1, #container2 h1, #container3 h1, #container4 h1 {
 
color:#393939;
 
font-family: 'Josefin Sans', sans-serif;
 
font-size: 58px;
 
font-weight: 300;
 
line-height: 56px;
 
opacity: 0.9;
 
text-align:center;
 
}
 
 
#container1 p, #container2 p, #container3 p, #container4 p {
 
color: #393939;
 
font-size: 20px;
 
font-family: 'Josefin Sans', sans-serif;
 
text-align: justify;
 
}
 
 
 
#form1 label {
 
font-family: 'Josefin Sans', sans-serif;
 
font-size: 20px;
 
font-weight: 300;
 
color: #393939;
 
}
 
#form1 label, #form2 label, #form3 label, #form4 label {
 
font-family: 'Josefin Sans', sans-serif;
 
font-size: 20px;
 
font-weight: 300;
 
color: #393939;
 
}
 
 
</style>
 
 
 
<link rel="stylesheet" type="text/css"
 
href="https://2017.igem.org/Template:Heidelberg/table_layout/CSS?action=raw&amp;ctype=text/css" />
 
                        <!-- Favicon and touch icons -->
 
                        <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
 
<script src="http://static.tildacdn.com/js/jquery-1.10.2.min.js"></script>
 
<script src="http://static.tildacdn.com/js/tilda-scripts-2.8.min.js"></script>
 
 
<script src="http://static.tildacdn.com/js/tilda-zoom-1.0.min.js"></script>
 
<script src="http://static.tildacdn.com/js/bootstrap.min.js"></script>
 
<script src="http://static.tildacdn.com/js/jquery.touchswipe.min.js"></script>
 
<script src="http://static.tildacdn.com/js/tilda-map-1.0.min.js"></script>
 
<script src="http://static.tildacdn.com/js/lazyload-1.3.min.js"></script>
 
 
                    <style>
 
                        #input_form {
 
                        background-color: #939393;
 
                        border: none;
 
                        color: white;
 
                        padding: 5px 32px;
 
                        text-align: center;
 
                        text-decoration: none;
 
                        display: inline-block;
 
                        font-size: 16px;
 
                        }
 
 
                    </style>
 
</head>
 
        <body class="t-body">
 
 
        <!-- Top menu -->
 
                <nav class="navbar navbar-inverse navbar-fixed-top navbar-no-bg" role="navigation">
 
                        <div class="container">
 
                                <div class="navbar-header">
 
                                        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#top-navbar-1">
 
                                                <span class="sr-only">Toggle navigation</span>
 
                                                <span class="icon-bar"></span>
 
                                                <span class="icon-bar"></span>
 
                                                <span class="icon-bar"></span>
 
                                        </button>
 
                                        <a class="navbar-brand" href="#"><div id="circle">
 
                    </div></a>
 
                                </div>
 
                                <!-- Collect the nav links, forms, and other content for toggling -->
 
                                <div class="collapse navbar-collapse" id="top-navbar-1">
 
                                        <ul class="nav navbar-nav navbar-right">
 
                                                <li><a href="#">Achievements</a></li>
 
                                                <li class="dropdown"><a href="#">Project <span class="caret"></span></a>
 
 
                        </li>
 
                                                <li><a href="#">Modeling</a></li>
 
                                                <li><a href="#">Software &amp; Hardware <span class="caret"></span></a></li>
 
                                                <li class="dropdown"><a href="#">Human Practice <span class="caret"></span></a>
 
                        <ul class="dropdown-menu">
 
                            <li><a href="">Safety &amp; Security</a></li>
 
                            <li class="divider"></li>
 
                            <li><a href="">Integrated Human Practice</a></li>
 
                            <li><a href="">Education</a></li>
 
                            <li class="divider"></li>
 
                            <li><a href="">Public Engagement</a></li>
 
                            <li><a href="">Collaborations</a></li>
 
                        </ul>
 
 
                        </li>
 
                                                <li><a href="#">People</a></li>
 
                        <li><a href="#">Toolbox</a></li>
 
                                        </ul>
 
                                </div>
 
                        </div>
 
                </nav>
 
 
<div style="padding-top: 80px; background-color:white;">
 
        <div class="t-container">
 
            <div class="t-col t-col_12">
 
                <div class="container-fluid" style="margin-top: 10px;" id="container1">
 
                    <h1>Internal Tools</h1>
 
                        <h2>Number of mutations and mutated sequences</h2>
 
                        <p>Expected number of mutations in a single sequence:
 
                            $$p_{m} = \frac{N_{mutations}}{L_{Sequence}} = N_{generations} \cdot r_{mutation} = t_{total} \cdot \Phi \cdot r_{mutation}$$
 
                        </p>
 
                        <p>The expected share of sequences that shows at least one mutation in \(L_{Sequence}\) bp is the probability that \(L_{sequence}\) basepairs stay unchanged when \(\frac{N_{mutations}}{L_{Sequence}}\) mutations are expected:
 
                        $$p_{M} = \frac{N_{mutated}}{N_{Sequences}} = 1 - p(N_{mutations}=0) = 1 - (1-p_{m})^{L_{Sequence}} $$
 
                        </p>
 
                        <p>With this equation we can also calculate the number of sequences \(N_{Sequences}\) that have to be sequenced in order to find a mutated one with a probability of \(p(N_{mutated} > 0)\).
 
                        $$ N_{Sequences} = \frac{p(N_{mutated} > 0)}{p_{M}} $$
 
                        </p>
 
                        <p>The probability to find at least one mutated sequence under the given conditions is
 
                        $$p(N_{mutated}>0) = 1 - (1-p_{M})^{N_{sequences}}$$
 
                        which gives
 
                        $$N_{Sequences} = \frac{ln(1-p(N_{mutated}>0))}{ln(1-p_{M})}$$
 
                        </p>
 
                        <p>Set \(\Phi\) to zero to use the number of generations for the calculation. If \(\Phi\) and the number of generations are given, \(\Phi\) is used.</p>
 
                        <p>Consider \(L_{Sequence}\) as the number of basepairs that is expected to be mutated. If half of the sequence you are interested in, is highly conserved choose a lower \(L_{Sequence}\).</p>
 
 
 
              <form action="" id="form1">
 
                <section>
 
                <h2>Get your mutations</h2>
 
                <ul class="input-list style-1 clearfix">
 
                  <li>
 
                    <label>
 
                          Mutation rate \(r_{mutation} \:[bp/generation]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="mr" value="0" lang='en-150' step="any">
 
                        </label>
 
                  </li>
 
                <li>
 
                        <label>
 
                        Flow troughLagoon \(\Phi_{lagoon} \: [Volumes/h]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="phi" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                <li>
 
                        <label>
 
                          Total time<br> in lagoon \(t_{total} \: [h]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="tt" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                <li>
 
                        <label>
 
                          Number<br> of generations  \(N_{generations}\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ng" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          Length of sequence that can mutate \(L_{Sequence} \: [bp]\)<br>
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ls" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                        Number of sequences that are sequenced \(N_{Sequences}\)<br>
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ns" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                      <label>
 
                        Probability to get at least one mutated result  \(p(N_{mutated}>0) \)
 
                        <br>
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="pm" value="0.9" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                    <div style="padding-top: 30px;">
 
                      <input type="button" value="Submit" id="input_form" onclick="return number_mutations();">
 
                        </div>
 
                    </li>
 
                </ul>
 
              </section>
 
                </form>
 
              </div>
 
                <div class="container-fluid" style="margin-top: 10px;" id="container2">
 
                            <p id="warnings_mutations"></p>
 
                            <br>
 
                            <p id="number_generations"></p>
 
                            <p>\(p_{m} =\) <span id="amount_mutations"></span> %(bp/bp).</p>
 
                            <p>\(N_{mutations} =\) <span id="number_mutations"></span> bp per sequence.</p>
 
                            <p>The share of sequences that shows at least one mutation in \(L_{Sequence}\) bp is \(p_{M}=\) <span id="amount_mutated"></span> % of sequences</p>
 
                            <p id="probability_positive_sequencing"></p>
 
                            <p id="number_to_seq"></p>
 
 
 
              <div class="container-fluid" style="margin-top: 10px;" id="container1">
 
                    <h2>Diff tool</h2>
 
                        <p>Marks differences in two strings, ignores newlines.
 
                    </p>
 
 
 
              <form action="" id="form2">
 
                <section>
 
                <ul class="input-list style-1 clearfix">
 
                  <li>
 
                    <label>
 
                        String 1
 
                        <br>
 
                        <textarea id="str1" lang='en-150' rows=8 cols=50></textarea>
 
                        </label>
 
                  </li>
 
                <li>
 
                        <label>
 
                        String 2
 
                        <br>
 
                            <textarea id="str2" lang='en-150' rows=8 cols=50></textarea>
 
                        </label>
 
                    </li>
 
                    <li>
 
                 
 
                        <label for="case_sensitive">Case sensitive <input type="checkbox" Name="Case sensitive" id="case_sensitive" value="True" checked> </label> 
 
                    </li>
 
                    <li>
 
                    <div style="padding-top: 30px;">
 
                      <input type="button" value="Submit" id="input_form2" onclick="return differences();">
 
                        </div>
 
                    </li>
 
                </ul>
 
              </section>
 
                </form>
 
                    </div><p>Comparison:</p>
 
                    <div style="overflow-x:scroll !important; overflow-y:hidden !important; max-height: 100px !important; background-color: whitesmoke;">
 
                        <p id="outstr1" style="display:inline !important; overflow: hidden !important; white-space: nowrap !important; font-family: monospace !important;"></p>
 
                        <br>
 
                        <p id="outstr2" style="display:inline !important; overflow: hidden !important; white-space: nowrap !important; font-family: monospace !important;"></p>
 
                    </div>
 
                    <p id="diffinfo"></p>
 
               
 
               
 
                    <h2>Glucose Concentratoin</h2>
 
                        <p>
 
                            Calculate the ideal glucose concentration in the medium used for either a turbidostat or a single flask.
 
                        </p>
 
                    <p> The glucose concentration in the <b>turbidostat</b> \(c_{G_{T}}\) is increased with the incoming medium with a flow rate of \(\Phi\) and a glucose concentration of \(c_{G_{M}}\). It is decreased by with the medium that leaves the turbidostat with the same flow rate, but a glucose concentration of \(c_{G_{T}}\). Additionally E. coli take up glucose with a concentration of \(c_{E}\) and a rate of \(q\).
 
                            $$
 
                            \frac{\partial c_{G_{T}}(t)}{\partial t} = \Phi \cdot c_{G_{M}} - \Phi \cdot c_{G_{T}} - c_{E} \cdot q
 
                            $$
 
                        In the case of a turbidostat we can assume a dynamic equilibrium:
 
                            $$
 
                            \frac{\partial c_{G_{T}}(t)}{\partial t} = 0
 
                            $$
 
                        This results in
 
                            $$
 
                            c_{G_{T}} = c_{G_{M}} - \frac{c_{E. coli} \cdot q}{\Phi}
 
                            $$                    $$
 
                            \Leftrightarrow c_{G_{M}} (c_{G_{T}}) = c_{G_{T}} + \frac{c_{E} \cdot q}{\Phi}
 
                            $$
 
                        </p>
 
                    <br>
 
                        <p>If the concentration of glucose in a    <b>flask</b>, \(c_{G_{F}}\) needs to be determined, the functional dependencies are as follows.</p>
 
                        <p>
 
                        As there is no incoming medium, or medium that leaves the flask, the concentration of glucose is only changed by <i>E. coli</i> degrading it.
 
                            $$
 
                            \frac{\partial c_{G_{F}}(t)}{\partial t} = q \cdot c_{E}(t)
 
                            $$
 
                        Exponential growth of the <i>E. coli</i> is assumed, resulting in
 
                            $$c_{G_{F}}(t) = c_{G_{F}}(t_{0}) - q \cdot c_{E}(t) \cdot t
 
                            $$
 
                            $$
 
                            = c_{G_{F}}(t_{0}) -q \cdot \int_{t_{0}}^{t} c_{E}(t_{0}) \cdot exp\left(\frac{t}{t_{E}}\right) dt
 
                            $$
 
                            $$
 
                            = c_{G_{F}}(t_{0}) - q \cdot c_{E}(t_{0}) \cdot t_{E} \cdot \left(exp\left(\frac{t}{t_{E}}\right) - exp\left(\frac{t_{0}}{t_{E}}\right)\right)
 
                            $$
 
                        So the glucose starting concentration \(c_{G_{F}}(t_{0})\) needed to get a concentration of \(c_{G_{f}}(t)\) afer a duration of \(t\) is calculated by
 
                            $$
 
                            c_{G_{F}}(t_{0}) = c_{G_{F}}(t) + q \cdot c_{E}(t_{0}) \cdot t_{E} \cdot \left(exp\left(\frac{t}{t_{E}}\right) - exp\left(\frac{t_{0}}{t_{E}}\right)\right)
 
                            $$
 
                       
 
                    </p>
 
                    <br>
 
                        <p><b>Further calculations</b> for simplification of entering data:</p>
 
                        <p class="basictext">
 
                            $$
 
                            c_{E. coli_{DW}} = c_{E. coli_{OD600}} \cdot 0.36
 
                            $$
 
                            according to <i>Milo et al.</i><x-ref>Milo2009</x-ref>.
 
                            $$
 
                            q = 0.183 g_{Glucose} \: g_{DW}^{-1} \: h^{-1}
 
                            $$
 
                            according to <i>Neubauer et al.</i><x-ref>Neubauer2001</x-ref>.
 
                    </p>
 
                    <p>
 
                            Because turbidstats are operated at a constant cell density, the flow rate \(Phi\) can be calculated from the generation time \(t_{E}\).
 
                            $$
 
                            \Phi = \frac{ln(2)}{t_{E}}
 
                            $$
 
                        </p>
 
                    <p>If the <i>E. coli</i> titer in \(g_{DW}/l\) is zero, it is calculated from the OD, else the dryweight value is used. If the glucose concentration in \(mmol/l\) not zero, it is used for the calulation. If the generation time \(t_{E}\) is not zero, it is used to calculate the flow rate \(\Phi\). </p>
 
 
 
              <form action="" id="form1">
 
                <section>
 
                <h2>Get the ideal concentration</h2>
 
                <ul class="input-list style-1 clearfix">
 
                <li>
 
                    <label>
 
                        Glucose concentration <br> \(c_{G_{T}} \: [g/l]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="cturbidostat" value="0" lang='en-150' step="any">
 
                    </label>
 
                </li>
 
                <li>
 
                    <label>
 
                        Glucose concentration <br> \(c_{G_{T}} \: [mmol/l]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="cturbidostatmol" value="0" lang='en-150' step="any">
 
                    </label>
 
                </li>
 
                  <li>
 
                    <label>
 
                          Flow rate <br>\(\Phi \:[Volumes/h]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="fr" value="0" lang='en-150' step="any">
 
                        </label>
 
                  </li>
 
                <li>
 
                    <label>
 
                          Generation time <br>\(t_{E} \:[min]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="te" value="30" lang='en-150' step="any">
 
                        </label>
 
                  </li>
 
                <li>
 
                        <label>
 
                          <i>E. coli</i> titer<br>  \(c_{E. coli} \:[OD600]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ectiterod" value="0.8" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          <i>E. coli</i> titer<br>  \(c_{E. coli} \:[g_{DW}/l]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ectiterdw" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          Glucose degradation<br>\(q \: [g_{glucose} \: g_{DW}^{-1} h^{-1}]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="q" value="0.183" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          Time <br>\(t \: [min]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="gluc_time" value="90" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          <i>E. coli</i> start concentration<br>\(c_{E} \: [g/L]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ec0dw" value="0" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                    <li>
 
                        <label>
 
                          <i>E. coli</i> start concentration<br>\(c_{E} \: [OD600]\)
 
                        <input type="number" pattern="[0-9]+([,\.][0-9]+)?" id="ec0od" value="0.01" lang='en-150' step="any">
 
                        </label>
 
                    </li>
 
                   
 
                    <li>
 
                    <div style="padding-top: 30px;">
 
                      <input type="button" value="Calculate Continuous" id="input_form" onclick="return glucosecont();">
 
                        </div>
 
                    </li>
 
                    <li>
 
                    <div style="padding-top: 30px;">
 
                      <input type="button" value="Calculate Discontinuous" id="input_form" onclick="return glucosedis();">
 
                        </div>
 
                    </li>
 
                    <li>
 
                    <div style="padding-top: 30px;">
 
                      <input type="button" value="Calculate Discontinuous in new plot" id="input_form" onclick="return glucosedisnew();">
 
                        </div>
 
                    </li>
 
                </ul>
 
              </section>
 
                </form>
 
                    <p id="glucoseout"></p>
 
                    <br>
 
                    <div style="overflow-x: auto !important;">
 
                    <div style="width: 100% !important; min-width: 700 !important;" id="glucoseplot">
 
                    </div>
 
                    </div>
 
                    <br>
 
                <p class="basictext" id="references"></p>                 
 
            </div>
 
        </div>
 
    </div>
 
</div>
 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
 
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/numjs/0.13.1/numjs.js"></script>
 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
 
<script src="http://evanplaice.github.io/jquery-csv/src/jquery.csv.min.js"></script>
 
<script src="https://2017.igem.org/common/MathJax-2.5-latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
 
 
<script>
 
 
//example that contains everything needed
 
function dummy(){
 
    //get the values
 
    var mr = Number(document.getElementById('mr').value);
 
 
    //initialise variables
 
    var a_mutations = 0;
 
 
    //calculate
 
    if(phi==0){
 
        a_mutations = ng * mr;
 
    }
 
 
    //return the results
 
    $("#amount_mutated").html((Math.round(100000 * a_mutated))/1000);
 
    $("#number_generations").html(ng_out);
 
 
    //end the function
 
    return false;
 
}
 
 
function number_mutations(){
 
 
    //get the values
 
    var mr = Number(document.getElementById('mr').value);
 
    var phi = Number(document.getElementById('phi').value);
 
    var ng = Number(document.getElementById('ng').value);
 
    var tt = Number(document.getElementById('tt').value);
 
    var ls = Number(document.getElementById('ls').value);
 
    var ns = Number(document.getElementById('ns').value);
 
    var pm = Number(document.getElementById('pm').value);
 
 
    //initialise variables
 
    var a_mutations = 0;
 
    var n_mutations = '?';
 
    var a_mutated = '?';
 
    var ng_out = "";
 
    var number_to_seq_out = "";
 
    var number_to_seq = 0;
 
    var probability_positive_sequencing = ''
 
    var warnings = ""
 
 
    //Check, if given values make sense:
 
 
    if(mr>1){
 
        warnings += "A mutation rate that is above one mutation per basepair, per generation does not make sense. 100 % should be enough, right? ";
 
        mr = 1;
 
    }
 
 
    if(pm>1){
 
        warnings += "A probability of 100 % should be enough, right?. ";
 
        pm = 1;
 
    }
 
 
    //calculate
 
    if(phi*tt==0){
 
        a_mutations = 1 - Math.pow((1 - mr), ng);
 
        ng_out = "";
 
    }
 
    else{
 
        a_mutations = 1 - Math.pow((1 - mr), tt*phi);
 
        ng = tt*phi;
 
        ng_out = "The conditions result in " + ng + " generations.";
 
    }
 
 
    n_mutations = ls * a_mutations;
 
    a_mutated = 1 - Math.pow((1-a_mutations), ls);
 
 
    if(ns!=0){
 
        probability_positive_sequencing = ns*a_mutated;
 
        $("#probability_positive_sequencing").html("Sequencing " + ns + " sequences results in a " + ((Math.round(probability_positive_sequencing*100))/100) + "% probabiltiy of finding at least one mutated sequence.");
 
    }
 
    else{
 
        $("#probability_positive_sequencing").html("");
 
    }
 
 
    if(pm!=0){
 
        number_to_seq = Math.max(1, Math.round((Math.log(1-pm))/(Math.log(1-a_mutated))));
 
        if(isNaN(number_to_seq)){
 
            if(pm==1){
 
                number_to_seq_out = "To be 100 % sure, sequence infinitely many sequences.";
 
            }
 
            else{
 
                number_to_seq_out = "Unluckily we were unable to calculate the number of sequences to sequence to have a " + (pm*100) + "% probability for a positive result.";
 
            }
 
        }
 
        else{
 
            number_to_seq_out = "Sequence " + number_to_seq + " clones to have a " + (pm*100) + " % probability to have at least one mutated under the results.";
 
        }
 
    }
 
 
    //return the results
 
    $("#amount_mutations").html((Math.round(1000000 * a_mutations))/10000);
 
    $("#number_mutations").html((Math.round(n_mutations*100))/100);
 
    $("#amount_mutated").html((Math.round(100000 * a_mutated))/1000);
 
    $("#number_generations").html(ng_out);
 
    $("#number_to_seq").html(number_to_seq_out);
 
    $("#warnings_mutations").html(warnings);
 
 
 
    //end the function
 
    return false;
 
}
 
 
 
 
 
 
function glucosecont(){
 
    glucose('cont');
 
}
 
 
function glucosedis(){
 
    glucose('dis');
 
}
 
function glucosedisnew(){
 
    glucose('disnew');
 
}
 
   
 
function glucose(mode){
 
   
 
    //get the values
 
    var cturbidostat = Number(document.getElementById('cturbidostat').value);
 
    var cturbidostatmol = Number(document.getElementById('cturbidostatmol').value);
 
    var fr = Number(document.getElementById('fr').value);
 
    var ectiterod = Number(document.getElementById('ectiterod').value);
 
    var ectiterdw = Number(document.getElementById('ectiterdw').value);
 
    var q = Number(document.getElementById('q').value);
 
    var te = Number(document.getElementById('te').value);
 
    var gluc_time = Number(document.getElementById('gluc_time').value);
 
    var ec0dw = Number(document.getElementById('ec0dw').value);
 
    var ec0od = Number(document.getElementById('ec0od').value);
 
 
 
    //initialise variables
 
    var glucoseout = "";
 
    var glucosemedium = 0;
 
    var gl_OD = 0.36;
 
   
 
    if(ectiterdw == 0){
 
        ectiterdw = ectiterod * gl_OD;
 
    }
 
    else{
 
        ectiterod = ectiterdw/gl_OD;
 
    }
 
   
 
    if(cturbidostatmol != 0){
 
        cturbidostat = cturbidostatmol * 180.1559/1000.0;
 
    }
 
    else{
 
        cturbidostatmol = cturbidostat/(180.1559/1000.0);
 
    }
 
   
 
    if(te != 0){
 
        fr = Math.LN2/te;
 
    }
 
    else{
 
        te = fr * Math.LN2;
 
    }
 
   
 
    if(ec0dw == 0){
 
        ec0dw = ec0od * gl_OD;
 
    }
 
    else{
 
        ec0od = ec0dw/gl_OD;
 
    }
 
 
    if(mode=='cont'){
 
        //calculate
 
        glucosemedium = cturbidostat + ((ectiterdw * q)/fr);
 
 
        var glucosemediummol = glucosemedium/(180.1559/1000.0);
 
 
        //return the results
 
        glucoseout = "With a <b>glucose concentration of " + (0.01*Math.round(100*glucosemedium)) + " g/L, " +(0.01*Math.round(100*glucosemediummol)) + "mmol/l in the medium</b>, a flow rate of " + (0.01*Math.round(100*fr)) + " Volumes/h, or a generation time of " + Math.round(te) + " min, an <i>E. coli</i> titer of " + (0.01*Math.round(100*ectiterdw)) + " g/l, an OD600 of " + (0.01*Math.round(100*ectiterod)) + " and a degradation rate of " + (0.01*Math.round(100*q)) + " g l<sup>-1</sup>cfu<sup>-1</sup>h<sup>-1</sup> a concentration of " + (0.01*Math.round(100*cturbidostat)) + " g/L, " + (0.01*Math.round(100*cturbidostatmol)) + " mmol/l is maintained.";
 
       
 
        $("#glucoseplot").html('');
 
 
    }
 
    else{
 
        //calculate
 
        glucosemedium = cturbidostat + q * ec0dw * te * (Math.exp(gluc_time/te) - 1);
 
 
        var glucosemediummol = glucosemedium/(180.1559/1000.0);
 
 
        //return the results
 
        glucoseout = "With a <b>glucose concentration of " + (0.01*Math.round(100*Math.max(0,glucosemedium))) + " g/L, " +(0.01*Math.round(100*Math.max(0,glucosemediummol))) + "mmol/l in the medium</b>, a generation time of " + (0.01*Math.round(100*te)) + " min, an <i>E. coli</i> starting titer of " + (0.01*Math.round(100*ec0dw)) + " g/l, an OD600 of " + (0.01*Math.round(100*ec0od)) + " and a degradation rate of " + (0.01*Math.round(100*q)) + " g l<sup>-1</sup>cfu<sup>-1</sup>h<sup>-1</sup> a  concentration of " + (0.01*Math.round(100*cturbidostat)) + " g/L, " + (0.01*Math.round(100* cturbidostatmol)) + " mmol/l is reached after " + gluc_time + " minutes.";
 
    }
 
   
 
    $("#glucoseout").html(glucoseout);
 
   
 
    //plot glucose concentration and e. coli titer
 
    if(mode!='cont'){
 
        var glucoseplot = document.getElementById('glucoseplot');
 
       
 
        var gluc_time_exp = 1.2 * gluc_time;
 
        var t = new Array(501);
 
        var cecoli = new Array(501);
 
        var cg = new Array(501);
 
       
 
        for(var it = 0; it <=500; it++){
 
            t[it] = it*gluc_time_exp/500;
 
 
            cecoli[it] = Math.max(0, ec0od * Math.exp(t[it]/te));
 
 
            cg[it] = Math.max(0, glucosemedium - (q * ec0dw * te * (Math.exp((t[it]/te)) - 1.0)));
 
        }
 
 
        var glucosedata = [{x: t,
 
                            y: cg,
 
                            name: 'Glucose [g/l]'},
 
                          {x: t,
 
                            y: cecoli,
 
                            name: 'E. coli [OD600]',
 
                            yaxis: 'y2'
 
                          }];
 
console.log(glucoseplot.width);
 
console.log(Math.max(700, glucoseplot.width));
 
        var layout = {
 
            title: 'Glucose concentration and phage titer in discontinuous culture',
 
            showlegend: true,
 
            width: Math.max(700, glucoseplot.width),
 
            legend: {
 
                orientation: 'v',
 
                x: 1.15,
 
                xanchor: 'left',
 
                y: 1
 
            },
 
            xaxis: {
 
                title: 'Duration [min]',
 
                titlefont: {
 
                    family: 'Courier New, monospace',
 
                    size: 18,
 
                    color: '#7f7f7f'
 
                },
 
                showgrid: false
 
            },
 
            yaxis: {
 
                title: 'Glucose concentration [g/l]',
 
                titlefont: {
 
                    family: 'Courier New, monospace',
 
                    size: 18,
 
                    color: '#7f7f7f'
 
                },
 
                showgrid: false
 
            },
 
            yaxis2: {
 
                title: 'E. coli titer [OD600]',
 
                side: 'right',
 
                overlaying: 'y',
 
                titlefont: {
 
                    family: 'Courier New, monospace',
 
                    size: 18,
 
                    color: '#7f7f7f'
 
                },
 
                showgrid: false
 
            },
 
            shapes: [{
 
                type: 'line',
 
                x0: gluc_time,
 
                x1: gluc_time,
 
                y0: 0,
 
                y1: cg[0],
 
                line:{
 
                    width: 1,
 
                    color: '#7f7f7f'
 
                }
 
            }]
 
        };
 
        if(mode=='disnew'){
 
            Plotly.newPlot(glucoseplot, glucosedata,  layout);
 
        }
 
        else{
 
            Plotly.plot(glucoseplot, glucosedata,  layout);
 
        }
 
    }
 
}
 
 
 
function differences(){
 
    //get the values
 
    var str1 = document.getElementById('str1').value;
 
    var str2 = document.getElementById('str2').value;
 
    str1 = str1.replace(/(\r\n|\n|\r)/gm,"");
 
    str2 = str2.replace(/(\r\n|\n|\r)/gm,"");
 
 
    //initialise variables
 
    var diff = [];
 
    var outstr1 = "";
 
    var outstr2 = "";
 
    var diffs = 0;
 
    var lendiffs = 0;
 
    var sharedlen = 0;
 
    var diffinfo = "";
 
    var str1_comp = str1;
 
    var str2_comp = str2;
 
   
 
    //calculate
 
   
 
    if(document.getElementById("case_sensitive").checked == false){
 
        str1_comp = str1.toLowerCase();
 
        str2_comp = str2.toLowerCase();     
 
    }
 
   
 
    var i = 0;
 
    while(i < str1.length){
 
      if(i==str2.length){
 
          break;
 
      }
 
        if(str1_comp[i]==str2_comp[i]){
 
            outstr1 += str1[i];
 
            outstr2 += str2[i];
 
        }
 
        else{
 
            diffs += 1;
 
            outstr1 += '<span style="color: red">' + str1[i] + '</span>';
 
            outstr2 += '<span style="color: red">' + str2[i] + '</span>';
 
        }
 
        i++;
 
    }
 
    sharedlen = i;
 
    while(i < str1.length){
 
        outstr1 = outstr1 + '<span style="color: blue">' + str1[i] + '</span>';
 
        i++;
 
        lendiffs++;
 
    }
 
    while(i < str2.length){
 
        outstr2 = outstr2 + '<span style="color: blue">' + str2[i] + '</span>';
 
        i++;
 
        lendiffs++;
 
    }
 
    diffinfo = "The strings are different for " + diffs + "  from " + sharedlen + " positions (" + (0.01*Math.round(10000*(diffs/sharedlen))) + "%)and their length differs by " + lendiffs + " positions.";
 
 
    //return the results
 
    $("#outstr1").html(outstr1);
 
    $("#outstr2").html(outstr2);
 
    $("#diffinfo").html(diffinfo);
 
 
    //end the function
 
    return false;
 
}
 
 
</script>
 
 
 
<!-- Saved in parser cache with key 2014_igem_org:pcache:idhash:224-0!1!0!!en!2!edit=0 and timestamp 20170831072851 -->
 
<div class="printfooter">
 
Retrieved from "<a href="https://2014.igem.org/WikitemplateA_home">https://2014.igem.org/WikitemplateA_home</a>"</div>
 
                        <div id="catlinks"><div id='catlinks' class='catlinks catlinks-allhidden'></div></div>                  <!-- end content -->
 
                        <div class="visualClear"></div>
 
                </div>
 
    </div>
 
<!-- PAGE FOOTER -- ITEMS FROM COLUMN ! HAVE BEEN MOVED HERE  -- RDR  -->
 
<div class="visualClear"></div>
 
    <div id='footer-box' class='noprint'>
 
        <div id="footer">
 
              <div id="f-poweredbyico"><a href="http://www.mediawiki.org/"><img src="/wiki/skins/common/images/poweredby_mediawiki_88x31.png" height="31" width="88" alt="Powered by MediaWiki" /></a></div>          <div id="f-copyrightico"><a href="http://creativecommons.org/licenses/by/3.0/"><img src="http://i.creativecommons.org/l/by/3.0/88x31.png" alt="Attribution 3.0 Unported" width="88" height="31" /></a></div>          <ul id="f-list">
 
 
 
          <!-- Recentchanges is not handles well DEBUG -->
 
                    <li id="t-recentchanges"><a href="/Special:RecentChanges"
 
                      title='Recent changes'>Recent changes</a></li>
 
 
                    <li id="t-whatlinkshere"><a href="/Special:WhatLinksHere/WikitemplateA_home"
 
                      title="List of all wiki pages that link here [j]" accesskey="j">What links here</a></li>
 
 
                        <li id="t-recentchangeslinked"><a href="/Special:RecentChangesLinked/WikitemplateA_home"
 
                          title="Recent changes in pages linked from this page [k]" accesskey="k">Related changes</a></li>
 
 
 
 
                        <li id="t-specialpages"><a href="/Special:SpecialPages"
 
                          title="List of all special pages [q]" accesskey="q">Special pages</a>
 
                        </li>
 
                <li><a href='/Special:Preferences'>My preferences</a></li>
 
            </ul>
 
        </div> <!-- close footer -->
 
        <div id='footer'>
 
            <ul id="f-list">
 
 
                    <li id="t-print"><a href="/wiki/index.php?title=WikitemplateA_home&amp;printable=yes"
 
                      title="Printable version of this page [p]" accesskey="p">Printable version</a>
 
                    </li>
 
 
                    <li id="t-permalink"><a href="/wiki/index.php?title=WikitemplateA_home&amp;oldid=145279"
 
                      title="Permanent link to this revision of the page">Permanent link</a>
 
                    </li>
 
 
 
                        <li id="privacy"><a href="/2014.igem.org:Privacy_policy" title="2014.igem.org:Privacy policy">Privacy policy</a></li>
 
                        <li id="disclaimer"><a href="/2014.igem.org:General_disclaimer" title="2014.igem.org:General disclaimer">Disclaimers</a></li>
 
            </ul>
 
        </div> <!-- close footer -->
 
    </div> <!-- close footer-box -->
 
 
<script>if (window.runOnloadHook) runOnloadHook();</script>
 
</div>
 
<!-- Served in 0.069 secs. --></body>
 
 
 
</p>
 
<!--
 
NewPP limit report
 
CPU time usage: 0.003 seconds
 
Real time usage: 0.003 seconds
 
Preprocessor visited node count: 4/1000000
 
Preprocessor generated node count: 24/1000000
 
Post‐expand include size: 0/2097152 bytes
 
Template argument size: 0/2097152 bytes
 
Highest expansion depth: 2/40
 
Expensive parser function count: 0/100
 
-->
 
 
<!-- Saved in parser cache with key 2017_igem_org:pcache:idhash:19802-0!*!*!*!*!*!* and timestamp 20170926073158 and revision id 131201
 
-->
 
</div>                      <div class="visualClear"></div>
 
                    </div>
 
                    </div>
 
 
        </div>
 
 
        <!-- Side Menubar -->
 
        <div id="sideMenu">
 
            <a href="https://2017.igem.org">
 
                <div id="home_logo" >
 
                <img src="https://static.igem.org/mediawiki/2017/b/bf/HQ_menu_logo.jpg">
 
                </div>
 
            </a>
 
 
            <div style="clear:both; height:5px;"></div>
 
 
            <div id="menuDisplay"></div>  <!- Menu will be loaded here ->
 
        </div>
 
 
        <!-- Pop_Why Div is definded here -->
 
        <div class="pop_why_cover"></div>
 
 
        <div class="pop_why_box" >
 
            <div class="pop_close">× </div>
 
            <div class="pop_why_content"><h3> Loading ... </h3></div>
 
        </div>
 
 
    </div>
 
</html>
 

Latest revision as of 23:21, 28 October 2017