Kun:LabNotes/HiResChrPaint: Difference between revisions
Jump to navigation
Jump to search
Line 154: | Line 154: | ||
18,850 [[Media:Feb2012_80k_set_3.txt.gz|Feb2012_80k_set_3.txt]] 13000 5850 | 18,850 [[Media:Feb2012_80k_set_3.txt.gz|Feb2012_80k_set_3.txt]] 13000 5850 | ||
19,301 [[Media:Feb2012_80k_set_4.txt.gz|Feb2012_80k_set_4.txt]] 13314 5987 | 19,301 [[Media:Feb2012_80k_set_4.txt.gz|Feb2012_80k_set_4.txt]] 13314 5987 | ||
Genomics regions covered: | |||
V4: chr15 HiC domain (hand-picked barcodes); chr19 variable spacing. | |||
V6: chr7 Hox cluster, chr15 HiC domain (globally assigned barcodes); chr3 | |||
===Probe synthesis and labeling=== | ===Probe synthesis and labeling=== |
Latest revision as of 21:15, 11 July 2012
Project threads[edit]
Overview[edit]
Barcode design[edit]
- Each barcode has N number of digits, each digit can have M colors. We start with N=7 and M=4.
- To better resolve the barcodes, we require that two adjacent digits have different color. Therefore, the total number of possible barcodes is M*(M-1)^(N-1), which is 8748 when N=7 and M=4.
- The size of a digit depends on how well we can resolve a feature optically. Based on existing publications, this could be anywhere between 10-400kb.
- There could be a spacer between digits, but not necessary as long as two adjacent digits have different colors.
- We do need a spacer between two adjacent barcodes in order to know where the first digit is. As a start, the spacer can be twice as large as a digit.
- Here is an estimation of number of barcodes and probes needed for the entire human genome.
Digit Size | # probes/digit | Digits/barcode | # barcodes | Barcode size | Total region covered | # probes needed for human genome |
50,000 | 400 | 5 | 324 | 350,000 | 113,400,000 | 648,000 |
6 | 972 | 400,000 | 388,800,000 | 2,332,800 | ||
7 | 2916 | 450,000 | 1,312,200,000 | 8,164,800 | ||
8 | 8748 | 500,000 | 4,374,000,000 | 18,560,000 | ||
100,000 | 400 | 5 | 324 | 700,000 | 226,800,000 | 648,000 |
6 | 972 | 800,000 | 777,600,000 | 2,332,800 | ||
7 | 2916 | 900,000 | 2,624,400,000 | 8,164,800 | ||
8 | 8748 | 1,000,000 | 8,748,000,000 | 9,280,000 | ||
200,000 | 400 | 5 | 324 | 1,400,000 | 453,600,000 | 648,000 |
6 | 972 | 1,600,000 | 1,555,200,000 | 2,332,800 | ||
7 | 2916 | 1,800,000 | 5,248,800,000 | 4,511,111 | ||
8 | 8748 | 2,000,000 | 17,496,000,000 | 4,640,000 | ||
- As long as we can resolve individual barcodes, and two adjacent digits have different color, the mapping resolution equals to the size of a digit, not the size of a barcode.
- We can also organize the distribution of the barcodes along the entire genome, such that there is a high-level pattern. For example, all barcodes in the same chromosome or chromosome bands can share the same first three digits, similar to how zip codes are designed. This might help us to rescue a barcode that has low/no signals on some digits based on the adjacent barcodes.
Probe design[edit]
- Criteria for a good probe:
- Fixed probe length (easier for probe production), 60nt for now;
- Relatively homogeneous Tm: calculate the Tm for a reasonably large pool of 70-mers, find the mean and STDEV, then set the range: 76-86C for now;
- Unique across the genome: align each oligo to the genome with BLAT, the second hits (if exist) should have low homology;
- No homopolymers: avoid oligos that have seven bases of the same in a row for now. The threshold of seven is somewhat arbitrary.
- Low tendency to form hairpins or other secondary structures: calculate the folding energy using UNAFold, use a lower bound of -7 for now.
- Update [2/22/2012]
- It turns out that one limiting factor is that few good probes can be found for some genomic regions. When the probe length is reduced to 60nt, more good probes were identified. So we will switch to 60-mer probes, and the Tm is reduced to 73-83C.
- My first attempt in getting enough probes for a list of genomic regions wasn't quite successful, because there were just not enough probes for many regions. Therefore, I decided to change the probe design strategy. I wrote a script findAllProbesInChr.pl to identify all good probes that can densely cover every chromosome first. From the list of good probes, I'll then do partitioning and trimming to assign probes to digits and barcodes.
Step 1: Find all good probes that densely cover the genome.[edit]
- Perl Script: findAllProbesInChr.pl. This is the most time consuming step. It can take days on large chromosomes. We do it one chromosome at a time. The probe sequences can be used for a variety of barcoding schemes, so we only need to run the program for all chromosome once.
./findAllProbesInChr.pl /home/kunzhang/HsGenome/hg19.masked/chr15.fa.masked > chr15_probe_search.log &
Step 2: Group the probes into digits based on the digit size, spacing, and probe density.[edit]
- Perl Script: probes2digits.pl. In the case that there are more than one possible way to group the oligos, all possibilities are evaluated exhaustively and the best one is chosen.
./probes2digits.pl 200000 100000 100 < chr15_probe_seq.txt > chr15_probe_grouped_by_digits_200k_100k_100.txt &
Step 3: Group the digits into barcodes.[edit]
- Perl Script: digits2barcodes.pl. Similar to the previous step, all possible combination of barcodes are evaluated to find the best one.
./digits2barcodes.pl 7 400000 < chr15_probe_grouped_by_digits_200k_100k_100.txt > chr15_probe_grouped_by_7_digits_barcodes_sp400k.txt
Step 4: Create a set of barcodes and allocate them to the genome.[edit]
- Perl Script: allocateBarcodeSpace.pl
./allocateBarcodeSpace.pl 7 100000 200000 > HsGenomeBarcodeAllocation.txt
Step 5: Assign the allocated barcodes to digits and probes.[edit]
- Perl Script: assignBarcodeColor.pl
./assignBarcodeColor.pl HsGenomeBarcodeAllocation.txt chr15_probe_grouped_by_7_digits_barcodes_sp400k.txt chr15_7_digits_barcodes_sp400k
Step 6: Add adaptors to the probes, group them based on fluorophores.[edit]
- Perl Script: probes2oligoPools.pl
./probes2oligoPools.pl < chr15_7_digits_barcodes_sp400k_probe_seq_color.txt > chr15_oligoPools.txt
A master script to link everything together.[edit]
- chrPaintingProbeDesignMaster.pl. To complete all steps within a reasonable time frame, Step 1 should be run on different chromosomes in parallel.
Genomic regions to target in the first probe set[edit]
- Hox gene cluster: chr7:27.12M-27.30M. This is very small, will select barcodes that cover the region 25M-29M, 2,800 probes in total.
Barcode | Barcode position | Digit offset | Digit ID | Digit position | Digit color |
3421234 | chr7:25092383-27094188 | 1 | 85 | chr7:25092383-25292367 | 3 |
3421234 | chr7:25092383-27094188 | 2 | 86 | chr7:25392752-25592739 | 4 |
3421234 | chr7:25092383-27094188 | 3 | 87 | chr7:25692908-25892831 | 2 |
3421234 | chr7:25092383-27094188 | 4 | 88 | chr7:25992844-26192792 | 1 |
3421234 | chr7:25092383-27094188 | 5 | 89 | chr7:26294006-26493909 | 2 |
3421234 | chr7:25092383-27094188 | 6 | 90 | chr7:26594282-26794247 | 3 |
3421234 | chr7:25092383-27094188 | 7 | 91 | chr7:26894433-27094188 | 4 |
3421241 | chr7:27494794-29492367 | 1 | 93 | chr7:27494794-27693444 | 3 |
3421241 | chr7:27494794-29492367 | 2 | 94 | chr7:27793569-27993512 | 4 |
3421241 | chr7:27494794-29492367 | 3 | 95 | chr7:28093548-28292337 | 2 |
3421241 | chr7:27494794-29492367 | 4 | 96 | chr7:28392552-28592526 | 1 |
3421241 | chr7:27494794-29492367 | 5 | 97 | chr7:28692735-28892703 | 2 |
3421241 | chr7:27494794-29492367 | 6 | 98 | chr7:28992787-29192364 | 4 |
3421241 | chr7:27494794-29492367 | 7 | 99 | chr7:29292653-29492367 | 1 |
- Chr15 regions based on HiC data: will use whole-genome barcodes in the entire chr15 (39,160 probes);
- As a backup plan, I also manually picked digits in these regions for a second probe set that has a different amplification primer pair (V4). 11,759 probes in total
Domain ChrStart ChrEnd Size Digit IDs(color) A 42,252,708 42,772,708 520,000 66(1),67(1),68(1) A 44,092,708 44,852,708 760,000 72(2),73(2),74(2) B 52,532,708 53,052,708 520,000 100(3),101(3),102(3) B 58,492,708 59,212,708 720,000 119(4),120(4),121(4) A 67,172,946 68,092,946 920,000 148(1),149(2),150(1),151(2) A 76,252,945 77,212,945 960,000 179(2),180(1),181(2) B 83,202,945 84,848,996 1,646,051 200(3),201(4),202(1),203(3),204(4),205(1) B 93,598,996 94,918,996 1,320,000 234(4),235(2),236(3),237(2),238(4)
./extractProbesInDigits.pl chr15_HiC_region_digit_info.txt chr15_probe_grouped_by_digits_200k_100k_100.txt > chr15_HiC_region_oligoPools.txt
- Chr3 region that might be inverted in African: 45M-60M, 15,226 probes in total. To fill out the space of 80,000 oligos, I decided to expand the region to 20M-66M, and include 26,281 probes
- Combined all the oligos and split them based on the color, I ended up getting four pools with different sizes. This is because with the way I assign the barcodes different chromosomes (or regions) have enrichment on different colors, which leads to the unbalanced distribution when design probes on a small number of chromosomal regions.
19518 Feb2012_80k_oligoPools.color_1.txt 28967 Feb2012_80k_oligoPools.color_2.txt 15400 Feb2012_80k_oligoPools.color_3.txt 16114 Feb2012_80k_oligoPools.color_4.txt
Since each pool contains 20k sequences, I will have to exclude 8967 oligos in color 2. These oligos are from the end of chromosome 15.
- Because the pool sizes for the other three colors are less than 20k, I decided to use the space to test additional ideas. These oligos will also be amplified with the V4 primer pairs, so that we can separate them from the whole genome set.
- Different probe density: 50/digit; 200/digit; 400/digit
- Different barcode size/spacing: 20kb/10kb; 40kb/20kb; 100kb/50kb; 400kb/200kb
- The regions were hand-picked. Media:chr19_various_spacing_probe_density_barcode_info.txt
- After including these sequences to the pools, and taking only the first 20k from the color 2 pool, I got the following four sets of oligos to order:
V6 V4 19,518 Feb2012_80k_set_1.txt 16559 2959 20,000 Feb2012_80k_set_2.txt 16400 3600 18,850 Feb2012_80k_set_3.txt 13000 5850 19,301 Feb2012_80k_set_4.txt 13314 5987
Genomics regions covered: V4: chr15 HiC domain (hand-picked barcodes); chr19 variable spacing. V6: chr7 Hox cluster, chr15 HiC domain (globally assigned barcodes); chr3
Probe synthesis and labeling[edit]
Hybridization and imaging[edit]
First reality-check on the imaging of mammalian nuclei[edit]
- Blue and Alice helped to grow PGP1F fibroblasts in the 35mm imaging dishs. One of the dishes was treated with colcemid overnight to capture metaphase cells. After removing culture medium, I added 1-2ml 1X DAPI (provided by Jeff) in 1X PBS to each dish, then imaged using our own 40x objective as well as the loaner high-NA 60x oil objective from Olympus.
- In the bright field with phase contrast, the morphology of the colcemid treated fibroblasts looks very different from typical fibroblasts. It was not possible to collect a nice bright field image. So I only took one DAPI image. Only a very small fraction of cells are in the metaphase. I couldn't see the spindle, but can see the compact metaphase chromosomes with the eye piece. However, the boundaries between chromosomes are quite blurry in the image captured by the CCD.
- Unblocked fibroblasts looked much nicer, both in the bright field and DAPI channel. I took a few images using both the 40X and 60X objective.
- The largest nucleus is roughly 200 pixels in width, and 150 pixels in height with the 60x objective. Given that the pixel size of our ORCA R2 CCD camera is 6.45uM^2, one pixel corresponds to 6.45/60=107.5nm. So the nucleus is ~20x15 microns in size.
60X Unblocked 40X Unblocked File:PGP1F 60X composite.png File:PGP1F 40X composite.png 60X 1-day coldemid block File:PGP1F colcemid 1d color.png
- Conclusions:
- The 60X objective does seem better (obvious).
- It's unlikely that we can resolve very dense chromosome barcodes using our microscope.
- It doesn't appear that going up to 100x would be of any benefit, since with 60X we are already hitting the diffraction limit.
- To get a better resolution we need to try confocal or super-resolution microscopy.
- I captured the images using the default setting for exposure time, gain etc. The resulting images only have the dynanmic range of ~100-fold. Need to significantly increase the exposure time and gain next time.
Image analysis[edit]
Daily Notes[edit]
2012 <calendar> name=Kun:LabNotes/HiResChrPaint format=%name/%year-%month-%day date=2012/02/01 view=oneyear </calendar>