Many molecular modelling applications have an atom selection language. This page summarizes and compares languages from different tools.
Selection Operators
|
PyMOL
|
Phenix
|
BALL
|
VMD
|
CNS
|
RasMol
|
OpenStructure
|
ProDy
|
Maestro
|
Segment
|
segi A
|
segid A
|
|
segname A
|
segid A
|
|
|
segment A
|
|
Chain
|
chain A
|
chain A
|
chain(A)
|
chain A
|
|
*A
|
cname=A
|
chain A
|
chain.name A
|
Residue ID
|
resi 3-8
|
resseq 3:8
|
residueID(3)
|
resid 3 to 8
|
residue 3:8
|
3-8
|
rnum=3:8
|
resnum 3 to 8
|
res. 3 - 8
|
Residue Name
|
resn HIS
|
resname HIS
|
residue(HIS)
|
resname HIS
|
resname HIS
|
HIS
|
rname=HIS
|
resname HIS
|
res.pt HIS
|
Atom Name
|
name ND1
|
name ND1
|
name(ND1)
|
name ND1
|
name ND1
|
*.ND1
|
aname=ND1
|
name ND1
|
atom.pt ND1
|
Logical And
|
and
|
and
|
AND
|
and
|
and
|
and
|
and
|
and
|
and
|
Logical Or
|
or
|
or
|
OR
|
or
|
or
|
or
|
or
|
or
|
or
|
Logical Not
|
not
|
not
|
!
|
not
|
not
|
not
|
|
not
|
not
|
Implicit operator
|
or
|
|
|
and
|
|
|
|
|
|
Atom Symbol
|
elem H
|
element H
|
element(H)
|
|
chemical H
|
elemno == 1
|
ele=H
|
element H
|
atom.ele H
|
Hydrogens
|
hydro
|
|
element(H)
|
hydrogen
|
hydrogen
|
hydrogen
|
|
hydrogen
|
atom.ato 1
|
Secondary Structure
|
ss H
|
|
secondaryStruct(...)
|
structure H
|
|
helix or sheet
|
rtype=H
|
secondary H
|
res.sec h
|
Solvent
|
solvent
|
water
|
solvent()
|
water
|
|
solvent
|
water
|
water
|
water
|
Backbone
|
backbone (since 1.7)
|
backbone
|
backbone()
|
backbone
|
|
backbone
|
|
backbone
|
backbone
|
Sidechain
|
sidechain (since 1.7)
|
sidechain
|
|
sidechain
|
|
sidechain
|
|
sidechain
|
sidechain
|
Within Radius
|
within 6.0 of (chain A)
|
within(6.0, chain A)
|
|
within 6.0 of (chain A)
|
(chain A) around 6.0
|
within(6.0, *A)
|
6.0 <> [cname=A]
|
|
within 6.0 (chain. A)
|
Protein+Nucleic
|
polymer
|
|
|
|
|
|
|
|
|
Protein
|
polymer.protein
|
|
|
protein
|
|
protein
|
peptide
|
protein
|
protein
|
Peptide Sequence
|
pepseq ACDEF
|
|
|
protein sequence ACDEF
|
|
|
|
|
|
DNA
|
|
dna
|
|
|
|
|
|
|
|
RNA
|
|
rna
|
|
|
|
|
|
|
|
Nucleic Acids
|
polymer.nucleic
|
nucleotide
|
|
nucleic
|
|
nucleic
|
|
nucleic
|
nucleic_acids
|
B-factor
|
b < 50
|
|
|
|
|
temperature < 50
|
abfac<50
|
beta < 50
|
|
Selection Macros
|
chain A and resi 32 and name CA
|
Comment
|
PyMOL
|
A/32/CA
|
|
Modeller
|
mdl.atoms['CA:32:A']
|
mdl is model instance
|
RasMol
|
*32A.CA
|
full macro example: SER32A.CA;B/2 (Serine, ..., Alt B, Model 2))
|
Chimera
|
:32.A@CA
|
not tested
|
See Also