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
products.
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:
ID0001 CATGCATGCATGC CGATGCANGCATGCT 900 1100
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 parsing.
- -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.
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. <guy@ebi.ac.uk>. 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 http://www.gnu.org/licenses/gpl.txt for details.
This package has been developed as part of the ensembl project.
Please see http://www.ensembl.org/ for more information.