Google

DISTANG (CCP4: Supported Program)

NAME

distang - Distances and angles calculation

SYNOPSIS

distang xyzin foo_in.brk
[Keyworded input]

DESCRIPTION

DISTANG is a general purpose program for calculating atomic distances within a protein molecule, and between symmetry equivalent molecules within a crystal lattice. It is based on Sam Motherwell's program DJANGO, developed for the Cambridge Data Base (and that goes back to John Rollett's original algorithm!).

PROGRAM FUNCTION

The functions of the program DISTANG may be summarised as follows:
  1. To calculate bond distances for a subset of the coordinates stored in a Brookhaven format file.
  2. To calculate bond angles for a subset of the coordinates stored in a Brookhaven format file.
  3. To calculate possible packing restrictions for a coordinate set.
  4. To generate information in a suitable format for the PROTIN dictionary from a set of coordinates stored in Brookhaven format.

The standard options are driven by the keyword DISTANCE using combinations of the subsidiary keywords ALL or VDW and INTER or INTRA.

Another useful option is to do a packing search. If the orientation of a molecule is known, various translational parameters can be tested to find those which give impossible packing. See GRID for details about this.

KEYWORDED INPUT

All control input is in free format with keywords specifying the options required. The possibilities are:
ADDRADIUS, ANGLE, DISTANCE, DMIN, END, FROM, GRID, LIST, OUTPUT, RADII, SYMMETRY, TITLE, TO, TORSION

The only compulsory one is RADII.

DISTANCE [ VDW | ALL ] [ INTER | INTRA ]

VDW
(Default. ) Only contacts between atoms not in the same, or adjoining, residues are printed.
ALL
all contacts to be output, even those within one residue.
INTER
Calculate intermolecular distances.
INTRA
(Default.) Calculate intramolecular distances. If SYMMETRY is specified INTRA will include INTERmolecular contacts too.

SYMMETRY <SG>

Followed by a spacegroup name or number or explicit symmetry operator in the standard form.

RADII <atomid> <radii> ...

[COMPULSORY INPUT]
Set search radii for atom types. A list of atom types and radii follows on the same line.

Default values are: CA 1.5 C 1.5 N 1.5 O 1.5 SG 1.5 OW 1.5
e.g.: RADII CA 2.2 OW 1.5 ZN 2.0 C 1.7 N 1.7 O 1.7

The program tries to match the atom name to the 2 character atom types first, and if none are found to the 1 character atom types. This allows you to set different radii for CA and other Carbon atoms say, but there is an unsolved problem for CAlcium.

If the atom name does not match it is ignored (Beware lost SG etc.)

FROM [ [ ATOM <inat0> [TO] <inat1> ] | [ RESIDUE <ires0> [TO] <ires1> ]] ... [ CHAIN ALL | ONS | CA ]

TO [ [ ATOM <jnat0> [TO] <jnat1> ] | [ RESIDUE <jres0> [TO] <jres1> ]] ... [ CHAIN ALL | ONS | CA ]

Sets atom limits. (Default all atoms to all.)

If ATOM is specified it is followed by <inat0> and <inat1>, respectively the first and last target atoms checked. I.e. FROM atoms <inat0> to <inat1> are checked against TO atoms <jnat0> to <jnat1>. (Atoms are numbered 1 to NAT, in the order read, but the residue order can be varied without restriction. Beware: atoms with occ=0.0 are not counted.)

If RESIDUE is specified it is followed by <jres0> and <jres1>, respectively the first and last target residues checked, and optionally subsidiary keywords:

CHAIN ALL | ONS | CA
ALL (default) will select all atoms in the requested residues. ONs will select just the oxygen and nitrogen atoms. CA will select just the CA atoms.
i.e. FROM residues <ires0> to <ires1> (CHAIN <type>) are checked against TO residues <jres0> to <jres1> for the appropriate class of atoms.

ANGLE

Calculate bond angles between bonded atom triples.

ADDRADIUS <addrii>

Value added to the value given by the RADIUS keyword. Only applies if the RADIUS keyword is also given.

DMIN <dmin>

The minimum distance printed is dmin

LIST <natoms>

List fractional and orthogonal coordinates for first <natoms> atoms.

OUTPUT [ LPOUT | KHCONN | PDBCONN ]

LPOUT
list distang output to a file assigned to PRJOUT.
KHCONN
list pseudo-PROTIN distance dictionary output to a file assigned to KHCONN. Only 250 atoms are allowed for this option. (See RWDICT to prepare residue type entry for dictionary.)
PDBCONN
list PDB type file containing CONECT lines to a file assigned to PDBCONN. Only 250 atoms allowed for this option.

GRID <xmin> <xmax> <dtx> <ymin> <ymax> <dty> <zmin> <zmax> <dtz>

All in fractions of unit cell.

Define search grid for a correctly oriented molecule through asymmetric unit. The coordinates are translated over the grid and a table of the number of bad contacts is generated; i.e. it is a sort of packing search. It sets all RADII except that for CA equal 0 to save time. The default RADII for CA is 2.0Å but you can reset this.

TITLE <title>

Title to print on output.

TORSION

Calculate torsion angles between bonded atom quadruples. Probably will not work but there is residual code for any eager programmer to look at.

END

triggers calculation.

NOTES

  1. Size limitation: a maximum of 40000 atoms is handled.
  2. It is ESSENTIAL to give CRYSTAL and SCALE lines in the input coordinate file. These are needed for generating symmetry equivalents.

EXAMPLES

distang XYZIN $CTEST/toxd/toxd.pdb << END-distang
SYMM 19
dist vdw INTRA
RADI   C 1.5 CA 1.5 N 1.5 O  1.5 OW 1.6
FROM ATOM 1 TO 1000
TO ATOM 1 to 200000
END  
END-distang

distang XYZIN $CTEST/toxd/toxd.pdb << END-distang
SYMM 19
dist vdw INTRA
RADI   C 1.5 CA 1.5 N 1.5 O  1.5 OW 1.6
FROM RES ALL CHAIN A 1 to 125
TO   RES ALL CHAIN W 1 to 256
END  
END-distang

#   Calculate distance angles for B2 c-unique contacts.
#
distang XYZIN $CTEST/toxd/toxd.pdb << END-distang 
SYMM P212121
dist all 
angle
RADI    C 0.8 N 1.5 O  1.5 OW 1.6
FROM ATOM 1 TO 561
TO ATOM 1 TO 561
END  
END-distang

#   Calculate distance angles  and output PROTIN type distance list.
#  for a new substrate (Prepare other parts of dictionary with RWDICT)
distang KHCONN $CCP4_SCR/junk.kh XYZIN substrate.pdb << END-distang 
SYMM 19
output khconn
dist all 
angle
RADI    C 0.8 N 0.8 O  0.8  P 1.3
FROM ATOM 1320 TO 1350     !   Atoms in a substrate perhaps.
TO ATOM 1320 to 1350
END  
END-distang

#   A grid search:  check your rotation function
distang XYZIN taka_2065115.pdb << EOF
SYMM 170
DIST VDW INTER 
RADI  CA 1.8
GRID 0 1 0.05   0 1 0.05   0 0 1
FROM ATOM 1 TO 10000
TO ATOM 1 TO 10000
END
EOF  

SEE ALSO

Alternative contact analysis:

REFERENCES

  1. IUPAC-IUB conventions, J. Mol. Biol., 50, 1 (1972).