Learn R Programming

DECIPHER (version 2.0.2)

CalculateEfficiencyPCR: Predict Amplification Efficiency of Primer Sequences

Description

Calculates the amplification efficiency of primers from their hybridization efficiency and elongation efficiency at the target site.

Usage

CalculateEfficiencyPCR(primer, target, temp, P, ions, batchSize = 1000, taqEfficiency = TRUE, maxDistance = 0.4, maxGaps = 2, processors = 1)

Arguments

primer
A DNAStringSet object or character vector with unaligned primer sequences in 5' to 3' orientation.
target
A DNAStringSet object or character vector with unaligned target or non-target sequences in 5' to 3' orientation.
temp
Numeric specifying the annealing temperature used in the PCR reaction.
P
Numeric giving the molar concentration of primers in the reaction.
ions
Numeric giving the molar sodium equivalent ionic concentration. Values may range between 0.01M and 1M.
batchSize
Integer specifying the number of primers to simulate hybridization per batch. See the Description section below.
taqEfficiency
Logical determining whether to make use of elongation efficiency and maxDistance to increase predictive accuracy for Taq DNA Polymerase amplifying primers with mismatches near the 3' terminus. Note that this should be set to FALSE if using a high-fidelity polymerase with 3' to 5' exonuclease activity.
maxDistance
Numeric specifying the maximal fraction of mismatched base pairings on a rolling basis beginning from the 3' end of the primer. Only used if taqEfficiency is TRUE.
maxGaps
Integer specifying the maximum number of insertions or deletions (indels) in the primer/target alignment. Only used if taqEfficiency is TRUE.
processors
The number of processors to use, or NULL to automatically detect and use all available processors.

Value

A vector of predicted efficiencies for amplifying each primer/target pair of sequences.

Details

Amplification of pairwise primer/target pairs is simulated in silico. A complex model of hybridization is employed that takes into account the side reactions resulting from probe-folding, target-folding, and primer-dimer formation. The resulting hybridization efficiency is multiplied by the elongation efficiency to predict the overall efficiency of amplification.

Free energy is obtained from system calls to OligoArrayAux, which must be properly installed (see the Notes section below). Primer/target pairs are sent to OligoArrayAux in batches of batchSize, which prevents systems calls from being too many characters. Note that OligoArrayAux does not support degeneracy codes (non-base letters), although they are accepted without error. Any sequences with ambiguity should be expanded into multiple permutations with Disambiguate before input.

References

ES Wright et al. (2013) "Exploiting Extension Bias in PCR to Improve Primer Specificity in Ensembles of Nearly Identical DNA Templates." Environmental Microbiology, doi:10.1111/1462-2920.12259.

See Also

AmplifyDNA, DesignPrimers, DesignSignatures

Examples

Run this code
primers <- c("AAAAACGGGGAGCGGGGGG", "AAAAACTCAACCCGAGGAGCGCGT")
targets <- reverseComplement(DNAStringSet(primers))
# not run (must have OligoArrayAux installed first):
## Not run: CalculateEfficiencyPCR(primers, targets, temp=75, P=4e-7, ions=0.225)

Run the code above in your browser using DataLab