How to read this page
IChem is a single executable that dispatches on its first non-option argument. Run it with no arguments and it prints the menu reproduced below:
IChem
IChem Version : 5.3.9
Date : 2026-09-16
Nine commands share that executable. Six are the
modules proper; pdbconv,
sims and AtomProps are companion tools that
prepare inputs or post-process outputs. Each entry below gives the
synopsis, the arguments, every option with its default, and a worked
example. For step-by-step walk-throughs on real structures, see the
tutorials.
IChem --wMob realign …, not
IChem realign … --wMob. Put an option
after the keyword and it is silently swallowed as a filename
(realign) or rejected with
Not enough parameters (grim). The built-in
help states this rule only under IFP, and two of its own
examples break it — the examples on this page are the corrected
forms.
No ICHEM_LIB DEFINED without it. Point
ICHEM_LIB at the directory containing datas/
before anything else — see
Installation.
realignMolecular alignment
Align mobilM onto rigidM and apply the
resulting transformation to one or more applied molecules.
Usage
IChem [options] realign rigidM mobilM applied1 [applied2 ...]
Arguments
| Argument | Meaning |
|---|---|
rigidM | Reference molecule to align to |
mobilM | Molecule to align from |
applied | Molecule(s) to apply the rotation and translation to |
Options
| Option | Default | Effect |
|---|---|---|
-gmatch N |
NAME |
Use graph matching to align, where N is one of:
NAME atom-name matching,
ATMN atomic-name matching,
MOL2 MOL2-type matching,
CALP C-alpha matching (protein only)
|
--wMob | — | Also output the aligned mobilM |
-rule R | — | Use rule R for matching |
-i 'pairs' | — | Match specific atom pairs, e.g. '2-3|1-6|23-160' |
-gmatch or -i to
restrict matches instead.
Example
IChem -gmatch MOL2 --wMob realign ref.mol2 mob.mol2 target.mol2
Writes rot_target.mol2, plus rot_mob.mol2
because of --wMob. Worked example:
Realign tutorial.
IFPInteraction fingerprint
Encode a protein–ligand complex as a residue-based interaction fingerprint, and compute Tanimoto similarities between fingerprints.
Usage
IChem [options] IFP protein ligand
IChem [options] IFP protein ligand ligand_ref
IChem [options] IFP protein1 ligand1 protein2 ligand2
One complex, a complex scored against a reference ligand, or two complexes compared with each other.
You must specify one of --all, --basic, --weakh,
--picat, --metal or --old. Scripts written against earlier
releases need updating. Note also that distance thresholds accept at
most three decimals.
Fingerprint formats
| Format | Layout |
|---|---|
--old | Legacy 7-bit format: [basic] |
| Default | 11-bit format: [basic][pi-cation][metal][weakh]. The structure is always kept — unused bits are set to 0 |
Main options — one at a time
| Option | Computes |
|---|---|
--all | All interactions |
--basic | Only basic interactions; all other bits 0 |
--picat | Only the pi-cation bit; all other bits 0 |
--metal | Only the metal/acceptor bit; all other bits 0 |
--weakh | Only the weak H-bond bits; all other bits 0 |
--old | Legacy 7-bit output |
Distance thresholds (Å)
| Interaction | Maximum | Minimum |
|---|---|---|
| H-bond | -D_Hb (3.5) | -d_Hb (2.3) |
| Hydrophobic | -D_Hyd (4.5) | -d_Hyd (3.2) |
| Ionic | -D_Io (4.0) | -d_Io (2.3) |
| Metal / acceptor | -D_Me (2.8) | -d_Me (1.8) |
| Aromatic | -D_Ar (5.0) | -d_Ar (3.2) |
| Pi-cation | -D_Pic (5.0) | -d_Pic (2.3) |
| Weak H-bond | -D_WHb (3.5) | -d_WHb (2.3) |
Angles (degrees)
| Geometry | Angle | Tolerance |
|---|---|---|
| H-bond | -a_H (180°) | -at_H (60°) |
| Aromatic face-to-face | -a_ArFF (180°) | -at_ArFF (30°) |
| Aromatic edge-to-face | -a_ArEF (90°) | -at_ArEF (60°) |
| Pi-cation | -a_Pic (180°) | -at_Pic (30°) |
Examples
IChem --old IFP protein.mol2 ligand.mol2
IChem --weakh IFP protein.mol2 ligand.mol2 ligand_ref.mol2
IChem -d_Hyd 3.34 -D_Hyd 4.81 --basic IFP protein1.mol2 ligand1.mol2 protein2.mol2 ligand2.mol2
Worked example: IFP tutorial.
intsInteraction generator — triplet interaction fingerprints
Detect protein–ligand interactions and encode them as pseudoatoms
in a MOL2 file (TIFPs: triplet interaction fingerprints). Each
interaction becomes a pseudoatom whose position depends on the selected
-type mode. Optionally generates interaction fingerprints
(*.fgp) in several formats.
Usage
IChem [options] ints prot lig outfile
Positioning mode — -type
| Value | Pseudoatom sits on |
|---|---|
PROT | The interacting protein atom |
LIG | The interacting ligand atom |
CENT | Midpoint between the protein and ligand atoms (default) |
MERG | All three positions above |
Fingerprint format — -fgps
| Value | Output |
|---|---|
STD | Standard numeric format, e.g. 0 1 0 0 132 0 ... |
SVM | Sparse SVM format, e.g. 2:1 5:132 7:1 ... |
CMP | Compressed format, e.g. [1 1 [2 132 [1 ... |
--small | Use the reduced 210-integer fingerprint instead of the full 12 510 integers |
General options
| Option | Default | Effect |
|---|---|---|
-name N | prot | Molecule name in the output |
-logf FILE | — | Write a log file listing every interaction |
--noMerge | — | Do not merge overlapping hydrophobic interactions |
--newH | — | Stricter hydrophobic definition: kept only if more than 50% of nearby protein atoms are hydrophobic |
--stdout | — | Write results to standard output |
Thresholds and angles
| Option | Default | Meaning |
|---|---|---|
-D_Hb | 3.5 | H-bond length (Å) |
-D_Hyd | 4.5 | Hydrophobic length (Å) |
-D_Io | 4.0 | Ionic length (Å) |
-D_Me | 2.8 | Metal/acceptor length (Å) |
-D_Ar | 5.0 | Aromatic interaction length (Å) |
-D_Pic | 5.0 | Pi-cation interaction length (Å) |
-a_H | π | H-bond angle (rad) |
-at_H | π/3 | H-bond tolerance (rad) |
-a_ArFF | π | Aromatic face-to-face angle (rad) |
-at_ArFF | π/6 | Aromatic face-to-face tolerance (rad) |
-a_ArEF | π/2 | Aromatic edge-to-face angle (rad) |
-at_ArEF | π/3 | Aromatic edge-to-face tolerance (rad) |
-a_Pic | π | Pi-cation angle (rad) |
-at_Pic | π/6 | Pi-cation tolerance (rad) |
ints takes its angles in radians while IFP
takes the same quantities in degrees. The distance thresholds share both
names and defaults between the two.
Examples
IChem -logf 2rh1_ints.txt -type CENT ints site.mol2 ligand.mol2
IChem --small -fgps STD ints site.mol2 ligand.mol2 2rh1_small.fgp
Worked example: INTS tutorial.
grimGraph interaction matching
Compare and align protein–ligand complexes on their interaction pseudoatoms. GRIM builds interaction graphs and finds matching cliques between a reference and a comparison complex, then outputs the alignment, the similarity scores and the fitted structures — ligand, protein and interactions.
Usage
IChem [options] grim refProt refLig compProt compLig
IChem [options] grim refInts compInts
IChem [options] grim refProt refFile dockFile
Two complexes from their structures, two complexes from pre-computed
ints pseudoatom files, or a whole
docking pose file screened against one reference.
General options
| Option | Default | Effect |
|---|---|---|
-rn N | Ref | Reference name |
-cn N | Comp | Comparison name |
--values | — | Output only the score, with no alignment files |
-sim N | 0 | Similarity flag (0/1) for the reference–comparison pair |
-outInt | MERG | Output interaction positioning: MERG, LIG, CENT, PROT |
-match | MERG | Align using only one interaction position: MERG, LIG, PROT, CENT |
-score | FCT | Scoring method: STD (SumCl/RMSD) or FCT (function-based) |
--newH | — | Stricter hydrophobic definition: kept only if more than 50% of nearby protein atoms are hydrophobic |
Alignment options
| Option | Default | Effect |
|---|---|---|
-max N | 1 | Maximum number of output cliques |
-size N | 3 | Minimum clique size |
--all_cliques | — | Detect all cliques, not only maximal ones |
-dsame N | 0.5 | Maximum distance difference between similar points, e.g. LIG–LIG |
-dclose N | 0.75 | Maximum distance difference between close points, e.g. LIG–CENT |
-dfar N | 1.0 | Maximum distance difference between far points, e.g. LIG–PROT |
Examples
IChem -sim 1 -rn 2rh1 -cn 4amj -score STD grim 2rh1_prot.mol2 2rh1_lig.mol2 4amj_prot.mol2 4amj_lig.mol2
IChem -sim 1 -rn 2rh1 -cn 4amj grim 2rh1_INTS_M.mol2 4amj_INTS_M.mol2
-score STD
trailing after the four filenames. That form fails with
Not enough parameters: like every other option,
-score must come before the grim keyword, as
shown above.
Worked example: GRIM tutorial.
volsiteCavity detection and druggability prediction
Detect cavities on the protein surface and estimate their druggability. If a ligand is provided, VolSite restricts detection to its binding site. Optionally outputs descriptors, SVM features, or cavity-based pharmacophores.
Usage
IChem [options] volsite prot [lig]
Detection parameters
| Option | Default | Effect |
|---|---|---|
-step N | 1.5 | Grid spacing (Å) |
-boxS N | 20 | Main box edge length (Å) |
-b N | 55 | Minimal buriedness threshold |
-name N | — | Prefix for output cavity names |
-n N | 5 | Minimum neighbours for buried boxes |
-nPTS N | 70 | Minimum number of cubes to define a cavity |
-NPTS N | 400 | Maximum number of cubes to define a cavity |
-drog N | — | Set the observed druggability value |
What to include
| Option | Effect |
|---|---|
--dna | Include DNA in the protein |
--cofactor | Include cofactors |
--solvent | Include solvent molecules |
--hydrogen | Include hydrogens in detection |
Extra output
| Option | Effect |
|---|---|
--desc | Output cavity descriptors to descriptor.txt |
--svm | Output SVM features for the druggability model |
--pharm | Generate cavity-based pharmacophores (.chm, .mol2, .pml, .plp) |
--outExclu | Add exclusion spheres to the pharmacophore output |
Examples
IChem volsite protein.mol2
# Detect all cavities
IChem volsite protein.mol2 ligand.mol2
# Detect ligand-binding site cavities
IChem --pharm volsite protein.mol2 ligand.mol2
# Generate the cavity pharmacophore
Worked example: VolSite tutorial.
pdbconvPDB / MOL2 processing
Parse and process PDB files, automatically detect bound ligands by HET code along with their cavity, and estimate their druggability. This is the usual entry point: it turns a raw PDB entry into the typed MOL2 files every other module expects.
Usage
IChem [options] pdbconv protein[.pdb|.mol2] output_dir pdb_id
Global options
| Option | Effect |
|---|---|
--wMOL2 | Use MOL2 as input, which disables the PDB options |
--wUnDrug | Output undruggable cavities |
--noLig | Exclude the ligand |
PDB options
| Option | Effect |
|---|---|
--HARMSIZE | Harmonize SIZE lines to 80 characters |
--MSEMET | Change MSE to MET |
--CSECYS | Change CSE to CYS |
--MOVHET | Move HETATM records to the end of the file |
--ALTATM | Select alternative atoms |
--NUMATM | Renumber atoms |
--UPDMAS | Update the MASTER line |
--TOMOL2 | Convert to MOL2 representation |
MOL2 options — require --TOMOL2 or --wMOL2
| Option | Effect |
|---|---|
--RESTYP | Apply residue classification |
--BONDSE | Recreate bonds |
--CLNUNW | Clean unwanted residues |
--MOL2TY | Apply MOL2 atom types |
--SPLITM | Split into protein, ligand and solvent |
-SelChain N | Keep only the specified chains |
--SELWAT | Include water molecules |
--SELLIG | Include ligands |
Example
IChem pdbconv 2RH1.pdb output 2rh1
With no options the full default pipeline runs. Worked example: Quick start.
utilsGeneral utilities
A small family of helpers that operate on a protein and its bound ligand.
Usage
IChem utils [subcommand] protein.mol2 ligand.mol2
Subcommands
| Subcommand | Does |
|---|---|
bsa | Compute the buried surface area between protein and ligand |
frag | Fragment the ligand within its protein context, following RECAP rules |
Examples
IChem utils bsa protein.mol2 ligand.mol2
IChem utils frag protein.mol2 ligand.mol2
Worked examples: Utils tutorial.
simsFingerprint similarity
Compute similarity between fingerprints or interaction fingerprints. Given two files it prints one score; given a single file it prints the full pairwise matrix.
Usage
IChem [options] sims ref comp
IChem sims file
IChem [options] sims RefInt CompInt
Options
| Option | Default | Effect |
|---|---|---|
--wInts | — | Use interactions instead of fingerprints, for the RefInt CompInt form |
--small | — | Use the small fingerprint, for the RefInt CompInt form |
--binary | — | Declare that the input fingerprints are binary |
-metric N | TC | Similarity metric: TC, HM, RT, FT, DI, SO |
Examples
IChem --binary sims FP1.txt FP2.txt > sim.txt
IChem --binary sims FP.txt > matrix.txt
Worked example: Companion tools.
AtomPropsPrint atom properties from MOL2 files
Print atom properties — ID, MOL2 type, properties and charge — for each MOL2 file given. The file can be a protein, a ligand, or any molecule. This is the first place to look when an expected interaction fails to show up: it shows exactly how IChem typed every atom.
Usage
IChem AtomProps file1 file2 ... fileN
Examples
IChem AtomProps protein.mol2
IChem AtomProps ligandA.mol2 ligandB.mol2
Worked example: Companion tools.