Biomod/2011/Caltech/DeoxyriboNucleicAwesome/Protocols: Difference between revisions

From OpenWetWare
Jump to navigationJump to search
Line 130: Line 130:
*The data is normalized such that the start of the reaction is at 1, and the completion level is at 0, by translating the completion level down, and then scaling the data.
*The data is normalized such that the start of the reaction is at 1, and the completion level is at 0, by translating the completion level down, and then scaling the data.
:<syntaxhighlight lang="matlab">time1 = data(1, start:finish);</syntaxhighlight>
:<syntaxhighlight lang="matlab">time1 = data(1, start:finish);</syntaxhighlight>
time2 = data(3, start:finish);
:<syntaxhighlight lang="matlab">time2 = data(3, start:finish);</syntaxhighlight>
time3 = data(5, start:finish);
:<syntaxhighlight lang="matlab">time3 = data(5, start:finish);</syntaxhighlight>
time4 = data(7, start:finish);
:<syntaxhighlight lang="matlab">time4 = data(7, start:finish);</syntaxhighlight>
data1 = data(2, start:finish);
:<syntaxhighlight lang="matlab">data1 = data(2, start:finish);</syntaxhighlight>
data2 = data(4, start:finish);
:<syntaxhighlight lang="matlab">data2 = data(4, start:finish);</syntaxhighlight>
data3 = data(6, start:finish);
:<syntaxhighlight lang="matlab">data3 = data(6, start:finish);</syntaxhighlight>
data4 = data(8, start:finish);
:<syntaxhighlight lang="matlab">data4 = data(8, start:finish);</syntaxhighlight>
time1 = time1 - time1(1);
:<syntaxhighlight lang="matlab">time1 = time1 - time1(1);</syntaxhighlight>
time2 = time2 - time2(1);
:<syntaxhighlight lang="matlab">time2 = time2 - time2(1);</syntaxhighlight>
time3 = time3 - time3(1);
:<syntaxhighlight lang="matlab">time3 = time3 - time3(1);</syntaxhighlight>
time4 = time4 - time4(1);
:<syntaxhighlight lang="matlab">time4 = time4 - time4(1);</syntaxhighlight>
ndata1 = data1 - data1(finish - start + 1);
:<syntaxhighlight lang="matlab">ndata1 = data1 - data1(finish - start + 1);</syntaxhighlight>
ndata2 = data2 - data2(finish - start + 1);
:<syntaxhighlight lang="matlab">ndata2 = data2 - data2(finish - start + 1);</syntaxhighlight>
ndata3 = data3 - data3(finish - start + 1);
:<syntaxhighlight lang="matlab">ndata3 = data3 - data3(finish - start + 1);</syntaxhighlight>
ndata4 = data4 - data2(finish - start + 1);
:<syntaxhighlight lang="matlab">ndata4 = data4 - data2(finish - start + 1);</syntaxhighlight>
ndata1 = ndata1/ndata1(1);
:<syntaxhighlight lang="matlab">ndata1 = ndata1/ndata1(1);</syntaxhighlight>
ndata2 = ndata2/ndata2(1);
:<syntaxhighlight lang="matlab">ndata2 = ndata2/ndata2(1);</syntaxhighlight>
ndata3 = ndata3/ndata3(1);
:<syntaxhighlight lang="matlab">ndata3 = ndata3/ndata3(1);</syntaxhighlight>
ndata4 = ndata4/ndata4(1);
:<syntaxhighlight lang="matlab">ndata4 = ndata4/ndata4(1);</syntaxhighlight>
plot(time1, ndata1, time2, ndata2, time3, ndata3, time4, ndata4);</syntaxhighlight>
:<syntaxhighlight lang="matlab">plot(time1, ndata1, time2, ndata2, time3, ndata3, time4, ndata4);</syntaxhighlight>
{{Template:DeoxyriboNucleicAwesomeFooter}}
{{Template:DeoxyriboNucleicAwesomeFooter}}

Revision as of 16:33, 12 October 2011

Tuesday, April 16, 2024

Home

Members

Project

Protocols

Progress

Discussion

References


Protocols

Things that need to be written

  • Quantitating DNA
  • How to run a gel
  • How to do AFM (when we learn this)
  • How to analyze fluorescence experiments (when we learn this)
  • How to perform gel purification
  • How we ran experiments...


Gel Purification

  • 1. Anneal the complex (Q-function)

For 300ul sample, add 50ul BB_ND dye 170ul of sample will be loaded per lane. Samples will take 2 lanes, and one blank lane should be placed between different samples.

  • 2. Wash the big plates. Dry the plates for 45 minutes

- Feel it with fingers/ Watch out for the water flow

  • 3. Make a gel. 12% ND gel for purification

Lulu’s recipe for 40ml of 12% ND gel which works for one gel - 12ml 40% Acrylamide - 4ml 10x TAE/Mg++ - Fill up to 40ul MQ water (add 24 ml) - 240ul 10% APS, slow mix - 24ul TEMED, slow mix

  APS should be no more than 10 days old
  • 4. Run the gel for 150V, roughly 4.5 hours ~ 6 hours (when the dye ran off the gel) depending on the size of the sample. For example, if the sample is 122nt~176nt, run it for 6 hours. Change the buffer in every 1.5 hours.


SPEX protocol

  • 1. Turn on the lamp (back side). Wait for 30 min

Bottom big on/off button is for the machine. It is always on. Top small one is for the lamp. If there’s somebody who will use the SPEX tomorrow, then do not turn off the lamp after the experiment.

  • 2. Turn on the computer if it’s not on.
  • 3. Software: Instrument control center

Default: Click OK

  • 4. Temperature set up

Click the third square icon called “Visual setup” Click the middle square Temperature control icon: Turn on and Set to 25 degreeC Choose T bath (internal). NOT Probe (external).

  • 5. Wash the cuvettes.

Be careful! Hold only top or bottom. DW (10 times) 70% ethanol (twice) DW (5 times) 70% ethanol (once) While you wash, you can touch the side. Hold it in a stable way. Let it dry (upside down)

  • 6. Dry the cuvettes using lens paper.
  • 7. Click second square icon called “real time display”.

High voltage: HV on, S 950, T 950 Bandpass : Set 2 for everything

  • 8. Click the last square icon called “run CWA”.

Open a file called “ROX_CWA” from e:\SPEX DATA\biomod Optional mode: kinetics, Integration time: 10s Define: Repeat acquisition: 1 min (minimum) for total of 180 min (3 hours)

  • 9. Mixing: Hold top. 350ul of 1000ul pipette all the way in. Mix it for 30 times.
  • 10. Put the cuvettes. Logo faces out!
  • 11. Start acquisition. Run sample.

Range of the real data should not exceed 1 million (1000,000) Number we see is S/R  will be (100 million)

  • 12. Add more samples in the middle of SPEX experiment

When the status is “waiting”, click “stop”. Don’t click anything else. Add and mix. After you put the cuvettes inside the box, click “no”.

  • 13. Save the data

When the status is “waiting”, click “stop”. Click “yes” Save data in two forms (DWA datafile, multi~ test) Check if the data is properly saved: Check the last data.

  • If you want to see the reference, go to options: view option and display raw R.


Origami Purification

We suggest using the Millipore Microcon YM-100 (blue) spin filters. ( http://www.millipore.com/catalogue/item/42413 ). The times below are estimates for how long to spin your sample (to err on the safe side I would check on the sample after 30 minutes and then estimate how much longer one needs to spin it so as to preserve a small amount of liquid on top of the filter but being VERY careful not to allow it to dry out completely.

this protocol should drastically reduce the presence of excess strands. (the more rounds of adding buffer and filtering you do, the cleaner your sample, but the lower the yield.

Admittedly the yield will be quite low (we haven't figured out exactly how low) -- supposedly each round of filtration should preserve 95% of the origami according to the filter spec but one problem here is dilution (since I have almost always ended up with a sample that is 3X more dilute than I started with). The dilution can be fixed by vaccuum centrifuging at 30 degrees (this does not hurt the origami at all according to Sungwook, but I haven't tried this with our substrate-laden samples.

1. Mix 100uL of your sample with 300uL of 1X buffer of your choice.

2. Vortex mixture and pipette it into a YM-100 spin filter.

3. Spin at 100g for ~30 minutes at 4°C. (Spinning at this low speed prevents the origami from being ripped apart)

4. Remove sample for centrifuge, leaving the machine at 4°C because we’ll be using it again in a moment. The spin filter should have only a few tens of microliters of your sample left in it, just enough to cover the filter. Remove the filter and get rid of any liquid in the tube below. Now reinsert your spin filter and add 200uL of 1X buffer, then pipette up and down just over the filter (five to six times) to recover any bound origami on the filter. Be very careful not to puncture the filter during this step. Finally, add another 200uL of buffer to your sample to bring the final volume to ~400uL.

5. Spin at 100g for ~30 minutes at 4°C.

6. Remove sample for centrifuge, leaving the machine at 4°C because we’ll be using it again in a moment. The spin filter should have only a few tens of microliters of your sample left in it, just enough to cover the filter. Remove the filter and get rid of any liquid in the tube below. Now reinsert your spin filter and add 200uL of 1X buffer, then pipette up and down just over the filter (five to six times) to recover any bound origami on the filter. Be very careful not to puncture the filter during this step. Finally, add another 200uL of buffer to your sample to bring the final volume to ~400uL.

7. Spin at 100g for ~30 minutes at 4°C.

8. Remove sample for centrifuge, leaving the machine at 4°C because we’ll be using it again in a moment. The spin filter should have only a few tens of microliters of your sample left in it, just enough to cover the filter. Remove the filter and get rid of any liquid in the tube below. Now reinsert your spin filter and add 200uL of 1X buffer, then pipette up and down just over the filter (five to six times) to recover any bound origami on the filter. Be very careful not to puncture the filter during this step. Finally, add another 200uL of buffer to your sample to bring the final volume to ~400uL.

9. Spin at 100g for ~20 minutes at 4°C. This should leave you with ~70-100uL of sample retained in the spin filter. Perform the above pipetting step again to recover as many origami as possible from the spin filter.

10. Remove the spin filter, and place it upside down in a fresh tube (being careful not to dump your sample on the ground!). You can now spin your sample in a microcentrifuge for 12 minutes to collect everything.


[edit] Paul's additional notes:

A similar spin protocol appears necessary for binding DNA origami to sticky patches on silicon. Without it, the staples seem to interfere in binding. This protocol was originally taken from Rob Barish's protocol for origami/ribbon constructs. I think that some parts of the protocol may not be necessary for regular origami. Notably, I'm not sure that pipetting up and down is necessary, except perhaps at the last step to maximize recovery. Similarly the use of a 4C centrifuge seems unnecessary, the centrifugation may go much faster at room temperature. If you use a different centrifuge or temperature, calibrate the passage of buffer through the filter before you try purifying any origami to get an idea of how much buffer is retained in the filter after a spin. Fewer spins will be required if a smaller excess of staples is used. You should be able to get away with 10X fewer staples than we typically use according to my standard origami protocol, easily. That is, a 5-10X stoichiometric excess of staples over scaffold is probably fine and will result in cleaner origami faster.


How to Open SPEX Data in MATLAB

  • Open up MATLAB and use File->Import Data
  • Navigate to the raw-text (.txt) data file and open it
  • The table on the right should show eight rows, where the odd ones are the times associated with the signal from the row under them. The top set is sample 1; the next is 2, the next is 3, the bottom set is sample 4. Press "next."
  • Optionally right click on "data" and rename it to whatever you want. This isn't necessary unless you're afraid of your data getting overwritten eventually when you import another set.
  • Click "finish."
  • Your data should be visible in the "workspace" window with the name "data" or whatever you might have renamed it to. Right click on it -> "open selection" to view it.
  • To plot a single sample's data, use this, where "data" is the name of your data variable:
<syntaxhighlight lang="matlab">plot(data(1, :), data(2, :))</syntaxhighlight>
  • To plot all four samples' data on the same plot, use this:
<syntaxhighlight lang="matlab">plot(data(1, :), data(2, :), data(3, :), data(4, :), data(5, :), data(6, :), data(7, :), data(8, :))</syntaxhighlight>

How to normalize SPEX Data in MATLAB

  • Upon opening the data, use the following code, replacing "start" with the beginning of the experiment (for origami experiments, this will usually be immediately after the walker trigger is added), and replacing "finish" with the data point corresponding to the reaction reaching its completion level.
  • Your data should be visible in the "workspace" window with the name "data" or whatever you might have renamed it to. Right click on it -> "open selection" to view it.
  • The data is normalized such that the start of the reaction is at 1, and the completion level is at 0, by translating the completion level down, and then scaling the data.
<syntaxhighlight lang="matlab">time1 = data(1, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">time2 = data(3, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">time3 = data(5, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">time4 = data(7, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">data1 = data(2, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">data2 = data(4, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">data3 = data(6, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">data4 = data(8, start:finish);</syntaxhighlight>
<syntaxhighlight lang="matlab">time1 = time1 - time1(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">time2 = time2 - time2(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">time3 = time3 - time3(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">time4 = time4 - time4(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata1 = data1 - data1(finish - start + 1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata2 = data2 - data2(finish - start + 1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata3 = data3 - data3(finish - start + 1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata4 = data4 - data2(finish - start + 1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata1 = ndata1/ndata1(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata2 = ndata2/ndata2(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata3 = ndata3/ndata3(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">ndata4 = ndata4/ndata4(1);</syntaxhighlight>
<syntaxhighlight lang="matlab">plot(time1, ndata1, time2, ndata2, time3, ndata3, time4, ndata4);</syntaxhighlight>