Team:HokkaidoU Japan/Shuffling Kit/Primer Designer

From 2013.igem.org

(Difference between revisions)
Line 41: Line 41:
               CDS(s) included.
               CDS(s) included.
-
               <h3>3. Then, please select the region to where your biobrick correspond in target plasmid.</h3>
+
               <h3>3. Then, please select the region to where your flagment correspond in target plasmid.</h3>
               <div id="plasmid-map">
               <div id="plasmid-map">
                 <div                            id="plasmid-0">                                  </div>
                 <div                            id="plasmid-0">                                  </div>
Line 58: Line 58:
                 <div class="form-group">
                 <div class="form-group">
                   <label for="part-beginning">
                   <label for="part-beginning">
-
                     Beginning of the Biobrick:
+
                     Beginning of the flagment:
                   </label>
                   </label>
                   <select name="part-beginning" class="form-control monospace">
                   <select name="part-beginning" class="form-control monospace">
Line 74: Line 74:
                 <div class="form-group">
                 <div class="form-group">
                   <label for="part-end">
                   <label for="part-end">
-
                     End of the Biobrick:
+
                     End of the flagment:
                   </label>
                   </label>
                   <select name="part-end" class="form-control monospace">
                   <select name="part-end" class="form-control monospace">
Line 91: Line 91:
-
               <h3>4. Okey, now we are ready to go. Enter your biobrick's sequence, and press "Calculate"!</h3>
+
               <h3>4. Okey, now we are ready to go. Enter your flagment's sequence, and press "Calculate"!</h3>
             </div>
             </div>
             <div id="not-conform">
             <div id="not-conform">
-
               <h3>2. Please enter overhangs and biobrick's sequence, and press "Calculate"</h3>
+
               <h3>2. Please enter overhangs and flagment's sequence, and press "Calculate"</h3>
             </div>
             </div>
Line 113: Line 113:
               <div class="form-group">
               <div class="form-group">
                 <label for="sequence">
                 <label for="sequence">
-
                   Biobrick sequence:
+
                   Flagment sequence:
                 </label>
                 </label>
               <textarea class="form-control monospace" type="text" name="sequence"></textarea><br>
               <textarea class="form-control monospace" type="text" name="sequence"></textarea><br>
Line 140: Line 140:
             </dl>
             </dl>
-
             <h3>5. Now, repeat previous step for remaining biobricks included in the target plasmid.</h3>
+
             <h3>5. Now, repeat previous step for remaining flagments included in the target plasmid.</h3>
<script type="text/javascript">
<script type="text/javascript">
(function(){var n,f,e,h,d,a,j,g,i,b,m,k,c,l;a=function(o){switch(o){case"AA":case"TT":return -9.1;case"AT":return -8.6;case"TA":return -6;case"CA":case"TG":return -5.8;case"GT":case"AC":return -6.5;case"CT":case"AG":return -7.8;case"GA":case"TC":return -5.6;case"CG":return -11.9;case"GC":return -11.1;case"GG":case"CC":return -11}};k=function(o){var p,q,s,r;q=0;for(p=s=0,r=o.length-2;0<=r?s<=r:s>=r;p=0<=r?++s:--s){q+=a(o.slice(p,+(p+1)+1||9000000000))}return q};j=function(o){switch(o){case"AA":case"TT":return -24;case"AT":return -23.9;case"TA":return -16.9;case"CA":case"TG":return -12.9;case"GT":case"AC":return -17.3;case"CT":case"AG":return -20.8;case"GA":case"TC":return -13.5;case"CG":return -27.8;case"GC":return -26.7;case"GG":case"CC":return -26.6}};c=function(o){var p,q,s,r;q=0;for(p=s=0,r=o.length-2;0<=r?s<=r:s>=r;p=0<=r?++s:--s){q+=j(o.slice(p,+(p+1)+1||9000000000))}return q};n=function(o){var q,p;q=k(o);p=c(o);return(1000*q/(-10.8+p+1.987*-15.89495209964411))-273.15+16.6*-1.3010299956639813};d=function(p){var r,o,q;if(n(p.slice(0,35))<60){alert("Sequence is too short.");return false}for(r=q=17;q<=35;r=++q){o=n(p.slice(0,+(r-1)+1||9000000000));if(o>60){if(p[r-1]==="G"||p[r-1]==="C"){break}}}return[p.slice(0,+(r-1)+1||9000000000),o]};h=function(o){switch(o){case"A":return"T";case"T":return"A";case"G":return"C";case"C":return"G"}};m=function(p){var o;return((function(){var t,r,s,q;s=p.split("");q=[];for(t=0,r=s.length;t<r;t++){o=s[t];q.push(h(o))}return q})()).reverse().join("")};g=function(s,o,w){var t,p,r,u,v,q;t=d(w);p=d(m(w));r="TTTGGTCTCT"+s+"T"+t[0];v=t[1];u="TTTGGTCTCA"+o+"A"+p[0];q=p[1];return[r,v,u,q]};e=function(o){if(/GGTCTC/.test(o)||/GGTCTC/.test(m(o))){alert("This sequence contains BsaI cutting site.");return false}else{if(/GAATTC/.test(o)||/GAATTC/.test(m(o))){alert("This sequence contains EcoRI cutting site.");return false}else{if(/CTGCAG/.test(o)||/CTGCAG/.test(m(o))){alert("This sequence contains PstI cutting site.");return false}else{if(/GCGGCCGC/.test(o)||/GCGGCCGC/.test(m(o))){alert("This sequence contains NotI cutting site.");return false}else{if(/ACTAGT/.test(o)||/ACTAGT/.test(m(o))){alert("This sequence contains SpeI cutting site.");return false}else{if(/TCTAGA/.test(o)||/TCTAGA/.test(m(o))){alert("This sequence contains XbaI cutting site.");return false}else{return true}}}}}}};f=function(p){var o;o=/[ATCG]+/.exec(p);if(o[0]===p){return true}else{return false}};b=function(p){var o;o=p.val().toUpperCase().split(/[\s\n\r]+/).join("");if(!f(o)){alert("You can NOT use non-AGCT characters.");return false}if(!e(o)){return false}};i=function(o){switch(o){case 1:return"CGTC";case 2:return"AAGG";case 3:return"CTGA";case 4:return"TTAT";case 5:return"TTCG";case 6:return"TAGA";case 7:return"TCCC";case 8:return"CGGT";case 9:return"AGTA"}};l=function(){var t,o,p,s,r,q;t=parseInt($('[name="part-beginning"]').val());o=parseInt($('[name="part-end"]').val());for(p=s=1;1<=t?s<t:s>t;p=1<=t?++s:--s){$("#plasmid-"+p).addClass("plasmid-gray")}for(p=r=t;t<=9?r<=9:r>=9;p=t<=9?++r:--r){$("#plasmid-"+p).removeClass("plasmid-gray")}for(p=q=o;o<=9?q<=9:q>=9;p=o<=9?++q:--q){$("#plasmid-"+p).addClass("plasmid-gray")}if(o>t){$('[name="overhang-f"]').val(i(t));return $('[name="overhang-r"]').val(i(o))}else{$('[name="overhang-f"]').val("");return $('[name="overhang-r"]').val("")}};$(function(){$('[name="overhang-f"]').focusout(function(){return b($(this))});$('[name="overhang-r"]').focusout(function(){return b($(this))});$('[name="sequence"]').focusout(function(){return b($(this))});$("#primer-designer").submit(function(r){var q,p,u,s,o,t;r.preventDefault();p=$(this);q=p.find("button");q.attr("disabled",true);u=p.find('[name="overhang-f"]').val().toUpperCase();s=p.find('[name="overhang-r"]').val().toUpperCase();t=p.find('[name="sequence"]').val().toUpperCase().split(/[\s\n\r]+/).join("");console.log(check_bsa_site(u));console.log(check_bsa_site(s));console.log(check_bsa_site(t));console.log(f(u));console.log(f(s));console.log(f(t));o=g(u,m(s),t);$("#primer-f").text(o[0]);$("#tm-f").html(""+(o[1].toFixed(2))+" &deg;C");$("#primer-r").text(o[2]);$("#tm-r").html(""+(o[3].toFixed(2))+" &deg;C");return q.attr("disabled",false)});$("#not-conform").hide();$('input[name="default"]:radio').change(function(){switch($(this).val()){case"1":$("#conform").show();return $("#not-conform").hide();case"2":$("#conform").hide();return $("#not-conform").show()}});$('[name="cds-number"]').val("3");$('[name="cds-number"]').change(function(){switch($(this).val()){case"1":$(".hide-1").hide();$(".hide-2").hide();$(".disable-1").attr("disabled","disabled");return $(".disable-2").attr("disabled","disabled");case"2":$(".hide-1").show();$(".hide-2").hide();$(".disable-1").removeAttr("disabled");return $(".disable-2").attr("disabled","disabled");case"3":$(".hide-1").show();$(".hide-2").show();$(".disable-1").removeAttr("disabled");return $(".disable-2").removeAttr("disabled")}});$('[name="part-beginning"]').change(function(){return l()});return $('[name="part-end"]').change(function(){return l()})})}).call(this);
(function(){var n,f,e,h,d,a,j,g,i,b,m,k,c,l;a=function(o){switch(o){case"AA":case"TT":return -9.1;case"AT":return -8.6;case"TA":return -6;case"CA":case"TG":return -5.8;case"GT":case"AC":return -6.5;case"CT":case"AG":return -7.8;case"GA":case"TC":return -5.6;case"CG":return -11.9;case"GC":return -11.1;case"GG":case"CC":return -11}};k=function(o){var p,q,s,r;q=0;for(p=s=0,r=o.length-2;0<=r?s<=r:s>=r;p=0<=r?++s:--s){q+=a(o.slice(p,+(p+1)+1||9000000000))}return q};j=function(o){switch(o){case"AA":case"TT":return -24;case"AT":return -23.9;case"TA":return -16.9;case"CA":case"TG":return -12.9;case"GT":case"AC":return -17.3;case"CT":case"AG":return -20.8;case"GA":case"TC":return -13.5;case"CG":return -27.8;case"GC":return -26.7;case"GG":case"CC":return -26.6}};c=function(o){var p,q,s,r;q=0;for(p=s=0,r=o.length-2;0<=r?s<=r:s>=r;p=0<=r?++s:--s){q+=j(o.slice(p,+(p+1)+1||9000000000))}return q};n=function(o){var q,p;q=k(o);p=c(o);return(1000*q/(-10.8+p+1.987*-15.89495209964411))-273.15+16.6*-1.3010299956639813};d=function(p){var r,o,q;if(n(p.slice(0,35))<60){alert("Sequence is too short.");return false}for(r=q=17;q<=35;r=++q){o=n(p.slice(0,+(r-1)+1||9000000000));if(o>60){if(p[r-1]==="G"||p[r-1]==="C"){break}}}return[p.slice(0,+(r-1)+1||9000000000),o]};h=function(o){switch(o){case"A":return"T";case"T":return"A";case"G":return"C";case"C":return"G"}};m=function(p){var o;return((function(){var t,r,s,q;s=p.split("");q=[];for(t=0,r=s.length;t<r;t++){o=s[t];q.push(h(o))}return q})()).reverse().join("")};g=function(s,o,w){var t,p,r,u,v,q;t=d(w);p=d(m(w));r="TTTGGTCTCT"+s+"T"+t[0];v=t[1];u="TTTGGTCTCA"+o+"A"+p[0];q=p[1];return[r,v,u,q]};e=function(o){if(/GGTCTC/.test(o)||/GGTCTC/.test(m(o))){alert("This sequence contains BsaI cutting site.");return false}else{if(/GAATTC/.test(o)||/GAATTC/.test(m(o))){alert("This sequence contains EcoRI cutting site.");return false}else{if(/CTGCAG/.test(o)||/CTGCAG/.test(m(o))){alert("This sequence contains PstI cutting site.");return false}else{if(/GCGGCCGC/.test(o)||/GCGGCCGC/.test(m(o))){alert("This sequence contains NotI cutting site.");return false}else{if(/ACTAGT/.test(o)||/ACTAGT/.test(m(o))){alert("This sequence contains SpeI cutting site.");return false}else{if(/TCTAGA/.test(o)||/TCTAGA/.test(m(o))){alert("This sequence contains XbaI cutting site.");return false}else{return true}}}}}}};f=function(p){var o;o=/[ATCG]+/.exec(p);if(o[0]===p){return true}else{return false}};b=function(p){var o;o=p.val().toUpperCase().split(/[\s\n\r]+/).join("");if(!f(o)){alert("You can NOT use non-AGCT characters.");return false}if(!e(o)){return false}};i=function(o){switch(o){case 1:return"CGTC";case 2:return"AAGG";case 3:return"CTGA";case 4:return"TTAT";case 5:return"TTCG";case 6:return"TAGA";case 7:return"TCCC";case 8:return"CGGT";case 9:return"AGTA"}};l=function(){var t,o,p,s,r,q;t=parseInt($('[name="part-beginning"]').val());o=parseInt($('[name="part-end"]').val());for(p=s=1;1<=t?s<t:s>t;p=1<=t?++s:--s){$("#plasmid-"+p).addClass("plasmid-gray")}for(p=r=t;t<=9?r<=9:r>=9;p=t<=9?++r:--r){$("#plasmid-"+p).removeClass("plasmid-gray")}for(p=q=o;o<=9?q<=9:q>=9;p=o<=9?++q:--q){$("#plasmid-"+p).addClass("plasmid-gray")}if(o>t){$('[name="overhang-f"]').val(i(t));return $('[name="overhang-r"]').val(i(o))}else{$('[name="overhang-f"]').val("");return $('[name="overhang-r"]').val("")}};$(function(){$('[name="overhang-f"]').focusout(function(){return b($(this))});$('[name="overhang-r"]').focusout(function(){return b($(this))});$('[name="sequence"]').focusout(function(){return b($(this))});$("#primer-designer").submit(function(r){var q,p,u,s,o,t;r.preventDefault();p=$(this);q=p.find("button");q.attr("disabled",true);u=p.find('[name="overhang-f"]').val().toUpperCase();s=p.find('[name="overhang-r"]').val().toUpperCase();t=p.find('[name="sequence"]').val().toUpperCase().split(/[\s\n\r]+/).join("");console.log(check_bsa_site(u));console.log(check_bsa_site(s));console.log(check_bsa_site(t));console.log(f(u));console.log(f(s));console.log(f(t));o=g(u,m(s),t);$("#primer-f").text(o[0]);$("#tm-f").html(""+(o[1].toFixed(2))+" &deg;C");$("#primer-r").text(o[2]);$("#tm-r").html(""+(o[3].toFixed(2))+" &deg;C");return q.attr("disabled",false)});$("#not-conform").hide();$('input[name="default"]:radio').change(function(){switch($(this).val()){case"1":$("#conform").show();return $("#not-conform").hide();case"2":$("#conform").hide();return $("#not-conform").show()}});$('[name="cds-number"]').val("3");$('[name="cds-number"]').change(function(){switch($(this).val()){case"1":$(".hide-1").hide();$(".hide-2").hide();$(".disable-1").attr("disabled","disabled");return $(".disable-2").attr("disabled","disabled");case"2":$(".hide-1").show();$(".hide-2").hide();$(".disable-1").removeAttr("disabled");return $(".disable-2").attr("disabled","disabled");case"3":$(".hide-1").show();$(".hide-2").show();$(".disable-1").removeAttr("disabled");return $(".disable-2").removeAttr("disabled")}});$('[name="part-beginning"]').change(function(){return l()});return $('[name="part-end"]').change(function(){return l()})})}).call(this);

Revision as of 14:22, 27 September 2013

Maestro E.coli

Optimization Kit

GGA Primer Designer

1. First, you have to decide whether or not you conform to our default overhang set.

2. Secondly, you hove to determine how many CDS are included in your target plasmid.

I have CDS(s) included.

3. Then, please select the region to where your flagment correspond in target plasmid.

1
2
3
4
5
6
7
8
9

4. Okey, now we are ready to go. Enter your flagment's sequence, and press "Calculate"!

2. Please enter overhangs and flagment's sequence, and press "Calculate"





Forward

sequence
tm

Reverse

sequence
tm

5. Now, repeat previous step for remaining flagments included in the target plasmid.