Freimoser:Fast yeast transformation protocol - source code

From OpenWetWare

Revision as of 06:16, 22 March 2010 by Vaishnavi Ananth (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

#include "BioCoder.h"

void main()
{
	start_protocol("Freimoser - Fast Yeast Transformation");

	Fluid plasmid = new_fluid("DNA plasmid");
	Fluid carrier_dna = new_fluid("carrier DNA","salmon/herring sperm DNA in H2O, 2mg/ml stock, 500 µl aliquots, heat-inactivated at 95°C for 5-6 min and put on ice before use (has to be done once)");
	Fluid peg = new_fluid("50% polyethylene glycol (PEG) solution", "MW 3'350, filter-sterilized");
	Fluid liac = new_fluid("1 M lithium acetate", "autoclaved");
	Fluid water = new_fluid("water");
	
	Solid cells = new_solid("cells scrapped from plate");
	Plate plate1 = new_plate("plate containing appropriate medium");

	Container tube1 = new_container(STERILE_MICROFUGE_TUBE);

	//1. Add 50 µl carrier DNA to a 1.5 ml tube.
	first_step();
	measure_fluid(carrier_dna, vol(50, UL), tube1);

	//2. scrap cells from plate and add to the carrier DNA.
	next_step();
	measure_solid(cells, tube1);

        //3. Add in the following order:
         //1. 1-2 µl DNA-plasmid (up to 30-50 µl)
         //2. 240 µl PEG (50%)
         //3. 36 µl Li-Ac (1M) 
	next_step();
	measure_fluid(plasmid, vol_range(1, 2, UL), tube1);
	measure_fluid(peg, vol(240, UL), tube1);
	measure_fluid(liac, vol(36, UL), tube1);
	
        //4. resuspend with blue tip
	next_step();
	pipet(tube1);
   
	//5. incubate at 30°C or RT at least 30 min
	next_step();
	first_option();
	incubate(tube1, 30, min_time(30, MINS));
	next_option();
	incubate(tube1, RT, min_time(30, MINS));
	end_option();

        //6. heat shock: 45°C, 15 min (or 42°C for 20 min)
	next_step("Heat shock");
	first_option();
	store_for(tube1, 45, time(15, MINS));
	next_option();
	store_for(tube1, 42, time(20, MINS));
	end_option();

	//7. spin down, resuspend in 100μl H2O and plate everything on corresponding medium 
	next_step();
	centrifuge_pellet(tube1, speed(SPEED_MAX, RPM), RT, time(1, MINS));
	measure_fluid(water, vol(100, UL), tube1);
	resuspend(tube1);
	name_sample(tube1, "suspension");
	plate_out(plate1, tube1);

	end_protocol();
}

Personal tools