OnWorks favicon

ipcress - Online in the Cloud

Run ipcress in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command ipcress that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



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

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


-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

-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.


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


This documentation accompanies version 2.2.0 of the exonerate package.

Use ipcress online using onworks.net services