Knight:Colony PCR protocol - source code

From OpenWetWare

(Difference between revisions)
Jump to: navigation, 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_...)
Current revision (00:36, 20 November 2009) (view source)
 
(One intermediate revision not shown.)
Line 1: Line 1:
-
<pre>
+
<code><pre>
-
#include "BioStream.h"
+
#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);
-
 
-
Symbol x = new_parameter("X", "1 min per kb of expected product.");
 
// 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, fluid_array, tube, volumes, vol(10, UL), rxn_tube);
+
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(XVAL, MINS), NORMAL);
+
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>

Current revision

#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();
}
Personal tools