Atom Expressions

Atom expressions are queries which specify selection criteria for sets of atoms. They are used as parameters to several commands, particularly 'select', 'restrict' and 'define'.

Most of the selection criteria are protein and .PDB file related. If you have used RasMol then you know what these things are. And all RasMol atom expressions should work.

The following are some examples using the select command: select all select * select elemno=1 // selects hydrogens select elemno=1 or elemno=6 or elemno=8 // H, C, O

The following are some more complicated protein-specific expressions: select cys // cystines select cys.CA // alpha carbons in cystines select cys*A.CA // alpha carbons in cystines in chain A select 1 // all atoms in residue 1 select 1A.C? // all carbons in residue 1 of chain a

boolean operators

Boolean operators 'and', 'or' and 'not' can be used to combine sets of selected atoms. These operators can be abbreviated as '&', '|' and '!', respectively.

comparison operators

Comparisons can be made based upon a few selected atom attributes. Comparisons are always of the form <attribute> <comparator> <value>

Acceptable attributes are: elemno (element number) atomno (atom number) radius (current spacefill radius in RasMol units) temperature (protein .PDB anisotropic temperature value) resno (protein .PDB residue number)

Comparators are: = or == <> or != or /= <, <=, >=, >

within(<distance>, <set>)

The within function can be used to select all atoms that are within a specified distance from any atoms in the given set. Of course the he resulting set can be combined using boolean operators to build more complex specifications.

If the distance contains a decimal point (dot) then the number is interpreted as angstroms. If the distance is an integer then the units are RasMol units.

// all atoms within 2 angstroms of a chlorine atom select within(2.0, chlorine) // all nitrogens more than 3 angstroms away from any carbon select nitrogen & !within(3.0, carbon)