General Guidance

    PRIMEGENS can run from Unix/Linux shell or windows as a stand-alone package. It has been tested extensively on Sun, DEC, and Linux PC. Running PRIMEGENS from a Unix shell(rather than from the Web interface) provides a convenient way to handle multiple data sets and multiple runs automatically by using scripts. All the options for the program can be specified through flags on the command line. Multiple flags without conflicts can be used at the same time, and their orders in the command line do not matter.

    Default Run

    To run primegens, you need a file (say "database") which records all the known ORFs for the genome in the FASTA format. You can simply run the program using default parameters:

    primegens database > log

    Output files

  • Log file ("log") which gives sequence alignments;
  • Unique sequence files:
  1. database.nohit (unique by itself)
  2. database.seg (unique portion in the sequence)
  3. database.sim (redundant sequences in the database)
  • Primer information for each group:
  1. database.nohit.primer (unique by itself)
  2. database.seg.primer (unique portion in the sequence)
  3. database.sim.primer (redundant sequences in the database)
  • Input for Excel spread sheet (separated by tab):
  1. database_primer.xls
  2. database_primer_undo.xls

    The columns represent: plate number, row number, column number, ORF name, gene function, forward primer, starting position of forward primer, ending position of forward primer, melting temperature of forward primer, reverse primer, starting position of reverse primer, ending position of reverse primer, melting temperature of reverse primer, expected length (the length between forward primer and reverse primer), length of the gene, and length of the unique segment, respectively

  • The primer files with each having 96 primers:
  1. primer_plate_left1 primer_plate_left2 ...
  2. primer_plate_right1 primer_plate_right2 ...

    Command Line Options

    * Calculate primers on a subset of ORFs (genes) in "database".

    primegens -l subset database
    (if the file "subset" is in a list format, with each ORF in a line).

    primegens -lf subset database
    (if the file "subset" is in FASTA format).

    * If ORFs in "database" has no functions defined, one can use a separate function file
    (e.g., "function") in a format:

    ORF1 function a
    ORF2 function b

    Then run

    primegens -name function -l subset database

    * Keep the BLAST outputs in the temporary directory (default: no):

    primegens -bf database

    * Define the maximum expectation value (default: 1e-15) to get a BLAST alignment, e.g.,

    primegens -e 1e-20 database

    * Define the minimum length (default: 100 bases) to select a unique segment, e.g.,

    primegens -mseg 80 database

    * Define the maximum sequence similarity (default: 75%) between the select segment
    and any other sequence, e.g.,

    primegens -msim 0.80 database

    * Define the minimum length (default: 50 bases) to filter out a BLAST alignment as
    a potential primer, e.g.,

    primegens -mfil 30 database

    * Define the faction (default: 0.8) of the length as the lower limit in the
    "PRIMER_PRODUCT_SIZE_RANGE" parameter for Primer3, e.g.,

    primegens -f 0.6 database

    * Calculate the unique sequences only without designing primers using Primer3:

    primegens -np database

    * Define the maximum length (-maxsep, default: 10000 bases) or the minimun length
    (-minsep, default: 0) for the primer pruduct, e.g.,

    primegens -maxsep 1200 -minsep 100 database

    You can combine several options together. The order of options does not matter as long as the "database" file is at the end of the argument for primegens. You can go to the "test" directory of the package and do a test run:

    primegens -msim 0.80 -name protein.list -l list ORFDNA > log


    Editing the Conditions for Primers

    If you like to change the conditions for generating primers, you also need copy the file "append" in the primegens directory (e.g., /usr/local/primegens/) to the directory you want to run the program, and modify the parameters in "append" accordingly. Otherwise the default parameters apply.