Man Linux: Main Page and Category List


       ipcress - In-silico PCR experiment simulation system


       ipcress [ options ] <primer file> <sequence paths>


       ipcress is the In-silico PCR Experiment Simulation System.

       This  is  a  tool for simulation of PCR experiments.  You supply a file
       containing primers  and  a  set  of  sequences,  and  it  predicts  PCR

       Ipcress  is  similar  to  the  e-PCR program from the NCBI, but is much
       faster, and does not suffer  from  problems  identifying  matches  when
       there are ambiguity symbols near primer ends.

       If  you  supply  many primers pairs together, ipcress will simulate the
       PCR experiments in parallel, allowing genome wide simulation  of  large
       numbers  of  experiments.   It  uses  many libraries from the exonerate
       sequence comparison tool.


       The input for ipcress is a simple white-space delimited file describing
       one experiment per line.  Each line contains the following 5 fields:

              id                An identifier for this experiment
              primer_A          Sequence for the first primer
              primer_B          Sequence for the second primer
              min_product_len   Minimum product length to report
              max_product_len   Maximum product length to report

       Here is an example line in this format:



       The  output  format describes one PCR product per-line, and is prefixed
       by "ipcress:", followed by the following 11 fields:

              sequence_id     The sequence identifier
              experiment_id   The PCR experiment id
              product_length  The PCR product length
              primer_5        The 5’ primer (either A or B)
              pos_5           Position of the 5’ primer
              mismatch_5      Number of mismatches on 5’ primer
              primer_3        |
              pos_3           | Same fields for the 3’ primer
              mismatch_3      |
              description     A description of the PCR product

       The description field is one of the following 4 strings:

              forward   Normal product, primer A followed by B
              revcomp   Normal product, primer B followed by A
              single_A  Bad product generated by primer_A only
              single_B  Bad product generated by primer_B only

       There is also a human-readable output displayed, is  not  designed  for
       parsing (see: --pretty below).


       Most  arguments  have  short  and  long forms.  The long forms are more
       likely to be stable over time, and hence  should  be  used  in  scripts
       which call ipcress.

       -h | --shorthelp <boolean>
              Show help.  This will display a concise summary of the available
              options, defaults and values currently set.

       --help <boolean>
              This shows all the help  options  including  the  defaults,  the
              value  currently  set, and the environment variable which may be
              used to set each parameter.  There  will  be  an  indication  of
              which options are mandatory.  Mandatory options have no default,
              and must have a value supplied for ipcress to run.  If mandatory
              options  are  used in order, their flags may be skipped from the
              command line (see examples below).  Unlike this  man  page,  the
              information  from this option will always be up to date with the
              latest version of the program.

       -v | --version <boolean>
              Display the version number.   Also  displays  other  information
              such as the build date and glib version used.


       -i | --input  <path>
              PCR  experiment data in the ipcress file format described above.

       -s | --sequence <paths>
              Specify the sequences.  Multiple files may  be  specified  here,
              which  reduces  the FSM building overhead, and makes ipcress run
              faster than running the process separately.


       -m | --mismatch  <mismatches>
              Specify the number of mismatches allowed per  primer.   Allowing
              mismatches  reduces  the  speed of the program as a large primer
              neighbourhood must be constructed, and fewer experiments can  be
              fitted in memory prior to each scan of the sequence databases.

       -M | --memory <Mb>
              Specify  the  amount of memory the program should use.  The more
              memory made available ipcress, the faster it will run,  as  more
              PCR  experiments  can  be conducted in each scan of the sequence
              databases.  This does not include memory used  during  the  scan
              (for  storing  partial  results  and  sequences),  so the actual
              amount of memory used will be slightly higher.

       -p | --pretty <boolean>
              Display results in a human-readable  format,  not  designed  for

       -P | --products <boolean>
              Display PCR products as a FASTA format sequence.

       -S | --seed <length>
              Specifiy  the seed length for the wordneighbourhood for the FSM.
              If set to zero, the full primer is used.  Shorter  words  reduce
              the  size  of  the neighbourhood, but increase the time taken by
              ipcress to filter false positive matches.


       Not documented yet.


       ipcress test.ipcress sequence.fasta
              This is the simplest way that ipcress can be used.
       ipcress dbsts_human.ipcress --sequence ncbi30/*.fasta --mismatch 1
              Compare a input file against a set of fasta files, allowing  one
              mismatch in each primer.


       This  documentation accompanies version 2.2.0 of the exonerate package.


       Guy St.C. Slater.  <>.  See the AUTHORS file  accompanying
       the source code for a list of contributors.


       This source code for the exonerate package is available under the terms
       of the GNU general public licence.

       Please see the file COPYING which was distrubuted with this package, or for details.

       This package has been developed as part of the ensembl project.  Please
       see for more information.