Sunday, December 15, 2013

PCR simulation with WebPCR

It is handy to have a bioinformatics tool to simulate various aspects of the Polymerase Chain Reaction (PCR). Errors are easily introduced in the primer design step so it is useful to have a simulation tools that can predict the sequence of the PCR product so that it can be verified.

I have put a PCR simulation script online called WebPCR . It is written in Python and runs using Flask on PythonAnywhere

The PCR simulation script used is from the pydna package.


The WebPCR window accepts a list of sequences in FASTA or Genbank format (or a mixture of both formats).

The last of the sequences in this list is assumed to be the template sequence while all preceding ones are assumed to be PCR primers.

The simulator will return a text based report describing the PCR product from each primer pair that is able to form one:



Two PCR programs are suggested for each PCR product, one for Taq polymerase and one for polymerases containing a DNA binding domain such as the Phusion DNA polymerase.

WebPCR has some capabilities not found in any or most other simulators:
  • Tailed primers are handled correctly
  • Inverse PCR of circular templates
The WebPCR  script has to be told that the template is circular. This can be done in two ways, depending on the format of the template sequence:

For FASTA format template sequence, simply add the keyword "circular" in the FASTA header:


For Genbank format template sequence, the DNA topology is set to either "linear" or "circular" in the LOCUS line: