Knight:Colony PCR protocol - source code: Difference between revisions
From OpenWetWare
Jump to navigationJump to search
(New page: <pre> #include "BioStream.h" void main() { start_protocol("Knight - Colony PCR"); Fluid supermix = new_fluid("PCR supermix"); Fluid vf2 = new_fluid("VF2", "40 µM"); Fluid vr = new_...) |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
<pre> | <code><pre> | ||
#include " | #include "BioCoder.h" | ||
#define X 60 | |||
void main() | void main() | ||
Line 13: | Line 14: | ||
Container rxn_tube = new_container(RXN_TUBE); | Container rxn_tube = new_container(RXN_TUBE); | ||
// Reaction mixture | // Reaction mixture | ||
Line 29: | Line 28: | ||
Volume* volumes[4] = {vol(9, UL), vol(0.25, UL), vol(0.25, UL), vol(0.5, UL)}; | Volume* volumes[4] = {vol(9, UL), vol(0.25, UL), vol(0.25, UL), vol(0.5, UL)}; | ||
char* tube[1] = {"Colony PCR"}; | char* tube[1] = {"Colony PCR"}; | ||
mixing_table(2, 5, | mixing_table(2, 5, fluid_array, tube, volumes, vol(10, UL), rxn_tube); | ||
//PCR conditions | //PCR conditions | ||
Line 44: | Line 43: | ||
next_step("PCR conditions"); | next_step("PCR conditions"); | ||
pcr_init_denat(rxn_tube, 95, time(15, MINS)); | pcr_init_denat(rxn_tube, 95, time(15, MINS)); | ||
thermocycler(rxn_tube, 39, 94, time(30, SECS), 56, time(30, SECS), 68, time( | thermocycler(rxn_tube, 39, 94, time(30, SECS), 56, time(30, SECS), 68, time(X, SECS), NORMAL); | ||
comment("Elongation time : I typically round up for this step. i.e. For a 3.6kb construct, I used a 4 min elongation time. It seems to help to be a bit generous with the elongation time."); | comment("Elongation time : 1 min per kb of expected product. I typically round up for this step. i.e. For a 3.6kb construct, I used a 4 min elongation time. It seems to help to be a bit generous with the elongation time."); | ||
pcr_final_ext(rxn_tube, 60, time(20, MINS), 4); | pcr_final_ext(rxn_tube, 60, time(20, MINS), 4); | ||
Line 55: | Line 54: | ||
end_protocol(); | end_protocol(); | ||
} | } | ||
</pre> | </pre></code> |
Latest revision as of 22:36, 19 November 2009
#include "BioCoder.h"
#define X 60
void main()
{
start_protocol("Knight - Colony PCR");
Fluid supermix = new_fluid("PCR supermix");
Fluid vf2 = new_fluid("VF2", "40 µM");
Fluid vr = new_fluid("VR", "40 µM");
Fluid colony = new_fluid("colony template");
Container rxn_tube = new_container(RXN_TUBE);
// Reaction mixture
//
//1X Reaction
//
// * 9 μL PCR supermix
// * 0.25 μL 40μM VF2
// * 0.25 μL 40μM VR
// * 0.5 μL colony template
//
first_step("Reaction Mixture");
Fluid fluid_array[4] = {supermix, vf2, vr, colony};
Volume* volumes[4] = {vol(9, UL), vol(0.25, UL), vol(0.25, UL), vol(0.5, UL)};
char* tube[1] = {"Colony PCR"};
mixing_table(2, 5, fluid_array, tube, volumes, vol(10, UL), rxn_tube);
//PCR conditions
//
// 1. 95°C for 15 mins
// 2. 94°C for 30 secs
// 3. 56°C for 30 secs
// 4. 68°C for 1 min per kb of expected product
// * I typically round up for this step. i.e. For a 3.6kb construct, I used a 4 min elongation time. It seems to help to be a bit generous with the elongation time.
// 5. Repeat 2-4 39 times.
// 6. 68°C for 20 mins
// 7. 4°C forever
//
next_step("PCR conditions");
pcr_init_denat(rxn_tube, 95, time(15, MINS));
thermocycler(rxn_tube, 39, 94, time(30, SECS), 56, time(30, SECS), 68, time(X, SECS), NORMAL);
comment("Elongation time : 1 min per kb of expected product. I typically round up for this step. i.e. For a 3.6kb construct, I used a 4 min elongation time. It seems to help to be a bit generous with the elongation time.");
pcr_final_ext(rxn_tube, 60, time(20, MINS), 4);
//Run a gel to determine amplification product length.
next_step();
name_sample(rxn_tube, "PCR products");
electrophoresis(rxn_tube);
end_protocol();
}