primersearch

 

Function

Searches DNA sequences for matches with primer pairs

Description

primersearch reads in primer pairs from an input file and searches them against sequence(s) specified by the user. Each of the primers in a pair is searched against the sequence and potential amplimers are reported.

The user can specify a maximum percent mismatch level; for example, 10% mismatch on a primer of length 20bp means that the program will classify a primer as matching a sequence if 18 of the 20 base pairs matches.

It will only report matches if both primers in the pair have a match in opposite orientations.

Usage

Here is a sample session with primersearch


% primersearch tembl:z52466 
Searches DNA sequences for matches with primer pairs
Primer file: primers
Allowed percent mismatch [0]: 
Output file [hsa203yc1.primersearch]: 

Go to the input files for this example
Go to the output files for this example

Example 2

Here we run the same example but allowing 20% mismatch between the primers and the sequence:


% primersearch tembl:z52466 
Searches DNA sequences for matches with primer pairs
Primer file: primers
Allowed percent mismatch [0]: 20
Output file [hsa203yc1.primersearch]: 

Go to the output files for this example

Command line arguments

   Standard (Mandatory) qualifiers:
  [-seqall]            seqall     Sequence database USA
  [-infile]            infile     Primer file
  [-mismatchpercent]   integer    Allowed percent mismatch
  [-outfile]           outfile    Output file name

   Additional (Optional) qualifiers: (none)
   Advanced (Unprompted) qualifiers: (none)
   Associated qualifiers:

   "-seqall" associated qualifiers
   -sbegin1            integer    Start of each sequence to be used
   -send1              integer    End of each sequence to be used
   -sreverse1          boolean    Reverse (if DNA)
   -sask1              boolean    Ask for begin/end/reverse
   -snucleotide1       boolean    Sequence is nucleotide
   -sprotein1          boolean    Sequence is protein
   -slower1            boolean    Make lower case
   -supper1            boolean    Make upper case
   -sformat1           string     Input sequence format
   -sdbname1           string     Database name
   -sid1               string     Entryname
   -ufo1               string     UFO features
   -fformat1           string     Features format
   -fopenfile1         string     Features file name

   "-outfile" associated qualifiers
   -odirectory4        string     Output directory

   General qualifiers:
   -auto               boolean    Turn off prompts
   -stdout             boolean    Write standard output
   -filter             boolean    Read standard input, write standard output
   -options            boolean    Prompt for standard and additional values
   -debug              boolean    Write debug output to program.dbg
   -verbose            boolean    Report some/full command line options
   -help               boolean    Report command line options. More
                                  information on associated and general
                                  qualifiers can be found with -help -verbose
   -warning            boolean    Report warnings
   -error              boolean    Report errors
   -fatal              boolean    Report fatal errors
   -die                boolean    Report deaths


Standard (Mandatory) qualifiers Allowed values Default
[-seqall]
(Parameter 1)
Sequence database USA Readable sequence(s) Required
[-infile]
(Parameter 2)
Primer file Input file Required
[-mismatchpercent]
(Parameter 3)
Allowed percent mismatch Any integer value 0
[-outfile]
(Parameter 4)
Output file name Output file <sequence>.primersearch
Additional (Optional) qualifiers Allowed values Default
(none)
Advanced (Unprompted) qualifiers Allowed values Default
(none)

Input file format

primersearch reads in any nucleic acid sequence USAs.

Input files for usage example

'tembl:z52466' is a sequence entry in the example nucleic acid database 'tembl'

File: primers

# This is my primer file
D1S243  cacacaggctcacatgcc      gctccagcgtcatggact
D1S468 aattaaccgttttggtcct     gcgacacacacttccc 
D1S2845 ccaaagggtgcttctc        gtggcattccaacctc
D1S1608 gatggcttttggggactatt    cactgagccaagtgacacag
D1S2893 aaaacatcaactctcccctg    ctcaaaccccaataagcctt
D1S2660 cacacatgcacatgcac       agtgacaccagcaggg

Database entry: tembl:z52466

ID   HSA203YC1  standard; DNA; STS; 389 BP.
XX
AC   Z52466;
XX
SV   Z52466.1
XX
DT   18-MAR-1996 (Rel. 47, Created)
DT   23-MAR-1996 (Rel. 47, Last updated, Version 3)
XX
DE   H.sapiens (D1S2660) DNA segment containing (CA) repeat; clone AFMa203yc1;
DE   single read.
XX
KW   CA repeat; dinucleotide repeat; GT repeat; microsatellite DNA;
KW   microsatellite marker; repeat polymorphism; STS.
XX
OS   Homo sapiens (human)
OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
OC   Eutheria; Primates; Catarrhini; Hominidae; Homo.
XX
RN   [1]
RP   1-389
RA   Weissenbach J.;
RT   ;
RL   Submitted (01-SEP-1995) to the EMBL/GenBank/DDBJ databases.
RL   Genethon, B.P. 60, 91002 Evry Cedex France. E-mail:
RL   Jean.Weissenbach@genethon.fr
XX
RN   [2]
RP   1-389
RX   MEDLINE; 96176476.
RA   Dib C., Faure S., Fizames C., Samson D., Drouot N., Vignal A.,
RA   Millasseau P., Marc S., Hazan J., Seboun E., Lathrop M., Gyapay G.,
RA   Morissette J., Weissenbach J.;
RT   "A comprehensive genetic map of the human genome based on 5,264
RT   microsatellites";
RL   Nature 380:152-154(1996).
XX
CC   full automatic;
XX
FH   Key             Location/Qualifiers
FH
FT   source          1..389
FT                   /chromosome="1"
FT                   /db_xref="taxon:9606"
FT                   /note="cloning vector is M13mp18"
FT                   /organism="Homo sapiens"
FT                   /cell_line="CEPH 134702"
FT                   /clone_lib="genomic DNA"
XX
SQ   Sequence 389 BP; 118 A; 124 C; 86 G; 57 T; 4 other;
     agctgtgtgc acacaacatg anggggcaca catgcacatg cacacatgcc cacatgcata        60
     tgcacacaca cacacacaca cacacacaca ttcatgccca agcacgccca ccctcatgtc       120
     tcaccatgtg cacataacac acagtcacat ataccctggc acacatgccc acatgcagac       180
     acgaaacaca ggcccacgnt tncatgcaca caggtatggg cacacatacc atgcacacat       240
     aangacaaat accaggccag acatgatttg cccctgctgg tgtcactgtt aagtgtgaca       300
     gacaagcaga ggacacacac ccacctggga cgcggggctt caggagagag gcagacctaa       360
     tagggcccgg attcggggct ggggaggct                                         389
//

The input primer file has the following format:

Comment lines start with a '#'
Lines with primer information have three fields separated by spaces or TAB characters. The columns contain:

  1. The name of the primer pair - this is reported in the output.
  2. The sequence of the first primer.
  3. The sequence of the second primer.

Empty files will cause primersearch to note that no primers have been found, and to exit.

Output file format

Output files for usage example

File: hsa203yc1.primersearch


Primer name D1S243

Primer name D1S468

Primer name D1S2845

Primer name D1S1608

Primer name D1S2893

Primer name D1S2660
Amplimer 1
	Sequence: HSA203YC1 Z52466 
	H.sapiens (D1S2660) DNA segment containing (CA) repeat; clone AFMa203yc1; single read.
	CACACATGCACATGCAC hits forward strand at 27 with 0 mismatches
	AGTGACACCAGCAGGG hits reverse strand at [103] with 0 mismatches
	Amplimer length: 261 bp

Output files for usage example 2

File: hsa203yc1.primersearch


Primer name D1S243

Primer name D1S468

Primer name D1S2845

Primer name D1S1608

Primer name D1S2893

Primer name D1S2660
Amplimer 1
	Sequence: HSA203YC1 Z52466 
	H.sapiens (D1S2660) DNA segment containing (CA) repeat; clone AFMa203yc1; single read.
	CACACATGCACATGCAC hits forward strand at 49 with 2 mismatches
	AGTGACACCAGCAGGG hits reverse strand at [103] with 0 mismatches
	Amplimer length: 239 bp
Amplimer 2
	Sequence: HSA203YC1 Z52466 
	H.sapiens (D1S2660) DNA segment containing (CA) repeat; clone AFMa203yc1; single read.
	CACACATGCACATGCAC hits forward strand at 27 with 0 mismatches
	AGTGACACCAGCAGGG hits reverse strand at [103] with 0 mismatches
	Amplimer length: 261 bp

Data files

None.

Notes

Every potential amplimer will be reported; if one primer matches the forward strand twice and the other matches the reverse strand only once, two potential amplimers are reported. If the reverse primer matches twice, four potential amplimers are reported.

Each primer pair consists of a name, followed by two primer sequences, primerA and primerB. The program first compares primerA to the forward strand and if it matches, primerB is compared to the reverse strand. The approach is then reversed, with the primerB being compared to the forward strand and primerA to the reverse. In this way all possible amplimers are reported.

References

None.

Warnings

This program is slow.
Don't try searching all of EMBL!
It might not be sensible to search all of the human section of EMBL - in 2000, this would take a day to do with one primer pair.
It will take longer with more primer pairs.
It will take longer if you allow mismatches.

Diagnostic Error Messages

"No suitable primers found - exiting" means that either the primers file was empty or there were no compilable primer pairs contained in it.

Exit status

It always exits with status 0

Known bugs

None.

See also

Program nameDescription
eprimer3Picks PCR primers and hybridization oligos
stssearchSearch a DNA database for matches with a set of STS primers

stssearch does something similar, but doesn't allow you to find mismatches and will report any match in any orientation and doesn't require you to have both primers matching.

Author(s)

Val Curwen (vac © sanger.ac.uk)
Sanger Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge, CB10 1SA, UK.

History

Written Aug 2000 - Val Curwen

Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

Comments

None