Question: Simulate The Error Of Whole Pcr Process
gravatar for J.F.Jiang
5.3 years ago by
J.F.Jiang750 wrote:

Hi all,

I just want to simulate the whole PCR process to calculate the errors.

Suppose that we have 1000 same DNA templates, and we will do 30 loops to amplify the DNA molecules. In each round, we set the 90% of the total DNA molecules will be amplified, and for each site, we suppose that the nucleotide has a 0.1% mismatch.

And after the whole process, we want to take a look at the rate of changes at each site, compare to the original templates.

If there is any one who knows the existed tool, can you please give a hint?


pcr • 2.5k views
ADD COMMENTlink modified 5.3 years ago by mikhail.shugay3.3k • written 5.3 years ago by J.F.Jiang750
gravatar for Neilfws
5.3 years ago by
Sydney, Australia
Neilfws48k wrote:

A quick web search for the term "pcr error simulation" reveals Estimation of the mutation rate during error-prone polymerase chain reaction and several other publications.

ADD COMMENTlink written 5.3 years ago by Neilfws48k
gravatar for mikhail.shugay
5.3 years ago by
Czech Republic, Brno, CEITEC
mikhail.shugay3.3k wrote:

This is quite a complex question. Do you simply need the number of molecules with single (double, etc) mismatch difference from parent? Then have a look at this manuscript, especially section 1.2.3, where lambda is PCR efficiency (0.9 in your case), G is segment length, mu is error rate per base per cycle and n is the number of cycles. In this case you can just use analytic solution.

Of course if you need to look for each site directly, i.e. you need to simulate site-specific errors (and PCR errors are quite biased in this way, check e.g., then a custom software is needed. Unfortunately, I havent come across any such software.

PS A simple calculator is also available here

Hope this helps, Mike

ADD COMMENTlink written 5.3 years ago by mikhail.shugay3.3k

yes, your suggestions are very helpful. I meant to write a script to manipulate the PCR process, however, when the total molecules after amplification are larger than 1e8, randomly select the position among the reads becomes very hard.

If there any method to quick index the numbers? such as, if I have 1~1e8 index, i want to randomly choose the position, the code in perl should be int(rand(1e8))+1, however, it seems it will cost large mem and time for this step.

ADD REPLYlink written 5.3 years ago by J.F.Jiang750
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 953 users visited in the last hour